You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

54 lines
1.7 KiB

################################################
# NB: This Makefile is designed to be called #
# from the main PRISM Makefile. It won't #
# work on its own because it needs #
# various options to be passed in #
################################################
.SUFFIXES: .o .c .cc
# Reminder: $@ = target, $* = target without extension, $< = dependency
THIS_DIR = dd
PRISM_DIR_REL = ../..
INCLUDES = \
-I$(PRISM_DIR_REL)/$(CUDD_DIR)/include \
-I$(PRISM_DIR_REL)/$(INCLUDE_DIR)
LIBRARIES = \
-L$(PRISM_DIR_REL)/$(CUDD_DIR)/lib \
-lcudd \
-lutil \
-lmtr \
-lst \
-lepd
CC_FILES = $(wildcard *.cc)
O_FILES = $(CC_FILES:%.cc=$(PRISM_DIR_REL)/$(OBJ_DIR)/$(THIS_DIR)/%.o)
default: all
all: checks $(PRISM_DIR_REL)/$(LIB_DIR)/$(LIBPREFIX)dd$(LIBSUFFIX) $(PRISM_DIR_REL)/$(OBJ_DIR)/$(THIS_DIR)/dd_test$(EXE)
# Try and prevent accidental makes (i.e. called manually, not from top-level Makefile)
checks:
@if [ "$(SRC_DIR)" = "" ]; then \
(echo "Error: This Makefile is designed to be called from the main PRISM Makefile"; exit 1) \
fi;
$(PRISM_DIR_REL)/$(LIB_DIR)/$(LIBPREFIX)dd$(LIBSUFFIX): $(O_FILES)
$(LD) $(SHARED) $(LDFLAGS) -o $@ $(O_FILES) $(LIBRARIES)
$(PRISM_DIR_REL)/$(OBJ_DIR)/$(THIS_DIR)/dd_test$(EXE): $(PRISM_DIR_REL)/$(OBJ_DIR)/$(THIS_DIR)/dd_test.o $(PRISM_DIR_REL)/$(LIB_DIR)/$(LIBPREFIX)dd$(LIBSUFFIX)
$(LD) $(LDFLAGS) -o $@ $(PRISM_DIR_REL)/$(OBJ_DIR)/$(THIS_DIR)/dd_test.o -L$(PRISM_DIR_REL)/$(LIB_DIR) -ldd
$(PRISM_DIR_REL)/$(OBJ_DIR)/$(THIS_DIR)/%.o: %.cc
$(CPP) $(CPPFLAGS) -c $< -o $@ $(INCLUDES)
clean: checks
@rm -f $(PRISM_DIR_REL)/$(LIB_DIR)/$(LIBPREFIX)dd$(LIBSUFFIX) $(O_FILES) $(PRISM_DIR_REL)/$(OBJ_DIR)/$(THIS_DIR)/dd_test$(EXE)
celan: clean
#################################################