2011-04-29 14:27:02 +08:00
|
|
|
##===- polly/lib/Makefile -----------------------*- Makefile -*-===##
|
|
|
|
|
|
|
|
#
|
|
|
|
# Indicate where we are relative to the top of the source tree.
|
|
|
|
#
|
|
|
|
LEVEL :=..
|
|
|
|
|
|
|
|
LIBRARYNAME=LLVMPolly
|
|
|
|
LOADABLE_MODULE = 1
|
|
|
|
|
|
|
|
include $(LEVEL)/Makefile.config
|
|
|
|
|
|
|
|
CPP.Flags += $(POLLY_INC)
|
|
|
|
|
2011-11-23 03:40:31 +08:00
|
|
|
DIRS = Exchange
|
|
|
|
USEDLIBS = pollyexchange.a
|
2011-04-29 14:27:02 +08:00
|
|
|
|
|
|
|
DIRS += Analysis
|
|
|
|
USEDLIBS += pollyanalysis.a
|
|
|
|
|
2012-03-30 16:46:18 +08:00
|
|
|
DIRS += CodeGen
|
|
|
|
USEDLIBS += pollycodegen.a
|
|
|
|
|
2011-11-23 03:40:31 +08:00
|
|
|
# This needs to be added after the files that use it, otherwise some functions
|
|
|
|
# from pollysupport are not available. They will be eliminated if they are
|
|
|
|
# not used at the time of linking pollysupport.a
|
|
|
|
DIRS += Support
|
|
|
|
USEDLIBS += pollysupport.a
|
|
|
|
|
2011-04-29 14:27:02 +08:00
|
|
|
DIRS += JSON
|
|
|
|
USEDLIBS += pollyjson.a
|
|
|
|
|
|
|
|
# TODO: Export symbols for RTTI or EH?
|
|
|
|
|
|
|
|
#
|
|
|
|
# Include Makefile.common so we know what to do.
|
|
|
|
#
|
|
|
|
include $(LEVEL)/Makefile.common
|
|
|
|
|
|
|
|
LIBS += $(POLLY_LD) $(POLLY_LIB)
|
|
|
|
|
|
|
|
$(LibDir)/libpollyanalysis.a : $(LibDir)/.dir $(PROJ_OBJ_DIR)/Analysis/$(BuildMode)/.dir \
|
|
|
|
$(PROJ_SRC_DIR)/Analysis/*
|
|
|
|
$(Verb) if [ -d $(PROJ_SRC_DIR)/Analysis ]; then\
|
|
|
|
if ([ ! -f Analysis/Makefile ] || \
|
|
|
|
command test Analysis/Makefile -ot $(PROJ_SRC_DIR)/Analysis/Makefile ); then \
|
|
|
|
$(MKDIR) Analysis; \
|
|
|
|
$(CP) $(PROJ_SRC_DIR)/Analysis/Makefile Analysis/Makefile; \
|
|
|
|
fi; \
|
|
|
|
($(MAKE) -C Analysis $@ ) || exit 1; \
|
|
|
|
fi
|
|
|
|
|
2012-03-30 16:46:18 +08:00
|
|
|
$(LibDir)/libpollycodegen.a : $(LibDir)/.dir $(PROJ_OBJ_DIR)/CodeGen/$(BuildMode)/.dir \
|
|
|
|
$(PROJ_SRC_DIR)/CodeGen/*
|
|
|
|
$(Verb) if [ -d $(PROJ_SRC_DIR)/CodeGen ]; then\
|
|
|
|
if ([ ! -f CodeGen/Makefile ] || \
|
|
|
|
command test CodeGen/Makefile -ot $(PROJ_SRC_DIR)/CodeGen/Makefile ); then \
|
|
|
|
$(MKDIR) CodeGen; \
|
|
|
|
$(CP) $(PROJ_SRC_DIR)/CodeGen/Makefile CodeGen/Makefile; \
|
|
|
|
fi; \
|
|
|
|
($(MAKE) -C CodeGen $@ ) || exit 1; \
|
|
|
|
fi
|
|
|
|
|
2011-04-29 14:27:02 +08:00
|
|
|
$(LibDir)/libpollyexchange.a : $(LibDir)/.dir $(PROJ_OBJ_DIR)/Exchange/$(BuildMode)/.dir \
|
|
|
|
$(PROJ_SRC_DIR)/Exchange/*
|
|
|
|
$(Verb) if [ -d $(PROJ_SRC_DIR)/Exchange ]; then\
|
|
|
|
if ([ ! -f Exchange/Makefile ] || \
|
|
|
|
command test Exchange/Makefile -ot $(PROJ_SRC_DIR)/Exchange/Makefile ); then \
|
|
|
|
$(MKDIR) Exchange; \
|
|
|
|
$(CP) $(PROJ_SRC_DIR)/Exchange/Makefile Exchange/Makefile; \
|
|
|
|
fi; \
|
|
|
|
($(MAKE) -C Exchange $@ ) || exit 1; \
|
|
|
|
fi
|
|
|
|
|
|
|
|
$(LibDir)/libpollysupport.a : $(LibDir)/.dir $(PROJ_OBJ_DIR)/Support/$(BuildMode)/.dir \
|
|
|
|
$(PROJ_SRC_DIR)/Support/*
|
|
|
|
$(Verb) if [ -d $(PROJ_SRC_DIR)/Support ]; then\
|
|
|
|
if ([ ! -f Support/Makefile ] || \
|
|
|
|
command test Support/Makefile -ot $(PROJ_SRC_DIR)/Support/Makefile ); then \
|
|
|
|
$(MKDIR) Support; \
|
|
|
|
$(CP) $(PROJ_SRC_DIR)/Support/Makefile Support/Makefile; \
|
|
|
|
fi; \
|
|
|
|
($(MAKE) -C Support $@ ) || exit 1; \
|
|
|
|
fi
|
|
|
|
|
|
|
|
$(LibDir)/libpollyjson.a : $(LibDir)/.dir $(PROJ_OBJ_DIR)/JSON/$(BuildMode)/.dir \
|
|
|
|
$(PROJ_SRC_DIR)/JSON/*
|
|
|
|
$(Verb) if [ -d $(PROJ_SRC_DIR)/JSON ]; then\
|
|
|
|
if ([ ! -f JSON/Makefile ] || \
|
|
|
|
command test JSON/Makefile -ot $(PROJ_SRC_DIR)/JSON/Makefile ); then \
|
|
|
|
$(MKDIR) JSON; \
|
|
|
|
$(CP) $(PROJ_SRC_DIR)/JSON/Makefile JSON/Makefile; \
|
|
|
|
fi; \
|
|
|
|
($(MAKE) -C JSON $@ ) || exit 1; \
|
|
|
|
fi
|