зеркало из https://github.com/microsoft/SCXcore.git
412 строки
20 KiB
Makefile
412 строки
20 KiB
Makefile
# -*- mode: Makefile; -*-
|
|
#--------------------------------------------------------------------------------
|
|
# Copyright (c) Microsoft Corporation. All rights reserved.
|
|
#--------------------------------------------------------------------------------
|
|
# 2007-08-23
|
|
#--------------------------------------------------------------------------------
|
|
|
|
#================================================================================
|
|
# Static Libraries
|
|
#================================================================================
|
|
|
|
include $(SCX_BRD)/build/Makefile.sslconfig
|
|
include $(SCX_BRD)/build/Makefile.providers
|
|
|
|
#--------------------------------------------------------------------------------
|
|
# Log policy
|
|
|
|
STATIC_LOGPOLICYLIB_SRCFILES = \
|
|
$(SCX_SRC_ROOT)/providers/support/logpolicy.cpp
|
|
|
|
STATIC_LOGPOLICYLIB_OBJFILES = $(call src_to_obj,$(STATIC_LOGPOLICYLIB_SRCFILES))
|
|
|
|
$(INTERMEDIATE_DIR)/liblogpolicy.$(PF_STAT_LIB_FILE_SUFFIX) : $(STATIC_LOGPOLICYLIB_OBJFILES)
|
|
$(LINK_STATLIB) $(LINK_STATLIB_OUTFLAG) $^
|
|
|
|
#--------------------------------------------------------------------------------
|
|
# ProductDependencies static library
|
|
|
|
STATIC_PRODUCTDEPENDENCIES_SRCFILES = \
|
|
$(SCX_SRC_ROOT)/providers/support/productdependencies.cpp
|
|
|
|
STATIC_PRODUCTDEPENDENCIES_OBJFILES = $(call src_to_obj,$(STATIC_PRODUCTDEPENDENCIES_SRCFILES))
|
|
|
|
STATIC_PRODUCTDEPENDENCIES_DEPFILES = \
|
|
$(INTERMEDIATE_DIR)/libProductDependencies.$(PF_STAT_LIB_FILE_SUFFIX)
|
|
|
|
$(INTERMEDIATE_DIR)/libProductDependencies.$(PF_STAT_LIB_FILE_SUFFIX) : $(STATIC_PRODUCTDEPENDENCIES_OBJFILES)
|
|
$(LINK_STATLIB) $(LINK_STATLIB_OUTFLAG) $^
|
|
|
|
#================================================================================
|
|
# Dynamic libraries
|
|
#================================================================================
|
|
|
|
#--------------------------------------------------------------------------------
|
|
# The Core Provider Module library
|
|
|
|
# The static libraries prerequisite list, expands to e.g. libXYZ.a
|
|
|
|
SCXPAL_STATICLIB_DEPS = \
|
|
palsystem \
|
|
scxassertabort \
|
|
Util \
|
|
scxcore
|
|
|
|
COREPROVIDERMODULE_STATICLIB_DEPS = \
|
|
omprovider
|
|
|
|
# Foreach XYZ in the list above, reference $(SCXPAL_TARGET_DIR)/libXYZ.a
|
|
|
|
STATIC_SCXPAL_DEPFILES = $(addprefix $(SCXPAL_TARGET_DIR)/lib, $(addsuffix .$(PF_STAT_LIB_FILE_SUFFIX), $(SCXPAL_STATICLIB_DEPS)))
|
|
|
|
SCXPAL_STATICLIB_DEPFILES_NODUPS = \
|
|
$(STATIC_SCXPAL_DEPFILES) \
|
|
$(STATIC_PRODUCTDEPENDENCIES_DEPFILES)
|
|
|
|
# Note the circular dependency: We need the PAL, ProductDependencies, and PAL
|
|
#
|
|
# The issue is that PAL references things in ProductDeps (for logging project
|
|
# specific data), which needs PAL support. So to deal with linkage, we need to
|
|
# first pull PAL (to call for required logging methods)) + ProjectDeps + PAL
|
|
# (one more time) to get things that ProjectDeps needed from PAL.
|
|
|
|
SCXPAL_STATICLIB_DEPFILES = $(SCXPAL_STATICLIB_DEPFILES_NODUPS) $(STATIC_SCXPAL_DEPFILES)
|
|
|
|
# Foreach XYZ in the list above, build $(INTERMEDIATE_DIR)/libXYZ.a
|
|
COREPROVIDERMODULE_STATICLIB_DEPFILES = $(addprefix $(INTERMEDIATE_DIR)/lib, $(addsuffix .$(PF_STAT_LIB_FILE_SUFFIX), $(COREPROVIDERMODULE_STATICLIB_DEPS)))
|
|
|
|
# Foreach XYZ in the list above, build -lXYZ
|
|
SCXPAL_LINK_STATICLIBS = $(addprefix -l, $(SCXPAL_STATICLIB_DEPS)) \
|
|
-lProductDependencies \
|
|
-llogpolicy
|
|
|
|
COREPROVIDERMODULE_LINK_STATICLIBS = $(addprefix -l, $(COREPROVIDERMODULE_STATICLIB_DEPS))
|
|
|
|
OMI_FORCED_TARGETS=$(STATIC_PROVIDERLIB_OBJFILES)
|
|
OMI_DYNAMIC_LIBS=-lmicxx
|
|
|
|
$(INTERMEDIATE_DIR)/libSCXCoreProviderModule.$(PF_DYN_LIB_FILE_SUFFIX) : $(COREPROVIDERMODULE_STATICLIB_DEPFILES) $(SCXPAL_STATICLIB_DEPFILES) $(INTERMEDIATE_DIR)/liblogpolicy.$(PF_STAT_LIB_FILE_SUFFIX)
|
|
-$(MKPATH) $(INTERMEDIATE_DIR)
|
|
$(PROFILING) $(LINK_DYNLIB) $(COREPROVIDERMODULE_EXTRA_LINKFLAGS) $(LINK_OUTFLAG) $(OMI_FORCED_TARGETS) -L$(SCXOMI_LIBS) $(COREPROVIDERMODULE_LINK_STATICLIBS) $(OMI_DYNAMIC_LIBS) $(SCXPAL_LINK_STATICLIBS) $(LDFLAGS_COREPROVIDERMODULE) $(CXX_CGEN_FLAGS) $(SCXPAL_SRC_ROOT)/scxcorelib/pal/noop.cpp
|
|
|
|
#--------------------------------------------------------------------------------
|
|
# The Test Provider Module library
|
|
|
|
# The static libraries prerequisite list, expands to e.g. libXYZ.a
|
|
TESTPROVIDERMODULE_STATICLIB_DEPS = \
|
|
testprovider \
|
|
providersupport \
|
|
logpolicy \
|
|
|
|
# Foreach XYZ in the list above, build $(INTERMEDIATE_DIR)/libXYZ.a
|
|
TESTPROVIDERMODULE_STATICLIB_DEPFILES = $(addprefix $(INTERMEDIATE_DIR)/lib, $(addsuffix .$(PF_STAT_LIB_FILE_SUFFIX), $(TESTPROVIDERMODULE_STATICLIB_DEPS)))
|
|
|
|
# Foreach XYZ in the list above, build -lXYZ
|
|
TESTPROVIDERMODULE_LINK_STATICLIBS = $(addprefix -l, $(TESTPROVIDERMODULE_STATICLIB_DEPS))
|
|
|
|
# Get the flags used for retaining exposed symbols
|
|
TESTPROVIDERMODULE_SYMBOLS_LINKFLAGS = $(call get_ld_flags_for_retaining_symbols,$(TESTPROVIDERMODULE_EXPOSED_SYMS))
|
|
|
|
$(INTERMEDIATE_DIR)/libSCXTestProviderModule.$(PF_DYN_LIB_FILE_SUFFIX) : $(TESTPROVIDERMODULE_STATICLIB_DEPFILES) $(INTERMEDIATE_DIR)/testprovider.map $(INTERMEDIATE_DIR)/testprovider.exp
|
|
-$(MKPATH) $(INTERMEDIATE_DIR)
|
|
$(PROFILING) $(LINK_DYNLIB) $(TESTPROVIDERMODULE_EXTRA_LINKFLAGS) $(LINK_OUTFLAG) $(TESTPROVIDERMODULE_SYMBOLS_LINKFLAGS) $(TESTPROVIDERMODULE_LINK_STATICLIBS) $(SCXPAL_LINK_STATICLIBS) $(LDFLAGS_TESTPROVIDERMODULE) $(PF_TESTPROVIDERLIB_EXTRA_LIBS)
|
|
|
|
$(INTERMEDIATE_DIR)/testprovider.map:
|
|
@echo "{ global: " > $@
|
|
@echo "$(addsuffix ;, $(TESTPROVIDERMODULE_EXPOSED_SYMS))" >> $@
|
|
@echo "local: *; };" >> $@
|
|
|
|
$(INTERMEDIATE_DIR)/testprovider.exp:
|
|
$(foreach SYM,$(TESTPROVIDERMODULE_EXPOSED_SYMS),$(shell echo $(EXPOSED_SYMS_PREFIX)$(SYM) >> $@))
|
|
|
|
|
|
#================================================================================
|
|
# Administration Tool
|
|
#================================================================================
|
|
|
|
SCXADMIN_DIR=$(SCX_SRC_ROOT)/shared/tools/scx_admin
|
|
|
|
# Static lib files for admin tool
|
|
STATIC_SCXADMIN_SRCFILES = \
|
|
$(SCXADMIN_DIR)/servicecontrol.cpp \
|
|
$(SCXADMIN_DIR)/cimconfigurator.cpp \
|
|
$(SCXADMIN_DIR)/logconfigurator.cpp \
|
|
$(SCXADMIN_DIR)/cmdparser.cpp \
|
|
$(SCXADMIN_DIR)/runasadminprovider.cpp
|
|
|
|
# We need to include include this module WITHOUT pulling in the provider library.
|
|
# On AIX, this causes OMI dependencies to be dragged in. We want better separation.
|
|
STATIC_SCXADMIN_SRCFILES += \
|
|
$(PROVIDER_SUPPORT_DIR)/scxrunasconfigurator.cpp
|
|
|
|
$(INTERMEDIATE_DIR)/source/code/shared/tools/scx_admin/%.d: INCLUDES += -I$(PROVIDER_SUPPORT_DIR)
|
|
$(INTERMEDIATE_DIR)/source/code/shared/tools/scx_admin/%.$(PF_OBJ_FILE_SUFFIX): INCLUDES += -I$(PROVIDER_SUPPORT_DIR)
|
|
|
|
STATIC_SCXADMIN_OBJFILES = $(call src_to_obj,$(STATIC_SCXADMIN_SRCFILES))
|
|
|
|
$(INTERMEDIATE_DIR)/libscxadmin.$(PF_STAT_LIB_FILE_SUFFIX) : $(STATIC_SCXADMIN_OBJFILES)
|
|
$(LINK_STATLIB) $(LINK_STATLIB_OUTFLAG) $^
|
|
|
|
# The main program
|
|
SCXADMIN_SRCFILES=\
|
|
$(SCXADMIN_DIR)/scx_admin.cpp
|
|
|
|
SCXADMIN_OBJFILES = $(call src_to_obj,$(SCXADMIN_SRCFILES))
|
|
|
|
|
|
SCXADMIN_DEPFILES=$(SCXADMIN_OBJFILES:.$(PF_OBJ_FILE_SUFFIX)=.d) $(STATIC_SCXADMIN_OBJFILES:.$(PF_OBJ_FILE_SUFFIX)=.d)
|
|
|
|
# Static dependencies on POSIX platforms
|
|
SCXADMIN_STATICLIB_DEPS = \
|
|
scxadmin
|
|
|
|
# omprovider \
|
|
# providersupport \
|
|
# metaprovider
|
|
|
|
ifneq ($(SCX_STACK_ONLY), true) # For a full agent, also include these:
|
|
#SCXADMIN_STATICLIB_DEPS += \
|
|
# runasprovider \
|
|
|
|
endif
|
|
|
|
# Foreach XYZ in the list above, build $(INTERMEDIATE_DIR)/libXYZ.a
|
|
SCXADMIN_STATICLIB_DEPFILES = $(addprefix $(INTERMEDIATE_DIR)/lib, $(addsuffix .$(PF_STAT_LIB_FILE_SUFFIX), $(SCXADMIN_STATICLIB_DEPS)))
|
|
|
|
$(INTERMEDIATE_DIR)/scxadmin$(PF_EXE_FILE_SUFFIX): \
|
|
$(SCXADMIN_OBJFILES) $(INTERMEDIATE_DIR)/libscxadmin.$(PF_STAT_LIB_FILE_SUFFIX) $(SCXADMIN_DEPFILES) $(SCXADMIN_STATICLIB_DEPFILES)
|
|
-$(MKPATH) $(INTERMEDIATE_DIR)/tools
|
|
$(PROFILING) $(LINK) $(LINK_OUTFLAG) $(SCXADMIN_OBJFILES) $(SCXADMIN_STATICLIB_DEPFILES) $(SCXPAL_STATICLIB_DEPFILES) $(LDFLAGS_SCX_ADMIN_TOOL) $(LDFLAGS_EXECUTABLE)
|
|
|
|
#================================================================================
|
|
# Logfile Reader Command Line Program
|
|
#================================================================================
|
|
|
|
LOGFILEREADER_DIR=$(SCX_SRC_ROOT)/providers/support
|
|
|
|
# Static lib files for scxlogfilereader command line program
|
|
STATIC_LOGFILEREADER_SRCFILES = \
|
|
$(LOGFILEREADER_DIR)/logfileutils.cpp \
|
|
$(LOGFILEREADER_DIR)/logpolicy.cpp
|
|
|
|
STATIC_LOGFILEREADER_OBJFILES = $(call src_to_obj,$(STATIC_LOGFILEREADER_SRCFILES))
|
|
|
|
$(INTERMEDIATE_DIR)/libscxlogfilereader.$(PF_STAT_LIB_FILE_SUFFIX) : $(STATIC_LOGFILEREADER_OBJFILES)
|
|
$(LINK_STATLIB) $(LINK_STATLIB_OUTFLAG) $^
|
|
|
|
# The main program
|
|
LOGFILEREADER_SRCFILES=\
|
|
$(LOGFILEREADER_DIR)/logfilereader.cpp
|
|
|
|
LOGFILEREADER_OBJFILES = $(call src_to_obj,$(LOGFILEREADER_SRCFILES))
|
|
|
|
LOGFILEREADER_DEPFILES=$(LOGFILEREADER_OBJFILES:.$(PF_OBJ_FILE_SUFFIX)=.d) $(STATIC_LOGFILEREADER_OBJFILES:.$(PF_OBJ_FILE_SUFFIX)=.d)
|
|
|
|
# Static dependencies on POSIX platforms
|
|
LOGFILEREADER_STATICLIB_DEPS = \
|
|
scxlogfilereader
|
|
|
|
# Foreach XYZ in the list above, build $(INTERMEDIATE_DIR)/libXYZ.a
|
|
LOGFILEREADER_STATICLIB_DEPFILES = $(addprefix $(INTERMEDIATE_DIR)/lib, $(addsuffix .$(PF_STAT_LIB_FILE_SUFFIX), $(LOGFILEREADER_STATICLIB_DEPS)))
|
|
|
|
$(INTERMEDIATE_DIR)/scxlogfilereader$(PF_EXE_FILE_SUFFIX): \
|
|
$(LOGFILEREADER_OBJFILES) $(INTERMEDIATE_DIR)/libscxlogfilereader.$(PF_STAT_LIB_FILE_SUFFIX) $(LOGFILEREADER_DEPFILES) $(LOGFILEREADER_STATICLIB_DEPFILES) $(SCXPAL_STATICLIB_DEPFILES)
|
|
-$(MKPATH) $(INTERMEDIATE_DIR)/tools
|
|
$(PROFILING) $(LINK) $(LINK_OUTFLAG) $(LOGFILEREADER_OBJFILES) $(LOGFILEREADER_STATICLIB_DEPFILES) $(SCXPAL_STATICLIB_DEPFILES) $(LDFLAGS_SCX_ADMIN_TOOL) $(LDFLAGS_EXECUTABLE)
|
|
|
|
#================================================================================
|
|
# Regular Expression Test Tool
|
|
#================================================================================
|
|
|
|
REGEX_TEST_DIR=$(SCX_SRC_ROOT)/shared/tools/regex_test
|
|
|
|
REGEX_TEST_SRCFILES=\
|
|
$(REGEX_TEST_DIR)/regex_test.cpp
|
|
|
|
REGEX_TEST_OBJFILES = $(call src_to_obj,$(REGEX_TEST_SRCFILES))
|
|
|
|
REGEX_TEST_DEPFILES=$(REGEX_TEST_OBJFILES:.$(PF_OBJ_FILE_SUFFIX)=.d)
|
|
|
|
$(INTERMEDIATE_DIR)/regex_test$(PF_EXE_FILE_SUFFIX): \
|
|
$(REGEX_TEST_OBJFILES) $(REGEX_TEST_DEPFILES) $(REGEX_TEST_STATICLIB_DEPFILES)
|
|
-$(MKPATH) $(INTERMEDIATE_DIR)/tools
|
|
$(PROFILING) $(LINK) $(LINK_OUTFLAG) $(REGEX_TEST_OBJFILES) $(SCXPAL_STATICLIB_DEPFILES) $(LDFLAGS_TESTRUNNER) $(LDFLAGS_EXECUTABLE)
|
|
|
|
#================================================================================
|
|
# OMI Pre-exec Directory Creation Tool
|
|
#================================================================================
|
|
|
|
OMI_PREEXEC_DIR=$(SCX_SRC_ROOT)/shared/tools/omi_preexec
|
|
PAL_STRERROR_LOC=$(SCXPAL_DIR)/source/code/scxcorelib/util
|
|
|
|
# Note that strerror.cpp lives in the PAL, but omi_preexec doesn't link against
|
|
# the PAL. To resolve, create a link to the real file and built it ourselves.
|
|
|
|
$(OMI_PREEXEC_DIR)/strerror.cpp :
|
|
# We need to recreate the symlink if the link is older than what it points to.
|
|
# Touch will not work, and ln -fs does not work on Sun5.9
|
|
rm -f $(OMI_PREEXEC_DIR)/strerror.cpp
|
|
ln -s $(PAL_STRERROR_LOC)/strerror.cpp $(OMI_PREEXEC_DIR)/strerror.cpp
|
|
|
|
OMI_PREEXEC_SRCFILES=\
|
|
$(OMI_PREEXEC_DIR)/omi_preexec.cpp \
|
|
$(OMI_PREEXEC_DIR)/strerror.cpp
|
|
|
|
OMI_PREEXEC_OBJFILES = $(call src_to_obj,$(OMI_PREEXEC_SRCFILES))
|
|
|
|
OMI_PREEXEC_DEPFILES=$(OMI_PREEXEC_OBJFILES:.$(PF_OBJ_FILE_SUFFIX)=.d)
|
|
|
|
$(INTERMEDIATE_DIR)/omi_preexec$(PF_EXE_FILE_SUFFIX): $(OMI_PREEXEC_OBJFILES) $(OMI_PREEXEC_DEPFILES)
|
|
-$(MKPATH) $(INTERMEDIATE_DIR)/tools
|
|
$(PROFILING) $(LINK) $(LINK_OUTFLAG) $(OMI_PREEXEC_OBJFILES) $(LDFLAGS_EXECUTABLE)
|
|
|
|
#================================================================================
|
|
# Development Convenience Targets
|
|
#================================================================================
|
|
|
|
logfilereader-tool: $(INTERMEDIATE_DIR)/scxlogfilereader$(PF_EXE_FILE_SUFFIX)
|
|
admin-tool: $(INTERMEDIATE_DIR)/scxadmin$(PF_EXE_FILE_SUFFIX)
|
|
regex-test: $(INTERMEDIATE_DIR)/regex_test$(PF_EXE_FILE_SUFFIX)
|
|
omi-preexec: $(INTERMEDIATE_DIR)/omi_preexec$(PF_EXE_FILE_SUFFIX)
|
|
|
|
ifeq ($(COMBINED_PACKAGES),1)
|
|
ifeq ($(PF_ARCH),x64)
|
|
ssl-tool: $(INTERMEDIATE_DIR)/$(OPENSSL098DIR)/scxsslconfig$(PF_EXE_FILE_SUFFIX) $(INTERMEDIATE_DIR)/$(OPENSSL100DIR)/scxsslconfig$(PF_EXE_FILE_SUFFIX) $(INTERMEDIATE_DIR)/$(OPENSSL110DIR)/scxsslconfig$(PF_EXE_FILE_SUFFIX) $(INTERMEDIATE_DIR)/$(OPENSSL300DIR)/scxsslconfig$(PF_EXE_FILE_SUFFIX)
|
|
else
|
|
ssl-tool: $(INTERMEDIATE_DIR)/$(OPENSSL098DIR)/scxsslconfig$(PF_EXE_FILE_SUFFIX) $(INTERMEDIATE_DIR)/$(OPENSSL100DIR)/scxsslconfig$(PF_EXE_FILE_SUFFIX)
|
|
endif
|
|
else
|
|
ssl-tool: $(INTERMEDIATE_DIR)/scxsslconfig$(PF_EXE_FILE_SUFFIX)
|
|
endif
|
|
|
|
# All SCX tools
|
|
scx-tools: logfilereader-tool admin-tool regex-test omi-preexec ssl-tool
|
|
|
|
coreprovider: \
|
|
$(INTERMEDIATE_DIR)/libSCXCoreProviderModule.$(PF_DYN_LIB_FILE_SUFFIX)
|
|
|
|
providers: \
|
|
$(INTERMEDIATE_DIR)/libSCXTestProviderModule.$(PF_DYN_LIB_FILE_SUFFIX) \
|
|
$(INTERMEDIATE_DIR)/libSCXCoreProviderModule.$(PF_DYN_LIB_FILE_SUFFIX)
|
|
|
|
# An alias
|
|
omi: omi_all
|
|
|
|
omi_all:
|
|
$(ECHO) "========================= Performing make omi"
|
|
$(MAKE) -C $(SCXOMI_DIR) all
|
|
|
|
# Testing tool (needs to be built on each of our platforms)
|
|
$(TARGET_DIR)/testapp :
|
|
$(ECHO) "========================= Performing make testapp"
|
|
$(MAKE) -C $(SCX_BRD)/test/util/testapp
|
|
|
|
# Used to generate compontents necessary for other projects to compile with the
|
|
# core components
|
|
devel-deps: $(COREPROVIDERMODULE_STATICLIB_DEPFILES) $(SCXPAL_TARGET_DIR)/libscxassertcppunit.$(PF_STAT_LIB_FILE_SUFFIX) $(TARGET_DIR)/testapp omi
|
|
$(ECHO) "========================= Performing building devel-deps"
|
|
-$(RMDIR) $(INTERMEDIATE_DIR)/scxcore-devel
|
|
ifeq ($(COMBINED_PACKAGES),1)
|
|
$(MKPATH) $(INTERMEDIATE_DIR)/scxcore-devel/lib/$(OPENSSL098DIR)
|
|
$(MKPATH) $(INTERMEDIATE_DIR)/scxcore-devel/lib/$(OPENSSL100DIR)
|
|
ifeq ($(PF_ARCH),x64)
|
|
$(MKPATH) $(INTERMEDIATE_DIR)/scxcore-devel/lib/$(OPENSSL110DIR)
|
|
$(MKPATH) $(INTERMEDIATE_DIR)/scxcore-devel/lib/$(OPENSSL300DIR)
|
|
endif
|
|
else
|
|
$(MKPATH) $(INTERMEDIATE_DIR)/scxcore-devel/lib
|
|
endif
|
|
$(COPYDIR) $(SCX_SHARED_INCLUDE_DIR) $(INTERMEDIATE_DIR)/scxcore-devel/shared
|
|
$(COPY) $(SCXPAL_STATICLIB_DEPFILES_NODUPS) $(INTERMEDIATE_DIR)/scxcore-devel/lib
|
|
$(COPY) $(COREPROVIDERMODULE_STATICLIB_DEPFILES) $(INTERMEDIATE_DIR)/scxcore-devel/lib
|
|
$(COPY) $(SCXPAL_TARGET_DIR)/libscxassertcppunit.$(PF_STAT_LIB_FILE_SUFFIX) $(INTERMEDIATE_DIR)/scxcore-devel/lib
|
|
$(MKPATH) $(INTERMEDIATE_DIR)/scxcore-devel/include/testutils
|
|
$(COPY) $(SCXPAL_TEST_ROOT)/include/testutils/scxunit.h $(INTERMEDIATE_DIR)/scxcore-devel/include/testutils
|
|
ifeq ($(LOCAL_OMI),1)
|
|
# Create an OMI development area for use in running utilities
|
|
# TODO - Is there an alias for mkdir? Not $(MKDIR) or $(MAKEDIR), those didn't work
|
|
$(RMDIR) -rf $(INTERMEDIATE_DIR)/omi
|
|
-mkdir -p $(INTERMEDIATE_DIR)/omi/etc/omiregister/root-scx
|
|
$(COPY) -r $(SCXOMI_DIR)/etc $(INTERMEDIATE_DIR)/omi
|
|
$(COPY) -r $(SCXOMI_DEV_ROOT)/* $(INTERMEDIATE_DIR)/omi
|
|
$(COPY) -r $(SCXOMI_DIR)/share $(INTERMEDIATE_DIR)/omi
|
|
endif
|
|
|
|
#================================================================================
|
|
# Doxygen Targets
|
|
#================================================================================
|
|
|
|
# Build the Doxygen documentation for the SCXCore lib
|
|
doxygen_corelib:
|
|
-$(RMDIR) $(DOXYGEN_OUTPUT_DIR)/scxcore_doc
|
|
$(MKPATH) $(DOXYGEN_OUTPUT_DIR)/scxcore_doc
|
|
( cat doxygen_scxcore.cfg ; \
|
|
echo "STRIP_FROM_PATH=$(SCX_SRC_ROOT)"; \
|
|
echo "OUTPUT_DIRECTORY=$(DOXYGEN_OUTPUT_DIR)/scxcore_doc"; \
|
|
echo "WARN_LOGFILE=$(INTERMEDIATE_DIR)/doxygen_build.log"; ) | doxygen -
|
|
if [ -s $(INTERMEDIATE_DIR)/doxygen_build.log ] ; then echo "$(INTERMEDIATE_DIR)/doxygen_build.log:1:Warnings in doxygenlog"; fi
|
|
|
|
doxygen_clean:
|
|
-$(RMDIR) $(DOXYGEN_OUTPUT_DIR)/scxcore_doc
|
|
|
|
#================================================================================
|
|
# Dependency generation Targets
|
|
#================================================================================
|
|
|
|
# Rule for automatically generating dependencies.
|
|
OBJFILES=$(STATIC_CORELIB_OBJFILES) \
|
|
$(STATIC_ASSERT_ABORTLIB_OBJFILES) \
|
|
$(STATIC_PROVIDERLIB_OBJFILES) \
|
|
$(STATIC_SCXADMIN_OBJFILES) \
|
|
$(SCXADMIN_OBJFILES) \
|
|
$(SCXSSLCONFIG_OBJFILES) \
|
|
$(REGEX_TEST_OBJFILES)
|
|
|
|
DEPFILES=$(OBJFILES:.$(PF_OBJ_FILE_SUFFIX)=.d)
|
|
|
|
#================================================================================
|
|
# Version information header file
|
|
#================================================================================
|
|
|
|
$(INT_INCLUDE_DIR)/buildversion.h : $(SCX_BRD)/build/Makefile.version
|
|
-$(MKPATH) $(@D)
|
|
@$(ECHO) "Creating $@"
|
|
@$(call pf_fwrite,"/*------------------------------------------------------------------------------", $@)
|
|
@$(call pf_fappend," Copyright (C) 2007 Microsoft Corp. ", $@)
|
|
@$(call pf_fappend," ", $@)
|
|
@$(call pf_fappend,"*/ ", $@)
|
|
@$(call pf_fappend,"/** ", $@)
|
|
@$(call pf_fappend," \file ", $@)
|
|
@$(call pf_fappend," ", $@)
|
|
@$(call pf_fappend," \brief Auto generated file containing build version information ", $@)
|
|
@$(call pf_fappend," ", $@)
|
|
@$(call pf_fappend," \author Automated Build System ", $@)
|
|
@$(call pf_fappend," ", $@)
|
|
@$(call pf_fappend," DO NOT EDIT THIS FILE! ", $@)
|
|
@$(call pf_fappend," DO NOT CHECK IN THIS FILE! ", $@)
|
|
@$(call pf_fappend,"*/ ", $@)
|
|
@$(call pf_fappend,"/*----------------------------------------------------------------------------*/", $@)
|
|
@$(call pf_fappend,"#ifndef BUILDVERSION_H ", $@)
|
|
@$(call pf_fappend,"#define BUILDVERSION_H ", $@)
|
|
@$(call pf_fappend," ", $@)
|
|
@$(call pf_fappend,"#include <string> ", $@)
|
|
@$(call pf_fappend," ", $@)
|
|
@$(call pf_fappend,"/** Major version number */ ", $@)
|
|
@$(call pf_fappend,"const int SCX_BUILDVERSION_MAJOR = $(SCX_BUILDVERSION_MAJOR); ", $@)
|
|
@$(call pf_fappend,"/** Minor version number */ ", $@)
|
|
@$(call pf_fappend,"const int SCX_BUILDVERSION_MINOR = $(SCX_BUILDVERSION_MINOR); ", $@)
|
|
@$(call pf_fappend,"/** Patch version number */ ", $@)
|
|
@$(call pf_fappend,"const int SCX_BUILDVERSION_PATCH = $(SCX_BUILDVERSION_PATCH); ", $@)
|
|
@$(call pf_fappend,"/** Build number */ ", $@)
|
|
@$(call pf_fappend,"const int SCX_BUILDVERSION_BUILDNR = $(SCX_BUILDVERSION_BUILDNR); ", $@)
|
|
@$(call pf_fappend,"/** Build date */ ", $@)
|
|
@$(call pf_fappend,"const std::wstring SCX_BUILDVERSION_DATE(L\"$(SCX_BUILDVERSION_DATE)\"); ", $@)
|
|
@$(call pf_fappend,"/** Build status */ ", $@)
|
|
@$(call pf_fappend,"const std::wstring SCX_BUILDVERSION_STATUS(L\"$(SCX_BUILDVERSION_STATUS)\"); ", $@)
|
|
@$(call pf_fappend," ", $@)
|
|
@$(call pf_fappend,"#endif /* BUILDVERSION_H */ ", $@)
|
|
@$(call pf_fappend,"/*----------------------------E-N-D---O-F---F-I-L-E---------------------------*/", $@)
|
|
|
|
|
|
#-------------------------------- End of File -----------------------------------
|