mirror of
https://github.com/nasa/trick.git
synced 2024-12-24 23:36:43 +00:00
8d314fa1b1
Closes #1144
39 lines
1.5 KiB
Makefile
39 lines
1.5 KiB
Makefile
# We know this file's position relative to the root directory of the project,
|
|
# and MAKEFILE_LIST will give us the full path to this file no matter where the
|
|
# user has installed this project.
|
|
export MYPROJECT_HOME := $(abspath $(dir $(lastword $(MAKEFILE_LIST)))/..)
|
|
|
|
# Specify include paths for your headers.
|
|
MYPROJECT_INCLUDE := -I$(MYPROJECT_HOME)/include
|
|
|
|
# Users may set different flags for C and C++, so you should really modify both
|
|
# to be safe.
|
|
TRICK_CFLAGS += $(MYPROJECT_INCLUDE) $(MYPROJECT_SOURCE)
|
|
TRICK_CXXFLAGS += $(MYPROJECT_INCLUDE) $(MYPROJECT_SOURCE)
|
|
|
|
MYPROJECT_TRICK := $(MYPROJECT_HOME)/trickified/trickified_myproject.o
|
|
|
|
# Tell Trick the headers and source at this location are part of a
|
|
# Trickified project
|
|
TRICK_EXT_LIB_DIRS += :$(MYPROJECT_HOME)
|
|
|
|
# Tell Trick where to find the Python modules generated by SWIG
|
|
TRICK_PYTHON_PATH += :$(MYPROJECT_HOME)/trickified/python
|
|
|
|
# Tell SWIG where to find py_*.i files
|
|
TRICK_SWIG_FLAGS += -I$(MYPROJECT_HOME)/trickified
|
|
|
|
# Link in the Trickified object
|
|
TRICK_LDFLAGS += $(MYPROJECT_TRICK)
|
|
|
|
# Append a prerequisite to the $(SWIG_SRC) target. This will build the
|
|
# Trickified library along with the sim if it does not already exist. Using
|
|
# $(SWIG_SRC) ensures that all Trickified .i files are created before SWIG is
|
|
# run on any simulation .i files, which may %import them. Note that this does
|
|
# NOT cause the Trickified library to be rebuilt if it already exists, even if
|
|
# the Trickified source code has changed.
|
|
$(SWIG_SRC): $(MYPROJECT_TRICK)
|
|
|
|
$(MYPROJECT_TRICK):
|
|
@$(MAKE) -s -C $(MYPROJECT_HOME)/trickified
|