diff options
author | Reid Spencer <rspencer@reidspencer.com> | 2004-10-29 22:14:56 +0000 |
---|---|---|
committer | Reid Spencer <rspencer@reidspencer.com> | 2004-10-29 22:14:56 +0000 |
commit | 7614e5130b22884b48bec0197508676ff3554d39 (patch) | |
tree | 0c66d97fec873c3330bc32597409eaa3a32cc691 /Makefile.rules | |
parent | b982c42e65afa44b8a88d9ad3d7321bc129823cc (diff) | |
download | llvm-7614e5130b22884b48bec0197508676ff3554d39.tar.gz llvm-7614e5130b22884b48bec0197508676ff3554d39.tar.bz2 llvm-7614e5130b22884b48bec0197508676ff3554d39.tar.xz |
Don't modify user vars because they will get passed down (modified) to
sub-makes and recursively append causing huge command lines and incorrect
compilation results.
Also, fix the printvars target to align its output and ensure that the
contents of variables can't get interpreted by the shell.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17348 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'Makefile.rules')
-rw-r--r-- | Makefile.rules | 89 |
1 files changed, 47 insertions, 42 deletions
diff --git a/Makefile.rules b/Makefile.rules index 3247755976..49628f0b2f 100644 --- a/Makefile.rules +++ b/Makefile.rules @@ -144,25 +144,29 @@ install-local:: all-local ifdef ENABLE_PROFILING CONFIGURATION := Profile - CXXFLAGS += -O3 -DNDEBUG -felide-constructors -finline-functions -pg - CFLAGS += -O3 -DNDEBUG -pg - LDFLAGS += -O3 -DNDEBUG -pg + LLVMCXXFLAGS := -O3 -DNDEBUG -felide-constructors -finline-functions -pg + LLVMCFLAGS := -O3 -DNDEBUG -pg + LLVMLDFLAGS := -O3 -DNDEBUG -pg else ifdef ENABLE_OPTIMIZED CONFIGURATION := Release - CXXFLAGS += -O3 -DNDEBUG -finline-functions -felide-constructors -fomit-frame-pointer - CFLAGS += -O3 -DNDEBUG -fomit-frame-pointer - LDFLAGS += -O3 -DNDEBUG + LLVMCXXFLAGS := -O3 -DNDEBUG -finline-functions -felide-constructors -fomit-frame-pointer + LLVMCFLAGS := -O3 -DNDEBUG -fomit-frame-pointer + LLVMLDFLAGS := -O3 -DNDEBUG else CONFIGURATION := Debug - CXXFLAGS += -g -D_DEBUG - CFLAGS += -g -D_DEBUG - LDFLAGS += -g -D_DEBUG + LLVMCXXFLAGS := -g -D_DEBUG + LLVMCFLAGS := -g -D_DEBUG + LLVMLDFLAGS := -g -D_DEBUG KEEP_SYMBOLS := 1 endif endif -ARFLAGS := cru +LLVMCXXFLAGS += $(CXXFLAGS) +LLVMCFLAGS += $(CFLAGS) +LLVMCPPFLAGS += $(CPPFLAGS) +LLVMLDFLAGS += $(LDFLAGS) +LLVMARFLAGS := cru #-------------------------------------------------------------------- # Directory locations @@ -195,7 +199,7 @@ LLVMGCCLIBDIR := $(dir $(shell $(LLVMGCC) -print-file-name=libgcc.a))/ ifndef SHARED_LIBRARY LIBTOOL += --tag=disable-shared else - LDFLAGS += -rpath $(LIBDIR) + LLVMLDFLAGS += -rpath $(LIBDIR) endif # Adjust settings for verbose mode @@ -216,7 +220,7 @@ endif # Adjust linker flags for building an executable ifdef TOOLNAME - LDFLAGS += -rpath $(TOOLDIR) -export-dynamic + LLVMLDFLAGS += -rpath $(TOOLDIR) -export-dynamic endif #---------------------------------------------------------- @@ -225,8 +229,8 @@ endif CompileCommonOpts := -Wall -W -Wwrite-strings -Wno-unused -LDFLAGS += -L$(LIBDIR) -L$(LLVMLIBDIR) -CPPFLAGS += -I$(BUILD_OBJ_DIR) \ +LLVMLDFLAGS += -L$(LIBDIR) -L$(LLVMLIBDIR) +LLVMCPPFLAGS += -I$(BUILD_OBJ_DIR) \ -I$(BUILD_SRC_DIR) \ -I$(BUILD_SRC_ROOT)/include \ -I$(BUILD_OBJ_ROOT)/include \ @@ -234,20 +238,20 @@ CPPFLAGS += -I$(BUILD_OBJ_DIR) \ -I$(LLVM_SRC_ROOT)/include \ -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -Compile.C = $(CC) $(CPPFLAGS) $(CompileCommonOpts) -c $(CFLAGS) -Compile.CXX = $(CXX) $(CPPFLAGS) $(CompileCommonOpts) $(CXXFLAGS) -c +Compile.C = $(CC) $(LLVMCPPFLAGS) $(CompileCommonOpts) -c $(LLVMCFLAGS) LTCompile.C = $(LIBTOOL) --mode=compile $(Compile.C) +BCCompile.C = $(LLVMGCC) $(LLVMCPPFLAGS) $(CompileCommonOpts) $(LLVMCFLAGS) -c +Compile.CXX = $(CXX) $(LLVMCPPFLAGS) $(CompileCommonOpts) $(LLVMCXXFLAGS) -c LTCompile.CXX = $(LIBTOOL) --tag=CXX --mode=compile $(Compile.CXX) -BCCompile.CXX = $(LLVMGXX) $(CPPFLAGS) $(CompileCommonOpts) $(CXXFLAGS) -c -BCCompile.C = $(LLVMGCC) $(CPPFLAGS) $(CompileCommonOpts) $(CFLAGS) -c -Link = $(LIBTOOL) --tag=CXX --mode=link $(CXX) $(CPPFLAGS) \ - $(CompileCommonOpts) $(LDFLAGS) $(STRIP) -Relink = $(LIBTOOL) --tag=CXX --mode=link $(CXX) $(CPPFLAGS) \ +BCCompile.CXX = $(LLVMGXX) $(LLVMCPPFLAGS) $(CompileCommonOpts) $(LLVMCXXFLAGS) -c +Link = $(LIBTOOL) --tag=CXX --mode=link $(CXX) $(LLVMCPPFLAGS) \ + $(CompileCommonOpts) $(LLVMLDFLAGS) $(STRIP) +Relink = $(LIBTOOL) --tag=CXX --mode=link $(CXX) $(LLVMCPPFLAGS) \ $(CompileCommonOpts) BCLinkLib = $(LLVMGCC) -shared -nostdlib Burg = $(BURG) -I $(BUILD_SRC_DIR) TableGen = $(TBLGEN) -I $(BUILD_SRC_DIR) -Archive = $(AR) $(ARFLAGS) +Archive = $(AR) $(LLVMARFLAGS) ifdef RANLIB Ranlib = $(RANLIB) else @@ -1064,24 +1068,25 @@ endif #------------------------------------------------------------------------ # Print out the directories used for building printvars:: - @$(ECHO) "CONFIGURATION : " $(CONFIGURATION) - @$(ECHO) "BUILD_SRC_ROOT: " $(BUILD_SRC_ROOT) - @$(ECHO) "BUILD_SRC_DIR : " $(BUILD_SRC_DIR) - @$(ECHO) "BUILD_OBJ_ROOT: " $(BUILD_OBJ_ROOT) - @$(ECHO) "BUILD_OBJ_DIR : " $(BUILD_OBJ_DIR) - @$(ECHO) "LLVM_SRC_ROOT : " $(LLVM_SRC_ROOT) - @$(ECHO) "LLVM_OBJ_ROOT : " $(LLVM_OBJ_ROOT) - @$(ECHO) "libdir : " $(libdir) - @$(ECHO) "bindir : " $(bindir) - @$(ECHO) "sysconfdir : " $(sysconfdir) - @$(ECHO) "bytecode_libdir : " $(bytecode_libdir) - @$(ECHO) "USER_TARGETS : " $(USER_TARGETS) - @$(ECHO) "OBJMKFILES: $(OBJMKFILES)" - @$(ECHO) "SRCMKFILES: $(SRCMKFILES)" - @$(ECHO) "OBJDIR: " $(OBJDIR) - @$(ECHO) "LIBDIR: " $(LIBDIR) - @$(ECHO) "TOOLDIR: " $(TOOLDIR) - @$(ECHO) "TDFILES:" '$(TDFILES)' - @$(ECHO) "Compile.CXX: " '$(Compile.CXX)' - @$(ECHO) "Compile.C: " '$(Compile.C)' + @$(ECHO) "CONFIGURATION : " '$(CONFIGURATION)' + @$(ECHO) "BUILD_SRC_ROOT : " '$(BUILD_SRC_ROOT)' + @$(ECHO) "BUILD_SRC_DIR : " '$(BUILD_SRC_DIR)' + @$(ECHO) "BUILD_OBJ_ROOT : " '$(BUILD_OBJ_ROOT)' + @$(ECHO) "BUILD_OBJ_DIR : " '$(BUILD_OBJ_DIR)' + @$(ECHO) "LLVM_SRC_ROOT : " '$(LLVM_SRC_ROOT)' + @$(ECHO) "LLVM_OBJ_ROOT : " '$(LLVM_OBJ_ROOT)' + @$(ECHO) "libdir : " '$(libdir)' + @$(ECHO) "bindir : " '$(bindir)' + @$(ECHO) "sysconfdir : " '$(sysconfdir)' + @$(ECHO) "bytecode_libdir: " '$(bytecode_libdir)' + @$(ECHO) "USER_TARGETS : " '$(USER_TARGETS)' + @$(ECHO) "OBJMKFILES : " '$(OBJMKFILES)' + @$(ECHO) "SRCMKFILES : " '$(SRCMKFILES)' + @$(ECHO) "OBJDIR : " '$(OBJDIR)' + @$(ECHO) "LIBDIR : " '$(LIBDIR)' + @$(ECHO) "TOOLDIR : " '$(TOOLDIR)' + @$(ECHO) "TDFILES : " '$(TDFILES)' + @$(ECHO) "Compile.CXX : " '$(Compile.CXX)' + @$(ECHO) "Compile.C : " '$(Compile.C)' + @$(ECHO) "Archive : " '$(Archive)' |