1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

ndb source tree cleanup, see respective file

BitKeeper/deleted/.del-BinDist.sh~8ea6fee0be3de36:
  Delete: ndb/old_files/BinDist.sh
BitKeeper/deleted/.del-Defs.mk~fab44ad996ed5499:
  Delete: ndb/old_files/Defs.mk
BitKeeper/deleted/.del-Makefile~726e96331d4343ce:
  Delete: ndb/old_files/Makefile
BitKeeper/deleted/.del-SrcDist.sh~ad4f1cd7aae4265b:
  Delete: ndb/old_files/SrcDist.sh
BitKeeper/deleted/.del-configure~501239931f8bb1:
  Delete: ndb/old_files/configure
BitKeeper/deleted/.del-Epilogue.mk~60f7edf886726154:
  Delete: ndb/old_files/Epilogue.mk
BitKeeper/deleted/.del-README~b619a580720ec3d8:
  Delete: ndb/old_files/README
BitKeeper/deleted/.del-env.sh~91075f1664ce8292:
  Delete: ndb/old_files/env.sh
BitKeeper/deleted/.del-mysqlclusterenv.sh~f0d8a63e844255f5:
  Delete: ndb/old_files/mysqlclusterenv.sh
BitKeeper/deleted/.del-Defs.DEBUG.mk~8ed7bb195181c74a:
  Delete: ndb/config/old_files/Defs.DEBUG.mk
BitKeeper/deleted/.del-acinclude.m4~b1472f9faac0c71:
  Delete: ndb/config/old_files/acinclude.m4
BitKeeper/deleted/.del-Defs.HPUX.HPPA.GCC.mk~b50ab324c3ce07ce:
  Delete: ndb/config/old_files/Defs.HPUX.HPPA.GCC.mk
BitKeeper/deleted/.del-Defs.IBMAIX.POWERPC.GCC.mk~76bea6928ca7b8f0:
  Delete: ndb/config/old_files/Defs.IBMAIX.POWERPC.GCC.mk
BitKeeper/deleted/.del-Defs.LINUX.x86.GCC.mk~15f3c82665d141a0:
  Delete: ndb/config/old_files/Defs.LINUX.x86.GCC.mk
BitKeeper/deleted/.del-Defs.LINUX.x86.ICC.mk~e51a6e19daeb353:
  Delete: ndb/config/old_files/Defs.LINUX.x86.ICC.mk
BitKeeper/deleted/.del-Defs.LINUX.x86_64.GCC.mk~9e853e7e1142b2d7:
  Delete: ndb/config/old_files/Defs.LINUX.x86_64.GCC.mk
BitKeeper/deleted/.del-Defs.MACOSX.POWERPC.GCC.mk~d661574b758ac911:
  Delete: ndb/config/old_files/Defs.MACOSX.POWERPC.GCC.mk
BitKeeper/deleted/.del-Defs.OSE.PPC750.DIAB.mk~d5d7116c512290bc:
  Delete: ndb/config/old_files/Defs.OSE.PPC750.DIAB.mk
BitKeeper/deleted/.del-Defs.RELEASE.mk~6c195617d8e1c8ec:
  Delete: ndb/config/old_files/Defs.RELEASE.mk
BitKeeper/deleted/.del-Defs.RELEASE_TRACE.mk~e367d147bd3ad0bf:
  Delete: ndb/config/old_files/Defs.RELEASE_TRACE.mk
BitKeeper/deleted/.del-Defs.SIMCELLO.SOFTOSE.GCC.mk~5acee8046e3dfd21:
  Delete: ndb/config/old_files/Defs.SIMCELLO.SOFTOSE.GCC.mk
BitKeeper/deleted/.del-Defs.WIN32.x86.VC7.mk~582038c28dd89391:
  Delete: ndb/config/old_files/Defs.WIN32.x86.VC7.mk
BitKeeper/deleted/.del-Defs.SOFTOSE.SPARC.GCC.mk~ebd0c4aab56c1202:
  Delete: ndb/config/old_files/Defs.SOFTOSE.SPARC.GCC.mk
BitKeeper/deleted/.del-Defs.SOLARIS.SPARC.FORTE6.mk~4367e18b8246761e:
  Delete: ndb/config/old_files/Defs.SOLARIS.SPARC.FORTE6.mk
BitKeeper/deleted/.del-Defs.SOLARIS.SPARC.GCC.mk~d781a20b8235525c:
  Delete: ndb/config/old_files/Defs.SOLARIS.SPARC.GCC.mk
BitKeeper/deleted/.del-Defs.SOLARIS.SPARC_64.GCC.mk~76626f56dcd0e8e9:
  Delete: ndb/config/old_files/Defs.SOLARIS.SPARC_64.GCC.mk
BitKeeper/deleted/.del-Defs.SOLARIS6.SPARC.GCC.mk~2b05903f79ce771:
  Delete: ndb/config/old_files/Defs.SOLARIS6.SPARC.GCC.mk
BitKeeper/deleted/.del-Defs.TRU64X.ALPHA.GCC.mk~6ba3fc0cfaa37cb2:
  Delete: ndb/config/old_files/Defs.TRU64X.ALPHA.GCC.mk
BitKeeper/deleted/.del-GuessConfig.sh~ebdb504ed6b7ab68:
  Delete: ndb/config/old_files/GuessConfig.sh
BitKeeper/deleted/.del-Makefile.am~c28d15539f926269:
  Delete: ndb/config/old_files/Makefile.am
BitKeeper/deleted/.del-configure.in~3e0ef32c155b79bc:
  Delete: ndb/config/old_files/configure.in
BitKeeper/deleted/.del-config.h.in~b9209994763e30f8:
  Delete: ndb/config/old_files/config.h.in
BitKeeper/deleted/.del-Makefile~71ad5c694da8711:
  Delete: ndb/src/old_files/Makefile
BitKeeper/deleted/.del-Makefile~261cfb7897aa2259:
  Delete: ndb/test/newtonapi/Makefile
BitKeeper/deleted/.del-Makefile~d46bb4a49ae611f9:
  Delete: ndb/test/odbc/Makefile
BitKeeper/deleted/.del-Makefile_old~5ce89facf68772b:
  Delete: ndb/test/Makefile_old
ndb/test/include/NdbSchemaCon.hpp:
  Rename: ndb/include/ndbapi/NdbSchemaCon.hpp -> ndb/test/include/NdbSchemaCon.hpp
ndb/test/include/NdbSchemaOp.hpp:
  Rename: ndb/include/ndbapi/NdbSchemaOp.hpp -> ndb/test/include/NdbSchemaOp.hpp
ndb/include/Makefile.am:
  removed NdbSchema from ndbapi
ndb/include/ndbapi/NdbDictionary.hpp:
  added Column::getSize()
  and print function for Column::Type
ndb/include/ndbapi/NdbRecAttr.hpp:
  made an operator<< friend to NdbRecAttr
ndb/src/kernel/blocks/backup/restore/Restore.cpp:
  Rewritten restore to remove NdbSchema
ndb/src/kernel/blocks/backup/restore/Restore.hpp:
  Rewritten restore to remove NdbSchema
ndb/src/kernel/blocks/backup/restore/main.cpp:
  Rewritten restore to remove NdbSchema
ndb/src/ndbapi/Makefile.am:
  removed NdbSchema from ndbapi
ndb/src/ndbapi/NdbDictionary.cpp:
  added operator << for Column::Type
ndb/src/ndbapi/NdbRecAttr.cpp:
  updated operator<< for NdbRecAttr
ndb/src/ndbapi/Ndberr.cpp:
  removed NdbSchema from ndbapi
ndb/test/src/Makefile.am:
  moved NdbSchema to test
ndb/test/src/NDBT_ResultRow.cpp:
  use common print method for NDBT_ResultRow
ndb/test/src/NdbBackup.cpp:
  fixed bug in testBackup
ndb/test/src/NdbSchemaCon.cpp:
  moved NdbError NdbSchema
ndb/test/src/NdbSchemaOp.cpp:
  updated include file list
This commit is contained in:
unknown
2004-06-07 17:31:32 +00:00
parent 7942677020
commit dfa8ee365f
53 changed files with 280 additions and 7527 deletions

View File

@ -1,4 +0,0 @@
VERSION_FLAGS := -DNDB_DEBUG -DUSE_EMULATED_JAM -DVM_TRACE -DERROR_INSERT -DARRAY_GUARD
#-DDEBUG_TRANSPORTER

View File

@ -1,50 +0,0 @@
###
#
# Defines
SHELL := /bin/sh
C++ := g++
CC := gcc
AR_RCS := ar rcs
SO := ld -b -o
SHLIBEXT := sl
MAKEDEPEND := g++ -M
PIC := -fPIC
RPCGENFLAGS := -MA -C -N
ETAGS := etags
CTAGS := ctags
###
#
# Flags
#
CCFLAGS_WARNINGS = -Wno-long-long -W -Wall -pedantic
# -Wno-sign-compare Use this flag if you are annoyed with all the warnings
CCFLAGS_TOP = -DHPUX -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DNO_COMMAND_HANDLER
ifeq (RELEASE, $(NDB_VERSION))
VERSION_FLAGS += -O3
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
VERSION_FLAGS += -O3 -g
else
VERSION_FLAGS += -g
endif
endif
CCFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
CFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
LDFLAGS_TOP = -lpthread -lnsl -lrt
LDFLAGS = $(LDFLAGS_LOC) $(LDFLAGS_TOP)
LDLIBS = $(LDLIBS_LOC) $(LDLIBS_TOP)
LINK.cc = $(PURE) $(C++) $(CCFLAGS) $(LDFLAGS)
LINK.c = $(PURE) $(CC) $(CFLAGS) $(LDFLAGS)

View File

@ -1,49 +0,0 @@
###
#
# Defines
SHELL := /bin/sh
C++ := g++
CC := gcc
AR_RCS := $(PURE) ar rcs
SO := g++ -shared -o
MAKEDEPEND := g++ -M
PIC := -fPIC
RPCGENFLAGS := -M -C -N
ETAGS := etags
CTAGS := ctags
###
#
# Flags
#
CCFLAGS_WARNINGS = -Wno-long-long -Wall #-pedantic
# Add these for more warnings -Weffc++ -W
CCFLAGS_TOP = -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS
CCFLAGS_TOP += -fno-rtti
ifeq (RELEASE, $(NDB_VERSION))
VERSION_FLAGS += -O3
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
VERSION_FLAGS += -O3 -g
else
VERSION_FLAGS += -g
endif
endif
CCFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
CFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
LDFLAGS_TOP = -lpthread -lrt
LDFLAGS = $(LDFLAGS_LOC) $(LDFLAGS_TOP)
LDLIBS = $(LDLIBS_LOC) $(LDLIBS_TOP)
LINK.cc = $(PURE) $(C++) $(CCFLAGS) $(LDFLAGS)
LINK.c = $(PURE) $(CC) $(CFLAGS) $(LDFLAGS)

View File

@ -1,60 +0,0 @@
###
#
# Defines
SHELL := /bin/sh
C++ := gcc$(GCC_VERSION)
CC := gcc$(GCC_VERSION)
AR_RCS := $(PURE) ar rcs
SO := gcc$(GCC_VERSION) -shared -lpthread -o
#SO := gcc$(GCC_VERSION) -shared -o
MAKEDEPEND := gcc$(GCC_VERSION) -M
#MAKEDEPEND := gcc$(GCC_VERSION) -M -nostdinc -nostdinc++
PIC := -fPIC
RPCGENFLAGS := -M -C -N
ETAGS := etags
CTAGS := ctags
###
#
# Flags
#
# gcc3.3 __THROW problem if -pedantic and -O2
ifeq ($(NDB_VERSION),DEBUG)
CCFLAGS_WARNINGS = -Wno-long-long -Wall -pedantic
else
CCFLAGS_WARNINGS = -Wno-long-long -Wall
endif
# Add these for more warnings -Weffc++ -W
CCFLAGS_TOP =
#CCFLAGS_TOP = -DSAFE_MUTEX
CCFLAGS_TOP += -fno-rtti -fno-exceptions
ifeq (RELEASE, $(NDB_VERSION))
VERSION_FLAGS += -O2
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
VERSION_FLAGS += -O2 -g
else
VERSION_FLAGS += -g
endif
endif
CCFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
CFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
LDFLAGS_TOP =
LDFLAGS = $(LDFLAGS_LOC) $(LDFLAGS_TOP)
LDLIBS = $(LDLIBS_LOC) $(LDLIBS_TOP)
LINK.cc = $(PURE) $(CC) $(CCFLAGS) $(LDFLAGS)
LINK.c = $(PURE) $(CC) $(CFLAGS) $(LDFLAGS)
LDFLAGS_LAST = -lrt -lpthread $(NDB_TOP)/src/common/portlib/gcc.cpp
#LDFLAGS_LAST = -lrt $(NDB_TOP)/src/common/portlib/gcc.cpp $(NDB_TOP)/../mysys/libmysys.a $(NDB_TOP)/../dbug/libdbug.a $(NDB_TOP)/../regex/libregex.a $(NDB_TOP)/../strings/libmystrings.a -lpthread

View File

@ -1,54 +0,0 @@
###
#
# Defines
SHELL := /bin/sh
C++ := icc
CC := icc
AR_RCS := $(PURE) ar rcs
SO := g++$(GCC_VERSION) -shared -lpthread -o
MAKEDEPEND := g++$(GCC_VERSION) -M
PIC := -fPIC
RPCGENFLAGS := -M -C -N
ETAGS := etags
CTAGS := ctags
###
#
# Flags
#
# gcc3.3 __THROW problem if -pedantic and -O2
ifeq ($(NDB_VERSION),DEBUG)
CCFLAGS_WARNINGS =
else
CCFLAGS_WARNINGS =
endif
# Add these for more warnings -Weffc++ -W
CCFLAGS_TOP = -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS
CCFLAGS_TOP +=
ifeq (RELEASE, $(NDB_VERSION))
VERSION_FLAGS += -O2
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
VERSION_FLAGS += -O2 -g
else
VERSION_FLAGS += -g
endif
endif
CCFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
CFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
LDFLAGS_TOP = -lpthread -lrt
LDFLAGS = $(LDFLAGS_LOC) $(LDFLAGS_TOP)
LDLIBS = $(LDLIBS_LOC) $(LDLIBS_TOP)
LINK.cc = $(PURE) $(C++) $(CCFLAGS) $(LDFLAGS)
LINK.c = $(PURE) $(CC) $(CFLAGS) $(LDFLAGS)

View File

@ -1,54 +0,0 @@
###
#
# Defines
SHELL := /bin/sh
C++ := g++
CC := gcc
AR_RCS := $(PURE) ar rcs
SO := g++ -shared -lpthread -o
MAKEDEPEND := g++ -M
PIC := -fPIC
RPCGENFLAGS := -M -C -N
ETAGS := etags
CTAGS := ctags
###
#
# Flags
#
# gcc3.3 __THROW problem if -pedantic and -O2
ifeq ($(NDB_VERSION),DEBUG)
CCFLAGS_WARNINGS = -Wno-long-long -Wall -pedantic
else
CCFLAGS_WARNINGS = -Wno-long-long -Wall
endif
# Add these for more warnings -Weffc++ -W
CCFLAGS_TOP = -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS
CCFLAGS_TOP += -fno-rtti -fno-exceptions -m64
ifeq (RELEASE, $(NDB_VERSION))
VERSION_FLAGS += -O2
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
VERSION_FLAGS += -O2 -g
else
VERSION_FLAGS += -g
endif
endif
CCFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
CFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
LDFLAGS_TOP = -lpthread -lrt
LDFLAGS = $(LDFLAGS_LOC) $(LDFLAGS_TOP)
LDLIBS = $(LDLIBS_LOC) $(LDLIBS_TOP)
LINK.cc = $(PURE) $(C++) $(CCFLAGS) $(LDFLAGS)
LINK.c = $(PURE) $(CC) $(CFLAGS) $(LDFLAGS)

View File

@ -1,58 +0,0 @@
###
#
# Defines
SHELL := /bin/sh
C++ := gcc
CC := gcc
CXX := gcc
AR_RCS := $(PURE) ar rcs
#SO := g++ -dynamiclib -Wl,-segprot,__TEXT,rwx,rwx -o
SO := gcc -dynamiclib -o
SHLIBEXT := dylib
MAKEDEPEND := gcc -M
PIC := -fPIC
RPCGENFLAGS := -M -C -N
ETAGS := etags
CTAGS := ctags
###
#
# Flags
#
CCFLAGS_WARNINGS = -Wno-long-long -Wall -Winline #-Werror#-pedantic
# Add these for more warnings -Weffc++ -W
CCFLAGS_TOP = -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -D_BIG_ENDIAN
CXX_FLAGS_TOP = -fno-rtti -felide-constructors -fno-exceptions -fno-omit-fram-pointer
C_FLAGS_TOP += -fno-omit-frame-pointer
ifeq (RELEASE, $(NDB_VERSION))
VERSION_FLAGS += -O3
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
VERSION_FLAGS += -O3 -g
else
VERSION_FLAGS += -g
endif
endif
CCFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(CXXFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
CFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(C_FLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
LDFLAGS_TOP =
LDFLAGS = $(LDFLAGS_LOC) $(LDFLAGS_TOP)
LDLIBS = $(LDLIBS_LOC) $(LDLIBS_TOP)
LINK.cc = $(PURE) $(C++) $(CCFLAGS) $(LDFLAGS)
LINK.c = $(PURE) $(CC) $(CFLAGS) $(LDFLAGS)
#LDFLAGS_LAST = -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic
LDFLAGS_LAST = -lstdc++

View File

@ -1,47 +0,0 @@
###
#
# Defines
SHELL := /bin/sh
C++ := dplus
CC := dcc
AR_RCS := $(PURE) ar rcs
SO := dar -r
MAKEDEPEND := g++ -M -nostdinc
PIC :=
RPCGENFLAGS := -MA -C -N
###
#
# Flags
#
CCFLAGS_INCLUDE = -I/vobs/cello/cls/rtosi_if/include -I/vobs/cello/cls/rtosi_if/include.mp750 -I/vobs/cello/cls/rtosi_if/include.ppc
CCFLAGS_TOP = -tPPC750EH -DBIG_ENDIAN -D_BIG_ENDIAN -DPPC -DPPC750 -DOSE_DELTA -DMP -Xlint -Xforce-prototypes -DINLINE=__inline__ -Xansi -Xsmall-data=0 -Xsmall-const=0 -Xstrings-in-text
ifeq (RELEASE, $(NDB_VERSION))
VERSION_FLAGS += -XO
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
VERSION_FLAGS += -XO -g
else
VERSION_FLAGS += -g
endif
endif
CCFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_INCLUDE)
CFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_INCLUDE)
LDFLAGS_TOP =
LDFLAGS = $(LDFLAGS_LOC) $(LDFLAGS_TOP)
LDLIBS = $(LDLIBS_LOC) $(LDLIBS_TOP)
LINK.cc = $(PURE) $(C++) $(CCFLAGS) $(LDFLAGS)
LINK.c = $(PURE) $(CC) $(CFLAGS) $(LDFLAGS)

View File

@ -1,3 +0,0 @@
VERSION_FLAGS := -DNDB_RELEASE -DUSE_EMULATED_JAM -DNDEBUG

View File

@ -1,3 +0,0 @@
VERSION_FLAGS := -DNDB_RELEASE -DUSE_EMULATED_JAM -DNDEBUG -DVM_TRACE -DERROR_INSERT -DARRAY_GUARD

View File

@ -1,53 +0,0 @@
###
#
# Defines
SHELL := /bin/sh
C++ := g++
CC := gcc
AR_RCS := $(PURE) ar rcs
SO := g++ -shared -o
MAKEDEPEND := g++ -M
PIC := -fPIC
###
#
# Flags
#
NDB_STRDUP := Y
CCFLAGS_WARNINGS = -Wall -pedantic -Wno-sign-compare
CC_FLAGS_OSE = -DSPARC -DSIM -DOSE_DELTA -DMP
CCFLAGS_TOP = $(CC_FLAGS_OSE) $(CC_FLAGS_WARNINGS) -DNDB_STRDUP
ifeq (RELEASE, $(NDB_VERSION))
VERSION_FLAGS += -O3
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
VERSION_FLAGS += -O3 -g
else
VERSION_FLAGS += -g
endif
endif
CCFLAGS_LOC_OSE= -I/vobs/cello/cls/rtosi_if/include.sparc
CCFLAGS = $(CCFLAGS_LOC_OSE) $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
CFLAGS = $(CCFLAGS_LOC_OSE) $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
LDLIBS_LOC = -L$(NDB_TOP)/lib -L$(OSE_LOC)/sfk-solaris2/lib -L$(OSE_LOC)/sfk-solaris2/krn-solaris2/lib
LDLIBS_TOP =
LDFLAGS = $(LDFLAGS_LOC) $(LDFLAGS_TOP)
LDLIBS = $(LDLIBS_LOC) $(LDLIBS_TOP)
LINK.cc = $(PURE) $(C++) $(CCFLAGS) $(LDFLAGS)
LINK.c = $(PURE) $(CC) $(LDFLAGS)

View File

@ -1,57 +0,0 @@
###
#
# Defines
SHELL := /bin/sh
C++ := g++
CC := gcc
AR_RCS := $(PURE) ar rcs
SO := g++ -shared -o
MAKEDEPEND := g++ -M
PIC := -fPIC
###
#
# Flags
#
NDB_STRDUP := Y
CCFLAGS_WARNINGS = -Wno-long-long -Wall -pedantic -Wno-sign-compare -ansi
CC_FLAGS_OSE = -DUSE_OSEDEF_H -DOSE_DELTA -DOS_DEBUG -DBIG_ENDIAN
CCFLAGS_TOP = $(CC_FLAGS_OSE) $(CC_FLAGS_WARNINGS) -DNDB_STRDUP
ifeq (RELEASE, $(NDB_VERSION))
VERSION_FLAGS += -O3
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
VERSION_FLAGS += -O3 -g
else
VERSION_FLAGS += -g -DOS_DEBUG
endif
endif
OSE_LOC = /opt/as/OSE/OSE4.3.1
CCFLAGS_LOC_OSESTD = -I$(OSE_LOC)/sfk-solaris2/std-include
CCFLAGS_LOC_OSE = -I$(OSE_LOC)/sfk-solaris2/include -I$(OSE_LOC)/sfk-solaris2/krn-solaris2/include -I$(NDB_TOP)/src/env/softose
CCFLAGS = $(CCFLAGS_LOC_OSE) $(CCFLAGS_LOC_OSESTD) $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
CFLAGS = $(CCFLAGS_LOC_OSE) $(CCFLAGS_LOC_OSESTD) $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
LDLIBS_LOC = -L$(NDB_TOP)/lib -L$(OSE_LOC)/sfk-solaris2/lib -L$(OSE_LOC)/sfk-solaris2/krn-solaris2/lib
LDLIBS_TOP =
LDLIBS_LAST = -lsoftose_env -lsoftose_krn -llnh -lefs -lshell -lfss -ltosv -lrtc -lheap -linetutil -linetapi -lsoftose -lsoftose_env -lsoftose_krn -losepthread -lrtc -lnsl -lsocket -lpthread -lcrt -lm
LDFLAGS = $(LDFLAGS_LOC) $(LDFLAGS_TOP)
LDLIBS = $(LDLIBS_LOC) $(LDLIBS_TOP)
LINK.cc = $(PURE) $(C++) $(CCFLAGS) $(LDFLAGS)
LINK.c = $(PURE) $(CC) $(LDFLAGS)

View File

@ -1,54 +0,0 @@
###
#
# Defines
SHELL := /bin/sh
C++ := CC
CC := /opt/as/forte6/SUNWspro/bin/cc
AR_RCS := $(PURE) CC -xar -o
SO := CC -G -z text -o
MAKEDEPEND := CC -xM1
PIC := -KPIC
ETAGS := etags
CTAGS := ctags
RPCGENFLAGS := -MA -C -N
###
#
# Flags
CCFLAGS_TOP = -mt -DSOLARIS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS
ifneq ($(PURE),)
CCFLAGS_TOP += -xs
CCFLAGS_TOP += -DNDB_PURIFY
endif
ifeq (RELEASE, $(NDB_VERSION))
VERSION_FLAGS += -xO3
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
VERSION_FLAGS += -xO3 -g
else
VERSION_FLAGS += -g
endif
endif
CCFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS)
CFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS)
LDFLAGS_TOP = -L/opt/as/forte6/SUNWspro/WS6/lib -lpthread -lsocket -lnsl -lrt
LDFLAGS = $(LDFLAGS_LOC) $(LDFLAGS_TOP)
LDLIBS = $(LDLIBS_LOC) $(LDLIBS_TOP)
LINK.cc = $(PURE) $(C++) -xildoff $(CCFLAGS) $(LDFLAGS)
LINK.c = $(PURE) $(CC) $(CFLAGS) $(LDFLAGS)

View File

@ -1,54 +0,0 @@
###
#
# Defines
SHELL := /bin/sh
CXX := gcc
C++ := g++
CC := gcc
AR_RCS := ar rcs
SO := gcc -G -o
#GXX_VERSION := $(shell gcc --version | sed -e 's,.*\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\).*,\1,1' -e q)
MAKEDEPEND := g++ -M
PIC := -fPIC
RPCGENFLAGS := -MA -C -N
ETAGS := etags
CTAGS := ctags
###
#
# Flags
#
CCFLAGS_WARNINGS = -Wno-long-long -W -Wall -pedantic
# -Wno-sign-compare Use this flag if you are annoyed with all the warnings
CCFLAGS_TOP = -DSOLARIS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DNO_COMMAND_HANDLER
CCFLAGS_TOP += -fno-rtti
ifeq (RELEASE, $(NDB_VERSION))
VERSION_FLAGS += -O2
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
VERSION_FLAGS += -O2 -g
else
VERSION_FLAGS += -g
endif
endif
CCFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
CFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
LDFLAGS_TOP =
LDFLAGS = $(LDFLAGS_LOC) $(LDFLAGS_TOP)
LDLIBS = $(LDLIBS_LOC) $(LDLIBS_TOP)
LINK.cc = $(PURE) $(CXX) $(CCFLAGS) $(LDFLAGS)
LINK.c = $(PURE) $(CC) $(CFLAGS) $(LDFLAGS)
LDFLAGS_LAST = -lpthread -lsocket -lnsl -lrt -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic

View File

@ -1,53 +0,0 @@
###
#
# Note: LD_LIBRARY_PATH must be set for /usr/local/lib/sparcv9 to dynamically link
# to 64-bit libraries
#
# Defines
SHELL := /bin/sh
C++ := g++ -m64
CC := gcc -m64
AR_RCS := ar rcs
SO := g++ -m64 -shared -o
MAKEDEPEND := g++ -M
PIC := -fPIC
RPCGENFLAGS := -MA -C -N
ETAGS := etags
CTAGS := ctags
###
#
# Flags
#
CCFLAGS_WARNINGS = -Wno-long-long -W -Wall -pedantic
# -Wno-sign-compare Use this flag if you are annoyed with all the warnings
CCFLAGS_TOP = -DSOLARIS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DNO_COMMAND_HANDLER
CCFLAGS_TOP += -fno-rtti
ifeq (RELEASE, $(NDB_VERSION))
VERSION_FLAGS += -O2
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
VERSION_FLAGS += -O2 -g
else
VERSION_FLAGS += -g
endif
endif
CCFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
CFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
LDFLAGS_TOP = -lpthread -lsocket -lnsl -lrt
LDFLAGS = $(LDFLAGS_LOC) $(LDFLAGS_TOP)
LDLIBS = $(LDLIBS_LOC) $(LDLIBS_TOP)
LINK.cc = $(PURE) $(C++) $(CCFLAGS) $(LDFLAGS)
LINK.c = $(PURE) $(CC) $(CFLAGS) $(LDFLAGS)

View File

@ -1,53 +0,0 @@
###
#
# Defines
SHELL := /bin/sh
C++ := g++
CC := gcc
AR_RCS := $(PURE) ar rcs
SO := g++ -shared -o
MAKEDEPEND := g++ -M
PIC := -fPIC
RPCGENFLAGS := -MA -C -N
###
#
# Flags
#
CCFLAGS_WARNINGS = -Wno-long-long -Wall -pedantic
# -Wno-sign-compare Use this flag if you are annoyed with all the warnings
CCFLAGS_TOP = -DSOLARIS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DNO_COMMAND_HANDLER
# SOLARIS 6 should use the same settings as SOLARIS7
# if something in the SOLARIS 7 port does not work for SOLARIS 6
# it can be ifdefed using
# if ! defined NDB_SOLRIS6
CCFLAGS_TOP = -DNDB_SOLARIS
ifeq (RELEASE, $(NDB_VERSION))
VERSION_FLAGS += -O3
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
VERSION_FLAGS += -O3
else
VERSION_FLAGS += -g
endif
endif
CCFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
CFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
LDFLAGS_TOP = -lpthread -lsocket -lnsl -lposix4
LDFLAGS = $(LDFLAGS_LOC) $(LDFLAGS_TOP)
LDLIBS = $(LDLIBS_LOC) $(LDLIBS_TOP)
LINK.cc = $(PURE) $(C++) $(CCFLAGS) $(LDFLAGS)
LINK.c = $(PURE) $(CC) $(CFLAGS) $(LDFLAGS)

View File

@ -1,49 +0,0 @@
###
#
# Defines
SHELL := /bin/sh
C++ := g++
CC := gcc
AR_RCS := $(PURE) ar rcs
SO := g++ -shared -o
MAKEDEPEND := g++ -M
PIC := -fPIC
RPCGENFLAGS := -M -C -N
ETAGS := etags
CTAGS := ctags
###
#
# Flags
#
CCFLAGS_WARNINGS = -Wno-long-long -Wall #-pedantic
# Add these for more warnings -Weffc++ -W
CCFLAGS_TOP = -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS
CCFLAGS_TOP += -fno-rtti
ifeq (RELEASE, $(NDB_VERSION))
VERSION_FLAGS += -O3
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
VERSION_FLAGS += -O3 -g
else
VERSION_FLAGS += -g
endif
endif
CCFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
CFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
LDFLAGS_TOP = -lpthread -lrt
LDFLAGS = $(LDFLAGS_LOC) $(LDFLAGS_TOP)
LDLIBS = $(LDLIBS_LOC) $(LDLIBS_TOP)
LINK.cc = $(PURE) $(C++) $(CCFLAGS) $(LDFLAGS)
LINK.c = $(PURE) $(CC) $(CFLAGS) $(LDFLAGS)

View File

@ -1,61 +0,0 @@
###
#
# Defines
SHELL := /bin/sh
DEFINES = -D_WIN32 -D_M_IX86=600 -D_MSC_EXTENSIONS=0 -U_cdecl -D_MT
#
MAKEDEPEND = g++ -M --nostdinc --nostdinc++ -I"`cygpath -u "$(MSVCDIR)\include"`" -I"`cygpath -u "$(MSVCDIR)\PlatformSDK\include"`" $(DEFINES)
PIC = -D_LIB
NON_PIC = -D_LIB
RPCGENFLAGS := -M -C -N
ETAGS := etags
CTAGS := ctags
###
#
# Flags
#
CCFLAGS_WARNINGS =
CCFLAGS_TOP =
CCFLAGS_LOC =
CCFLAGS_WIN = -DWIN32 -D_WIN32_WINNT=0x0500 -DWINVER=0x0500 -D_MBCS -DNO_COMMAND_HANDLER
CCFLAGS_WIN += -W3 -EHsc
#CCFLAGS_WIN += -clr
ifeq (RELEASE, $(NDB_VERSION))
CCFLAGS_WIN += -MT -O2 -Ob1 -DNO_DEBUG_MESSAGES
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
CCFLAGS_WIN += -MT -O2 -Ob1 -DNO_DEBUG_MESSAGES
else
CCFLAGS_WIN += -MTd -Zi -Od -GS -D_DEBUG
endif
endif
C++ = cl -nologo $(CCFLAGS_WIN)
CC = cl -nologo $(CCFLAGS_WIN)
CCFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
CFLAGS = $(CCFLAGS_LOC) $(CCFLAGS_TOP) $(USER_FLAGS) $(VERSION_FLAGS) $(CCFLAGS_WARNINGS)
LDFLAGS_TOP =
LDFLAGS = $(LDFLAGS_LOC) $(LDFLAGS_TOP)
LDLIBS = $(LDLIBS_LOC) $(LDLIBS_TOP)
WIN_LIBS := Ws2_32.lib Advapi32.lib
ifeq (RELEASE, $(NDB_VERSION))
LINK.cc = link -INCREMENTAL:NO -NOLOGO -LARGEADDRESSAWARE $(WIN_LIBS)
else
ifeq (RELEASE_TRACE, $(NDB_VERSION))
LINK.cc = link -INCREMENTAL:NO -NOLOGO -LARGEADDRESSAWARE $(WIN_LIBS)
else
LINK.cc = link -INCREMENTAL -NOLOGO -DEBUG -LARGEADDRESSAWARE $(WIN_LIBS)
endif
endif

View File

@ -1,116 +0,0 @@
#! /bin/sh
if [ -z "$NDB_TOP" ]
then
echo "You have not set NDB_TOP. Exiting" 1>&2
exit 1
fi
if [ -z "$NDB_SCI" ]
then
NDB_SCI=N
fi
if [ -z "$NDB_SHM" ]
then
NDB_SHM=N
fi
os=`uname -s`
case $os in
Linux)
NDB_OS=LINUX
NDB_ARCH=x86
NDB_COMPILER=GCC
;;
Darwin)
NDB_OS=MACOSX
NDB_ARCH=POWERPC
NDB_COMPILER=GCC
;;
HP-UX)
NDB_OS=HPUX
NDB_ARCH=HPPA
NDB_COMPILER=GCC
;;
CYGWIN_NT-5.0)
NDB_OS=WIN32
NDB_ARCH=x86
NDB_COMPILER=VC7
;;
*)
if [ "$os" = "SunOS" ] && [ `uname -r` = "5.6" ]
then
NDB_OS=OSE
NDB_ARCH=PPC750
NDB_COMPILER=DIAB
else
NDB_OS=SOLARIS
NDB_ARCH=SPARC
NDB_COMPILER=GCC
fi;;
esac
if [ -z "$NDB_ODBC" ]
then
NDB_ODBC=N
fi
mch=`uname -m`
case $mch in
x86_64)
NDB_ARCH=x86_64
;;
*)
;;
esac
if [ -f $NDB_TOP/config/Makefile ]
then
TERMCAP_LIB=`grep TERMCAP_LIB $NDB_TOP/config/Makefile | sed -e s,"TERMCAP_LIB.*=.*-l","",g`
fi
if [ "$TERMCAP_LIB" = "" ]
then
TERMCAP_LIB=termcap
fi
# defaults
NDB_VERSION=DEBUG
PACKAGE=
VERSION=
parse_arguments() {
for arg do
case "$arg" in
-GCC) NDB_COMPILER=GCC ;;
-R) NDB_VERSION=RELEASE ;;
-D) NDB_VERSION=DEBUG ;;
--PACKAGE=*) PACKAGE=`echo "$arg" | sed -e "s;--PACKAGE=;;"` ;;
--VERSION=*) VERSION=`echo "$arg" | sed -e "s;--VERSION=;;"` ;;
*)
echo "Unknown argument '$arg'"
exit 1
;;
esac
done
}
parse_arguments "$@"
(
echo "# This file was automatically generated `date`"
echo "NDB_OS := $NDB_OS"
echo "NDB_ARCH := $NDB_ARCH"
echo "NDB_COMPILER := $NDB_COMPILER"
echo "NDB_VERSION := $NDB_VERSION"
echo "NDB_SCI := $NDB_SCI"
echo "NDB_SHM := $NDB_SHM"
echo "NDB_ODBC := $NDB_ODBC"
echo "TERMCAP_LIB := $TERMCAP_LIB"
echo "PACKAGE := $PACKAGE"
echo "VERSION := $VERSION"
) > $NDB_TOP/config/config.mk
exit 0

View File

@ -1,31 +0,0 @@
# Copyright (C) 2003 MySQL AB
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# Process this file with automake to create Makefile.in
AUTOMAKE_OPTIONS = foreign
# These are built from source in the Docs directory
EXTRA_DIST =
SUBDIRS =
# Relink after clean
linked_sources =
CLEANFILES = $(linked_sources)
# This is just so that the linking is done early.
config.h:

File diff suppressed because it is too large Load Diff

View File

