?? dir.mk
字號:
ifeq ($(ThreadSystem),Solaris)CXXSRCS = solaris.ccDIR_CPPFLAGS = $(OMNITHREAD_CPPFLAGS)endififeq ($(ThreadSystem),Posix)CXXSRCS = posix.ccDIR_CPPFLAGS = $(OMNITHREAD_CPPFLAGS) $(OMNITHREAD_POSIX_CPPFLAGS)endififeq ($(ThreadSystem),NT)CXXSRCS = nt.ccDIR_CPPFLAGS = $(OMNITHREAD_CPPFLAGS)MSVC_STATICLIB_CXXNODEBUGFLAGS += -D_WINSTATICMSVC_STATICLIB_CXXDEBUGFLAGS += -D_WINSTATICMSVC_DLL_CXXNODEBUGFLAGS += -D_OMNITHREAD_DLLMSVC_DLL_CXXDEBUGFLAGS += -D_OMNITHREAD_DLLendififeq ($(ThreadSystem),NTPosix)CXXSRCS = posix.ccDIR_CPPFLAGS = $(OMNITHREAD_CPPFLAGS)MSVC_STATICLIB_CXXNODEBUGFLAGS += -D_WINSTATICMSVC_STATICLIB_CXXDEBUGFLAGS += -D_WINSTATICMSVC_DLL_CXXNODEBUGFLAGS += -D_OMNITHREAD_DLLMSVC_DLL_CXXDEBUGFLAGS += -D_OMNITHREAD_DLLendififeq ($(ThreadSystem),Mach)CXXSRCS = mach.ccDIR_CPPFLAGS = $(OMNITHREAD_CPPFLAGS)endififeq ($(ThreadSystem),vxWorks)CXXSRCS = vxWorks.ccOBJS = vxWorks.oDIR_CPPFLAGS = $(OMNITHREAD_CPPFLAGS)endifLIB_NAME := omnithreadLIB_VERSION := $(OMNITHREAD_VERSION)LIB_OBJS := $(CXXSRCS:.cc=.o)LIB_IMPORTS := $(OMNITHREAD_PLATFORM_LIB)all:: mkstatic mksharedexport:: mkstatic mksharedifdef INSTALLTARGETinstall:: mkstatic mksharedendifvers := $(subst ., ,$(LIB_VERSION))ifeq ($(words $(vers)), 2) vers := _ $(vers) major := ""else major := $(word 1, $(vers))endifnamespec := $(LIB_NAME) $(vers)############################################################################### Build Static library##############################################################################ifndef NoStaticLibrarystaticlib := static/$(patsubst %,$(LibNoDebugPattern),$(LIB_NAME)$(major))mkstatic:: @(dir=static; $(CreateDir))mkstatic:: $(staticlib)$(staticlib): $(patsubst %, static/%, $(LIB_OBJS)) @$(StaticLinkLibrary)export:: $(staticlib) @$(ExportLibrary)ifdef INSTALLTARGETinstall:: $(staticlib) @$(InstallLibrary)endifclean:: $(RM) static/*.o $(RM) $(staticlib)veryclean:: $(RM) static/*.o $(RM) $(staticlib)elsemkstatic::endif############################################################################### Build Shared library##############################################################################ifdef BuildSharedLibraryshlib := shared/$(shell $(SharedLibraryFullName) $(namespec))ifdef Win32Platform# in case of Win32 lossage: imps := $(patsubst $(DLLDebugSearchPattern),$(DLLNoDebugSearchPattern), \ $(LIB_IMPORTS))else imps := $(LIB_IMPORTS)endifmkshared:: @(dir=shared; $(CreateDir))mkshared:: $(shlib)$(shlib): $(patsubst %, shared/%, $(LIB_OBJS)) @(namespec="$(namespec)" extralibs="$(imps) $(extralibs)" nodeffile=1; \ $(MakeCXXSharedLibrary))export:: $(shlib) @(namespec="$(namespec)"; \ $(ExportSharedLibrary))ifdef INSTALLTARGETinstall:: $(shlib) @(namespec="$(namespec)"; \ $(InstallSharedLibrary))endifclean:: $(RM) shared/*.o (dir=shared; $(CleanSharedLibrary))veryclean:: $(RM) shared/*.o @(dir=shared; $(CleanSharedLibrary))ifdef Cygwinimplib := $(shell $(SharedLibraryImplibName) $(namespec))export:: $(implib) @(namespec="$(namespec)"; $(ExportImplibLibrary))install:: $(implib) @(dir="$(INSTALLLIBDIR)"; namespec="$(namespec)"; \ $(ExportLibraryToDir))clean:: (dir=.; $(CleanImplibLibrary))veryclean:: (dir=.; $(CleanImplibLibrary))endifelsemkshared::endif############################################################################### Build debug libraries for Win32##############################################################################ifdef Win32Platformifdef BuildSharedLibraryall:: mkstaticdbug mkshareddbugexport:: mkstaticdbug mkshareddbugelseall:: mkstaticdbugexport:: mkstaticdbugendif###################################################### Static debug libraries#####################################################dbuglib := debug/$(patsubst %,$(LibDebugPattern),$(LIB_NAME)$(major))mkstaticdbug:: @(dir=debug; $(CreateDir))mkstaticdbug:: $(dbuglib)$(dbuglib): $(patsubst %, debug/%, $(LIB_OBJS)) @$(StaticLinkLibrary)export:: $(dbuglib) @$(ExportLibrary)clean:: $(RM) debug/*.o $(RM) $(dbuglib)veryclean:: $(RM) debug/*.o $(RM) $(dbuglib)###################################################### DLL debug libraries#####################################################ifdef BuildSharedLibrarydbugshlib := shareddebug/$(shell $(SharedLibraryDebugFullName) $(namespec))dbugimps := $(patsubst $(DLLNoDebugSearchPattern),$(DLLDebugSearchPattern), \ $(LIB_IMPORTS))mkshareddbug:: @(dir=shareddebug; $(CreateDir))mkshareddbug:: $(dbugshlib)$(dbugshlib): $(patsubst %, shareddebug/%, $(LIB_OBJS)) (namespec="$(namespec)" debug=1 extralibs="$(dbugimps) $(extralibs)" nodeffile=1; \ $(MakeCXXSharedLibrary))export:: $(dbugshlib) @(namespec="$(namespec)" debug=1; \ $(ExportSharedLibrary))clean:: $(RM) shareddebug/*.o @(dir=shareddebug; $(CleanSharedLibrary))veryclean:: $(RM) shareddebug/*.o @(dir=shareddebug; $(CleanSharedLibrary))endifendif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -