mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-12 13:30:51 +00:00
Fix PR456:\
Tools and libraries will be built into $(BUILD_OBJ_ROOT)/$(BuildMode)/bin and \ $(BUILD_OBJ_ROOT)/$(BuildMode)/lib, respectively. Furthermore, the example \ programs will go in $(BUILD_OBJ_ROOT)/$(BuildMode)/examples to keep them \ separate from the tools and hopefully out of the PATH. Install targets \ have not changed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17953 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
b0ce1a387c
commit
815cbcf0f1
@ -176,10 +176,12 @@ LibTool.Flags := --tag=CXX
|
||||
# Directory locations
|
||||
#--------------------------------------------------------------------
|
||||
ObjDir := $(BUILD_OBJ_DIR)/$(BuildMode)
|
||||
LibDir := $(BUILD_OBJ_ROOT)/lib/$(BuildMode)
|
||||
ToolDir := $(BUILD_OBJ_ROOT)/tools/$(BuildMode)
|
||||
LLVMLibDir := $(LLVM_OBJ_ROOT)/lib/$(BuildMode)
|
||||
LLVMToolDir := $(LLVM_OBJ_ROOT)/tools/$(BuildMode)
|
||||
LibDir := $(BUILD_OBJ_ROOT)/$(BuildMode)/lib
|
||||
ToolDir := $(BUILD_OBJ_ROOT)/$(BuildMode)/tools
|
||||
ExmplDir := $(BUILD_OBJ_ROOT)/$(BuildMode)/examples
|
||||
LLVMLibDir := $(LLVM_OBJ_ROOT)/$(BuildMode)/lib
|
||||
LLVMToolDir := $(LLVM_OBJ_ROOT)/$(BuildMode)/tools
|
||||
LExmplDir := $(LLVM_OBJ_ROOT)/$(BuildMode)/examples
|
||||
|
||||
#--------------------------------------------------------------------
|
||||
# Full Paths To Compiled Tools and Utilities
|
||||
@ -248,8 +250,12 @@ endif
|
||||
|
||||
# Adjust linker flags for building an executable
|
||||
ifdef TOOLNAME
|
||||
ifdef EXAMPLE_TOOL
|
||||
LD.Flags += -rpath $(ExmplDir) -export-dynamic
|
||||
else
|
||||
LD.Flags += -rpath $(ToolDir) -export-dynamic
|
||||
endif
|
||||
endif
|
||||
|
||||
#----------------------------------------------------------
|
||||
# Options To Invoke Tools
|
||||
@ -337,8 +343,8 @@ $(sysconfdir):
|
||||
$(Verb) $(MKDIR) $* > /dev/null
|
||||
@$(DATE) > $@
|
||||
|
||||
.PRECIOUS: $(ObjDir)/.dir $(LibDir)/.dir $(ToolDir)/.dir $(LLVMLibDir)/.dir
|
||||
.PRECIOUS: $(LLVMToolDir)/.dir
|
||||
.PRECIOUS: $(ObjDir)/.dir $(LibDir)/.dir $(ToolDir)/.dir $(ExmplDir)/.dir
|
||||
.PRECIOUS: $(LLVMLibDir)/.dir $(LLVMToolDir)/.dir $(LLVMExmplDir)/.dir
|
||||
|
||||
#---------------------------------------------------------
|
||||
# Handle the DIRS options for sequential construction
|
||||
@ -609,7 +615,11 @@ ifdef TOOLNAME
|
||||
#---------------------------------------------------------
|
||||
# Set up variables for building a tool.
|
||||
#---------------------------------------------------------
|
||||
ifdef EXAMPLE_TOOL
|
||||
ToolBuildPath := $(ExmplDir)/$(TOOLNAME)$(EXEEXT)
|
||||
else
|
||||
ToolBuildPath := $(ToolDir)/$(TOOLNAME)$(EXEEXT)
|
||||
endif
|
||||
ProjLibsOptions := $(patsubst %.a.o, -l%, $(addsuffix .o, $(USEDLIBS)))
|
||||
ProjLibsOptions := $(patsubst %.o, $(LibDir)/%.o, $(ProjLibsOptions))
|
||||
LLVMLibsOptions := $(patsubst %.a.o, -l%, $(addsuffix .o, $(LLVMLIBS)))
|
||||
@ -647,8 +657,13 @@ ifneq ($(strip $(ToolBuildPath)),)
|
||||
-$(Verb) $(RM) -f $(ToolBuildPath)
|
||||
endif
|
||||
|
||||
$(ToolBuildPath): $(BUILT_SOURCES) $(ObjectsO) $(ProjLibsPaths) $(LLVMLibsPaths)\
|
||||
$(ToolDir)/.dir
|
||||
ifdef EXAMPLE_TOOL
|
||||
$(ToolBuildPath): $(ExmplDir)/.dir
|
||||
else
|
||||
$(ToolBuildPath): $(ToolDir)/.dir
|
||||
endif
|
||||
|
||||
$(ToolBuildPath): $(BUILT_SOURCES) $(ObjectsO) $(ProjLibsPaths) $(LLVMLibsPaths)
|
||||
$(Echo) Linking $(BuildMode) executable $(TOOLNAME) $(StripWarnMsg)
|
||||
$(Verb) $(Link) -o $@ $(TOOLLINKOPTS) $(ObjectsO) $(ProjLibsOptions) \
|
||||
$(LLVMLibsOptions) $(ExtraLibs) $(TOOLLINKOPTSB)
|
||||
@ -1194,6 +1209,7 @@ printvars::
|
||||
$(Echo) "ObjDir : " '$(ObjDir)'
|
||||
$(Echo) "LibDir : " '$(LibDir)'
|
||||
$(Echo) "ToolDir : " '$(ToolDir)'
|
||||
$(Echo) "ExmplDir : " '$(ExmplDir)'
|
||||
$(Echo) "TDFiles : " '$(TDFiles)'
|
||||
$(Echo) "INCFiles : " '$(INCFiles)'
|
||||
$(Echo) "Compile.CXX : " '$(Compile.CXX)'
|
||||
|
@ -9,4 +9,5 @@
|
||||
|
||||
LEVEL = ../..
|
||||
TOOLNAME = BFtoLLVM
|
||||
EXAMPLE_TOOL = 1
|
||||
include $(LEVEL)/Makefile.common
|
||||
|
@ -9,6 +9,7 @@
|
||||
|
||||
LEVEL = ../..
|
||||
TOOLNAME = Fibonacci
|
||||
EXAMPLE_TOOL = 1
|
||||
|
||||
# Enable JIT support
|
||||
include $(LEVEL)/tools/Makefile.JIT
|
||||
|
@ -8,6 +8,7 @@
|
||||
##===----------------------------------------------------------------------===##
|
||||
LEVEL = ../..
|
||||
TOOLNAME = HowToUseJIT
|
||||
EXAMPLE_TOOL = 1
|
||||
|
||||
# Enable JIT support
|
||||
include $(LEVEL)/tools/Makefile.JIT
|
||||
|
@ -8,6 +8,7 @@
|
||||
##===----------------------------------------------------------------------===##
|
||||
LEVEL=../..
|
||||
TOOLNAME=ModuleMaker
|
||||
EXAMPLE_TOOL = 1
|
||||
USEDLIBS= LLVMBCWriter LLVMCore LLVMSupport.a LLVMSystem.a
|
||||
|
||||
include $(LEVEL)/Makefile.common
|
||||
|
Loading…
Reference in New Issue
Block a user