mirror of
https://github.com/nasa/trick.git
synced 2024-12-18 20:57:55 +00:00
9dd302f4b1
Removed the red from the clean rules. We'd like to reserve red for errors. Ended up removing all color from the clean side.
435 lines
16 KiB
Makefile
435 lines
16 KiB
Makefile
|
|
# Makefile to build Trick
|
|
|
|
# Make Targets
|
|
#-------------------------------------------------------------------------------
|
|
# default - Compile Trick-core and Trick Data-products Libraries and Applications.
|
|
# 'no_dp' - Compile Trick-core only.
|
|
# 'dp' - Compile Data-products only.
|
|
# 'java' - Compile Java GUI Applications
|
|
# 'javadoc' - Generate Java Documentation.
|
|
# 'doxygen' - Generate HTML User's Guide.
|
|
# 'test' - Run Unit-tests and Simulation Tests.
|
|
|
|
export TRICK_HOME = $(CURDIR)
|
|
|
|
# Include the build configuration information.
|
|
include $(TRICK_HOME)/share/trick/makefiles/Makefile.common
|
|
|
|
#-------------------------------------------------------------------------------
|
|
# Specify the contents of: libtrick.a
|
|
#-------------------------------------------------------------------------------
|
|
TRICK_LIB = $(TRICK_LIB_DIR)/libtrick.a
|
|
SIM_SERV_DIRS = \
|
|
${TRICK_HOME}/trick_source/sim_services/ExternalApplications \
|
|
${TRICK_HOME}/trick_source/sim_services/Clock \
|
|
${TRICK_HOME}/trick_source/sim_services/CheckPointAgent \
|
|
${TRICK_HOME}/trick_source/sim_services/CheckPointRestart \
|
|
${TRICK_HOME}/trick_source/sim_services/Collect \
|
|
${TRICK_HOME}/trick_source/sim_services/CommandLineArguments \
|
|
${TRICK_HOME}/trick_source/sim_services/DataRecord \
|
|
${TRICK_HOME}/trick_source/sim_services/DebugPause \
|
|
${TRICK_HOME}/trick_source/sim_services/DMTCP \
|
|
${TRICK_HOME}/trick_source/sim_services/EchoJobs \
|
|
${TRICK_HOME}/trick_source/sim_services/Environment \
|
|
${TRICK_HOME}/trick_source/sim_services/EventManager \
|
|
${TRICK_HOME}/trick_source/sim_services/Executive \
|
|
${TRICK_HOME}/trick_source/sim_services/FrameLog \
|
|
${TRICK_HOME}/trick_source/sim_services/JITInputFile \
|
|
${TRICK_HOME}/trick_source/sim_services/JSONVariableServer \
|
|
${TRICK_HOME}/trick_source/sim_services/Integrator \
|
|
${TRICK_HOME}/trick_source/sim_services/UnitTest \
|
|
${TRICK_HOME}/trick_source/sim_services/MasterSlave \
|
|
${TRICK_HOME}/trick_source/sim_services/MemoryManager \
|
|
${TRICK_HOME}/trick_source/sim_services/Message \
|
|
${TRICK_HOME}/trick_source/sim_services/MonteCarlo \
|
|
${TRICK_HOME}/trick_source/sim_services/RealtimeInjector \
|
|
${TRICK_HOME}/trick_source/sim_services/RealtimeSync \
|
|
${TRICK_HOME}/trick_source/sim_services/ScheduledJobQueue \
|
|
${TRICK_HOME}/trick_source/sim_services/Scheduler \
|
|
${TRICK_HOME}/trick_source/sim_services/Sie \
|
|
${TRICK_HOME}/trick_source/sim_services/SimObject \
|
|
${TRICK_HOME}/trick_source/sim_services/SimTime \
|
|
${TRICK_HOME}/trick_source/sim_services/ThreadBase \
|
|
${TRICK_HOME}/trick_source/sim_services/Timer \
|
|
${TRICK_HOME}/trick_source/sim_services/UdUnits \
|
|
${TRICK_HOME}/trick_source/sim_services/UnitsMap \
|
|
${TRICK_HOME}/trick_source/sim_services/VariableServer \
|
|
${TRICK_HOME}/trick_source/sim_services/Zeroconf \
|
|
${TRICK_HOME}/trick_source/sim_services/include \
|
|
${TRICK_HOME}/trick_source/sim_services/mains
|
|
ifeq ($(USE_ER7_UTILS), 0)
|
|
SIM_SERV_DIRS += ${TRICK_HOME}/trick_source/sim_services/Integrator/trick_algorithms
|
|
endif
|
|
|
|
SIM_SERV_OBJS = $(addsuffix /object_$(TRICK_HOST_CPU)/*.o ,$(SIM_SERV_DIRS))
|
|
SIM_SERV_OBJS := $(filter-out ${TRICK_HOME}/trick_source/sim_services/MemoryManager/%, $(SIM_SERV_OBJS))
|
|
|
|
ER7_UTILS_DIRS = \
|
|
${ER7_UTILS_HOME}/integration/abm4 \
|
|
${ER7_UTILS_HOME}/integration/beeman \
|
|
${ER7_UTILS_HOME}/integration/core \
|
|
${ER7_UTILS_HOME}/integration/euler \
|
|
${ER7_UTILS_HOME}/integration/mm4 \
|
|
${ER7_UTILS_HOME}/integration/nl2 \
|
|
${ER7_UTILS_HOME}/integration/position_verlet \
|
|
${ER7_UTILS_HOME}/integration/rk2_heun \
|
|
${ER7_UTILS_HOME}/integration/rk2_midpoint \
|
|
${ER7_UTILS_HOME}/integration/rk4 \
|
|
${ER7_UTILS_HOME}/integration/rkf45 \
|
|
${ER7_UTILS_HOME}/integration/rkf78 \
|
|
${ER7_UTILS_HOME}/integration/rkg4 \
|
|
${ER7_UTILS_HOME}/integration/rkn4 \
|
|
${ER7_UTILS_HOME}/integration/symplectic_euler \
|
|
${ER7_UTILS_HOME}/integration/velocity_verlet \
|
|
${ER7_UTILS_HOME}/interface \
|
|
${ER7_UTILS_HOME}/math \
|
|
${ER7_UTILS_HOME}/trick/integration
|
|
ifeq ($(USE_ER7_UTILS_CHECKPOINTHELPER), 1)
|
|
ER7_UTILS_DIRS += ${ER7_UTILS_HOME}/CheckpointHelper
|
|
endif
|
|
ER7_UTILS_OBJS = $(addsuffix /object_$(TRICK_HOST_CPU)/*.o ,$(ER7_UTILS_DIRS))
|
|
|
|
UTILS_DIRS := \
|
|
${TRICK_HOME}/trick_source/trick_utils/interpolator \
|
|
${TRICK_HOME}/trick_source/trick_utils/trick_adt \
|
|
${TRICK_HOME}/trick_source/trick_utils/comm \
|
|
${TRICK_HOME}/trick_source/trick_utils/shm \
|
|
${TRICK_HOME}/trick_source/trick_utils/math \
|
|
${TRICK_HOME}/trick_source/trick_utils/units
|
|
UTILS_OBJS := $(addsuffix /object_$(TRICK_HOST_CPU)/*.o ,$(UTILS_DIRS))
|
|
|
|
# filter out the directories that make their own libraries
|
|
UTILS_OBJS := $(filter-out ${TRICK_HOME}/trick_source/trick_utils/comm/%, $(UTILS_OBJS))
|
|
UTILS_OBJS := $(filter-out ${TRICK_HOME}/trick_source/trick_utils/math/%, $(UTILS_OBJS))
|
|
UTILS_OBJS := $(filter-out ${TRICK_HOME}/trick_source/trick_utils/units/%, $(UTILS_OBJS))
|
|
|
|
#-------------------------------------------------------------------------------
|
|
# Specify the contents of: libtrick_pyip.a
|
|
# This library contains the SWIG generated interface-code between Trick and Python.
|
|
#-------------------------------------------------------------------------------
|
|
TRICK_SWIG_LIB = $(TRICK_LIB_DIR)/libtrick_pyip.a
|
|
|
|
SWIG_DIRS = \
|
|
${TRICK_HOME}/trick_source/sim_services/InputProcessor \
|
|
${TRICK_HOME}/trick_source/trick_swig
|
|
|
|
SWIG_OBJS = $(addsuffix /object_$(TRICK_HOST_CPU)/*.o ,$(SWIG_DIRS))
|
|
|
|
#-------------------------------------------------------------------------------
|
|
# Specify where to find units tests.
|
|
#-------------------------------------------------------------------------------
|
|
UNIT_TEST_DIRS := \
|
|
$(wildcard ${TRICK_HOME}/trick_source/sim_services/*/test) \
|
|
$(wildcard ${TRICK_HOME}/trick_source/trick_utils/*/test) \
|
|
${TRICK_HOME}/trick_source/data_products/DPX/test/unit_test
|
|
ifeq ($(USE_ER7_UTILS), 0)
|
|
UNIT_TEST_DIRS := $(filter-out %Integrator/test,$(UNIT_TEST_DIRS))
|
|
endif
|
|
|
|
# The name of the ICG executable indicates the operating system, and the machine
|
|
# hardware on which it is built. This allows pre-build ICG binaries to be
|
|
# distributed in the installation package. The reason for distributing pre-built
|
|
# ICG binaries is because the user's machine may not have the requisite clang
|
|
# libraries.
|
|
ICG_EXE := ${TRICK_HOME}/bin/trick-ICG
|
|
|
|
################################################################################
|
|
# Formating Variables
|
|
################################################################################
|
|
|
|
# Appends a newline to the -w / --print-directories leaving message for make.
|
|
# This helps break up directory traversal into blocks.
|
|
MAKE_TRAVERSAL_NEWLINE := | sed '/^make.*: Leaving directory/a\ '
|
|
|
|
################################################################################
|
|
# RULES
|
|
################################################################################
|
|
# DEFAULT TARGET
|
|
# 1 Build Trick-core and Trick Data-products.
|
|
all: no_dp dp
|
|
@ echo -e "\e[32mTrick has been successfully compiled.\e[34m"
|
|
@date
|
|
|
|
ifeq ($(USE_JAVA), 1)
|
|
all: java
|
|
endif
|
|
|
|
#-------------------------------------------------------------------------------
|
|
# 1.1 Build Trick-core
|
|
no_dp: $(TRICK_LIB) $(TRICK_SWIG_LIB)
|
|
@ echo -e "\e[32mTrick libraries compiled:\e[34m" ; date ; echo -e "\e[0m"
|
|
|
|
# 1.1.1 Build libTrick.a
|
|
$(TRICK_LIB): $(SIM_SERV_DIRS) $(UTILS_DIRS) | $(TRICK_LIB_DIR)
|
|
@ echo -e "\e[34m[---Building $@---]\e[0m"
|
|
ar crs $@ $(SIM_SERV_OBJS) $(UTILS_OBJS)
|
|
|
|
ifeq ($(USE_ER7_UTILS), 1)
|
|
ER7_UTILS_LIB = $(TRICK_LIB_DIR)/liber7_utils.a
|
|
no_dp: $(ER7_UTILS_LIB)
|
|
|
|
$(ER7_UTILS_LIB): $(ER7_UTILS_DIRS) | $(TRICK_LIB_DIR)
|
|
@ echo -e "\e[34m[---Building $@---]\e[0m"
|
|
ar crs $@ $(ER7_UTILS_OBJS)
|
|
endif
|
|
|
|
# 1.1.1.1 Compile the objects in the specified sim_services directories.
|
|
.PHONY: $(SIM_SERV_DIRS)
|
|
$(SIM_SERV_DIRS): icg_sim_serv $(TRICK_LIB_DIR)
|
|
@ echo -e "\e[34m[---Building $@---]\e[0m"
|
|
@ $(MAKE) -C $@ trick
|
|
|
|
# 1.1.1.2 Compile the objects in the specified utils directories.
|
|
.PHONY: $(UTILS_DIRS)
|
|
$(UTILS_DIRS): icg_sim_serv
|
|
@ echo -e "\e[34m[---Building $@---]\e[0m"
|
|
@ $(MAKE) -C $@ trick
|
|
|
|
# 1.1.1.3 Compile the objects in the specified er7_utils directories.
|
|
.PHONY: $(ER7_UTILS_DIRS)
|
|
$(ER7_UTILS_DIRS): TRICK_CXXFLAGS += -Wno-unused-parameter
|
|
$(ER7_UTILS_DIRS): make_er7_makefiles icg_sim_serv
|
|
@ echo -e "\e[34m[---Building $@---]\e[0m"
|
|
@ $(MAKE) -C $@ trick
|
|
|
|
.PHONY: make_er7_makefiles
|
|
make_er7_makefiles:
|
|
@for i in $(ER7_UTILS_DIRS) ; do \
|
|
$(CP) ${TRICK_HOME}/trick_source/sim_services/Executive/Makefile $$i; \
|
|
done
|
|
|
|
ifeq ($(USE_ER7_UTILS), 1)
|
|
icg_sim_serv: | make_er7_makefiles
|
|
endif
|
|
|
|
# 1.1.1.4 Generate interface code (using ICG) for the specified sim_services
|
|
# header files.
|
|
.PHONY: icg_sim_serv
|
|
icg_sim_serv: $(ICG_EXE)
|
|
@ echo -e "\e[34m[---Generating Interface Code---]\e[0m"
|
|
${TRICK_HOME}/bin/trick-ICG -s -m ${TRICK_CXXFLAGS} ${TRICK_SYSTEM_CXXFLAGS} ${TRICK_HOME}/include/trick/files_to_ICG.hh
|
|
|
|
# 1.1.1.4.1 Build the Interface Code Generator (ICG) executable.
|
|
$(ICG_EXE) :
|
|
@ echo -e "\e[34m[---Building Interface Code Generator---]\e[0m"
|
|
$(MAKE) -C trick_source/codegen/Interface_Code_Gen
|
|
|
|
# 1.1.1.5 Create Trick Library directory.
|
|
$(TRICK_LIB_DIR):
|
|
@ mkdir $@
|
|
|
|
# 1.1.2 Build libTrick_pyip.a (Swig Lib)
|
|
$(TRICK_SWIG_LIB): $(SWIG_DIRS) | $(TRICK_LIB_DIR)
|
|
@ echo -e "\e[34m[---Building $@---]\e[0m"
|
|
ar crs $@ $(SWIG_OBJS)
|
|
|
|
.PHONY: $(SWIG_DIRS)
|
|
$(SWIG_DIRS): icg_sim_serv $(TRICK_LIB_DIR)
|
|
@ echo -e "\e[34m[---Building $@---]\e[0m"
|
|
@ $(MAKE) -C $@ trick
|
|
|
|
#-------------------------------------------------------------------------------
|
|
# 1.2 Build Trick's Data-products Applications.
|
|
.PHONY: dp
|
|
dp: ${TRICK_HOME}/trick_source/trick_utils/units
|
|
@ echo -e "\e[34m[---Building Data-Products Applications---]\e[0m"
|
|
@ $(MAKE) -C ${TRICK_HOME}/trick_source/data_products
|
|
|
|
#-------------------------------------------------------------------------------
|
|
# 1.3 Build Trick's Java Tools
|
|
java:
|
|
@ echo -e "\e[34m[---Building Java Tools---]\e[0m"
|
|
@ $(MAKE) -C ${TRICK_HOME}/trick_source/java
|
|
|
|
.PHONY: javadoc
|
|
javadoc:
|
|
@ $(MAKE) -C ${TRICK_HOME}/trick_source/java $@
|
|
|
|
#-------------------------------------------------------------------------------
|
|
# 1.4 This target builds the Trick Documentation.
|
|
.PHONY: doxygen
|
|
doxygen:
|
|
@ $(MAKE) -C $@
|
|
|
|
#-------------------------------------------------------------------------------
|
|
# 1.5 Some Trick source is auto-generated as part of the Trick's build process. When
|
|
# Trick is distributed to the user community, we can't be certain that everyone's
|
|
# machine will have the approriate versions of the code generations tool. So rather
|
|
# than just hope, we go ahead and pre-generate the necessary source files, and
|
|
# include those in the distribution package.
|
|
# This target pre-generates these source files, that are necessary for creating
|
|
# a distribution package.
|
|
premade:
|
|
@ $(MAKE) -C ${TRICK_HOME}/trick_source/sim_services/MemoryManager premade
|
|
@ $(MAKE) -C ${TRICK_HOME}/trick_source/sim_services/CheckPointAgent premade
|
|
@ $(MAKE) -C ${TRICK_HOME}/trick_source/java
|
|
|
|
################################################################################
|
|
# TESTING
|
|
################################################################################
|
|
# This target runs Trick's Unit-tests and simulation-tests.
|
|
test: unit_test sim_test
|
|
@ echo -e "\n\e[32m#####################################"
|
|
@ echo -e "\e[32mAll unit tests completed sucessfully.\e[0m"
|
|
@ echo -e "\e[32m#####################################\n"
|
|
|
|
.PHONY: $(UNIT_TEST_DIRS)
|
|
$(UNIT_TEST_DIRS):
|
|
@ $(MAKE) -C $@ test
|
|
|
|
unit_test: $(UNIT_TEST_DIRS)
|
|
|
|
sim_test:
|
|
@ $(MAKE) -C test
|
|
@ $(MAKE) -C trick_sims test
|
|
|
|
#requirements:
|
|
# @ $(MAKE) -C trick_test/requirements_docs install
|
|
|
|
################################################################################
|
|
# CLEAN Targets
|
|
################################################################################
|
|
|
|
clean: clean_sim_serv clean_utils clean_swig clean_dp clean_ICG clean_java
|
|
@/bin/rm -rf $(TRICK_BIN_DIR)
|
|
@/bin/rm -rf $(TRICK_LIB_DIR)
|
|
|
|
@echo -e "\e[32mTrick has been successfully cleaned."
|
|
|
|
|
|
ifeq ($(USE_ER7_UTILS), 1)
|
|
clean: clean_er7_utils
|
|
endif
|
|
|
|
clean_sim_serv:
|
|
@for i in $(SIM_SERV_DIRS) ; do \
|
|
$(MAKE) -C $$i real_clean $(MAKE_TRAVERSAL_NEWLINE); \
|
|
done
|
|
@ $(MAKE) -C ${TRICK_HOME}/trick_source/sim_services/mains real_clean $(MAKE_TRAVERSAL_NEWLINE)
|
|
|
|
clean_er7_utils: make_er7_makefiles
|
|
@for i in $(ER7_UTILS_DIRS) ; do \
|
|
$(MAKE) -C $$i real_clean $ $(MAKE_TRAVERSAL_NEWLINE); \
|
|
rm $$i/Makefile; \
|
|
done
|
|
|
|
clean_utils:
|
|
@for i in $(UTILS_DIRS) ; do \
|
|
$(MAKE) -C $$i real_clean $(MAKE_TRAVERSAL_NEWLINE); \
|
|
done
|
|
|
|
clean_swig:
|
|
@for i in $(SWIG_DIRS) ; do \
|
|
$(MAKE) -C $$i real_clean $(MAKE_TRAVERSAL_NEWLINE); \
|
|
done
|
|
|
|
ifeq ($(USE_ER7_UTILS), 1)
|
|
clean_swig: make_er7_makefiles
|
|
endif
|
|
|
|
clean_ICG :
|
|
@ $(MAKE) -C ${TRICK_HOME}/trick_source/codegen/Interface_Code_Gen clean $(MAKE_TRAVERSAL_NEWLINE)
|
|
|
|
clean_unit_test:
|
|
@/bin/rm -rf ${TRICK_HOME}/trick_test/*.xml
|
|
@ for i in $(UNIT_TEST_DIRS) ; do \
|
|
$(MAKE) -C $$i clean ; \
|
|
done
|
|
|
|
clean_doxygen:
|
|
@ $(MAKE) -C ${TRICK_HOME}/doxygen clean $(MAKE_TRAVERSAL_NEWLINE)
|
|
|
|
clean_dp:
|
|
@ $(MAKE) clean -C ${TRICK_HOME}/trick_source/data_products $(MAKE_TRAVERSAL_NEWLINE)
|
|
|
|
clean_java:
|
|
@ $(MAKE) -C ${TRICK_HOME}/trick_source/java clean $(MAKE_TRAVERSAL_NEWLINE)
|
|
|
|
|
|
# FIXME: Seems to me that the for loop below should be removed and that the
|
|
# 'clean' target in trick_sims/makefile should be doing this. --Penn
|
|
clean_test: clean_unit_test
|
|
-@ $(MAKE) -C trick_sims clean
|
|
-@ $(MAKE) -C test clean
|
|
|
|
clean_gui: clean_java
|
|
|
|
################################################################################
|
|
# INSTALL Targets
|
|
################################################################################
|
|
|
|
ER7_HEADERS := $(addprefix $(PREFIX)/include/, $(filter er7_utils/%, $(shell cd trick_source && find er7_utils -name \*.hh)))
|
|
|
|
${ER7_HEADERS} : ${PREFIX}/include/% : trick_source/%
|
|
@ mkdir -p ${@D}
|
|
install -m 0644 $? $@
|
|
|
|
install: ${ER7_HEADERS}
|
|
@if [ ! -d ${TRICK_LIB_DIR} ]; then \
|
|
make; \
|
|
fi
|
|
|
|
@if [ ${PREFIX} = "/usr/local" ]; then \
|
|
if [[ $EUID -ne 0 ]]; then \
|
|
echo -e "\n\e[31mInstalling Trick to /usr/local, the default installation location, requires super user privileges."; \
|
|
echo -e "Please log in as a super user to continue.\e[0m\n"; \
|
|
exit 1; \
|
|
fi; \
|
|
fi
|
|
|
|
cp -r bin include $(notdir ${TRICK_LIB_DIR}) libexec share ${PREFIX}
|
|
@echo -e "\n\e[32mTrick has been installed successfully to ${PREFIX}.\e[0m\n"
|
|
|
|
uninstall:
|
|
rm -f ${PREFIX}/bin/trick-CP
|
|
rm -f ${PREFIX}/bin/trick-ICG
|
|
rm -f ${PREFIX}/bin/trick-config
|
|
rm -f ${PREFIX}/bin/trick-dp
|
|
rm -f ${PREFIX}/bin/trick-dre
|
|
rm -f ${PREFIX}/bin/trick-gte
|
|
rm -f ${PREFIX}/bin/trick-gxplot
|
|
rm -f ${PREFIX}/bin/trick-jxplot
|
|
rm -f ${PREFIX}/bin/trick-killsim
|
|
rm -f ${PREFIX}/bin/trick-mm
|
|
rm -f ${PREFIX}/bin/trick-mtv
|
|
rm -f ${PREFIX}/bin/trick-qp
|
|
rm -f ${PREFIX}/bin/trick-sie
|
|
rm -f ${PREFIX}/bin/trick-simcontrol
|
|
rm -f ${PREFIX}/bin/trick-sniffer
|
|
rm -f ${PREFIX}/bin/trick-stripchart
|
|
rm -f ${PREFIX}/bin/trick-trk2ascii
|
|
rm -f ${PREFIX}/bin/trick-trk2csv
|
|
rm -f ${PREFIX}/bin/trick-tv
|
|
rm -f ${PREFIX}/bin/trick-version
|
|
rm -rf ${PREFIX}/include/trick
|
|
rm -rf ${PREFIX}/include/er7_utils
|
|
rm -f ${PREFIX}/$(notdir ${TRICK_LIB_DIR})/liber7_utils.a
|
|
rm -f ${PREFIX}/$(notdir ${TRICK_LIB_DIR})/libtrick.a
|
|
rm -f ${PREFIX}/$(notdir ${TRICK_LIB_DIR})/libtrick_comm.a
|
|
rm -f ${PREFIX}/$(notdir ${TRICK_LIB_DIR})/libtrick_math.a
|
|
rm -f ${PREFIX}/$(notdir ${TRICK_LIB_DIR})/libtrick_mm.a
|
|
rm -f ${PREFIX}/$(notdir ${TRICK_LIB_DIR})/libtrick_pyip.a
|
|
rm -f ${PREFIX}/$(notdir ${TRICK_LIB_DIR})/libtrick_units.a
|
|
rm -rf ${PREFIX}/libexec/trick
|
|
rm -rf ${PREFIX}/share/doc/trick
|
|
rm -f ${PREFIX}/share/man/man1/trick-CP.1
|
|
rm -f ${PREFIX}/share/man/man1/trick-ICG.1
|
|
rm -f ${PREFIX}/share/man/man1/trick-killsim.1
|
|
rm -rf ${PREFIX}/share/trick
|
|
|
|
################################################################################
|
|
# MISCELLANEOUS DEVELOPER UTILITY TARGETS #
|
|
################################################################################
|
|
# ICG all sim_services files (for testing and debugging ICG).
|
|
# The -f flag forces io_src files to be regenerated whether or not they need to be.
|
|
ICG: $(ICG_EXE)
|
|
${TRICK_HOME}/bin/trick-ICG -f -s -m -n ${TRICK_CXXFLAGS} ${TRICK_SYSTEM_CXXFLAGS} ${TRICK_HOME}/include/trick/files_to_ICG.hh
|
|
|
|
# This builds a tricklib share library.
|
|
trick_lib: $(SIM_SERV_DIRS) $(UTILS_DIRS) | $(TRICK_LIB_DIR)
|
|
${TRICK_CPPC} $(SHARED_LIB_OPT) -o ${TRICK_LIB_DIR}/libtrick.so $(SIM_SERV_OBJS) $(UTILS_OBJS)
|
|
|
|
# For NASA/JSC developers include optional rules
|
|
-include Makefile_jsc_dirs
|