X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=Makefile.rules;h=13efb39ffa216c2cf9294389183ebd69263fda97;hb=679d7188c736b39063b1bb5a38e42b5b4b3e002c;hp=787a012c598f4e031fb5b7485107a3aaf123e88f;hpb=f0e76cf1dc9d04f867ccbea4479e143700620eaf;p=oota-llvm.git diff --git a/Makefile.rules b/Makefile.rules index 787a012c598..13efb39ffa2 100644 --- a/Makefile.rules +++ b/Makefile.rules @@ -85,7 +85,7 @@ preconditions: $(PreConditions) #------------------------------------------------------------------------ $(filter-out clean clean-local,$(UserTargets)):: $(BUILT_SOURCES) -clean-local:: +clean-all-local:: ifneq ($(strip $(BUILT_SOURCES)),) -$(Verb) $(RM) -f $(BUILT_SOURCES) endif @@ -277,6 +277,10 @@ ifeq ($(ENABLE_PIC),0) endif endif +ifeq ($(ARCH),Alpha) + LD.Flags += -Wl,--no-relax +endif + #-------------------------------------------------------------------- # Directory locations #-------------------------------------------------------------------- @@ -308,11 +312,8 @@ ifndef TBLGEN endif endif LLVM_CONFIG := $(LLVMToolDir)/llvm-config -ifndef GCCAS -GCCAS := $(LLVMToolDir)/gccas$(EXEEXT) -endif -ifndef GCCLD -GCCLD := $(LLVMToolDir)/gccld$(EXEEXT) +ifndef LLVMLD +LLVMLD := $(LLVMToolDir)/llvm-ld$(EXEEXT) endif ifndef LLVMDIS LLVMDIS := $(LLVMToolDir)/llvm-dis$(EXEEXT) @@ -586,7 +587,7 @@ $(ParallelTargets) : $(MKDIR) $(@D); \ $(CP) $(PROJ_SRC_DIR)/$(@D)/Makefile $(@D)/Makefile; \ fi; \ - $(MAKE) -C $(@D) $(subst $(@D)/.make,,$@) ; + $(MAKE) -C $(@D) $(subst $(@D)/.make,,$@) endif #--------------------------------------------------------- @@ -621,6 +622,12 @@ endif #--------------------------------------------------------- ifdef CONFIG_FILES +ifdef NO_INSTALL +install-local:: + $(Echo) Install circumvented with NO_INSTALL +uninstall-local:: + $(Echo) UnInstall circumvented with NO_INSTALL +else install-local:: $(PROJ_etcdir) $(CONFIG_FILES) $(Echo) Installing Configuration Files To $(PROJ_etcdir) $(Verb)for file in $(CONFIG_FILES); do \ @@ -638,6 +645,7 @@ uninstall-local:: $(Verb)for file in $(CONFIG_FILES); do \ $(RM) -f $(PROJ_etcdir)/$${file} ; \ done +endif endif @@ -677,8 +685,8 @@ $(LLVM_CONFIG): $(ToolDir)/$(strip $(TOOLNAME))$(EXEEXT): $(LLVM_CONFIG) -ProjLibsOptions = $(shell $(LLVM_CONFIG) --libs $(LINK_COMPONENTS)) -ProjLibsPaths = $(LLVM_CONFIG) \ +ProjLibsOptions += $(shell $(LLVM_CONFIG) --libs $(LINK_COMPONENTS)) +ProjLibsPaths += $(LLVM_CONFIG) \ $(shell $(LLVM_CONFIG) --libfiles $(LINK_COMPONENTS)) endif endif @@ -701,14 +709,14 @@ $(warning Modules require llvm-gcc but no llvm-gcc is available ****) else Module := $(LibDir)/$(MODULE_NAME).bc -LinkModule := $(GCCLD) -L$(CFERuntimeLibDir) +LinkModule := $(LLVMLD) -L$(CFERuntimeLibDir) ifdef EXPORTED_SYMBOL_FILE LinkModule += -internalize-public-api-file=$(EXPORTED_SYMBOL_FILE) endif -$(Module): $(BUILT_SOURCES) $(ObjectsBC) $(LibDir)/.dir $(GCCLD) +$(Module): $(BUILT_SOURCES) $(ObjectsBC) $(LibDir)/.dir $(LLVMLD) $(Echo) Building $(BuildMode) Bytecode Module $(notdir $@) $(Verb) $(LinkModule) -o $@ $(ObjectsBC) @@ -725,6 +733,12 @@ else ModuleDestDir := $(PROJ_libdir) endif +ifdef NO_INSTALL +install-local:: + $(Echo) Install circumvented with NO_INSTALL +uninstall-local:: + $(Echo) Uninstall circumvented with NO_INSTALL +else DestModule := $(ModuleDestDir)/$(MODULE_NAME).bc install-module:: $(DestModule) @@ -737,6 +751,7 @@ $(DestModule): $(ModuleDestDir) $(Module) uninstall-local:: $(Echo) Uninstalling $(BuildMode) Bytecode Module $(DestModule) -$(Verb) $(RM) -f $(DestModule) +endif endif endif @@ -789,6 +804,12 @@ ifneq ($(strip $(LibName.LA)),) -$(Verb) $(RM) -f $(LibName.LA) endif +ifdef NO_INSTALL +install-local:: + $(Echo) Install circumvented with NO_INSTALL +uninstall-local:: + $(Echo) Uninstall circumvented with NO_INSTALL +else DestSharedLib = $(PROJ_libdir)/lib$(LIBRARYNAME)$(SHLIBEXT) install-local:: $(DestSharedLib) @@ -801,7 +822,7 @@ $(DestSharedLib): $(PROJ_libdir) $(LibName.LA) uninstall-local:: $(Echo) Uninstalling $(BuildMode) Shared Library $(DestSharedLib) -$(Verb) $(RM) -f $(PROJ_libdir)/lib$(LIBRARYNAME).* - +endif endif #--------------------------------------------------------- @@ -818,10 +839,10 @@ else all-local:: $(LibName.BCA) ifdef EXPORTED_SYMBOL_FILE -BCLinkLib = $(GCCLD) -L$(CFERuntimeLibDir) \ +BCLinkLib = $(LLVMLD) -L$(CFERuntimeLibDir) \ -internalize-public-api-file=$(EXPORTED_SYMBOL_FILE) -$(LibName.BCA): $(ObjectsBC) $(LibDir)/.dir $(GCCLD) \ +$(LibName.BCA): $(ObjectsBC) $(LibDir)/.dir $(LLVMLD) \ $(LLVMToolDir)/llvm-ar $(Echo) Building $(BuildMode) Bytecode Archive $(notdir $@) \ "(internalize)" @@ -852,6 +873,12 @@ DestBytecodeLib = $(BytecodeDestDir)/lib$(LIBRARYNAME).a install-bytecode-local:: $(DestBytecodeLib) +ifdef NO_INSTALL +install-local:: + $(Echo) Install circumvented with NO_INSTALL +uninstall-local:: + $(Echo) Uninstall circumvented with NO_INSTALL +else install-local:: $(DestBytecodeLib) $(DestBytecodeLib): $(BytecodeDestDir) $(LibName.BCA) @@ -861,7 +888,7 @@ $(DestBytecodeLib): $(BytecodeDestDir) $(LibName.BCA) uninstall-local:: $(Echo) Uninstalling $(BuildMode) Bytecode Archive $(DestBytecodeLib) -$(Verb) $(RM) -f $(DestBytecodeLib) - +endif endif endif @@ -891,6 +918,12 @@ ifneq ($(strip $(LibName.O)),) -$(Verb) $(RM) -f $(LibName.O) endif +ifdef NO_INSTALL +install-local:: + $(Echo) Install circumvented with NO_INSTALL +uninstall-local:: + $(Echo) Uninstall circumvented with NO_INSTALL +else DestRelinkedLib = $(PROJ_libdir)/$(LIBRARYNAME).o install-local:: $(DestRelinkedLib) @@ -902,7 +935,7 @@ $(DestRelinkedLib): $(PROJ_libdir) $(LibName.O) uninstall-local:: $(Echo) Uninstalling $(BuildMode) Object Library $(DestRelinkedLib) -$(Verb) $(RM) -f $(DestRelinkedLib) - +endif endif #--------------------------------------------------------- @@ -925,6 +958,12 @@ ifneq ($(strip $(LibName.A)),) -$(Verb) $(RM) -f $(LibName.A) endif +ifdef NO_INSTALL +install-local:: + $(Echo) Install circumvented with NO_INSTALL +uninstall-local:: + $(Echo) Uninstall circumvented with NO_INSTALL +else DestArchiveLib := $(PROJ_libdir)/lib$(LIBRARYNAME).a install-local:: $(DestArchiveLib) @@ -937,7 +976,7 @@ $(DestArchiveLib): $(PROJ_libdir) $(LibName.A) uninstall-local:: $(Echo) Uninstalling $(BuildMode) Archive Library $(DestArchiveLib) -$(Verb) $(RM) -f $(DestArchiveLib) - +endif endif # endif LIBRARYNAME @@ -981,6 +1020,12 @@ $(ToolBuildPath): $(ObjectsO) $(ProjLibsPaths) $(LLVMLibsPaths) $(Echo) ======= Finished Linking $(BuildMode) Executable $(TOOLNAME) \ $(StripWarnMsg) +ifdef NO_INSTALL +install-local:: + $(Echo) Install circumvented with NO_INSTALL +uninstall-local:: + $(Echo) Uninstall circumvented with NO_INSTALL +else DestTool = $(PROJ_bindir)/$(TOOLNAME) install-local:: $(DestTool) @@ -992,7 +1037,7 @@ $(DestTool): $(PROJ_bindir) $(ToolBuildPath) uninstall-local:: $(Echo) Uninstalling $(BuildMode) $(DestTool) -$(Verb) $(RM) -f $(DestTool) - +endif endif ############################################################################### @@ -1134,13 +1179,14 @@ $(ObjDir)/%.s: %.c $(ObjDir)/.dir $(BUILT_SOURCES) # make the C and C++ compilers strip debug info out of bytecode libraries. ifdef DEBUG_RUNTIME -$(ObjectsBC): $(ObjDir)/%.bc: $(ObjDir)/%.ll $(GCCAS) +$(ObjectsBC): $(ObjDir)/%.bc: $(ObjDir)/%.ll $(LLVMAS) $(LOPT) $(Echo) "Compiling $*.ll to $*.bc for $(BuildMode) build (bytecode)" - $(Verb) $(GCCAS) $< -o $@ + $(Verb) $(LLVMAS) $< -o - | $(LOPT) -std-compile-opts -o $@ -f else -$(ObjectsBC): $(ObjDir)/%.bc: $(ObjDir)/%.ll $(GCCAS) +$(ObjectsBC): $(ObjDir)/%.bc: $(ObjDir)/%.ll $(LLVMAS) $(LOPT) $(Echo) "Compiling $*.ll to $*.bc for $(BuildMode) build (bytecode)" - $(Verb) $(GCCAS) -strip-debug $< -o $@ + $(Verb) $(LLVMAS) $< -o - | \ + $(LOPT) -std-compile-opts -strip-debug -o $@ -f endif @@ -1160,6 +1206,7 @@ ifdef TARGET TDFiles := $(strip $(wildcard $(PROJ_SRC_DIR)/*.td) \ $(LLVM_SRC_ROOT)/lib/Target/Target.td \ + $(LLVM_SRC_ROOT)/lib/Target/TargetCallingConv.td \ $(LLVM_SRC_ROOT)/lib/Target/TargetSelectionDAG.td \ $(LLVM_SRC_ROOT)/include/llvm/CodeGen/ValueTypes.td) \ $(wildcard $(LLVM_SRC_ROOT)/include/llvm/Intrinsics*.td) @@ -1229,6 +1276,11 @@ $(ObjDir)/%GenSubtarget.inc.tmp : %.td $(ObjDir)/.dir $(Echo) "Building $( $(PROJ_SRC_DIR)/$*.cpp @@ -1628,6 +1679,12 @@ ifeq ($(LEVEL),.) #------------------------------------------------------------------------ # Install support for the project's include files: #------------------------------------------------------------------------ +ifdef NO_INSTALL +install-local:: + $(Echo) Install circumvented with NO_INSTALL +uninstall-local:: + $(Echo) Uninstall circumvented with NO_INSTALL +else install-local:: $(Echo) Installing include files $(Verb) $(MKDIR) $(PROJ_includedir) @@ -1664,7 +1721,7 @@ uninstall-local:: $(RM) -f `find . -path '*/Internal' -prune -o '(' -type f -name '*.in' \ -print ')' | sed 's#\.in$$##;s#^#$(PROJ_includedir)/#'` ; \ fi - +endif endif #------------------------------------------------------------------------ @@ -1703,3 +1760,5 @@ printvars:: $(Echo) "Module : " '$(Module)' $(Echo) "FilesToConfig: " '$(FilesToConfigPATH)' $(Echo) "SubDirs : " '$(SubDirs)' + $(Echo) "ProjLibsPaths: " '$(ProjLibsPaths)' + $(Echo) "ProjLibsOptions: " '$(ProjLibsOptions)'