dir.mk
来自「编译工具」· MK 代码 · 共 282 行
MK
282 行
include $(MAKEFILE_INC_DIR)cosinterfaces.mkinclude $(MAKEFILE_INC_DIR)libdefs.mk# Uncomment the next line to build BOA versions of the COS libraries# BUILD_BOA_COS_LIB = 1# Look for .idl files in <top>/idlvpath %.idl $(IMPORT_TREES:%=%/idl/COS)DIR_IDLFLAGS += -I. $(patsubst %,-I%/idl/COS,$(IMPORT_TREES))COS_SKLIB_NAME = COSCOS_DYNSKLIB_NAME = COSDynamicCOS_SK_OBJS = $(COS_INTERFACES:%=%SK.o)COS_SK_SRCS = $(COS_INTERFACES:%=%SK.cc)COS_DYNSK_OBJS = $(COS_INTERFACES:%=%DynSK.o)COS_DYNSK_SRCS = $(COS_INTERFACES:%=%DynSK.cc)CXXSRCS = $(COS_DYNSK_SRCS) $(COS_SK_SRCS) all:: mkstatic mksharedexport:: mkstatic mksharedexport:: $(COS_INTERFACES:%=%.hh) COS_sysdep.h @(dir="$(EXPORT_TREE)/$(INCDIR)/COS"; \ for file in $^; do \ $(ExportFileToDir) \ done )ifdef INSTALLTARGETinstall:: $(COS_INTERFACES:%=%.hh) COS_sysdep.h @(dir="$(INSTALLINCDIR)/COS"; \ for file in $^; do \ $(ExportFileToDir) \ done )endifveryclean:: $(RM) $(COS_INTERFACES:%=%SK.cc) $(COS_INTERFACES:%=%DynSK.cc) \ $(COS_INTERFACES:%=%.hh)ifdef Win32Platform MSVC_STATICLIB_CXXNODEBUGFLAGS += -D_WINSTATIC MSVC_STATICLIB_CXXDEBUGFLAGS += -D_WINSTATICendififdef Cygwin# there's a bug in gcc 3.2 (build 20020927) that makes gcc crash# when optimizing these files ...CXXDEBUGFLAGS = -O0extralibs += -lomniDynamic4endif############################################################################### Build Static library##############################################################################ifndef NoStaticLibraryversion := $(word 1,$(subst ., ,$(OMNIORB_VERSION)))sk = static/$(patsubst %,$(LibNoDebugPattern),$(COS_SKLIB_NAME)$(version))dynsk = static/$(patsubst %,$(LibNoDebugPattern),$(COS_DYNSKLIB_NAME)$(version))MDFLAGS += -p static/mkstatic:: @(dir=static; $(CreateDir))mkstatic:: $(sk) $(dynsk) $(sk): $(patsubst %, static/%, $(COS_SK_OBJS)) @$(StaticLinkLibrary)$(dynsk): $(patsubst %, static/%, $(COS_DYNSK_OBJS)) @$(StaticLinkLibrary)export:: $(sk) @$(ExportLibrary)export:: $(dynsk) @$(ExportLibrary)ifdef INSTALLTARGETinstall:: $(sk) @$(InstallLibrary)install:: $(dynsk) @$(InstallLibrary)endifclean:: $(RM) static/*.o $(RM) $(sk) $(dynsk)elsemkstatic::endif############################################################################### Build Shared library##############################################################################ifdef BuildSharedLibrarysharedversion = $(OMNIORB_VERSION)sknamespec = $(subst ., ,$(COS_SKLIB_NAME).$(sharedversion))skshared = shared/$(shell $(SharedLibraryFullName) $(sknamespec))dynsknamespec = $(subst ., ,$(COS_DYNSKLIB_NAME).$(sharedversion))dynskshared = shared/$(shell $(SharedLibraryFullName) $(dynsknamespec))MDFLAGS += -p shared/ifdef Win32Platform# in case of Win32 lossage:imps := $(patsubst $(DLLDebugSearchPattern),$(DLLNoDebugSearchPattern), \ $(OMNIORB_LIB))dynimps := $(skshared) $(patsubst $(DLLDebugSearchPattern),$(DLLNoDebugSearchPattern), \ $(OMNIORB_LIB))elseifdef AIXimps := $(OMNIORB_LIB)dynimps := $(OMNIORB_LIB)elseimps := $(OMNIORB_LIB_NODYN)dynimps := $(OMNIORB_LIB)endifendifmkshared:: @(dir=shared; $(CreateDir))mkshared:: $(skshared) $(dynskshared) $(skshared): $(patsubst %, shared/%, $(COS_SK_OBJS)) @(namespec="$(sknamespec)"; extralibs="$(imps) $(extralibs)"; \ $(MakeCXXSharedLibrary))$(dynskshared): $(patsubst %, shared/%, $(COS_DYNSK_OBJS)) @(namespec="$(dynsknamespec)"; extralibs="$(dynimps)"; \ $(MakeCXXSharedLibrary))export:: $(skshared) @(namespec="$(sknamespec)"; \ $(ExportSharedLibrary))export:: $(dynskshared) @(namespec="$(dynsknamespec)"; \ $(ExportSharedLibrary))ifdef INSTALLTARGETinstall:: $(skshared) @(namespec="$(sknamespec)"; \ $(InstallSharedLibrary))install:: $(dynskshared) @(namespec="$(dynsknamespec)"; \ $(InstallSharedLibrary))endifclean:: $(RM) shared/*.o (dir=shared; $(CleanSharedLibrary))elsemkshared::endif############################################################################### Build debug libraries for Win32##############################################################################ifdef Win32Platformall:: mkstaticdbug mkshareddbugexport:: mkstaticdbug mkshareddbug###################################################### Static debug libraries#####################################################dbugversion = $(word 1,$(subst ., ,$(OMNIORB_VERSION)))skdbug = debug/$(patsubst %,$(LibDebugPattern),$(COS_SKLIB_NAME)$(dbugversion))dynskdbug = debug/$(patsubst %,$(LibDebugPattern),$(COS_DYNSKLIB_NAME)$(dbugversion))MDFLAGS += -p debug/mkstaticdbug:: @(dir=debug; $(CreateDir))mkstaticdbug:: $(skdbug) $(dynskdbug)$(skdbug): $(patsubst %, debug/%, $(COS_SK_OBJS)) @$(StaticLinkLibrary)$(dynskdbug): $(patsubst %, debug/%, $(COS_DYNSK_OBJS)) @$(StaticLinkLibrary)export:: $(skdbug) @$(ExportLibrary)export:: $(dynskdbug) @$(ExportLibrary)clean:: $(RM) debug/*.o $(RM) $(skdbug) $(dynskdbug)###################################################### DLL debug libraries#####################################################shareddbugversion = $(OMNIORB_VERSION)sknamespec = $(subst ., ,$(COS_SKLIB_NAME).$(shareddbugversion))skshareddbug = shareddebug/$(shell $(SharedLibraryDebugFullName) $(sknamespec))dynsknamespec = $(subst ., ,$(COS_DYNSKLIB_NAME).$(shareddbugversion))dynskshareddbug = shareddebug/$(shell $(SharedLibraryDebugFullName) $(dynsknamespec))dbugimps := $(patsubst $(DLLNoDebugSearchPattern),$(DLLDebugSearchPattern), \ $(OMNIORB_LIB))MDFLAGS += -p shareddebug/mkshareddbug:: @(dir=shareddebug; $(CreateDir))mkshareddbug:: $(skshareddbug) $(dynskshareddbug)$(skshareddbug): $(patsubst %, shareddebug/%, $(COS_SK_OBJS)) (namespec="$(sknamespec)"; debug=1; extralibs="$(dbugimps) $(extralibs)"; \ $(MakeCXXSharedLibrary))$(dynskshareddbug): $(patsubst %, shareddebug/%, $(COS_DYNSK_OBJS)) @(namespec="$(dynsknamespec)"; debug=1; extralibs="$(skshareddbug) $(dbugimps) $(extralibs)"; \ $(MakeCXXSharedLibrary))export:: $(skshareddbug) @(namespec="$(sknamespec)" debug=1; \ $(ExportSharedLibrary))export:: $(dynskshareddbug) @(namespec="$(dynsknamespec)" debug=1; \ $(ExportSharedLibrary))clean:: $(RM) shareddebug/*.o @(dir=shareddebug; $(CleanSharedLibrary))endif############################################################################### Build Subdirectories##############################################################################ifdef BUILD_BOA_COS_LIBSUBDIRS = mkBOAlibendifall:: @$(MakeSubdirs)export:: @$(MakeSubdirs)ifdef INSTALLTARGETinstall:: @$(MakeSubdirs)endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?