@ -1,993 +0,0 @@
/* config.h.in. Generated from configure.in by autoheader. */
/* acconfig.h
This file is in the public domain.
Descriptive text for the C preprocessor macros that
the distributed Autoconf macros can define.
No software package will use all of them; autoheader copies the ones
your configure.in uses into your configuration header file templates.
The entries are in sort -df order: alphabetical, case insensitive,
ignoring punctuation (such as underscores). Although this order
can split up related entries, it makes it easier to check whether
a given entry is in the file.
Leave the following blank line there!! Autoheader needs it. */
#undef C_ALLOCA
#undef CRAY_STACKSEG_END
/* Define the default charset name */
#undef MYSQL_DEFAULT_CHARSET_NAME
/* Define the default charset name */
#undef MYSQL_DEFAULT_COLLATION_NAME
/* Version of .frm files */
#undef DOT_FRM_VERSION
/* If LOAD DATA LOCAL INFILE should be enabled by default */
#undef ENABLED_LOCAL_INFILE
/* READLINE: */
#undef FIONREAD_IN_SYS_IOCTL
/* READLINE: Define if your system defines TIOCGWINSZ in sys/ioctl.h. */
#undef GWINSZ_IN_SYS_IOCTL
/* Handing of large files on Solaris 2.6 */
#undef _FILE_OFFSET_BITS
/* Do we have FIONREAD */
#undef FIONREAD_IN_SYS_IOCTL
/* Do we need to define _GNU_SOURCE */
#undef _GNU_SOURCE
/* atomic_add() from <asm/atomic.h> (Linux only) */
#undef HAVE_ATOMIC_ADD
/* atomic_sub() from <asm/atomic.h> (Linux only) */
#undef HAVE_ATOMIC_SUB
/* If we have a working alloca() implementation */
#undef HAVE_ALLOCA
/* bool is not defined by all C++ compilators */
#undef HAVE_BOOL
/* Have berkeley db installed */
#undef HAVE_BERKELEY_DB
/* DSB style signals ? */
#undef HAVE_BSD_SIGNALS
/* Can netinet be included */
#undef HAVE_BROKEN_NETINET_INCLUDES
/* READLINE: */
#undef HAVE_BSD_SIGNALS
/* Define charsets you want */
#undef HAVE_CHARSET_armscii8
#undef HAVE_CHARSET_ascii
#undef HAVE_CHARSET_big5
#undef HAVE_CHARSET_cp1250
#undef HAVE_CHARSET_cp1251
#undef HAVE_CHARSET_cp1256
#undef HAVE_CHARSET_cp1257
#undef HAVE_CHARSET_cp850
#undef HAVE_CHARSET_cp852
#undef HAVE_CHARSET_cp866
#undef HAVE_CHARSET_dec8
#undef HAVE_CHARSET_euckr
#undef HAVE_CHARSET_gb2312
#undef HAVE_CHARSET_gbk
#undef HAVE_CHARSET_greek
#undef HAVE_CHARSET_hebrew
#undef HAVE_CHARSET_hp8
#undef HAVE_CHARSET_keybcs2
#undef HAVE_CHARSET_koi8r
#undef HAVE_CHARSET_koi8u
#undef HAVE_CHARSET_latin1
#undef HAVE_CHARSET_latin2
#undef HAVE_CHARSET_latin5
#undef HAVE_CHARSET_latin7
#undef HAVE_CHARSET_macce
#undef HAVE_CHARSET_macroman
#undef HAVE_CHARSET_sjis
#undef HAVE_CHARSET_swe7
#undef HAVE_CHARSET_tis620
#undef HAVE_CHARSET_ucs2
#undef HAVE_CHARSET_ujis
#undef HAVE_CHARSET_utf8
/* ZLIB and compress: */
#undef HAVE_COMPRESS
/* Define if we are using OSF1 DEC threads */
#undef HAVE_DEC_THREADS
/* Define if we are using OSF1 DEC threads on 3.2 */
#undef HAVE_DEC_3_2_THREADS
/* fp_except from ieeefp.h */
#undef HAVE_FP_EXCEPT
/* READLINE: */
#undef HAVE_GETPW_DECLS
/* Solaris define gethostbyname_r with 5 arguments. glibc2 defines
this with 6 arguments */
#undef HAVE_GETHOSTBYNAME_R_GLIBC2_STYLE
/* In OSF 4.0f the 3'd argument to gethostname_r is hostent_data * */
#undef HAVE_GETHOSTBYNAME_R_RETURN_INT
/* Define if int8, int16 and int32 types exist */
#undef HAVE_INT_8_16_32
/* Using Innobase DB */
#undef HAVE_INNOBASE_DB
/* Using old ISAM tables */
#undef HAVE_ISAM
/* Define if we have GNU readline */
#undef HAVE_LIBREADLINE
/* Define if have -lwrap */
#undef HAVE_LIBWRAP
/* Define if we are using Xavier Leroy's LinuxThreads */
#undef HAVE_LINUXTHREADS
/* Do we have lstat */
#undef HAVE_LSTAT
/* Do we use user level threads */
#undef HAVE_mit_thread
/* Using Ndb Cluster DB */
#undef HAVE_NDBCLUSTER_DB
/* For some non posix threads */
#undef HAVE_NONPOSIX_PTHREAD_GETSPECIFIC
/* For some non posix threads */
#undef HAVE_NONPOSIX_PTHREAD_MUTEX_INIT
/* READLINE: */
#undef HAVE_POSIX_SIGNALS
/* Well.. */
#undef HAVE_POSIX_SIGSETJMP
/* sigwait with one argument */
#undef HAVE_NONPOSIX_SIGWAIT
/* ORBIT */
#undef HAVE_ORBIT
/* pthread_attr_setscope */
#undef HAVE_PTHREAD_ATTR_SETSCOPE
/* pthread_yield that doesn't take any arguments */
#undef HAVE_PTHREAD_YIELD_ZERO_ARG
/* pthread_yield function with one argument */
#undef HAVE_PTHREAD_YIELD_ONE_ARG
/* POSIX readdir_r */
#undef HAVE_READDIR_R
/* Have Gemini db installed */
#undef HAVE_GEMINI_DB
/* POSIX sigwait */
#undef HAVE_SIGWAIT
/* crypt */
#undef HAVE_CRYPT
/* If we want to have query cache */
#undef HAVE_QUERY_CACHE
/* Solaris define gethostbyaddr_r with 7 arguments. glibc2 defines
this with 8 arguments */
#undef HAVE_SOLARIS_STYLE_GETHOST
/* MIT pthreads does not support connecting with unix sockets */
#undef HAVE_THREADS_WITHOUT_SOCKETS
/* Timespec has a ts_sec instead of tv_sev */
#undef HAVE_TIMESPEC_TS_SEC
/* Have the tzname variable */
#undef HAVE_TZNAME
/* Define if the system files define uchar */
#undef HAVE_UCHAR
/* Define if the system files define uint */
#undef HAVE_UINT
/* Define if the system files define ulong */
#undef HAVE_ULONG
/* Define if the system files define in_addr_t */
#undef HAVE_IN_ADDR_T
/* UNIXWARE7 threads are not posix */
#undef HAVE_UNIXWARE7_THREADS
/* new UNIXWARE7 threads that are not yet posix */
#undef HAVE_UNIXWARE7_POSIX
/* OpenSSL */
#undef HAVE_OPENSSL
/* READLINE: */
#undef HAVE_USG_SIGHOLD
/* Virtual IO */
#undef HAVE_VIO
/* Handling of large files on Solaris 2.6 */
#undef _LARGEFILE_SOURCE
/* Handling of large files on Solaris 2.6 */
#undef _LARGEFILE64_SOURCE
/* Define if want -lwrap */
#undef LIBWRAP
/* Define to machine type name eg sun10 */
#undef MACHINE_TYPE
#undef MUST_REINSTALL_SIGHANDLERS
/* Defined to used character set */
#undef MY_CHARSET_CURRENT
/* READLINE: no sys file*/
#undef NO_SYS_FILE
/* Program name */
#undef PACKAGE
/* mysql client protocoll version */
#undef PROTOCOL_VERSION
/* Define if qsort returns void */
#undef QSORT_TYPE_IS_VOID
/* Define as the return type of qsort (int or void). */
#undef RETQSORTTYPE
/* Size of off_t */
#undef SIZEOF_OFF_T
/* Define as the base type of the last arg to accept */
#undef SOCKET_SIZE_TYPE
/* Last argument to get/setsockopt */
#undef SOCKOPT_OPTLEN_TYPE
#undef SPEED_T_IN_SYS_TYPES
#undef SPRINTF_RETURNS_PTR
#undef SPRINTF_RETURNS_INT
#undef SPRINTF_RETURNS_GARBAGE
/* Needed to get large file support on HPUX 10.20 */
#undef __STDC_EXT__
#undef STACK_DIRECTION
#undef STRCOLL_BROKEN
#undef STRUCT_DIRENT_HAS_D_FILENO
#undef STRUCT_DIRENT_HAS_D_INO
#undef STRUCT_WINSIZE_IN_SYS_IOCTL
#undef STRUCT_WINSIZE_IN_TERMIOS
/* Define to name of system eg solaris*/
#undef SYSTEM_TYPE
/* Define if you want to have threaded code. This may be undef on client code */
#undef THREAD
/* Should be client be thread safe */
#undef THREAD_SAFE_CLIENT
/* READLINE: */
#undef TIOCSTAT_IN_SYS_IOCTL
/* Use multi-byte character routines */
#undef USE_MB
#undef USE_MB_IDENT
/* the pstack backtrace library */
#undef USE_PSTACK
/* Use MySQL RAID */
#undef USE_RAID
/* Program version */
#undef VERSION
/* READLINE: */
#undef VOID_SIGHANDLER
/* used libedit interface (can we dereference result of rl_completion_entry_function?) */
#undef USE_LIBEDIT_INTERFACE
/* used new readline interface (does rl_completion_func_t and rl_compentry_func_t defined?) */
#undef USE_NEW_READLINE_INTERFACE
/* macro for libedit */
#undef HAVE_VIS_H
#undef HAVE_FGETLN
#undef HAVE_ISSETUGID
#undef HAVE_STRLCPY
#undef HAVE_GETLINE
#undef HAVE_FLOCKFILE
#undef HAVE_SYS_TYPES_H
#undef HAVE_SYS_CDEFS_H
/* Leave that blank line there!! Autoheader needs it.
If you're adding to this file, keep in mind:
The entries are in sort -df order: alphabetical, case insensitive,
ignoring punctuation (such as underscores). */
/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
systems. This function is required for `alloca.c' support on those systems.
*/
#undef CRAY_STACKSEG_END
/* Define to 1 if using `alloca.c'. */
#undef C_ALLOCA
/* Define to 1 if you have the `alarm' function. */
#undef HAVE_ALARM
/* Define to 1 if you have `alloca', as a function or macro. */
#undef HAVE_ALLOCA
/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
*/
#undef HAVE_ALLOCA_H
/* Define to 1 if you have the <arpa/inet.h> header file. */
#undef HAVE_ARPA_INET_H
/* Define to 1 if you have the <asm/termbits.h> header file. */
#undef HAVE_ASM_TERMBITS_H
/* Define to 1 if you have the `bcmp' function. */
#undef HAVE_BCMP
/* Define to 1 if you have the `bfill' function. */
#undef HAVE_BFILL
/* Define to 1 if you have the `bmove' function. */
#undef HAVE_BMOVE
/* Define to 1 if you have the `bzero' function. */
#undef HAVE_BZERO
/* Define to 1 if you have the `chsize' function. */
#undef HAVE_CHSIZE
/* Define to 1 if you have the `clock_gettime' function. */
#undef HAVE_CLOCK_GETTIME
/* Define to 1 if you have the <crypt.h> header file. */
#undef HAVE_CRYPT_H
/* Define to 1 if you have the <curses.h> header file. */
#undef HAVE_CURSES_H
/* Define to 1 if you have the `cuserid' function. */
#undef HAVE_CUSERID
/* Define to 1 if you have the <dirent.h> header file. */
#undef HAVE_DIRENT_H
/* Define to 1 if you have the `dlerror' function. */
#undef HAVE_DLERROR
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define to 1 if you have the `dlopen' function. */
#undef HAVE_DLOPEN
/* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */
#undef HAVE_DOPRNT
/* Define to 1 if you have the `fchmod' function. */
#undef HAVE_FCHMOD
/* Define to 1 if you have the `fcntl' function. */
#undef HAVE_FCNTL
/* Define to 1 if you have the <fcntl.h> header file. */
#undef HAVE_FCNTL_H
/* Define to 1 if you have the `fconvert' function. */
#undef HAVE_FCONVERT
/* Define to 1 if you have the `fdatasync' function. */
#undef HAVE_FDATASYNC
/* Define to 1 if you have the `fgetln' function. */
#undef HAVE_FGETLN
/* Define to 1 if you have the `finite' function. */
#undef HAVE_FINITE
/* Define to 1 if you have the <floatingpoint.h> header file. */
#undef HAVE_FLOATINGPOINT_H
/* Define to 1 if you have the <float.h> header file. */
#undef HAVE_FLOAT_H
/* Define to 1 if you have the `flockfile' function. */
#undef HAVE_FLOCKFILE
/* Define to 1 if you have the `fpresetsticky' function. */
#undef HAVE_FPRESETSTICKY
/* Define to 1 if you have the `fpsetmask' function. */
#undef HAVE_FPSETMASK
/* Define to 1 if you have the `fsync' function. */
#undef HAVE_FSYNC
/* Define to 1 if you have the `ftruncate' function. */
#undef HAVE_FTRUNCATE
/* Define to 1 if you have the `getcwd' function. */
#undef HAVE_GETCWD
/* Define to 1 if you have the `gethostbyaddr_r' function. */
#undef HAVE_GETHOSTBYADDR_R
/* Define to 1 if you have the `gethostbyname_r' function. */
#undef HAVE_GETHOSTBYNAME_R
/* Define to 1 if you have the `getline' function. */
#undef HAVE_GETLINE
/* Define to 1 if you have the `getpagesize' function. */
#undef HAVE_GETPAGESIZE
/* Define to 1 if you have the `getpass' function. */
#undef HAVE_GETPASS
/* Define to 1 if you have the `getpassphrase' function. */
#undef HAVE_GETPASSPHRASE
/* Define to 1 if you have the `getpwnam' function. */
#undef HAVE_GETPWNAM
/* Define to 1 if you have the `getpwuid' function. */
#undef HAVE_GETPWUID
/* Define to 1 if you have the `getrlimit' function. */
#undef HAVE_GETRLIMIT
/* Define to 1 if you have the `getrusage' function. */
#undef HAVE_GETRUSAGE
/* Define to 1 if you have the `getwd' function. */
#undef HAVE_GETWD
/* Define to 1 if you have the `gmtime_r' function. */
#undef HAVE_GMTIME_R
/* Define to 1 if you have the <grp.h> header file. */
#undef HAVE_GRP_H
/* Define to 1 if you have the <ieeefp.h> header file. */
#undef HAVE_IEEEFP_H
/* Define to 1 if you have the `index' function. */
#undef HAVE_INDEX
/* Define to 1 if you have the `initgroups' function. */
#undef HAVE_INITGROUPS
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* isinf() macro or function */
#undef HAVE_ISINF
/* Define to 1 if you have the `isnan' function. */
#undef HAVE_ISNAN
/* Define to 1 if you have the `issetugid' function. */
#undef HAVE_ISSETUGID
/* Define to 1 if you have the `bind' library (-lbind). */
#undef HAVE_LIBBIND
/* Define to 1 if you have the `compat' library (-lcompat). */
#undef HAVE_LIBCOMPAT
/* Define to 1 if you have the `crypt' library (-lcrypt). */
#undef HAVE_LIBCRYPT
/* Define to 1 if you have the `c_r' library (-lc_r). */
#undef HAVE_LIBC_R
/* Define to 1 if you have the `dl' library (-ldl). */
#undef HAVE_LIBDL
/* Define to 1 if you have the `gen' library (-lgen). */
#undef HAVE_LIBGEN
/* Define to 1 if you have the `m' library (-lm). */
#undef HAVE_LIBM
/* Define to 1 if you have the `nsl' library (-lnsl). */
#undef HAVE_LIBNSL
/* Define to 1 if you have the `nsl_r' library (-lnsl_r). */
#undef HAVE_LIBNSL_R
/* Define to 1 if you have the `posix4' library (-lposix4). */
#undef HAVE_LIBPOSIX4
/* Define to 1 if you have the `pthread' library (-lpthread). */
#undef HAVE_LIBPTHREAD
/* Define to 1 if you have the `socket' library (-lsocket). */
#undef HAVE_LIBSOCKET
/* Define to 1 if you have the <limits.h> header file. */
#undef HAVE_LIMITS_H
/* Define to 1 if you have the <linux/config.h> header file. */
#undef HAVE_LINUX_CONFIG_H
/* Define to 1 if you have the <locale.h> header file. */
#undef HAVE_LOCALE_H
/* Define to 1 if you have the `localtime_r' function. */
#undef HAVE_LOCALTIME_R
/* Define to 1 if you have the `locking' function. */
#undef HAVE_LOCKING
/* Define to 1 if you have the `longjmp' function. */
#undef HAVE_LONGJMP
/* Define to 1 if you have the `lrand48' function. */
#undef HAVE_LRAND48
/* Define to 1 if you have the `lstat' function. */
#undef HAVE_LSTAT
/* Define to 1 if you have the `madvise' function. */
#undef HAVE_MADVISE
/* Define to 1 if you have the `mallinfo' function. */
#undef HAVE_MALLINFO
/* Define to 1 if you have the <malloc.h> header file. */
#undef HAVE_MALLOC_H
/* Define to 1 if you have the `memcpy' function. */
#undef HAVE_MEMCPY
/* Define to 1 if you have the `memmove' function. */
#undef HAVE_MEMMOVE
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the `mkstemp' function. */
#undef HAVE_MKSTEMP
/* Define to 1 if you have the `mlockall' function. */
#undef HAVE_MLOCKALL
/* Define to 1 if you have a working `mmap' system call. */
#undef HAVE_MMAP
/* Define to 1 if you have the <ndir.h> header file. */
#undef HAVE_NDIR_H
/* Define to 1 if you have the <netinet/in.h> header file. */
#undef HAVE_NETINET_IN_H
/* Define to 1 if you have the <paths.h> header file. */
#undef HAVE_PATHS_H
/* Define to 1 if you have the `perror' function. */
#undef HAVE_PERROR
/* Define to 1 if you have the `poll' function. */
#undef HAVE_POLL
/* Define to 1 if you have the `pread' function. */
#undef HAVE_PREAD
/* Define to 1 if you have the `pthread_attr_create' function. */
#undef HAVE_PTHREAD_ATTR_CREATE
/* Define to 1 if you have the `pthread_attr_getstacksize' function. */
#undef HAVE_PTHREAD_ATTR_GETSTACKSIZE
/* Define to 1 if you have the `pthread_attr_setprio' function. */
#undef HAVE_PTHREAD_ATTR_SETPRIO
/* Define to 1 if you have the `pthread_attr_setschedparam' function. */
#undef HAVE_PTHREAD_ATTR_SETSCHEDPARAM
/* Define to 1 if you have the `pthread_attr_setstacksize' function. */
#undef HAVE_PTHREAD_ATTR_SETSTACKSIZE
/* Define to 1 if you have the `pthread_condattr_create' function. */
#undef HAVE_PTHREAD_CONDATTR_CREATE
/* Define to 1 if you have the `pthread_getsequence_np' function. */
#undef HAVE_PTHREAD_GETSEQUENCE_NP
/* Define to 1 if you have the `pthread_init' function. */
#undef HAVE_PTHREAD_INIT
/* Define to 1 if you have the `pthread_key_delete' function. */
#undef HAVE_PTHREAD_KEY_DELETE
/* Define to 1 if you have the `pthread_rwlock_rdlock' function. */
#undef HAVE_PTHREAD_RWLOCK_RDLOCK
/* Define to 1 if you have the `pthread_setprio' function. */
#undef HAVE_PTHREAD_SETPRIO
/* Define to 1 if you have the `pthread_setprio_np' function. */
#undef HAVE_PTHREAD_SETPRIO_NP
/* Define to 1 if you have the `pthread_setschedparam' function. */
#undef HAVE_PTHREAD_SETSCHEDPARAM
/* Define to 1 if you have the `pthread_sigmask' function. */
#undef HAVE_PTHREAD_SIGMASK
/* Define to 1 if you have the `putenv' function. */
#undef HAVE_PUTENV
/* Define to 1 if you have the <pwd.h> header file. */
#undef HAVE_PWD_H
/* Define to 1 if you have the `readlink' function. */
#undef HAVE_READLINK
/* Define to 1 if you have the `realpath' function. */
#undef HAVE_REALPATH
/* Define to 1 if you have the `regcomp' function. */
#undef HAVE_REGCOMP
/* Define to 1 if you have the `rename' function. */
#undef HAVE_RENAME
/* Define to 1 if system calls automatically restart after interruption by a
signal. */
#undef HAVE_RESTARTABLE_SYSCALLS
/* Define to 1 if you have the `re_comp' function. */
#undef HAVE_RE_COMP
/* Define to 1 if you have the `rint' function. */
#undef HAVE_RINT
/* Define to 1 if you have the `rwlock_init' function. */
#undef HAVE_RWLOCK_INIT
/* Define to 1 if you have the <sched.h> header file. */
#undef HAVE_SCHED_H
/* Define to 1 if you have the `select' function. */
#undef HAVE_SELECT
/* Define to 1 if you have the <select.h> header file. */
#undef HAVE_SELECT_H
/* Define to 1 if you have the <semaphore.h> header file. */
#undef HAVE_SEMAPHORE_H
/* Define to 1 if you have the `setenv' function. */
#undef HAVE_SETENV
/* Define to 1 if you have the `setlocale' function. */
#undef HAVE_SETLOCALE
/* Define to 1 if you have the `setupterm' function. */
#undef HAVE_SETUPTERM
/* Define to 1 if you have the `sighold' function. */
#undef HAVE_SIGHOLD
/* Define to 1 if you have the `sigset' function. */
#undef HAVE_SIGSET
/* Define to 1 if you have the `sigthreadmask' function. */
#undef HAVE_SIGTHREADMASK
/* Define to 1 if you have the `snprintf' function. */
#undef HAVE_SNPRINTF
/* Define to 1 if you have the `socket' function. */
#undef HAVE_SOCKET
/* Define to 1 if you have the <stdarg.h> header file. */
#undef HAVE_STDARG_H
/* Define to 1 if you have the <stddef.h> header file. */
#undef HAVE_STDDEF_H
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the `stpcpy' function. */
#undef HAVE_STPCPY
/* Define to 1 if you have the `strcasecmp' function. */
#undef HAVE_STRCASECMP
/* Define to 1 if you have the `strcoll' function. */
#undef HAVE_STRCOLL
/* Define to 1 if you have the `strdup' function. */
#undef HAVE_STRDUP
/* Define to 1 if you have the `strerror' function. */
#undef HAVE_STRERROR
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the `strlcat' function. */
#undef HAVE_STRLCAT
/* Define to 1 if you have the `strlcpy' function. */
#undef HAVE_STRLCPY
/* Define to 1 if you have the `strnlen' function. */
#undef HAVE_STRNLEN
/* Define to 1 if you have the `strpbrk' function. */
#undef HAVE_STRPBRK
/* Define to 1 if you have the `strstr' function. */
#undef HAVE_STRSTR
/* Define to 1 if you have the `strtok_r' function. */
#undef HAVE_STRTOK_R
/* Define to 1 if you have the `strtol' function. */
#undef HAVE_STRTOL
/* Define to 1 if you have the `strtoll' function. */
#undef HAVE_STRTOLL
/* Define to 1 if you have the `strtoul' function. */
#undef HAVE_STRTOUL
/* Define to 1 if you have the `strtoull' function. */
#undef HAVE_STRTOULL
/* Define to 1 if `st_rdev' is member of `struct stat'. */
#undef HAVE_STRUCT_STAT_ST_RDEV
/* Define to 1 if your `struct stat' has `st_rdev'. Deprecated, use
`HAVE_STRUCT_STAT_ST_RDEV' instead. */
#undef HAVE_ST_RDEV
/* Define to 1 if you have the <synch.h> header file. */
#undef HAVE_SYNCH_H
/* Define to 1 if you have the <sys/cdefs.h> header file. */
#undef HAVE_SYS_CDEFS_H
/* Define to 1 if you have the <sys/dir.h> header file. */
#undef HAVE_SYS_DIR_H
/* Define to 1 if you have the <sys/file.h> header file. */
#undef HAVE_SYS_FILE_H
/* Define to 1 if you have the <sys/ioctl.h> header file. */
#undef HAVE_SYS_IOCTL_H
/* Define to 1 if you have the <sys/malloc.h> header file. */
#undef HAVE_SYS_MALLOC_H
/* Define to 1 if you have the <sys/mman.h> header file. */
#undef HAVE_SYS_MMAN_H
/* Define to 1 if you have the <sys/ndir.h> header file. */
#undef HAVE_SYS_NDIR_H
/* Define to 1 if you have the <sys/ptem.h> header file. */
#undef HAVE_SYS_PTEM_H
/* Define to 1 if you have the <sys/pte.h> header file. */
#undef HAVE_SYS_PTE_H
/* Define to 1 if you have the <sys/select.h> header file. */
#undef HAVE_SYS_SELECT_H
/* Define to 1 if you have the <sys/socket.h> header file. */
#undef HAVE_SYS_SOCKET_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/stream.h> header file. */
#undef HAVE_SYS_STREAM_H
/* Define to 1 if you have the <sys/timeb.h> header file. */
#undef HAVE_SYS_TIMEB_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have the <sys/un.h> header file. */
#undef HAVE_SYS_UN_H
/* Define to 1 if you have the <sys/utime.h> header file. */
#undef HAVE_SYS_UTIME_H
/* Define to 1 if you have the <sys/vadvise.h> header file. */
#undef HAVE_SYS_VADVISE_H
/* Define to 1 if you have the <sys/wait.h> header file. */
#undef HAVE_SYS_WAIT_H
/* Define to 1 if you have the `tcgetattr' function. */
#undef HAVE_TCGETATTR
/* Define to 1 if you have the `tell' function. */
#undef HAVE_TELL
/* Define to 1 if you have the `tempnam' function. */
#undef HAVE_TEMPNAM
/* Define to 1 if you have the <termbits.h> header file. */
#undef HAVE_TERMBITS_H
/* Define to 1 if you have the <termcap.h> header file. */
#undef HAVE_TERMCAP_H
/* Define to 1 if you have the <termios.h> header file. */
#undef HAVE_TERMIOS_H
/* Define to 1 if you have the <termio.h> header file. */
#undef HAVE_TERMIO_H
/* Define to 1 if you have the <term.h> header file. */
#undef HAVE_TERM_H
/* Define to 1 if you have the `thr_setconcurrency' function. */
#undef HAVE_THR_SETCONCURRENCY
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define to 1 if you have the <utime.h> header file. */
#undef HAVE_UTIME_H
/* Define to 1 if `utime(file, NULL)' sets file's timestamp to the present. */
#undef HAVE_UTIME_NULL
/* Define to 1 if you have the <varargs.h> header file. */
#undef HAVE_VARARGS_H
/* Define to 1 if you have the `vidattr' function. */
#undef HAVE_VIDATTR
/* Define to 1 if you have the <vis.h> header file. */
#undef HAVE_VIS_H
/* Define to 1 if you have the `vprintf' function. */
#undef HAVE_VPRINTF
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Define as the return type of signal handlers (`int' or `void'). */
#undef RETSIGTYPE
/* The size of a `char', as computed by sizeof. */
#undef SIZEOF_CHAR
/* The size of a `char*', as computed by sizeof. */
#undef SIZEOF_CHARP
/* The size of a `int', as computed by sizeof. */
#undef SIZEOF_INT
/* The size of a `long', as computed by sizeof. */
#undef SIZEOF_LONG
/* The size of a `long long', as computed by sizeof. */
#undef SIZEOF_LONG_LONG
/* If using the C implementation of alloca, define if you know the
direction of stack growth for your system; otherwise it will be
automatically deduced at run-time.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
#undef STACK_DIRECTION
/* Define to 1 if the `S_IS*' macros in <sys/stat.h> do not work properly. */
#undef STAT_MACROS_BROKEN
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#undef TIME_WITH_SYS_TIME
/* Define to 1 if your <sys/time.h> declares `struct tm'. */
#undef TM_IN_SYS_TIME
/* Version number of package */
#undef VERSION
/* Define to 1 if your processor stores words with the most significant byte
first (like Motorola and SPARC, unlike Intel and VAX). */
#undef WORDS_BIGENDIAN
/* Number of bits in a file offset, on hosts where this is settable. */
#undef _FILE_OFFSET_BITS
/* Define to make fseeko etc. visible, on some hosts. */
#undef _LARGEFILE_SOURCE
/* Define for large files, on AIX-style hosts. */
#undef _LARGE_FILES
/* Define to empty if `const' does not conform to ANSI C. */
#undef const
/* Define as `__inline' if that's what the C compiler calls it, or to nothing
if it is not supported. */
#undef inline
/* Define to `long' if <sys/types.h> does not define. */
#undef off_t
/* Define to `unsigned' if <sys/types.h> does not define. */
#undef size_t

File diff suppressed because it is too large Load Diff

View File

@ -22,8 +22,6 @@ ndbapi/NdbReceiver.hpp \
ndbapi/NdbResultSet.hpp \ ndbapi/NdbResultSet.hpp \
ndbapi/NdbScanFilter.hpp \ ndbapi/NdbScanFilter.hpp \
ndbapi/NdbScanOperation.hpp \ ndbapi/NdbScanOperation.hpp \
ndbapi/NdbSchemaCon.hpp \
ndbapi/NdbSchemaOp.hpp \
ndbapi/ndberror.h ndbapi/ndberror.h
mgmapiinclude_HEADERS = \ mgmapiinclude_HEADERS = \

View File

@ -298,6 +298,11 @@ public:
*/ */
int getLength() const; int getLength() const;
/**
* Get size of element
*/
int Column::getSize() const;
/** /**
* Set distribution key * Set distribution key
* *
@ -349,6 +354,7 @@ public:
#endif #endif
private: private:
friend class NdbRecAttr;
friend class NdbColumnImpl; friend class NdbColumnImpl;
class NdbColumnImpl & m_impl; class NdbColumnImpl & m_impl;
Column(NdbColumnImpl&); Column(NdbColumnImpl&);
@ -1030,4 +1036,6 @@ public:
}; };
}; };
class NdbOut& operator <<(class NdbOut& ndbout, const NdbDictionary::Column::Type type);
#endif #endif

View File

@ -20,7 +20,6 @@
#include <NdbDictionary.hpp> #include <NdbDictionary.hpp>
class NdbOperation; class NdbOperation;
class AttrInfo;
/** /**
* @class NdbRecAttr * @class NdbRecAttr
@ -77,7 +76,8 @@ class NdbRecAttr
friend class NdbEventOperationImpl; friend class NdbEventOperationImpl;
friend class NdbScanReceiver; friend class NdbScanReceiver;
friend class Ndb; friend class Ndb;
friend class NdbOut& operator<<(class NdbOut&, const class AttributeS&);
public: public:
/** /**
* @name Getting meta information * @name Getting meta information
@ -254,6 +254,7 @@ private:
void next(NdbRecAttr* aRecAttr); void next(NdbRecAttr* aRecAttr);
NdbRecAttr* next() const; NdbRecAttr* next() const;
int setup(const class NdbDictionary::Column* col, char* aValue);
int setup(const class NdbColumnImpl* anAttrInfo, char* aValue); int setup(const class NdbColumnImpl* anAttrInfo, char* aValue);
/* Set up attributes and buffers */ /* Set up attributes and buffers */
bool copyoutRequired() const; /* Need to copy data to application */ bool copyoutRequired() const; /* Need to copy data to application */

View File

@ -1,120 +0,0 @@
#
# Invoked from scripts/make_binary_distribution as "sh BinDist.sh".
# Prints list of dirs and files to include under mysql/ndb.
#
# release notes
grep -v '^#' <<__END__
#ReleaseNotes.html
mysqlclusterenv.sh
__END__
# subset of bins, libs, includes
grep -v '^#' <<__END__
bin/
bin/ndb
bin/mgmtsrvr
bin/mgmtclient
bin/mysqlcluster
bin/mysqlcluster_install_db
bin/mysqlclusterd
bin/restore
bin/ndb_rep
bin/desc
bin/flexBench
bin/select_all
bin/select_count
bin/delete_all
#bin/ndbsql
bin/drop_tab
bin/drop_index
bin/list_tables
bin/waiter
lib/
lib/libNEWTON_API.a
lib/libNEWTON_API.so
lib/libNDB_API.a
lib/libNDB_API.so
lib/libMGM_API.a
lib/libMGM_API.so
#lib/libNDB_ODBC.so
lib/libMGM_API_pic.a
lib/libNDB_API_pic.a
include/
include/ndb_types.h
include/ndb_version.h
include/mgmapi/
include/mgmapi/mgmapi.h
include/mgmapi/mgmapi_debug.h
include/ndbapi/
include/ndbapi/ndbapi_limits.h
include/ndbapi/Ndb.hpp
include/ndbapi/NdbApi.hpp
include/ndbapi/NdbConnection.hpp
include/ndbapi/NdbCursorOperation.hpp
include/ndbapi/NdbDictionary.hpp
include/ndbapi/NdbError.hpp
include/ndbapi/NdbEventOperation.hpp
include/ndbapi/NdbIndexOperation.hpp
include/ndbapi/NdbOperation.hpp
include/ndbapi/NdbPool.hpp
include/ndbapi/NdbRecAttr.hpp
include/ndbapi/NdbReceiver.hpp
include/ndbapi/NdbResultSet.hpp
include/ndbapi/NdbScanFilter.hpp
include/ndbapi/NdbScanOperation.hpp
include/ndbapi/NdbSchemaCon.hpp
include/ndbapi/NdbSchemaOp.hpp
include/newtonapi/dba.h
include/newtonapi/defs/pcn_types.h
__END__
#if [ -f /usr/local/lib/libstdc++.a ]; then
# cp /usr/local/lib/libstdc++.a lib/.
# echo lib/libstdc++.a
#fi
#if [ -f /usr/local/lib/libstdc++.so.5 ]; then
# cp /usr/local/lib/libstdc++.so.5 lib/.
# echo lib/libstdc++.so.5
#fi
#if [ -f /usr/local/lib/libgcc_s.so.1 ]; then
# cp /usr/local/lib/libgcc_s.so.1 lib/.
# echo lib/libgcc_s.so.1
#fi
# docs
#find docs/*.html docs/*.pdf -print | sort -t/
# demos
find demos -print | grep -v /SCCS | sort -t/
# examples
grep -v '^#' <<__END__
examples/
examples/Makefile
examples/ndbapi_example1/
examples/ndbapi_example1/Makefile
examples/ndbapi_example1/ndbapi_example1.cpp
examples/ndbapi_example2/
examples/ndbapi_example2/Makefile
examples/ndbapi_example2/ndbapi_example2.cpp
examples/ndbapi_example3/
examples/ndbapi_example3/Makefile
examples/ndbapi_example3/ndbapi_example3.cpp
examples/ndbapi_example4/
examples/ndbapi_example4/Makefile
examples/ndbapi_example4/ndbapi_example4.cpp
examples/ndbapi_example5/
examples/ndbapi_example5/Makefile
examples/ndbapi_example5/ndbapi_example5.cpp
examples/select_all/
examples/select_all/Makefile
examples/select_all/select_all.cpp
__END__
exit 0

View File

@ -1,64 +0,0 @@
include $(NDB_TOP)/config/config.mk
include $(NDB_TOP)/config/Defs.$(NDB_VERSION).mk
include $(NDB_TOP)/config/Defs.$(NDB_OS).$(NDB_ARCH).$(NDB_COMPILER).mk
ifeq ($(NDB_OS), WIN32)
# Windows specific definitions
OBJEXT := obj
LIBEXT := lib
LIBPREFIX :=
fixpath = `cygpath -w $1`
ar_rcs = lib -out:`cygpath -w $1` $2
link_so = link -DLL -OUT:`cygpath -w $1` $(WIN_LIBS) $2
#check-odbc = Y
USE_EDITLINE := N
#STRCASECMP is defined in include/portlib/PortDefs.h to _strcmpi
else
#Common definitions for almost all non-Windows environments
OBJEXT := o
LIBEXT := a
LIBPREFIX := lib
fixpath = $1
ar_rcs = $(AR_RCS) $1 $2
#check-odbc = $(findstring sqlext.h, $(wildcard /usr/include/sqlext.h) $(wildcard /usr/local/include/sqlext.h))
endif
ifeq ($(NDB_OS), WIN32)
SHLIBEXT := dll
endif
ifeq ($(NDB_OS), LINUX)
SHLIBEXT := so
endif
ifeq ($(NDB_OS), SOLARIS)
SHLIBEXT := so
endif
ifeq ($(NDB_OS), HPUX)
SHLIBEXT := sl
endif
ifeq ($(NDB_OS), MACOSX)
SHLIBEXT := dylib
endif
ifeq ($(NDB_OS), OSE)
SHLIBEXT := so
endif
ifeq ($(NDB_OS), SOFTOSE)
SHLIBEXT := so
endif
ifeq ($(NDB_SCI), Y)
CCFLAGS_TOP += -DHAVE_NDB_SCI
endif
ifeq ($(NDB_SHM), Y)
CCFLAGS_TOP += -DHAVE_NDB_SHM
endif
ifneq ($(findstring OSE, $(NDB_OS)),)
USE_EDITLINE := N
endif

View File

@ -1,878 +0,0 @@
# .KEEP_STATE:
# bk test !!!
###
# For building some intermediary targets in /tmp (only useful on solaris)
ifneq ($(NDB_BUILDROOT),)
NDB_TOPABS := $(shell cd $(NDB_TOP) && /bin/pwd)
NDB_BUILDDIR := $(subst $(NDB_TOPABS),$(NDB_BUILDROOT),$(CURDIR))/
ifeq ($(wildcard $(NDB_BUILDDIR)),)
dummy := $(shell mkdir -p $(NDB_BUILDDIR))
endif
endif
###
CCFLAGS_TOP += -DNDB_$(NDB_OS) -DNDB_$(NDB_ARCH) -DNDB_$(NDB_COMPILER)
ifdef BIN_TARGET
BIN_EXE = Y
endif
###
#
# OS specifics
#
# Disable shared libraries on HP-UX for the time being.
ifeq ($(NDB_OS), HPUX)
SO_LIB := N
PIC_LIB := N
PIC_ARCHIVE := N
NONPIC_ARCHIVE := Y
endif
ifeq ($(NDB_OS), OSE)
SO_LIB := N
PIC_LIB := N
PIC_ARCHIVE := N
NONPIC_ARCHIVE := Y
ifdef BIN_TARGET
BIN_LIB_TARGET := lib$(BIN_TARGET).a
BIN_TARGET := lib$(BIN_TARGET).a
endif
endif
ifeq ($(NDB_OS), SOFTOSE)
SO_LIB := N
PIC_LIB := N
PIC_ARCHIVE := N
ifdef BIN_TARGET
BIN_EXE_TARGET := $(BIN_TARGET)
BIN_LIB_TARGET := lib$(BIN_TARGET).a
EXTRA_MAIN := osemain.o
endif
endif
ifeq ($(filter OSE, $(NDB_OS)),)
BIN_EXE_TARGET := $(BIN_TARGET)
endif
ifeq ($(NDB_OS), MACOSX)
.LIBPATTERNS= lib%.dylib lib%.a
endif
###
#
#
###
# External dependencies definition : the place we store libraries
# we get from outside the NDB development group.
EXTERNAL_DEPENDS_TOP=$(NDB_TOP)/src/external/$(NDB_OS).$(NDB_ARCH)
###
#
# TYPE Handling
#
# TYPE := kernel
#
ifneq ($(filter kernel, $(TYPE)),)
CCFLAGS_LOC += \
-I$(call fixpath,$(NDB_TOP)/src/kernel/vm) \
-I$(call fixpath,$(NDB_TOP)/src/kernel/error) \
-I$(call fixpath,$(NDB_TOP)/src/kernel) \
-I$(call fixpath,$(NDB_TOP)/include/kernel) \
-I$(call fixpath,$(NDB_TOP)/include/transporter) \
-I$(call fixpath,$(NDB_TOP)/include/debugger) \
-I$(call fixpath,$(NDB_TOP)/include/mgmcommon) \
-I$(call fixpath,$(NDB_TOP)/include/mgmapi) \
-I$(call fixpath,$(NDB_TOP)/include/ndbapi) \
-I$(call fixpath,$(NDB_TOP)/include/util) \
-I$(call fixpath,$(NDB_TOP)/include/portlib) \
-I$(call fixpath,$(NDB_TOP)/include/logger)
endif
#
# TYPE := ndbapi
#
ifneq ($(filter ndbapi, $(TYPE)),)
CCFLAGS_LOC += \
-I$(call fixpath,$(NDB_TOP)/include/kernel) \
-I$(call fixpath,$(NDB_TOP)/include/transporter) \
-I$(call fixpath,$(NDB_TOP)/include/debugger) \
-I$(call fixpath,$(NDB_TOP)/include/mgmcommon) \
-I$(call fixpath,$(NDB_TOP)/include/mgmapi) \
-I$(call fixpath,$(NDB_TOP)/include/ndbapi) \
-I$(call fixpath,$(NDB_TOP)/include/util) \
-I$(call fixpath,$(NDB_TOP)/include/portlib) \
-I$(call fixpath,$(NDB_TOP)/include/logger)
endif
#
# TYPE := ndbapiclient
#
ifneq ($(filter ndbapiclient, $(TYPE)),)
CCFLAGS_LOC += \
-I$(call fixpath,$(NDB_TOP)/include/ndbapi)
BIN_TARGET_LIBS += NDB_API
endif
#
# TYPE := mgmapiclient
#
ifneq ($(filter mgmapiclient, $(TYPE)),)
CCFLAGS_LOC += \
-I$(call fixpath,$(NDB_TOP)/include/mgmapi)
BIN_TARGET_LIBS += MGM_API
endif
#
# TYPE := ndbapitest
#
ifneq ($(filter ndbapitest, $(TYPE)),)
CCFLAGS_LOC += \
-I$(call fixpath,$(NDB_TOP)/include/ndbapi) \
-I$(call fixpath,$(NDB_TOP)/include/util) \
-I$(call fixpath,$(NDB_TOP)/include/portlib) \
-I$(call fixpath,$(NDB_TOP)/test/include) \
-I$(call fixpath,$(NDB_TOP)/include/mgmapi)
BIN_TARGET_LIBS += NDBT
LDFLAGS_LOC += -lNDB_API -lMGM_API -lm
endif
#
# TYPE := signalsender
#
ifneq ($(filter signalsender, $(TYPE)),)
CCFLAGS_LOC += \
-I$(call fixpath,$(NDB_TOP)/include/ndbapi) \
-I$(call fixpath,$(NDB_TOP)/src/ndbapi) \
-I$(call fixpath,$(NDB_TOP)/src/ndbapi/signal-sender) \
-I$(call fixpath,$(NDB_TOP)/include/util) \
-I$(call fixpath,$(NDB_TOP)/include/portlib) \
-I$(call fixpath,$(NDB_TOP)/include/transporter) \
-I$(call fixpath,$(NDB_TOP)/include/mgmcommon) \
-I$(call fixpath,$(NDB_TOP)/include/kernel)
BIN_TARGET_LIBS += NDB_API
BIN_TARGET_ARCHIVES += editline signal-sender
endif
#
# TYPE := repserver
#
ifneq ($(filter repserver, $(TYPE)),)
CCFLAGS_LOC += \
-I$(call fixpath,$(NDB_TOP)/include/ndbapi) \
-I$(call fixpath,$(NDB_TOP)/src) \
-I$(call fixpath,$(NDB_TOP)/src/ndbapi) \
-I$(call fixpath,$(NDB_TOP)/src/ndbapi/signal-sender) \
-I$(call fixpath,$(NDB_TOP)/include/util) \
-I$(call fixpath,$(NDB_TOP)/include/portlib) \
-I$(call fixpath,$(NDB_TOP)/include/transporter) \
-I$(call fixpath,$(NDB_TOP)/include/mgmcommon) \
-I$(call fixpath,$(NDB_TOP)/include/kernel)
endif
#
# TYPE := odbcclient
#
ifneq ($(filter odbcclient, $(TYPE)),)
TYPE += util
LDFLAGS_LOC += -lm
#ifneq ($(call check-odbc),)
ifneq ($(NDB_ODBC),N)
ifeq ($(NDB_OS), SOLARIS)
CCFLAGS_LOC += -I/usr/local/include
BIN_TARGET_LIBS_DIRS += /usr/local/lib
BIN_TARGET_LIBS += odbc odbcinst NDBT
endif
ifeq ($(NDB_OS), LINUX)
BIN_TARGET_LIBS += odbc odbcinst NDBT
endif
ifeq ($(NDB_OS), MACOSX)
BIN_TARGET_LIBS += odbc odbcinst NDBT
endif
ifeq ($(NDB_OS), IBMAIX)
BIN_TARGET_LIBS += odbc odbcinst NDBT
endif
ifeq ($(NDB_OS), TRU64X)
BIN_TARGET_LIBS += odbc odbcinst NDBT
endif
else
BIN_EXE = N
endif
endif
#
# TYPE := *
#
#
# TYPE := util
#
ifneq ($(filter util, $(TYPE)),)
CCFLAGS_LOC += -I$(call fixpath,$(NDB_TOP)/include/util) \
-I$(call fixpath,$(NDB_TOP)/include/portlib) \
-I$(call fixpath,$(NDB_TOP)/include/logger)
BIN_TARGET_LIBS += logger general portlib
endif
CCFLAGS_LOC += -I$(call fixpath,$(NDB_TOP)/include) -I$(call fixpath,$(NDB_TOP)/../include)
ifeq ($(NDB_SCI), Y)
BIN_TARGET_LIBS += sisci
BIN_TARGET_LIBS_DIRS += $(EXTERNAL_DEPENDS_TOP)/sci/lib
CCFLAGS_LOC += -I$(call fixpath,$(EXTERNAL_DEPENDS_TOP)/sci/include)
endif
#
# TYPE Handling
###
###
#
# First rule
#
first:
$(MAKE) libs
$(MAKE) bins
ifeq ($(findstring all,$(replace-targets)),)
all: first
endif
###
#
# Nice to have rules
api: libs
$(MAKE) -C $(NDB_TOP)/src/ndbapi bins
mgm: libs
$(MAKE) -C $(NDB_TOP)/src/mgmsrv bins
ndb: libs
$(MAKE) -C $(NDB_TOP)/src/kernel/ndb-main bins
apitest: first
$(MAKE) -C $(NDB_TOP)/test/ndbapi all
#-lNDBT:
# $(MAKE) -C $(NDB_TOP)/test/src all
#
#-lNDB_API: libs
# $(MAKE) -C $(NDB_TOP)/src/ndbapi bins
#
# Libs/Bins
#
ifdef PREREQ_LOC
_libs:: $(PREREQ_LOC)
_bins:: $(PREREQ_LOC)
endif
L_DIRS := $(LIB_DIRS) $(DIRS)
B_DIRS := $(BIN_DIRS) $(DIRS)
A_DIRS := $(LIB_DIRS) $(BIN_DIRS) $(DIRS)
_libs::
_bins::
libs: _libs $(patsubst %, _libs_%, $(L_DIRS))
$(patsubst %, _libs_%, $(L_DIRS)) : DUMMY
$(MAKE) -C $(patsubst _libs_%,%,$@) libs
bins: _bins $(patsubst %, _bins_%, $(B_DIRS))
$(patsubst %, _bins_%, $(B_DIRS)) : DUMMY
$(MAKE) -C $(patsubst _bins_%,%,$@) bins
###
#
# Links
_links:
-$(NDB_TOP)/tools/make-links.sh $(NDB_TOP)/include `pwd`
links: _links $(patsubst %, _links_%, $(A_DIRS))
$(patsubst %, _links_%, $(A_DIRS)) : DUMMY
$(MAKE) -C $(patsubst _links_%,%,$@) links
####
#
# OSE build_spec (
ifdef SOURCES
BS := Y
endif
ifdef SOURCES_c
BS := Y
endif
_build_spec: Makefile
ifdef BS
@echo "TYPE = SWU" > build.spec
@echo "include $(NDB_TOP)/Ndb.mk" >> build.spec
# @for i in $(CCFLAGS_LOC); do echo "INC += $$i" >> build.spec ; done
@for i in $(patsubst -I%, %, $(CCFLAGS_LOC)); do echo "INC += $$i" >> build.spec ; done
@echo "INC += /vobs/cello/cls/rtosi_if/include" >> build.spec
@echo "INC += /vobs/cello/cls/rtosi_if/include.@@@" >> build.spec
@echo "INC += /vobs/cello/cls/rtosi_if/include.<<<" >> build.spec
endif
build_spec: _build_spec $(patsubst %, _build_spec_%, $(A_DIRS))
$(patsubst %, _build_spec_%, $(A_DIRS)) : DUMMY
$(MAKE) -C $(patsubst _build_spec_%,%,$@) build_spec
###
#
# Phony targets
.PHONY: $(A_DIRS)
###
#
# Dummy rule
DUMMY:
###
#
# Definitions of...
PIC_DIR := $(NDB_BUILDDIR).pic
A_TMP_DIR := $(NDB_BUILDDIR).a_tmp
SO_TMP_DIR := $(NDB_BUILDDIR).so_tmp
PIC_TMP_DIR := $(NDB_BUILDDIR).pic_tmp
$(PIC_DIR):
mkdir -p $(PIC_DIR)
SRC_C := $(filter %.C, $(SOURCES))
SRC_CPP := $(filter %.cpp, $(SOURCES))
SRC_CC := $(filter %.cc, $(SOURCES))
SRC_c := $(filter %.c, $(SOURCES)) $(filter %.c, $(SOURCES.c))
SRC_YPP := $(filter %.ypp, $(SOURCES))
SRC_LPP := $(filter %.lpp, $(SOURCES))
OBJECTS := $(SRC_C:%.C=%.$(OBJEXT)) \
$(SRC_CPP:%.cpp=%.$(OBJEXT)) \
$(SRC_CC:%.cc=%.$(OBJEXT)) \
$(SRC_c:%.c=%.$(OBJEXT)) \
$(SRC_YPP:%.ypp=%.tab.$(OBJEXT)) \
$(SRC_LPP:%.lpp=%.yy.$(OBJEXT)) \
$(OBJECTS_LOC)
PIC_OBJS := $(OBJECTS:%=$(PIC_DIR)/%)
LIB_DIR := $(NDB_TOP)/lib
BIN_DIR := $(NDB_TOP)/bin
###
#
# ARCHIVE_TARGET
#
ifdef ARCHIVE_TARGET
ifndef NONPIC_ARCHIVE
NONPIC_ARCHIVE := Y
endif
ifeq ($(NONPIC_ARCHIVE), Y)
_libs:: $(LIB_DIR)/$(LIBPREFIX)$(ARCHIVE_TARGET).$(LIBEXT)
$(LIB_DIR)/$(LIBPREFIX)$(ARCHIVE_TARGET).$(LIBEXT) : $(OBJECTS)
$(call ar_rcs,$@,$(OBJECTS))
endif # NONPIC_ARCHIVE := Y
ifeq ($(PIC_ARCHIVE), Y)
_libs:: $(PIC_DIR) $(LIB_DIR)/$(LIBPREFIX)$(ARCHIVE_TARGET)_pic.$(LIBEXT)
$(LIB_DIR)/$(LIBPREFIX)$(ARCHIVE_TARGET)_pic.$(LIBEXT) : $(PIC_OBJS)
cd $(PIC_DIR) && $(call ar_rcs,../$@,$(OBJECTS))
PIC_DEP := Y
endif # PIC_ARCHIVE := Y
endif # ARCHIVE_TARGET
###
#
# LIB_TARGET
#
ifdef LIB_TARGET
ifeq ($(A_LIB), Y)
A_LIB_ARCHIVES := $(LIB_TARGET_ARCHIVES:%=$(LIB_DIR)/$(LIBPREFIX)%.$(LIBEXT))
_bins:: $(LIB_DIR)/$(LIBPREFIX)$(LIB_TARGET).$(LIBEXT)
$(LIB_DIR)/$(LIBPREFIX)$(LIB_TARGET).$(LIBEXT) : $(A_LIB_ARCHIVES)
@rm -rf $(A_TMP_DIR) && mkdir $(A_TMP_DIR)
cd $(A_TMP_DIR) && for i in $^; do ar -x ../$$i; done && $(call ar_rcs,../$@,*.$(OBJEXT))
$(NDB_TOP)/home/bin/ndb_deploy $@
endif # A_LIB := Y
ifeq ($(SO_LIB), Y)
ifneq ($(NDB_OS), WIN32)
SO_LIB_ARCHIVES := $(LIB_TARGET_ARCHIVES:%=$(LIB_DIR)/$(LIBPREFIX)%_pic.$(LIBEXT))
_bins:: $(LIB_DIR)/$(LIBPREFIX)$(LIB_TARGET).$(SHLIBEXT)
$(LIB_DIR)/$(LIBPREFIX)$(LIB_TARGET).$(SHLIBEXT) : $(SO_LIB_ARCHIVES)
@rm -rf $(SO_TMP_DIR) && mkdir $(SO_TMP_DIR)
cd $(SO_TMP_DIR) && for i in $^; do ar -x ../$$i; done
ifneq ($(NDB_OS), MACOSX)
$(SO) $@.new $(SO_TMP_DIR)/*.$(OBJEXT) -L$(LIB_DIR) $(LIB_TARGET_LIBS) $(LDFLAGS_LAST)
rm -f $@; mv $@.new $@
else
$(SO) $@ $(SO_TMP_DIR)/*.$(OBJEXT) -L$(LIB_DIR) $(LIB_TARGET_LIBS) $(LDFLAGS_LAST)
endif
ifeq ($(NDB_VERSION), RELEASE)
ifneq ($(NDB_OS), MACOSX)
strip $@
endif
endif
$(NDB_TOP)/home/bin/ndb_deploy $@
else # WIN32
SO_LIB_ARCHIVES := $(LIB_TARGET_ARCHIVES:%=$(LIB_DIR)/$(LIBPREFIX)%_pic.$(LIBEXT))
_bins:: $(LIB_DIR)/$(LIBPREFIX)$(LIB_TARGET).$(SHLIBEXT)
$(LIB_DIR)/$(LIBPREFIX)$(LIB_TARGET).$(SHLIBEXT) : $(SO_LIB_ARCHIVES)
@rm -rf $(SO_TMP_DIR) && mkdir $(SO_TMP_DIR)
cd $(SO_TMP_DIR) && for i in $^; do ar -x ../$$i; done
$(call link_so,$@.new,$(SO_TMP_DIR)/*.$(OBJEXT))
rm -f $@; mv $@.new $@
#ifeq ($(NDB_VERSION), RELEASE)
# strip $@
#endif
endif
endif # SO_LIB := Y
ifeq ($(PIC_LIB), Y)
PIC_LIB_ARCHIVES := $(LIB_TARGET_ARCHIVES:%=$(LIB_DIR)/$(LIBPREFIX)%_pic.$(LIBEXT))
_bins:: $(LIB_DIR)/$(LIBPREFIX)$(LIB_TARGET)_pic.$(LIBEXT)
$(LIB_DIR)/$(LIBPREFIX)$(LIB_TARGET)_pic.$(LIBEXT) : $(PIC_LIB_ARCHIVES)
@rm -rf $(PIC_TMP_DIR) && mkdir $(PIC_TMP_DIR)
cd $(PIC_TMP_DIR) && for i in $^; do ar -x ../$$i; done && $(call ar_rcs,../$@,*.$(OBJEXT))
endif # PIC_LIB := Y
endif # LIB_TARGET
###
#
# BIN_TARGET
#
ifeq ($(BIN_EXE), Y)
ifneq ($(NDB_OS), WIN32)
BIN_LIBS := $(BIN_TARGET_ARCHIVES:%=$(LIB_DIR)/$(LIBPREFIX)%.$(LIBEXT))
BIN_LIBS += $(BIN_TARGET_LIBS:%=-l%)
BIN_DEPS := $(OBJECTS) $(EXTRA_MAIN) $(BIN_LIBS)
BIN_LIB_DIRS := $(BIN_TARGET_LIBS_DIRS:%=-L%)
BIN_FLAGS := $(BIN_LIB_DIRS) $(BIN_DEPS)
VPATH := $(LIB_DIR) $(BIN_TARGET_LIBS_DIRS)
_bins:: $(BIN_DIR)/$(BIN_TARGET)
$(BIN_DIR)/$(BIN_TARGET) : $(BIN_DEPS)
$(LINK.cc) $(LDFLAGS) $(LDLIBS) -L$(LIB_DIR) $(BIN_FLAGS) -o $@.new $(LDFLAGS_LAST)
rm -f $@; mv $@.new $@
ifeq ($(NDB_VERSION), RELEASE)
ifneq ($(NDB_OS), MACOSX)
strip $@
endif
endif
$(NDB_TOP)/home/bin/ndb_deploy $@
else # WIN32
BIN_LIBS := $(foreach lib,$(BIN_TARGET_ARCHIVES),$(call fixpath,$(LIB_DIR)/$(LIBPREFIX)$(lib).$(LIBEXT)))
BIN_LIBS += $(BIN_TARGET_LIBS:%=$(LIBPREFIX)%.$(LIBEXT))
BIN_DEPS := $(OBJECTS) $(BIN_TARGET_ARCHIVES:%=$(LIB_DIR)/$(LIBPREFIX)%.$(LIBEXT))
BIN_LIB_DIRS := -libpath:$(call fixpath,$(LIB_DIR)) $(BIN_TARGET_LIBS_DIRS:%=-libpath:%)
BIN_FLAGS := $(BIN_LIB_DIRS)
VPATH := $(LIB_DIR) $(BIN_TARGET_LIBS_DIRS)
_bins:: $(BIN_DIR)/$(BIN_TARGET).exe
$(BIN_DIR)/$(BIN_TARGET).exe : $(BIN_DEPS)
$(LINK.cc) -out:$(call fixpath,$@.new) $(OBJECTS) $(BIN_FLAGS) $(BIN_LIBS)
rm -f $@; mv $@.new $@
ifeq ($(NDB_VERSION), RELEASE)
strip $@
endif
endif
endif
###
#
# SOURCES.sh
#
ifdef SOURCES.sh
BIN_SRC := $(SOURCES.sh:%=$(BIN_DIR)/%)
_bins:: $(BIN_SRC)
$(BIN_SRC) : $(SOURCES.sh)
rm -f $(^:%=$(BIN_DIR)/%)
cp $^ $(BIN_DIR)
endif
#
# Compile rules PIC objects
#
ifeq ($(NDB_OS), WIN32)
OUT := -Fo
else
OUT := -o
endif
$(PIC_DIR)/%.$(OBJEXT): %.C
$(C++) $(OUT)$@ -c $(CCFLAGS) $(CFLAGS_$<) $(PIC) $<
$(PIC_DIR)/%.$(OBJEXT): %.cpp
$(C++) $(OUT)$@ -c $(CCFLAGS) $(CFLAGS_$<) $(PIC) $<
$(PIC_DIR)/%.$(OBJEXT): %.cc
$(C++) $(OUT)$@ -c $(CCFLAGS) $(CFLAGS_$<) $(PIC) $<
$(PIC_DIR)/%.$(OBJEXT): %.c
$(CC) $(OUT)$@ -c $(CFLAGS) $(CFLAGS_$<) $(PIC) $<
#
# Compile rules
#
%.$(OBJEXT) : %.cpp
$(C++) $(OUT)$@ -c $(CCFLAGS) $(CFLAGS_$<) $(NON_PIC) $<
%.$(OBJEXT) : %.C
$(C++) $(OUT)$@ -c $(CCFLAGS) $(CFLAGS_$<) $(NON_PIC) $<
%.$(OBJEXT) : %.cc
$(C++) $(OUT)$@ -c $(CCFLAGS) $(CFLAGS_$<) $(NON_PIC) $<
%.$(OBJEXT) : %.c
$(CC) $(OUT)$@ -c $(CFLAGS) $(CFLAGS_$<) $(NON_PIC) $<
%.s : %.C
$(C++) -S $(CCFLAGS) $(CFLAGS_$<) $(NON_PIC) $<
%.s : %.cpp
$(C++) -S $(CCFLAGS) $(CFLAGS_$<) $(NON_PIC) $<
%.s : %.cc
$(C++) -S $(CCFLAGS) $(CFLAGS_$<) $(NON_PIC) $<
%.s : %.c
$(CC) -S $(CCFLAGS) $(CFLAGS_$<) $(NON_PIC) $<
BISON = bison
BISONHACK = :
%.tab.cpp %.tab.hpp : %.ypp
$(BISON) $<
$(BISONHACK) $*.tab.cpp $*.tab.hpp
FLEX = flex
FLEXHACK = :
%.yy.cpp : %.lpp
$(FLEX) -o$@ $<
$(FLEXHACK) $@
###
#
# Defines regarding dependencies
DEPMK := $(NDB_BUILDDIR).depend.mk
DEPDIR := $(NDB_BUILDDIR).depend
DEPENDENCIES := $(SRC_C:%.C=$(DEPDIR)/%.d) \
$(SRC_CC:%.cc=$(DEPDIR)/%.d) \
$(SRC_CPP:%.cpp=$(DEPDIR)/%.d) \
$(SRC_c:%.c=$(DEPDIR)/%.d) \
$(SRC_YPP:%.ypp=$(DEPDIR)/%.tab.d) \
$(SRC_LPP:%.lpp=$(DEPDIR)/%.yy.d)
###
#
# Dependency rule
_depend: $(DEPMK)
depend: _depend $(patsubst %, _depend_%, $(A_DIRS))
$(patsubst %, _depend_%, $(A_DIRS)) : DUMMY
$(MAKE) -C $(patsubst _depend_%,%,$@) depend
###
#
# Clean dependencies
_clean_dep:
-rm -rf $(DEPMK) $(DEPDIR)/*
clean_dep: _clean_dep $(patsubst %, _clean_dep_%, $(A_DIRS))
$(patsubst %, _clean_dep_%, $(A_DIRS)) : DUMMY
$(MAKE) -C $(patsubst _clean_dep_%,%,$@) clean_dep
###
#
# Generate dependencies
$(DEPDIR):
-@mkdir -p $(DEPDIR)
$(DEPDIR)/%.d: %.C
@echo Generating depend for $<
@$(MAKEDEPEND) $(CCFLAGS) $(CFLAGS_$<) $< >$@
$(DEPDIR)/%.d: %.c
@echo Generating depend for $<
@$(MAKEDEPEND) $(CCFLAGS) $(CFLAGS_$<) $< >$@
$(DEPDIR)/%.d: %.cpp
@echo Generating depend for $<
@$(MAKEDEPEND) $(CCFLAGS) $(CFLAGS_$<) $< >$@
$(DEPDIR)/%.d: %.cc
@echo Generating depend for $<
@$(MAKEDEPEND) $(CCFLAGS) $(CFLAGS_$<) $< >$@
ifeq ($(NDB_OS), WIN32)
ifndef PIC_DEP
DEP_PTN := -e 's/\(.*\)\.o[ :]*/\1.$(OBJEXT) $(DEPDIR)\/\1.d : /g'
else
DEP_PTN := -e 's/\(.*\)\.o[ :]*/\1.$(OBJEXT) $(PIC_DIR)\/\1.$(OBJEXT) $(DEPDIR)\/\1.d : /g'
endif
else
ifndef PIC_DEP
DEP_PTN := -e 's!\(.*\)\.$(OBJEXT)[ :]*!\1.$(OBJEXT) $(DEPDIR)\/\1.d : !g'
else
DEP_PTN := -e 's!\(.*\)\.$(OBJEXT)[ :]*!\1.$(OBJEXT) $(PIC_DIR)\/\1.$(OBJEXT) $(DEPDIR)\/\1.d : !g'
endif
endif
#DEP_PTN += -e 's!/usr/include/[-+a-zA-Z0-9_/.]*!!g'
#DEP_PTN += -e 's!/usr/local/lib/gcc-lib/[-+a-zA-Z0-9_/.]*!!g'
$(DEPMK): $(DEPDIR) $(SRC_YPP:%.ypp=%.tab.hpp) $(SRC_LPP:%.lpp=%.yy.cpp) $(DEPENDENCIES) $(wildcard $(NDB_TOP)/.update.d)
@echo "updating .depend.mk"
@sed $(DEP_PTN) /dev/null $(DEPENDENCIES) >$(DEPMK)
###
#
# clean
#
_clean:
-rm -rf SunWS_cache $(PIC_DIR)/SunWS_cache
ifeq ($(NONPIC_ARCHIVE), Y)
-rm -f $(OBJECTS) $(LIB_DIR)/$(LIBPREFIX)$(ARCHIVE_TARGET).$(LIBEXT)
endif
ifeq ($(PIC_ARCHIVE), Y)
-rm -f $(PIC_OBJS) $(LIB_DIR)/$(LIBPREFIX)$(ARCHIVE_TARGET)_pic.$(LIBEXT)
endif
ifdef BIN_TARGET
-rm -f $(OBJECTS)
endif
ifdef LIB_TARGET
ifeq ($(A_LIB), Y)
-rm -f $(A_TMP_DIR)/*
endif
ifeq ($(SO_LIB), Y)
-rm -f $(SO_TMP_DIR)/*
endif
ifeq ($(PIC_LIB), Y)
-rm -f $(PIC_TMP_DIR)/*
endif
endif
ifneq ($(SRC_YPP),)
-rm -f $(SRC_YPP:%.ypp=%.tab.[hc]pp) $(SRC_YPP:%.ypp=%.output)
endif
ifneq ($(SRC_LPP),)
-rm -f $(SRC_LPP:%.lpp=%.yy.*)
endif
ifdef CLEAN_LOC
-rm -f $(CLEAN_LOC)
endif
###
#
# clean all
#
clobber: cleanall
_cleanall: _clean clean_links
-rm -f osemain.con osemain.c
ifdef LIB_TARGET
ifeq ($(A_LIB), Y)
-rm -f $(LIB_DIR)/$(LIBPREFIX)$(LIB_TARGET).$(LIBEXT)
endif
ifeq ($(SO_LIB), Y)
-rm -f $(LIB_DIR)/$(LIBPREFIX)$(LIB_TARGET).$(SHLIBEXT)
endif
ifeq ($(PIC_LIB), Y)
-rm -f $(LIB_DIR)/$(LIBPREFIX)$(LIB_TARGET)_pic.$(LIBEXT)
endif
endif
ifdef BIN_TARGET
-rm -f $(BIN_DIR)/$(BIN_TARGET)
endif
clean_links:
###
#
# Dist clean
#
_distclean: _tidy
rm -rf $(DEPDIR) $(PIC_DIR) $(PIC_TMP_DIR) $(SO_TMP_DIR) $(A_TMP_DIR) Sources build.spec
###
#
# tidy
#
_tidy: _cleanall _clean_dep
-rm -f *~ *.$(OBJEXT) *.$(LIBEXT) *.${SHLIBEXT}
#
# clean cleanall tidy - recursion
#
ifeq ($(findstring clean,$(replace-targets)),)
clean: _clean $(patsubst %, _clean_%, $(A_DIRS))
endif
$(patsubst %, _clean_%, $(A_DIRS)) : DUMMY
$(MAKE) -C $(patsubst _clean_%,%,$@) clean
cleanall: _cleanall $(patsubst %, _cleanall_%, $(A_DIRS))
$(patsubst %, _cleanall_%, $(A_DIRS)) : DUMMY
$(MAKE) -C $(patsubst _cleanall_%,%,$@) cleanall
tidy: _tidy $(patsubst %, _tidy_%, $(A_DIRS))
$(patsubst %, _tidy_%, $(A_DIRS)) : DUMMY
$(MAKE) -C $(patsubst _tidy_%,%,$@) tidy
distclean: _distclean $(patsubst %, _distclean_%, $(A_DIRS))
$(patsubst %, _distclean_%, $(A_DIRS)) : DUMMY
$(MAKE) -C $(patsubst _distclean_%,%,$@) distclean
###
#
# Guess configuration
$(NDB_TOP)/config/config.mk: $(NDB_TOP)/config/GuessConfig.sh
$(NDB_TOP)/config/GuessConfig.sh -D
$(NDB_TOP)/config/Defs....mk: $(NDB_TOP)/config/config.mk
$(NDB_TOP)/config/Defs..mk: $(NDB_TOP)/config/config.mk
###
# Soft ose envirment stuff
#
osemain.con: $(NDB_TOP)/src/env/softose/osemain_con.org
cp $< $@
echo "PRI_PROC(init_$(BIN_TARGET), init_$(BIN_TARGET), 65535, 3, ndb, 0, NULL)" >> $@
osemain.c: $(OSE_LOC)/sfk-solaris2/krn-solaris2/src/osemain.c
ln -s $< $@
osemain.o : osemain.con
$(DEPDIR)/osemain.d : osemain.con
###
#
# These target dont want dependencies
NO_DEP=clean clobber cleanall tidy clean_dep $(DEPDIR) build_spec \
$(NDB_TOP)/config/config.mk distclean osemain.con osemain.c
ifeq ($(filter $(NO_DEP), $(MAKECMDGOALS)),)
ifneq ($(strip $(DEPENDENCIES)),)
include $(DEPMK)
endif
endif
###
#
# Auxiliary targets
sources: Sources
Sources: Makefile
@rm -f $@
@for f in Makefile $(A_DIRS) $(SOURCES) $(SOURCES.c); do echo $$f; done >$@
###
#
# TAG generation for emacs and vi folks
#
# In emacs "Esc- ." or "M- ." to find a symbol location
# In vi use the :\tag command
# by convention:
# TAGS is used with emacs
# tags is used with vi
#
# Hopefully the make is being done from $(NDB_TOP)/src
# and your TAGS/tags file then is in the same directory.
TAGS: DUMMY
rm -f TAGS
find $(NDB_TOP) -name "*.[ch]" | xargs $(ETAGS) --append
find $(NDB_TOP) -name "*.[ch]pp" | xargs $(ETAGS) --append
tags: DUMMY
rm -f tags
find $(NDB_TOP) -name "*.[ch]" | xargs $(CTAGS) --append
find $(NDB_TOP) -name "*.[ch]pp" | xargs $(CTAGS) --append
install:
ebrowse: DUMMY
cd $(NDB_TOP); rm -f EBROWSE
cd $(NDB_TOP); find . -name "*.hpp" -or -name "*.cpp" -or -name "*.h" -or -name "*.c" > tmpfile~
cd $(NDB_TOP); ebrowse --file tmpfile~
cd $(NDB_TOP); rm -f tmpfile~
srcdir = $(NDB_TOP)
top_distdir = $(NDB_TOP)/..
mkinstalldirs := /bin/sh ../mkinstalldirs
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)/ndb
distdir:
$(mkinstalldirs) $(distdir)
@list='$(shell /bin/sh SrcDist.sh)'; for file in $$list; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkinstalldirs) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -f $$d/$$file; then \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
|| exit 1; \
fi; \
done

View File

@ -1,69 +0,0 @@
include .defs.mk
DIRS := src test tools examples
# hack before full autoconf
replace-targets := all clean
NDB_RELEASE := $(shell ../scripts/mysql_config --version)
all:
$(MAKE) -j 1 -C src
$(MAKE) -j 1 -C test/src
$(MAKE) -j 1 -C tools
$(MAKE) -j 1 -C test/ndbapi/flexBench
$(MAKE) -j 1 -C test/tools/waiter
include $(NDB_TOP)/Epilogue.mk
_libs_test : _bins_src
_libs_tools : _libs_test
_libs_examples : _bins_src
_bins_src : _libs_src
_bins_tools : _bins_src
# always release compile except for ndbapi static lib
old-all:
$(MAKE) -C src/ndbapi libs
$(MAKE) libs NDB_VERSION=RELEASE
$(MAKE) bins NDB_VERSION=RELEASE
ifeq ($(NDB_OS),LINUX)
NDB_RELEASE=$(NDB_RELEASE) $(MAKE) -j1 -C docs all </dev/null || :
endif
# old distclean matches clean better
clean: distclean
$(MAKE) -C docs clean
nuke-deps:
find . -name '.depend*' | xargs rm -rf
vim-tags:
bk sfiles -g | ctags --c-types=+p --extra=+fq -L -
cvs-update:
ifeq ($(NDB_VERSION),main)
-cvs update -d
else
ifeq ($(NDB_TAG),HEAD)
-cvs -q update
-cd include && cvs -q update -d
-cd src && cvs -q update -d
-cd test && cvs -q update -d
-cd tools && cvs -q update -d
else
-cvs -q update -r $(NDB_TAG)
-cd include && cvs -q update -d -r $(NDB_TAG)
-cd src && cvs -q update -d -r $(NDB_TAG)
-cd test && cvs -q update -d -r $(NDB_TAG)
-cd tools && cvs -q update -d -r $(NDB_TAG)
endif
endif
make nuke-deps
make vim-tags
make TAGS
bk-update:
bk pull
make nuke-deps
make vim-tags
make TAGS

View File

@ -1,7 +0,0 @@
INSTALLATION
To compile a pentium version of MySQL Cluster from this BK clone do:
shell> cd /home/bk/mysql-4.1-ndb
shell> BUILD/compile-pentium-debug -c --prefix=/usr/local/mysql-4.1-ndb
shell> make

View File

@ -1,87 +0,0 @@
#
# Invoked from make distdir.
# Prints list of dirs and files to include under mysql/ndb.
#
# top dir
grep -v '^#' <<__END__
#ReleaseNotes.html
.defs.mk
Defs.mk
configure
Makefile
Epilogue.mk
SrcDist.sh
BinDist.sh
mysqlclusterenv.sh
__END__
# subset of bins, libs
grep -v '^#' <<__END__
bin/
bin/mysqlcluster
bin/mysqlcluster_install_db
bin/mysqlclusterd
lib/
__END__
# docs
#find docs/*.html docs/*.pdf -print
# include
find include -print | grep -v /SCCS
# config
find config -print | grep -v /SCCS
# tools
find tools -print | grep -v /SCCS | grep -v '\.o' | grep -v '\.depend' | grep -v tools/ndbsql
# home
find home -print | grep -v /SCCS
# test
find test -print | grep -v /SCCS | grep -v '\.o' | grep -v '\.depend' | grep -v test/odbc
# src
find src -print | grep -v /SCCS | grep -v '\.o' | grep -v '\.depend' | grep -v src/client/odbc | grep -v cpcc-win32
# demos
find demos -print | grep -v /SCCS | grep -v '\.o' | grep -v '\.depend'
# examples
grep -v '^#' <<__END__
examples/
examples/Makefile
examples/ndbapi_example1/
examples/ndbapi_example1/Makefile
examples/ndbapi_example1/ndbapi_example1.cpp
examples/ndbapi_example2/
examples/ndbapi_example2/Makefile
examples/ndbapi_example2/ndbapi_example2.cpp
examples/ndbapi_example3/
examples/ndbapi_example3/Makefile
examples/ndbapi_example3/ndbapi_example3.cpp
examples/ndbapi_example4/
examples/ndbapi_example4/Makefile
examples/ndbapi_example4/ndbapi_example4.cpp
examples/ndbapi_example5/
examples/ndbapi_example5/Makefile
examples/ndbapi_example5/ndbapi_example5.cpp
examples/select_all/
examples/select_all/Makefile
examples/select_all/select_all.cpp
__END__
exit 0

View File

@ -1,33 +0,0 @@
#! /bin/sh
if [ $# -gt 0 -a "$1" = "-p" ]
then
shift
NDB_TOP=$1
shift
else
NDB_TOP=`pwd`
fi
cd $NDB_TOP
NDB_TOP=`pwd`
for i in `find . -name 'Makefile' -exec dirname {} \;`
do
cd $i
rel_path=.
while [ $NDB_TOP != `pwd` ]
do
rel_path=$rel_path"/.."
cd ..
done
(
echo "NDB_TOP=$rel_path"
echo "include $rel_path/Defs.mk"
) > $i/.defs.mk
done
( cd config ; aclocal ; automake ; aclocal ; autoconf ; ./configure )
export NDB_TOP
. config/GuessConfig.sh $*

View File

@ -1,8 +0,0 @@
#
NDB_TOP=`pwd`
export NDB_TOP
NDB_PROJ_HOME=$NDB_TOP/home
export NDB_PROJ_HOME

View File

@ -1,51 +0,0 @@
# Sets necessary environment variables for mysqlcluster install scripts
mytop=
if [ -f bin/mysql ]; then
mytop=`/bin/pwd`
elif [ -f bin/ndb ]; then
mytop=`dirname \`/bin/pwd\``
fi
if [ "$mytop" ]; then
MYSQLCLUSTER_TOP=$mytop
PATH=$MYSQLCLUSTER_TOP/bin:$MYSQLCLUSTER_TOP/ndb/bin:$PATH
LD_LIBRARY_PATH=$MYSQLCLUSTER_TOP/lib:$LD_LIBRARY_PATH
LD_LIBRARY_PATH=$MYSQLCLUSTER_TOP/ndb/lib:$LD_LIBRARY_PATH
export MYSQLCLUSTER_TOP PATH LD_LIBRARY_PATH
else
if [ -d SCCS ]; then
if [ -f ndb/mysqlclusterenv.sh ]; then
mytop=`/bin/pwd`
elif [ -f mysqlclusterenv.sh ]; then
mytop=`dirname \`/bin/pwd\``
fi
fi
if [ "$mytop" ]; then
# we're in the development tree
if [ "$REAL_EMAIL" ]; then :; else
#Guessing REAL_EMAIL
REAL_EMAIL=`whoami`@mysql.com
export REAL_EMAIL
echo Setting REAL_EMAIL=$REAL_EMAIL
fi
MYSQLCLUSTER_TOP=$mytop
NDB_TOP=$MYSQLCLUSTER_TOP/ndb
export NDB_TOP
NDB_PROJ_HOME=$NDB_TOP/home
export NDB_PROJ_HOME
PATH=$MYSQLCLUSTER_TOP/ndb/bin:$MYSQLCLUSTER_TOP/ndb/home/bin:$PATH
PATH=$MYSQLCLUSTER_TOP/client:$PATH
PATH=$MYSQLCLUSTER_TOP/sql:$PATH
LD_LIBRARY_PATH=$MYSQLCLUSTER_TOP/libmysql:$LD_LIBRARY_PATH
LD_LIBRARY_PATH=$MYSQLCLUSTER_TOP/libmysqld:$LD_LIBRARY_PATH
LD_LIBRARY_PATH=$MYSQLCLUSTER_TOP/ndb/lib:$LD_LIBRARY_PATH
LD_LIBRARY_PATH=$MYSQLCLUSTER_TOP/libmysql_r/.libs:$LD_LIBRARY_PATH
export MYSQLCLUSTER_TOP PATH LD_LIBRARY_PATH
else
echo "Please source this file (mysqlclusterenv.sh) from installation top directory"
fi
fi
mytop=

View File

@ -104,8 +104,9 @@ int
RestoreMetaData::loadContent() RestoreMetaData::loadContent()
{ {
Uint32 noOfTables = readMetaTableList(); Uint32 noOfTables = readMetaTableList();
if(noOfTables == 0) if(noOfTables == 0) {
return -3; return 1;
}
for(Uint32 i = 0; i<noOfTables; i++){ for(Uint32 i = 0; i<noOfTables; i++){
if(!readMetaTableDesc()){ if(!readMetaTableDesc()){
return 0; return 0;
@ -201,187 +202,45 @@ RestoreMetaData::readGCPEntry() {
return true; return true;
} }
TableS::TableS(NdbTableImpl* tableImpl)
: m_dictTable(tableImpl)
{
m_dictTable = tableImpl;
m_noOfNullable = m_nullBitmaskSize = 0;
struct tmpTableS { for (Uint32 i = 0; i < tableImpl->getNoOfColumns(); i++)
Uint32 tableId; createAttr(tableImpl->getColumn(i));
Uint32 schemaVersion; }
Uint32 noOfAttributes;
}; // tmpTableS
static const
SimpleProperties::SP2StructMapping
RestoreTabMap[] = {
// Map the basic stuff to begin with
DTIMAP(tmpTableS, TableId, tableId),
DTIMAP(tmpTableS, TableVersion, schemaVersion),
DTIMAP(tmpTableS, NoOfAttributes, noOfAttributes),
DTIBREAK(AttributeName)
}; // RestoreTabMap
static const Uint32
TabMapSize = sizeof(RestoreTabMap)
/ sizeof(SimpleProperties::SP2StructMapping);
/**
* Use a temporary struct to keep variables in AttributeDesc private
* and DTIMAP requires all Uint32
*/
struct tmpAttrS {
// Just the basic needed stuff is yet implemented
char name[AttrNameLenC];
Uint32 attrId;
Uint32 type;
Uint32 nullable;
Uint32 key;
Uint32 size;
Uint32 arraySize;
};
static const
SimpleProperties::SP2StructMapping
RestoreAttrMap[] = {
// Map the most basic properties
DTIMAP(tmpAttrS, AttributeId, attrId),
DTIMAP(tmpAttrS, AttributeType, type),
DTIMAP(tmpAttrS, AttributeNullableFlag, nullable),
DTIMAP(tmpAttrS, AttributeKeyFlag, key),
DTIMAP(tmpAttrS, AttributeSize, size),
DTIMAP(tmpAttrS, AttributeArraySize, arraySize),
DTIBREAK(AttributeEnd)
}; // RestoreAttrMap
static const Uint32
AttrMapSize = sizeof(RestoreAttrMap)
/ sizeof(SimpleProperties::SP2StructMapping);
// Parse dictTabInfo buffer and pushback to to vector storage // Parse dictTabInfo buffer and pushback to to vector storage
// Using SimpleProperties (here we don't need ntohl, ref:ejonore)
bool bool
RestoreMetaData::parseTableDescriptor(const Uint32 * data, Uint32 len) RestoreMetaData::parseTableDescriptor(const Uint32 * data, Uint32 len)
{ {
SimplePropertiesLinearReader it(data, len);
SimpleProperties::UnpackStatus spStatus;
// Parse table name
if (it.getKey() != DictTabInfo::TableName) {
err << "readMetaTableDesc getKey table name error" << endl;
return false;
} // if
char tableName[MAX_TAB_NAME_SIZE*2]; // * 2 for db and schema.-.
it.getString(tableName);
if (strlen(tableName) == 0) {
err << "readMetaTableDesc getString table name error" << endl;
return false;
} // if
TableS * table = new TableS(tableName);
if(table == NULL) {
return false;
}
table->setBackupVersion(m_fileHeader.NdbVersion);
tmpTableS tmpTable;
spStatus = SimpleProperties::unpack(it, &tmpTable,
RestoreTabMap, TabMapSize, true, true);
if ((spStatus != SimpleProperties::Break) ||
it.getKey() != DictTabInfo::AttributeName) {
err << "readMetaTableDesc sp.unpack error" << endl;
delete table;
return false;
} // if
debug << "Parsed table id " << tmpTable.tableId << endl;
table->setTableId(tmpTable.tableId);
debug << "Parsed table #attr " << tmpTable.noOfAttributes << endl;
debug << "Parsed table schema version not used " << endl;
for (Uint32 i = 0; i < tmpTable.noOfAttributes; i++) {
if (it.getKey() != DictTabInfo::AttributeName) {
err << "readMetaTableDesc error " << endl;
delete table;
return false;
} // if
tmpAttrS tmpAttr;
if(it.getValueLen() > AttrNameLenC){
err << "readMetaTableDesc attribute name too long??" << endl;
delete table;
return false;
}
it.getString(tmpAttr.name);
spStatus = SimpleProperties::unpack(it, &tmpAttr, RestoreAttrMap,
AttrMapSize, true, true);
if ((spStatus != SimpleProperties::Break) ||
(it.getKey() != DictTabInfo::AttributeEnd)) {
err << "readMetaTableDesc sp unpack attribute " << i << " error"
<< endl;
delete table;
return false;
} // if
debug << "Creating attribute " << i << " " << tmpAttr.name << endl;
bool thisNullable = (bool)(tmpAttr.nullable); // Really not needed (now)
KeyType thisKey = (KeyType)(tmpAttr.key); // These are identical (right now)
// Convert attribute size from enum to Uint32
// The static consts are really enum taking the value in DictTabInfo
// e.g. 3 is not ...0011 but rather ...0100
//TODO: rather do a switch if the constants should change
Uint32 thisSize = 1 << tmpAttr.size;
// Convert attribute type to AttrType
AttrType thisType;
switch (tmpAttr.type) {
case 0: // SignedType
thisType = Signed;
break;
case 1: // UnSignedType
thisType = UnSigned;
break;
case 2: // FloatingPointType
thisType = Float;
break;
case 3: // StringType:
debug << "String type detected " << endl;
thisType = String;
break;
default:
// What, default to unsigned?
thisType = UnSigned;
break;
} // switch
/* ndbout_c << " type: " << thisType << " size: " << thisSize <<" arraySize: "
<< tmpAttr.arraySize << " nullable: " << thisNullable << " key: "
<< thisKey << endl;
*/
table->createAttr(tmpAttr.name, thisType,
thisSize, tmpAttr.arraySize,
thisNullable, thisKey);
if (!it.next()) {
break;
// Check number of created attributes and compare with expected
//ndbout << "readMetaTableDesc expecting more attributes" << endl;
//return false;
} // if
} // for
debug << "Pushing table " << tableName << endl;
debug << " with " << table->getNoOfAttributes() << " attributes" << endl;
allTables.push_back(table);
NdbTableImpl* tableImpl = 0; NdbTableImpl* tableImpl = 0;
int ret = NdbDictInterface::parseTableInfo(&tableImpl, data, len, false); int ret = NdbDictInterface::parseTableInfo(&tableImpl, data, len, false);
if (ret != 0) { if (ret != 0) {
err << "parseTableInfo " << tableName << " failed" << endl; err << "parseTableInfo " << " failed" << endl;
return false; return false;
} }
if(tableImpl == 0) if(tableImpl == 0)
return false; return false;
debug << "parseTableInfo " << tableName << " done" << endl;
table->m_dictTable = tableImpl; debug << "parseTableInfo " << tableImpl->getName() << " done" << endl;
TableS * table = new TableS(tableImpl);
if(table == NULL) {
return false;
}
table->setBackupVersion(m_fileHeader.NdbVersion);
debug << "Parsed table id " << table->getTableId() << endl;
debug << "Parsed table #attr " << table->getNoOfAttributes() << endl;
debug << "Parsed table schema version not used " << endl;
debug << "Pushing table " << table->getTableName() << endl;
debug << " with " << table->getNoOfAttributes() << " attributes" << endl;
allTables.push_back(table);
return true; return true;
} }
@ -509,7 +368,7 @@ RestoreDataIterator::getNextTuple(int & res) {
const Uint32 attrId = m_currentTable->m_variableAttribs[i]->attrId; const Uint32 attrId = m_currentTable->m_variableAttribs[i]->attrId;
AttributeS * attr = tup->allAttributes[attrId]; AttributeS * attr = tup->allAttributes[attrId];
if(attr->Desc->nullable){ if(attr->Desc->m_column->getNullable()){
const Uint32 ind = attr->Desc->m_nullBitIndex; const Uint32 ind = attr->Desc->m_nullBitIndex;
if(BitmaskImpl::get(m_currentTable->m_nullBitmaskSize, if(BitmaskImpl::get(m_currentTable->m_nullBitmaskSize,
tup->getDataRecord(),ind)){ tup->getDataRecord(),ind)){
@ -755,44 +614,39 @@ RestoreDataIterator::validateFragmentFooter() {
return true; return true;
} // RestoreDataIterator::getFragmentFooter } // RestoreDataIterator::getFragmentFooter
void TableS::createAttr(const char* name, AttributeDesc::AttributeDesc(NdbDictionary::Column *c)
const AttrType type, : m_column(c)
const unsigned int size, // in bytes
const unsigned int arraySize,
const bool nullable,
const KeyType key)
{ {
AttributeDesc desc; size = c->getSize()*8;
arraySize = c->getLength();
}
strncpy(desc.name, name, AttrNameLenC); void TableS::createAttr(NdbDictionary::Column *column)
desc.type = type; {
desc.size = size; AttributeDesc * d = new AttributeDesc(column);
desc.arraySize = arraySize;
desc.nullable = nullable;
desc.key = key;
desc.attrId = allAttributesDesc.size();
AttributeDesc * d = new AttributeDesc(desc);
if(d == NULL) { if(d == NULL) {
ndbout_c("Restore: Failed to allocate memory"); ndbout_c("Restore: Failed to allocate memory");
abort(); abort();
} }
d->m_table = this; d->attrId = allAttributesDesc.size();
allAttributesDesc.push_back(d); allAttributesDesc.push_back(d);
if(desc.key != NoKey /* && not variable */){ if(d->m_column->getPrimaryKey() /* && not variable */)
{
m_fixedKeys.push_back(d); m_fixedKeys.push_back(d);
return; return;
} }
if(!nullable){
if(!d->m_column->getNullable())
{
m_fixedAttribs.push_back(d); m_fixedAttribs.push_back(d);
return; return;
} }
if(nullable){
d->m_nullBitIndex = m_noOfNullable; /* Nullable attr*/
m_noOfNullable++; d->m_nullBitIndex = m_noOfNullable;
m_nullBitmaskSize = (m_noOfNullable + 31) / 32; m_noOfNullable++;
} m_nullBitmaskSize = (m_noOfNullable + 31) / 32;
m_variableAttribs.push_back(d); m_variableAttribs.push_back(d);
} // TableS::createAttr } // TableS::createAttr

View File

@ -20,7 +20,6 @@
#include <ndb_global.h> #include <ndb_global.h>
#include <BackupFormat.hpp> #include <BackupFormat.hpp>
#include <NdbApi.hpp> #include <NdbApi.hpp>
#include <NdbSchemaCon.hpp>
#include "myVector.hpp" #include "myVector.hpp"
#include <ndb_version.h> #include <ndb_version.h>
@ -62,29 +61,22 @@ struct AttributeData {
struct AttributeDesc { struct AttributeDesc {
//private: //private:
// TODO (sometimes): use a temporary variable in DTIMAP so we can
// hide AttributeDesc private variables
friend class TupleS; friend class TupleS;
friend class TableS; friend class TableS;
friend class RestoreDataIterator; friend class RestoreDataIterator;
friend class RestoreMetaData; friend class RestoreMetaData;
friend struct AttributeS; friend struct AttributeS;
char name[AttrNameLenC];
Uint32 attrId;
AttrType type;
bool nullable;
KeyType key;
Uint32 size; // bits Uint32 size; // bits
Uint32 arraySize; Uint32 arraySize;
Uint32 attrId;
NdbDictionary::Column *m_column;
Uint32 m_nullBitIndex; Uint32 m_nullBitIndex;
public: public:
AttributeDesc() { AttributeDesc(NdbDictionary::Column *column);
name[0] = 0; AttributeDesc();
}
const TableS * m_table;
Uint32 getSizeInWords() const { return (size * arraySize + 31)/ 32;} Uint32 getSizeInWords() const { return (size * arraySize + 31)/ 32;}
}; // AttributeDesc }; // AttributeDesc
@ -118,8 +110,6 @@ class TableS {
friend class RestoreMetaData; friend class RestoreMetaData;
friend class RestoreDataIterator; friend class RestoreDataIterator;
Uint32 tableId;
char tableName[TableNameLenC];
Uint32 schemaVersion; Uint32 schemaVersion;
Uint32 backupVersion; Uint32 backupVersion;
myVector<AttributeDesc *> allAttributesDesc; myVector<AttributeDesc *> allAttributesDesc;
@ -138,26 +128,14 @@ class TableS {
char mysqlDatabaseName[1024]; char mysqlDatabaseName[1024];
*/ */
void createAttr(const char* name, void createAttr(NdbDictionary::Column *column);
const AttrType type,
const unsigned int size, // in bits
const unsigned int arraySize,
const bool nullable,
const KeyType key);
public: public:
class NdbDictionary::Table* m_dictTable; class NdbDictionary::Table* m_dictTable;
TableS (const char * name){ TableS (class NdbTableImpl* dictTable);
snprintf(tableName, sizeof(tableName), name);
m_noOfNullable = m_nullBitmaskSize = 0;
}
void setTableId (Uint32 id) {
tableId = id;
}
Uint32 getTableId() const { Uint32 getTableId() const {
return tableId; return m_dictTable->getTableId();
} }
/* /*
void setMysqlTableName(char * tableName) { void setMysqlTableName(char * tableName) {
@ -174,7 +152,6 @@ public:
void setBackupVersion(Uint32 version) { void setBackupVersion(Uint32 version) {
backupVersion = version; backupVersion = version;
} }
Uint32 getBackupVersion() const { Uint32 getBackupVersion() const {
return backupVersion; return backupVersion;

View File

@ -96,7 +96,9 @@ public:
virtual void logEntry(const LogEntry &){} virtual void logEntry(const LogEntry &){}
virtual void endOfLogEntrys(){} virtual void endOfLogEntrys(){}
protected: protected:
#ifdef USE_MYSQL
int create_table_string(const TableS & table, char * ,char *); int create_table_string(const TableS & table, char * ,char *);
#endif
}; };
class BackupPrinter : public BackupConsumer class BackupPrinter : public BackupConsumer
@ -361,7 +363,7 @@ main(int argc, const char** argv)
return -1; return -1;
} }
if (res == -3) if (metaData.getNoOfTables() == 0)
{ {
ndbout_c("Restore: The backup contains no tables "); ndbout_c("Restore: The backup contains no tables ");
return -1; return -1;
@ -505,7 +507,7 @@ main(int argc, const char** argv)
NdbOut & NdbOut &
operator<<(NdbOut& ndbout, const AttributeS& attr){ operator<<(NdbOut& ndbout, const AttributeS& attr){
const AttributeData & data = attr.Data; const AttributeData & data = attr.Data;
const AttributeDesc & desc = * attr.Desc; const AttributeDesc & desc = *attr.Desc;
if (data.null) if (data.null)
{ {
@ -513,89 +515,10 @@ operator<<(NdbOut& ndbout, const AttributeS& attr){
return ndbout; return ndbout;
} }
if (desc.arraySize > 1) NdbRecAttr tmprec;
ndbout << "[ "; tmprec.setup(desc.m_column, (char *)data.void_value);
for (Uint32 j = 0; j < desc.arraySize; j++) ndbout << tmprec;
{
// Print strings without spaces,
// (but ndbout char does not work as expected, see below)
switch (desc.type)
{
case Signed:
switch (desc.size)
{
case 8:
ndbout << (short)data.int8_value[j];
break;
case 16:
ndbout << data.int16_value[j];
break;
case 32:
ndbout << data.int32_value[j];
break;
case 64:
ndbout << data.int64_value[j];
break;
case 128:
ndbout << "Signed sz = 128 - this is something wrong??" << endl;
break;
default:
// Unknown, error
break;
} // switch size
break;
case UnSigned:
switch (desc.size)
{
case 8:
ndbout << (short)data.u_int8_value[j];
break;
case 16:
ndbout << data.u_int16_value[j];
break;
case 32:
ndbout << data.u_int32_value[j];
break;
case 64:
ndbout << data.u_int64_value[j];
break;
case 128:
ndbout << "UnSigned sz = 128 - this is something wrong??" << endl;
break;
default:
// Unknown, error
break;
} // switch size
break;
case String:
if (desc.size == 8){
NdbDictionary::Column::Type type = desc.m_table->m_dictTable->getColumn(desc.attrId)->getType();
if(type == NdbDictionary::Column::Varchar){
short len = ntohs(data.u_int16_value[0]);
ndbout.print("%.*s", len, (data.string_value+2));
} else {
ndbout << data.string_value;
}
} // if
else
{
ndbout << "String sz != 8 - this is something wrong??" << endl;
}
j = desc.arraySize;
break;
case Float:
// Not yet supported to print float
ndbout << "float";
break;
default:
ndbout << "Not defined Attr Type";
} // switch AttrType
ndbout << " ";
} // for ArraySize
if (desc.arraySize > 1)
{
ndbout << "]";
}
return ndbout; return ndbout;
} }
@ -607,7 +530,7 @@ operator<<(NdbOut& ndbout, const TupleS& tuple)
for (int i = 0; i < tuple.getNoOfAttributes(); i++) for (int i = 0; i < tuple.getNoOfAttributes(); i++)
{ {
const AttributeS * attr = tuple[i]; const AttributeS * attr = tuple[i];
debug << i << " " << attr->Desc->name; debug << i << " " << attr->Desc->m_column->getName();
ndbout << (* attr); ndbout << (* attr);
if (i != (tuple.getNoOfAttributes() - 1)) if (i != (tuple.getNoOfAttributes() - 1))
@ -638,7 +561,7 @@ operator<<(NdbOut& ndbout, const LogEntry& logE)
for (int i = 0; i < logE.m_values.size();i++) for (int i = 0; i < logE.m_values.size();i++)
{ {
const AttributeS * attr = logE.m_values[i]; const AttributeS * attr = logE.m_values[i];
ndbout << attr->Desc->name << "="; ndbout << attr->Desc->m_column->getName() << "=";
ndbout << (* attr); ndbout << (* attr);
if (i < (logE.m_values.size() - 1)) if (i < (logE.m_values.size() - 1))
ndbout << ", "; ndbout << ", ";
@ -653,55 +576,8 @@ operator<<(NdbOut& ndbout, const TableS & table){
for (int j = 0; j < table.getNoOfAttributes(); j++) for (int j = 0; j < table.getNoOfAttributes(); j++)
{ {
const AttributeDesc * desc = table[j]; const AttributeDesc * desc = table[j];
ndbout << desc->name << ": "; ndbout << desc->m_column->getName() << ": " << desc->m_column->getType();
NdbDictionary::Column::Type type = table.m_dictTable->getColumn(desc->attrId)->getType(); ndbout << " key: " << desc->m_column->getPrimaryKey();
switch(type){
case NdbDictionary::Column::Int:
ndbout << "Int ";
break;
case NdbDictionary::Column::Unsigned:
ndbout << "Unsigned ";
break;
case NdbDictionary::Column::Float:
ndbout << "Float ";
break;
case NdbDictionary::Column::Decimal:
ndbout << "Decimal ";
break;
case NdbDictionary::Column::Char:
ndbout << "Char ";
break;
case NdbDictionary::Column::Varchar:
ndbout << "Varchar ";
break;
case NdbDictionary::Column::Binary:
ndbout << "Binary ";
break;
case NdbDictionary::Column::Varbinary:
ndbout << "Varbinary ";
break;
case NdbDictionary::Column::Bigint:
ndbout << "Bigint ";
break;
case NdbDictionary::Column::Bigunsigned:
ndbout << "Bigunsigned ";
break;
case NdbDictionary::Column::Double:
ndbout << "Double ";
break;
case NdbDictionary::Column::Datetime:
ndbout << "Datetime ";
break;
case NdbDictionary::Column::Timespec:
ndbout << "Timespec ";
break;
case NdbDictionary::Column::Undefined:
ndbout << "Undefined ";
break;
default:
ndbout << "Unknown(" << type << ")";
}
ndbout << " key: " << desc->key;
ndbout << " array: " << desc->arraySize; ndbout << " array: " << desc->arraySize;
ndbout << " size: " << desc->size << endl; ndbout << " size: " << desc->size << endl;
} // for } // for
@ -973,7 +849,6 @@ BackupRestore::table(const TableS & table, MYSQL * mysqlp){
return true; return true;
} }
#endif
int int
BackupConsumer::create_table_string(const TableS & table, BackupConsumer::create_table_string(const TableS & table,
@ -991,9 +866,8 @@ BackupConsumer::create_table_string(const TableS & table,
{ {
const AttributeDesc * desc = table[j]; const AttributeDesc * desc = table[j];
// ndbout << desc->name << ": "; // ndbout << desc->name << ": ";
pos += sprintf(buf+pos, "%s%s", desc->name," "); pos += sprintf(buf+pos, "%s%s", desc->m_column->getName()," ");
NdbDictionary::Column::Type type = table.m_dictTable->getColumn(desc->attrId)->getType(); switch(desc->m_column->getType()){
switch(type){
case NdbDictionary::Column::Int: case NdbDictionary::Column::Int:
pos += sprintf(buf+pos, "%s", "int"); pos += sprintf(buf+pos, "%s", "int");
break; break;
@ -1048,9 +922,9 @@ BackupConsumer::create_table_string(const TableS & table,
attrSize, attrSize,
")"); ")");
} }
if (table.m_dictTable->getColumn(desc->attrId)->getPrimaryKey()) { if (desc->m_column->getPrimaryKey()) {
pos += sprintf(buf+pos, "%s", " not null"); pos += sprintf(buf+pos, "%s", " not null");
pos2 += sprintf(buf2+pos2, "%s%s", desc->name, ","); pos2 += sprintf(buf2+pos2, "%s%s", desc->m_column->getName(), ",");
} }
pos += sprintf(buf+pos, "%s", ","); pos += sprintf(buf+pos, "%s", ",");
} // for } // for
@ -1063,6 +937,7 @@ BackupConsumer::create_table_string(const TableS & table,
return 0; return 0;
} }
#endif // USE_MYSQL
bool bool
@ -1198,10 +1073,9 @@ void BackupRestore::tupleAsynch(const TupleS & tup, restore_callback_t * cbData)
const AttributeS * attr = tup[i]; const AttributeS * attr = tup[i];
int size = attr->Desc->size; int size = attr->Desc->size;
int arraySize = attr->Desc->arraySize; int arraySize = attr->Desc->arraySize;
const KeyType key = attr->Desc->key;
char * dataPtr = attr->Data.string_value; char * dataPtr = attr->Data.string_value;
Uint32 length = (size * arraySize) / 8; Uint32 length = (size * arraySize) / 8;
if (key == TupleKey) if (attr->Desc->m_column->getPrimaryKey())
{ {
ret = op->equal(i, dataPtr, length); ret = op->equal(i, dataPtr, length);
if (ret<0) if (ret<0)
@ -1224,14 +1098,14 @@ void BackupRestore::tupleAsynch(const TupleS & tup, restore_callback_t * cbData)
const AttributeS * attr = tup[i]; const AttributeS * attr = tup[i];
int size = attr->Desc->size; int size = attr->Desc->size;
int arraySize = attr->Desc->arraySize; int arraySize = attr->Desc->arraySize;
KeyType key = attr->Desc->key;
char * dataPtr = attr->Data.string_value; char * dataPtr = attr->Data.string_value;
Uint32 length = (size * arraySize) / 8; Uint32 length = (size * arraySize) / 8;
if (key == NoKey && !attr->Data.null) if (!attr->Desc->m_column->getPrimaryKey())
ret = op->setValue(i, dataPtr, length); if (attr->Data.null)
else if (key == NoKey && attr->Data.null)
ret = op->setValue(i, NULL, 0); ret = op->setValue(i, NULL, 0);
else
ret = op->setValue(i, dataPtr, length);
if (ret<0) if (ret<0)
{ {
@ -1372,14 +1246,11 @@ BackupRestore::tuple(const TupleS & tup)
const AttributeS * attr = tup[i]; const AttributeS * attr = tup[i];
int size = attr->Desc->size; int size = attr->Desc->size;
int arraySize = attr->Desc->arraySize; int arraySize = attr->Desc->arraySize;
KeyType key = attr->Desc->key;
const char * dataPtr = attr->Data.string_value; const char * dataPtr = attr->Data.string_value;
const Uint32 length = (size * arraySize) / 8; const Uint32 length = (size * arraySize) / 8;
if (key == TupleKey) if (attr->Desc->m_column->getPrimaryKey())
{ op->equal(i, dataPtr, length);
op->equal(i, dataPtr, length);
}
} }
for (int i = 0; i < tup.getNoOfAttributes(); i++) for (int i = 0; i < tup.getNoOfAttributes(); i++)
@ -1387,18 +1258,14 @@ BackupRestore::tuple(const TupleS & tup)
const AttributeS * attr = tup[i]; const AttributeS * attr = tup[i];
int size = attr->Desc->size; int size = attr->Desc->size;
int arraySize = attr->Desc->arraySize; int arraySize = attr->Desc->arraySize;
KeyType key = attr->Desc->key;
const char * dataPtr = attr->Data.string_value; const char * dataPtr = attr->Data.string_value;
const Uint32 length = (size * arraySize) / 8; const Uint32 length = (size * arraySize) / 8;
if (key == NoKey && !attr->Data.null) if (!attr->Desc->m_column->getPrimaryKey())
{ if (attr->Data.null)
op->setValue(i, dataPtr, length); op->setValue(i, NULL, 0);
} else
else if (key == NoKey && attr->Data.null) op->setValue(i, dataPtr, length);
{
op->setValue(i, NULL, 0);
}
} }
int ret = trans->execute(Commit); int ret = trans->execute(Commit);
if (ret != 0) if (ret != 0)
@ -1475,18 +1342,13 @@ BackupRestore::logEntry(const LogEntry & tup)
const AttributeS * attr = tup.m_values[i]; const AttributeS * attr = tup.m_values[i];
int size = attr->Desc->size; int size = attr->Desc->size;
int arraySize = attr->Desc->arraySize; int arraySize = attr->Desc->arraySize;
KeyType key = attr->Desc->key;
const char * dataPtr = attr->Data.string_value; const char * dataPtr = attr->Data.string_value;
const Uint32 length = (size / 8) * arraySize; const Uint32 length = (size / 8) * arraySize;
if (key == TupleKey) if (attr->Desc->m_column->getPrimaryKey())
{
op->equal(attr->Desc->attrId, dataPtr, length); op->equal(attr->Desc->attrId, dataPtr, length);
} else
else if (key == NoKey)
{
op->setValue(attr->Desc->attrId, dataPtr, length); op->setValue(attr->Desc->attrId, dataPtr, length);
}
} }
#if 1 #if 1

View File

@ -31,8 +31,6 @@ libndbapi_la_SOURCES = \
NdbEventOperationImpl.cpp \ NdbEventOperationImpl.cpp \
NdbApiSignal.cpp \ NdbApiSignal.cpp \
NdbRecAttr.cpp \ NdbRecAttr.cpp \
NdbSchemaCon.cpp \
NdbSchemaOp.cpp \
NdbUtil.cpp \ NdbUtil.cpp \
NdbReceiver.cpp \ NdbReceiver.cpp \
NdbDictionary.cpp \ NdbDictionary.cpp \

View File

@ -103,6 +103,11 @@ NdbDictionary::Column::getLength() const{
return m_impl.m_length; return m_impl.m_length;
} }
int
NdbDictionary::Column::getSize() const{
return m_impl.m_attrSize;
}
void void
NdbDictionary::Column::setNullable(bool val){ NdbDictionary::Column::setNullable(bool val){
m_impl.m_nullable = val; m_impl.m_nullable = val;
@ -797,3 +802,74 @@ const struct NdbError &
NdbDictionary::Dictionary::getNdbError() const { NdbDictionary::Dictionary::getNdbError() const {
return m_impl.getNdbError(); return m_impl.getNdbError();
} }
NdbOut& operator <<(NdbOut& ndbout, const NdbDictionary::Column::Type type)
{
switch(type){
case NdbDictionary::Column::Bigunsigned:
ndbout << "[Bigunsigned]";
break;
case NdbDictionary::Column::Unsigned:
ndbout << "[Unsigned]";
break;
case NdbDictionary::Column::Smallunsigned:
ndbout << "[Smallunsigned]";
break;
case NdbDictionary::Column::Tinyunsigned:
ndbout << "[Tinyunsigned]";
break;
case NdbDictionary::Column::Bigint:
ndbout << "[Bigint]";
break;
case NdbDictionary::Column::Int:
ndbout << "[Int]";
break;
case NdbDictionary::Column::Smallint:
ndbout << "[Smallint]";
break;
case NdbDictionary::Column::Tinyint:
ndbout << "[Tinyint]";
break;
case NdbDictionary::Column::Char:
ndbout << "[Char]";
break;
case NdbDictionary::Column::Varchar:
ndbout << "[Varchar]";
break;
case NdbDictionary::Column::Float:
ndbout << "[Float]";
break;
case NdbDictionary::Column::Double:
ndbout << "[Double]";
break;
case NdbDictionary::Column::Mediumint:
ndbout << "[Mediumint]";
break;
case NdbDictionary::Column::Mediumunsigned:
ndbout << "[Mediumunsigend]";
break;
case NdbDictionary::Column::Binary:
ndbout << "[Binary]";
break;
case NdbDictionary::Column::Varbinary:
ndbout << "[Varbinary]";
break;
case NdbDictionary::Column::Decimal:
ndbout << "[Decimal]";
break;
case NdbDictionary::Column::Timespec:
ndbout << "[Timespec]";
break;
case NdbDictionary::Column::Blob:
ndbout << "[Blob]";
break;
case NdbDictionary::Column::Undefined:
ndbout << "[Undefined]";
break;
default:
ndbout << "[Unknown type]";
break;
}
return ndbout;
}

View File

@ -30,15 +30,11 @@ Adjust: 971206 UABRONM First version
#include <NdbOut.hpp> #include <NdbOut.hpp>
#include <NdbRecAttr.hpp> #include <NdbRecAttr.hpp>
#include "NdbDictionaryImpl.hpp" #include "NdbDictionaryImpl.hpp"
#include <NdbTCP.h>
NdbRecAttr::NdbRecAttr() : NdbRecAttr::NdbRecAttr()
theStorageX(NULL), {
theValue(NULL), init();
theRef(NULL),
theNext(NULL),
theAttrId(0xFFFF),
theNULLind(-1)
{
} }
NdbRecAttr::~NdbRecAttr() NdbRecAttr::~NdbRecAttr()
@ -46,6 +42,11 @@ NdbRecAttr::~NdbRecAttr()
release(); release();
} }
int
NdbRecAttr::setup(const class NdbDictionary::Column* col, char* aValue)
{
return setup(&(col->m_impl), aValue);
}
int int
NdbRecAttr::setup(const NdbColumnImpl* anAttrInfo, char* aValue) NdbRecAttr::setup(const NdbColumnImpl* anAttrInfo, char* aValue)
{ {
@ -54,6 +55,7 @@ NdbRecAttr::setup(const NdbColumnImpl* anAttrInfo, char* aValue)
Uint32 tAttrByteSize = tAttrSize * tArraySize; Uint32 tAttrByteSize = tAttrSize * tArraySize;
m_column = anAttrInfo; m_column = anAttrInfo;
theAttrId = anAttrInfo->m_attrId; theAttrId = anAttrInfo->m_attrId;
theAttrSize = tAttrSize; theAttrSize = tAttrSize;
theArraySize = tArraySize; theArraySize = tArraySize;
@ -126,7 +128,7 @@ NdbRecAttr::clone() const {
return ret; return ret;
} }
NdbOut& operator <<(NdbOut& ndbout, const NdbRecAttr &r) NdbOut& operator<<(NdbOut& ndbout, const NdbRecAttr &r)
{ {
if (r.isNULL()) if (r.isNULL())
{ {
@ -134,78 +136,69 @@ NdbOut& operator <<(NdbOut& ndbout, const NdbRecAttr &r)
return ndbout; return ndbout;
} }
switch(r.getType()){ if (r.arraySize() > 1)
ndbout << "[";
case NdbDictionary::Column::Bigunsigned: for (Uint32 j = 0; j < r.arraySize(); j++)
ndbout << r.u_64_value(); {
break; if (j > 0)
case NdbDictionary::Column::Unsigned: ndbout << " ";
ndbout << r.u_32_value();
break; switch(r.getType())
case NdbDictionary::Column::Smallunsigned: {
ndbout << r.u_short_value(); case NdbDictionary::Column::Bigunsigned:
break; ndbout << r.u_64_value();
case NdbDictionary::Column::Tinyunsigned: break;
ndbout << (unsigned) r.u_char_value(); case NdbDictionary::Column::Unsigned:
break; ndbout << r.u_32_value();
case NdbDictionary::Column::Bigint: break;
ndbout << r.int64_value(); case NdbDictionary::Column::Smallunsigned:
break; ndbout << r.u_short_value();
case NdbDictionary::Column::Int: break;
ndbout << r.int32_value(); case NdbDictionary::Column::Tinyunsigned:
break; ndbout << (unsigned) r.u_char_value();
case NdbDictionary::Column::Smallint: break;
ndbout << r.short_value(); case NdbDictionary::Column::Bigint:
break; ndbout << r.int64_value();
case NdbDictionary::Column::Tinyint: break;
ndbout << (int) r.char_value(); case NdbDictionary::Column::Int:
break; ndbout << r.int32_value();
break;
case NdbDictionary::Column::Char: case NdbDictionary::Column::Smallint:
case NdbDictionary::Column::Varchar: ndbout << r.short_value();
{ break;
int aSize = r.arraySize(); case NdbDictionary::Column::Tinyint:
char* buf = new char[aSize+1]; ndbout << (int) r.char_value();
memcpy(buf, r.aRef(), aSize); break;
buf[aSize] = 0; case NdbDictionary::Column::Char:
ndbout << buf; ndbout.print("%.*s", r.arraySize(), r.aRef());
delete [] buf; j = r.arraySize();
} break;
break; case NdbDictionary::Column::Varchar:
{
case NdbDictionary::Column::Float: short len = ntohs(r.u_short_value());
ndbout << r.float_value(); ndbout.print("%.*s", len, r.aRef()+2);
break; }
case NdbDictionary::Column::Double: j = r.arraySize();
ndbout << r.double_value(); break;
break; case NdbDictionary::Column::Float:
case NdbDictionary::Column::Mediumint: ndbout << r.float_value();
ndbout << "[Mediumint]"; break;
break; case NdbDictionary::Column::Double:
case NdbDictionary::Column::Mediumunsigned: ndbout << r.double_value();
ndbout << "[Mediumunsigend]"; break;
break; default: /* no print functions for the rest, just print type */
case NdbDictionary::Column::Binary: ndbout << r.getType();
ndbout << "[Binary]"; j = r.arraySize();
break; if (j > 1)
case NdbDictionary::Column::Varbinary: ndbout << " %u times" << j;
ndbout << "[Varbinary]"; break;
break; }
case NdbDictionary::Column::Decimal: }
ndbout << "[Decimal]";
break; if (r.arraySize() > 1)
case NdbDictionary::Column::Timespec: {
ndbout << "[Timespec]"; ndbout << "]";
break;
case NdbDictionary::Column::Blob:
ndbout << "[Blob]";
break;
case NdbDictionary::Column::Undefined:
ndbout << "[Undefined]";
break;
default:
ndbout << "[unknown]";
break;
} }
return ndbout; return ndbout;

View File

@ -18,7 +18,6 @@
#include <NdbError.hpp> #include <NdbError.hpp>
#include "NdbImpl.hpp" #include "NdbImpl.hpp"
#include "NdbDictionaryImpl.hpp" #include "NdbDictionaryImpl.hpp"
#include <NdbSchemaCon.hpp>
#include <NdbOperation.hpp> #include <NdbOperation.hpp>
#include <NdbConnection.hpp> #include <NdbConnection.hpp>
@ -66,10 +65,3 @@ NdbOperation::getNdbError() const {
update(theError); update(theError);
return theError; return theError;
} }
const
NdbError &
NdbSchemaCon::getNdbError() const {
update(theError);
return theError;
}

View File

@ -1,33 +0,0 @@
include .defs.mk
DIRS := \
client \
common \
kernel \
ndbapi \
mgmsrv \
mgmapi \
newtonapi \
rep \
mgmclient \
cw \
ndbbaseclient
ifneq ($(NDB_ODBC),N)
DIRS += ndbclient
endif
ifeq ($(findstring OSE, $(NDB_OS)),)
DIRS += scripts
endif
include $(NDB_TOP)/Epilogue.mk
_bins_mgmsrv: _libs_ndbapi
_bins_mgmsrv: _libs_mgmapi
_bins_mgmclient: _libs_mgmapi
_bins_mgmclient: _libs_common
_bins_client: _bins_ndbapi
_bins_common: _bins_mgmapi
_bins_kernel: _bins_ndbapi
_bins_newtonapi: _bins_ndbapi
_bins_mgmapi : _libs_common
_bins_rep: _libs_common
_bins_rep: _libs_ndbapi

View File

@ -1,19 +0,0 @@
include .defs.mk
DIRS := src tools ndbapi run-test
EXTRA_DIRS = newtonapi
ifeq ($(NDB_ARCH), x86_64)
EXTRA_DIRS =
endif
DIRS += $(EXTRA_DIRS)
ifneq ($(NDB_ODBC),N)
DIRS += odbc
endif
include $(NDB_TOP)/Epilogue.mk
_bins_ndbapi : _libs_src

View File

@ -1,8 +0,0 @@
include .defs.mk
DIRS := \
basic_test \
perf_test
include $(NDB_TOP)/Epilogue.mk

View File

@ -1,13 +0,0 @@
include .defs.mk
DIRS += driver
#ifneq ($(findstring odbc, $(wildcard /usr/lib/libodbc.so)),)
#DIRS += dm-unixodbc
#endif
ifneq ($(findstring $(NDB_OS), SOLARIS),)
DIRS += dm-iodbc
endif
include ${NDB_TOP}/Epilogue.mk

View File

@ -8,7 +8,8 @@ libNDBT_a_SOURCES = \
HugoOperations.cpp HugoTransactions.cpp \ HugoOperations.cpp HugoTransactions.cpp \
HugoAsynchTransactions.cpp UtilTransactions.cpp \ HugoAsynchTransactions.cpp UtilTransactions.cpp \
NdbRestarter.cpp NdbRestarts.cpp NDBT_Output.cpp \ NdbRestarter.cpp NdbRestarts.cpp NDBT_Output.cpp \
NdbBackup.cpp NdbConfig.cpp NdbGrep.cpp NDBT_Table.cpp NdbBackup.cpp NdbConfig.cpp NdbGrep.cpp NDBT_Table.cpp \
NdbSchemaCon.cpp NdbSchemaOp.cpp
INCLUDES_LOC = -I$(top_srcdir)/ndb/src/common/mgmcommon -I$(top_srcdir)/ndb/include/mgmcommon -I$(top_srcdir)/ndb/include/kernel -I$(top_srcdir)/ndb/src/mgmapi INCLUDES_LOC = -I$(top_srcdir)/ndb/src/common/mgmcommon -I$(top_srcdir)/ndb/include/mgmcommon -I$(top_srcdir)/ndb/include/kernel -I$(top_srcdir)/ndb/src/mgmapi

View File

@ -118,78 +118,8 @@ BaseString NDBT_ResultRow::c_str() {
NdbOut & NdbOut &
operator << (NdbOut& ndbout, const NDBT_ResultRow & res) { operator << (NdbOut& ndbout, const NDBT_ResultRow & res) {
for(int i = 0; i<res.cols; i++){ for(int i = 0; i<res.cols; i++)
if(res.data[i]->isNULL()) ndbout << res.data[i];
ndbout << "NULL";
else{
const int size = res.data[i]->attrSize();
const int aSize = res.data[i]->arraySize();
switch(convertColumnTypeToAttrType(res.data[i]->getType())){
case UnSigned:
switch(size){
case 8:
ndbout << res.data[i]->u_64_value();
break;
case 4:
ndbout << res.data[i]->u_32_value();
break;
case 2:
ndbout << res.data[i]->u_short_value();
break;
case 1:
ndbout << (unsigned) res.data[i]->u_char_value();
break;
default:
ndbout << "Unknown size";
}
break;
case Signed:
switch(size){
case 8:
ndbout << res.data[i]->int64_value();
break;
case 4:
ndbout << res.data[i]->int32_value();
break;
case 2:
ndbout << res.data[i]->short_value();
break;
case 1:
ndbout << (int) res.data[i]->char_value();
break;
default:
ndbout << "Unknown size";
}
break;
case String:
{
char * buf = new char[aSize+1];
memcpy(buf, res.data[i]->aRef(), aSize);
buf[aSize] = 0;
ndbout << buf;
delete [] buf;
// Null terminate string
//res.data[i][res.sizes[i]] = 0;
//ndbout << res.data[i];
}
break;
case Float:
ndbout_c("%f", res.data[i]->float_value());
break;
default:
ndbout << "Unknown(" <<
convertColumnTypeToAttrType(res.data[i]->getType()) << ")";
break;
}
}
if (i < res.cols-1)
ndbout << res.ad;
}
return ndbout; return ndbout;
} }

View File

@ -90,8 +90,9 @@ NdbBackup::getFileSystemPathForNode(int _node_id){
ndbout << "Invalid configuration fetched, DB missing" << endl; ndbout << "Invalid configuration fetched, DB missing" << endl;
return NULL; return NULL;
} }
unsigned int type; unsigned int type = 123456;
if(!iter.get(CFG_TYPE_OF_SECTION, &type) || type != NODE_TYPE_DB){ if(iter.get(CFG_TYPE_OF_SECTION, &type) || type != NODE_TYPE_DB){
ndbout <<"type = " << type << endl;
ndbout <<"Invalid configuration fetched, I'm wrong type of node" << endl; ndbout <<"Invalid configuration fetched, I'm wrong type of node" << endl;
return NULL; return NULL;
} }
@ -114,10 +115,13 @@ NdbBackup::execRestore(bool _restore_data,
const int buf_len = 1000; const int buf_len = 1000;
char buf[buf_len]; char buf[buf_len];
ndbout << "getFileSystemPathForNode "<< _node_id <<endl;
const char* path = getFileSystemPathForNode(_node_id); const char* path = getFileSystemPathForNode(_node_id);
if (path == NULL) if (path == NULL)
return -1; return -1;
ndbout << "getHostName "<< _node_id <<endl;
const char *host; const char *host;
if (!getHostName(_node_id, &host)){ if (!getHostName(_node_id, &host)){
return -1; return -1;
@ -138,7 +142,7 @@ NdbBackup::execRestore(bool _restore_data,
ndbout << "res: " << res << endl; ndbout << "res: " << res << endl;
#if 0 #if 0
snprintf(buf, 255, "restore -c \"nodeid=%d;host=%s\" -n %d -b %d %s %s %s/BACKUP/BACKUP-%d", snprintf(buf, 255, "ndb_restore -c \"nodeid=%d;host=%s\" -n %d -b %d %s %s %s/BACKUP/BACKUP-%d",
ownNodeId, ownNodeId,
addr, addr,
_node_id, _node_id,
@ -150,7 +154,7 @@ NdbBackup::execRestore(bool _restore_data,
#endif #endif
snprintf(buf, 255, "restore -c \"nodeid=%d;host=%s\" -n %d -b %d %s %s .", snprintf(buf, 255, "ndb_restore -c \"nodeid=%d;host=%s\" -n %d -b %d %s %s .",
ownNodeId, ownNodeId,
addr, addr,
_node_id, _node_id,

View File

@ -35,9 +35,10 @@ Adjust: 980126 UABMNST First version.
New programs should use NdbDictionary.hpp New programs should use NdbDictionary.hpp
*********************************************************************/ *********************************************************************/
#include "NdbSchemaCon.hpp" #include <ndb_global.h>
#include "NdbSchemaOp.hpp" #include <NdbApi.hpp>
#include "NdbApiSignal.hpp" #include <NdbSchemaCon.hpp>
#include <NdbSchemaOp.hpp>
/********************************************************************* /*********************************************************************
@ -142,20 +143,22 @@ NdbSchemaCon::release()
return; return;
}//NdbSchemaCon::release() }//NdbSchemaCon::release()
#include <NdbError.hpp>
static void
update(const NdbError & _err){
NdbError & error = (NdbError &) _err;
ndberror_struct ndberror = (ndberror_struct)error;
ndberror_update(&ndberror);
error = NdbError(ndberror);
}
const
NdbError &
NdbSchemaCon::getNdbError() const {
update(theError);
return theError;
}

View File

@ -34,11 +34,11 @@ Adjust: 980125 UABMNST First version.
NOTE: This file is only used as a compatibility layer for old test programs, NOTE: This file is only used as a compatibility layer for old test programs,
New programs should use NdbDictionary.hpp New programs should use NdbDictionary.hpp
*****************************************************************************/ *****************************************************************************/
#include <assert.h>
#include "NdbSchemaOp.hpp"
#include "NdbSchemaCon.hpp"
#include "API.hpp"
#include <ndb_global.h>
#include <NdbApi.hpp>
#include <NdbSchemaOp.hpp>
#include <NdbSchemaCon.hpp>
/***************************************************************************** /*****************************************************************************