⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makefile

📁 一个功能强大的内存数据库源代码,c++编写,有详细的注释
💻
字号:
# -*- makefile -*-# Makefile for Generic Unix with GCC compilerFAULT_TOLERANT=0# Default install directoryPREFIX ?= /usr/local# Place where to copy GastDB header filesINCSPATH=$(PREFIX)/include/fastdb#Place where to copy Fastdb libraryLIBSPATH=$(PREFIX)/lib#Place where to copy Fastdb subsql utilityBINSPATH=$(PREFIX)/binOBJS = class.o compiler.o database.o hashtab.o file.o symtab.o ttree.o container.o \	cursor.o query.o wwwapi.o unisock.o sync.o localcli.oCLI_OBJS = cli.o unisock.o INCS = fastdb.h stdtp.h class.h database.h cursor.h reference.h wwwapi.h \	cli.h array.h file.h hashtab.h ttree.h container.h sync.h query.h datetime.h ## threads settings - please comment this lines for single-threaded libs#ifdef NO_PTHREADSTFLAGS=-DNO_PTHREADSTHRLIBS=SUFF=elseifneq (,$(findstring freebsd,$(OSTYPE)))TFLAGS=-pthreadTHRLIBS=else TFLAGS=-D_REENTRANT -D_THREAD_SAFETHRLIBS=-lpthreadendifSUFF=_rendifSTDLIBS =  -lm  $(THRLIBS)ifneq (,$(findstring solaris,$(OSTYPE)))SOCKLIBS = -lnsl -lsocketTFLAGS += -fPICelseSOCKLIBS =endifVERSION=2FASTDB_LIB = libfastdb$(SUFF).a FASTDB_SHARED = libfastdb$(SUFF).so.${VERSION}CLI_LIB = libcli$(SUFF).aCLI_SHARED = libcli$(SUFF).so.${VERSION}EXES = subsql forcerecovery#FASTDB_LIBS=-L. -lfastdb$(SUFF)#CLI_LIBS=-L. -lcli$(SUFF)FASTDB_LIBS=$(FASTDB_LIB)CLI_LIBS=$(CLI_LIB)EXAMPLES = guess testdb testleak testjoin testddl testperf testsync testconc testiref testtrav testidx clitest testraw localclitestWEB_EXAMPLES = cgistub bugdb clidbCC = g++# Possible FastDB compile time parameters (-Dxxx should be added to DEFS macro):# 1. USE_LOCALE_SETTINGS - use C locale for string comparison operations# 2. FASTDB_DEBUG - debug level#    - DEBUG_NONE - disable any checking and tracing (except asserts)#    - DEBUG_CHECK - disable trace message#    - DEBUG_TRACE - enable trace messages # 3. SECURE_SERVER - enable authentication for remote logins: keep user/password table, #                    check password for remote logins# 4. USE_QUEUE_MANAGER - use queue manager for internal HTTP server. This manager will manage pool#    of threads assigned for client connections. Otherwise all requests will be executed sequnetially#    in the main loop.# 5. FASTDB_DLL - create gigabase.dll# 6. THROW_EXCEPTION_ON_ERROR - throw C++ exception in case of database error #    instead of abort(). Do not forgot to specify -GX option if using exceptions.# 7. IGNORE_CASE - perform all string comparisons as case insensitive# 8. USE_STD_STRING - support of std:;string type for class fields# 9. AUTOINCREMENT_SUPPORT support autoincrement fields (database built with this flag will be #    incompatible with database built without it)# 10. CLONE_INDENTIFIERS - do not storef addresses of string constants in symbol table.#     This option is needed if DLL library using GigaBASE can be unloaded.# 11. DISKLESS_CONFIGURATION - only in-memory temporary database## 12. USE_POSIX_API use POSIX sem_* sempahores and mmap #     instead of SysV semaphores and shared memory# 13. USE_SYSV_SHARED_MEMORY - use SysV IPC shmem instead of mmap. # 14. INT8_IS_DEFINED - int8 type is defined at your system, in this case you should use db_int8 type instead# 15. REPLICATION_SUPPORT - fault tolerant version of FastDB##DEFS =-DTHROW_EXCEPTION_ON_ERROR -DUSE_QUEUE_MANAGER#DEFS = -DUSE_QUEUE_MANAGER -DUSE_LOCALE_SETTINGS -DUSE_SYSV_SHARED_MEMORYDEFS = -DUSE_QUEUE_MANAGER -DUSE_LOCALE_SETTINGS#CFLAGS = $(TFLAGS) -c -Wall -O5 -g $(DEFS) CFLAGS = -c -Wall -O0 -g $(DEFS) $(TFLAGS)#CFLAGS = -c -Wall -O0 -DFASTDB_DEBUG=DEBUG_TRACE -g $(DEFS) $(TFLAGS)SHFLAGS=-sharedLD = $(CC)LDFLAGS = -g $(TFLAGS)AR = arARFLAGS = -cruifneq (,$(findstring freebsd,$(OSTYPE)))RANLIB = ranlibelseRANLIB = trueendififneq (0,$(FAULT_TOLERANT))STDLIBS +=  $(SOCKLIBS)DEFS += -DREPLICATION_SUPPORTendifall: static shared binsstatic: $(FASTDB_LIB) $(CLI_LIB) shared: $(FASTDB_SHARED) $(CLI_SHARED) bins: $(EXES) $(EXAMPLES) www: $(FASTDB_SHARED) $(WEB_EXAMPLES)class.o: class.cpp compiler.h compiler.d symtab.h $(INCS)	$(CC) $(CFLAGS) class.cppcompiler.o: compiler.cpp compiler.h compiler.d symtab.h $(INCS)	$(CC) $(CFLAGS) compiler.cppquery.o: query.cpp compiler.h compiler.d symtab.h $(INCS)	$(CC) $(CFLAGS) query.cppdatabase.o: database.cpp compiler.h compiler.d symtab.h $(INCS)	$(CC) $(CFLAGS) database.cpplocalcli.o: localcli.cpp compiler.h compiler.d symtab.h localcli.h $(INCS)	$(CC) $(CFLAGS) localcli.cppcursor.o: cursor.cpp compiler.h compiler.d $(INCS)	$(CC) $(CFLAGS) cursor.cpphashtab.o: hashtab.cpp $(INCS)	$(CC) $(CFLAGS) hashtab.cppfile.o: file.cpp $(INCS)	$(CC) $(CFLAGS) file.cppsync.o: sync.cpp $(INCS)	$(CC) $(CFLAGS) sync.cppsymtab.o: symtab.cpp symtab.h $(INCS)	$(CC) $(CFLAGS) symtab.cppttree.o: ttree.cpp $(INCS)	$(CC) $(CFLAGS) ttree.cppcontainer.o: container.cpp $(INCS)	$(CC) $(CFLAGS) container.cppwwwapi.o: wwwapi.cpp wwwapi.h sockio.h stdtp.h	$(CC) $(CFLAGS) wwwapi.cppunisock.o: unisock.cpp unisock.h sockio.h stdtp.h	$(CC) $(CFLAGS) unisock.cppcli.o: cli.cpp cli.h cliproto.h	$(CC) $(CFLAGS) cli.cpp$(FASTDB_LIB): $(OBJS)	rm -f $(FASTDB_LIB)	$(AR) $(ARFLAGS) $(FASTDB_LIB) $(OBJS)	$(RANLIB) $(FASTDB_LIB)$(FASTDB_SHARED): $(OBJS)	rm -f $(FASTDB_SHARED)	$(CC) $(SHFLAGS) -o $(FASTDB_SHARED) $(OBJS)	ln -f -s $(FASTDB_SHARED) libfastdb$(SUFF).so$(CLI_LIB): $(CLI_OBJS)	rm -f $(CLI_LIB)	$(AR) $(ARFLAGS) $(CLI_LIB) $(CLI_OBJS)	$(RANLIB) $(CLI_LIB)$(CLI_SHARED): $(CLI_OBJS)	rm -f $(CLI_SHARED)	$(CC) $(SHFLAGS) -o  $(CLI_SHARED) $(CLI_OBJS)	ln -f -s $(CLI_SHARED) libcli$(SUFF).soclitest.o: clitest.c cli.h	$(CC) $(CFLAGS) clitest.cclitest: clitest.o $(CLI_LIB)	$(LD) $(LDFLAGS) -o clitest clitest.o $(CLI_LIBS) $(STDLIBS) $(SOCKLIBS)localclitest: clitest.o $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o localclitest clitest.o $(FASTDB_LIB) $(STDLIBS)subsql.o: subsql.cpp subsql.h compiler.h compiler.d symtab.h $(INCS)	$(CC) $(CFLAGS) subsql.cppifdef NO_PTHREADSsubsql: subsql.o $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o subsql subsql.o $(FASTDB_LIBS) $(STDLIBS) $(SOCKLIBS)elseserver.o: server.cpp server.h cli.h cliproto.h subsql.h compiler.h compiler.d symtab.h $(INCS)	$(CC) $(CFLAGS) server.cppsubsql: subsql.o server.o $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o subsql subsql.o server.o $(FASTDB_LIBS) $(STDLIBS) $(SOCKLIBS)endifbugdb.o: bugdb.cpp bugdb.h $(INCS)	$(CC) $(CFLAGS) bugdb.cppbugdb: bugdb.o  $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o bugdb bugdb.o $(FASTDB_LIBS) $(STDLIBS) $(SOCKLIBS)clidb.o: clidb.cpp clidb.h $(INCS)	$(CC) $(CFLAGS) clidb.cppclidb: clidb.o  $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o clidb clidb.o $(FASTDB_LIBS) $(STDLIBS) $(SOCKLIBS)cgistub.o: cgistub.cpp stdtp.h sockio.h	$(CC) $(CFLAGS) cgistub.cpp cgistub: cgistub.o	$(LD) $(LDFLAGS) -o cgistub cgistub.o $(FASTDB_LIBS) $(STDLIBS) $(SOCKLIBS)forcerecovery.o: forcerecovery.cpp database.h	$(CC) $(CFLAGS) forcerecovery.cpp forcerecovery: forcerecovery.o	$(LD) $(LDFLAGS)  -o forcerecovery forcerecovery.oguess.o: guess.cpp $(INCS)	$(CC) $(CFLAGS) guess.cpp guess: guess.o $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o guess guess.o $(FASTDB_LIBS) $(STDLIBS)testdb.o: testdb.cpp $(INCS)	$(CC) $(CFLAGS) testdb.cpp testdb: testdb.o $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o testdb testdb.o $(FASTDB_LIBS) $(STDLIBS)testraw.o: testraw.cpp $(INCS)	$(CC) $(CFLAGS) testraw.cpp testraw: testraw.o $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o testraw testraw.o $(FASTDB_LIBS) $(STDLIBS)testleak.o: testleak.cpp $(INCS)	$(CC) $(CFLAGS) testleak.cpp testleak: testleak.o $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o testleak testleak.o $(FASTDB_LIBS) $(STDLIBS)testjoin.o: testjoin.cpp $(INCS)	$(CC) $(CFLAGS) testjoin.cpp testjoin: testjoin.o $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o testjoin testjoin.o $(FASTDB_LIBS) $(STDLIBS)testddl.o: testddl.cpp $(INCS)	$(CC) $(CFLAGS) testddl.cpp testddl: testddl.o $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o testddl testddl.o $(FASTDB_LIBS) $(STDLIBS)testperf.o: testperf.cpp $(INCS)	$(CC) $(CFLAGS) testperf.cpp testperf: testperf.o $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o testperf testperf.o $(FASTDB_LIBS) $(STDLIBS)testidx.o: testidx.cpp $(INCS)	$(CC) $(CFLAGS) testidx.cpp testidx: testidx.o $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o testidx testidx.o $(FASTDB_LIBS) $(STDLIBS)testsync.o: testsync.cpp $(INCS)	$(CC) $(CFLAGS) testsync.cpp testsync: testsync.o $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o testsync testsync.o $(FASTDB_LIBS) $(STDLIBS)testconc.o: testconc.cpp $(INCS)	$(CC) $(CFLAGS) testconc.cpp testconc: testconc.o $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o testconc testconc.o $(FASTDB_LIBS) $(STDLIBS)testiref.o: testiref.cpp $(INCS)	$(CC) $(CFLAGS) testiref.cpp testiref: testiref.o $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o testiref testiref.o $(FASTDB_LIBS) $(STDLIBS)testtrav.o: testtrav.cpp $(INCS)	$(CC) $(CFLAGS) testtrav.cpp testtrav: testtrav.o $(FASTDB_LIB)	$(LD) $(LDFLAGS) -o testtrav testtrav.o $(FASTDB_LIBS) $(STDLIBS)install: subsql installlib	mkdir -p $(BINSPATH)	cp subsql $(BINSPATH)	strip $(BINSPATH)/subsqlinstalllib: $(FASTDB_LIB) $(CLI_LIB) $(FASTDB_SHARED) $(CLI_SHARED)	mkdir -p $(INCSPATH)	cp $(INCS) $(INCSPATH)	mkdir -p $(LIBSPATH)	cp $(FASTDB_LIB) $(CLI_LIB) $(FASTDB_SHARED) $(CLI_SHARED) $(LIBSPATH)	cd $(LIBSPATH); ln -f -s $(FASTDB_SHARED) libfastdb$(SUFF).so	cd $(LIBSPATH); ln -f -s $(CLI_SHARED) libcli$(SUFF).socleanobj:	rm -fr *.o *.tgz core *~ cxx_repositorycleandbs:	rm -f *.fdbclean: cleanobj cleandbs	rm -f *.a *.so *.so.* $(EXAMPLES) $(WEB_EXAMPLES) $(EXES)tgz:	clean	cd ..; tar cvzf fastdb.tgz fastdbcopytgz: tgz	mcopy -o ../fastdb.tgz a:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -