Index: Makefile.pre.in |
=================================================================== |
--- Makefile.pre.in (revision 82617) |
+++ Makefile.pre.in (working copy) |
@@ -59,12 +59,18 @@ |
# Compiler options |
OPT= @OPT@ |
BASECFLAGS= @BASECFLAGS@ |
-CFLAGS= $(BASECFLAGS) @CFLAGS@ $(OPT) $(EXTRA_CFLAGS) |
+CONFIGURE_CFLAGS= @CFLAGS@ |
+CONFIGURE_CPPFLAGS= @CPPFLAGS@ |
+CONFIGURE_LDFLAGS= @LDFLAGS@ |
+# Avoid assigning CFLAGS, LDFLAGS, etc. so users can use them on the |
+# command line to append to these values without stomping the pre-set |
+# values. |
+PY_CFLAGS= $(BASECFLAGS) $(OPT) $(CONFIGURE_CFLAGS) $(CFLAGS) $(EXTRA_CFLAGS) |
# Both CPPFLAGS and LDFLAGS need to contain the shell's value for setup.py to |
# be able to build extension modules using the directories specified in the |
# environment variables |
-CPPFLAGS= -I. -IInclude -I$(srcdir)/Include @CPPFLAGS@ |
-LDFLAGS= @LDFLAGS@ |
+PY_CPPFLAGS= -I. -IInclude -I$(srcdir)/Include $(CONFIGURE_CPPFLAGS) $(CPPFLAGS) |
+PY_LDFLAGS= $(CONFIGURE_LDFLAGS) $(LDFLAGS) |
LDLAST= @LDLAST@ |
SGI_ABI= @SGI_ABI@ |
CCSHARED= @CCSHARED@ |
@@ -73,7 +79,7 @@ |
# Extra C flags added for building the interpreter object files. |
CFLAGSFORSHARED=@CFLAGSFORSHARED@ |
# C flags used for building the interpreter object files |
-PY_CFLAGS= $(CFLAGS) $(CPPFLAGS) $(CFLAGSFORSHARED) -DPy_BUILD_CORE |
+PY_CORE_CFLAGS= $(PY_CFLAGS) $(PY_CPPFLAGS) $(CFLAGSFORSHARED) -DPy_BUILD_CORE |
# Machine-dependent subdirectories |
@@ -411,7 +417,7 @@ |
# Build the interpreter |
$(BUILDPYTHON): Modules/python.o $(LIBRARY) $(LDLIBRARY) |
- $(LINKCC) $(LDFLAGS) $(LINKFORSHARED) -o $@ \ |
+ $(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ \ |
Modules/python.o \ |
$(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) |
@@ -422,8 +428,8 @@ |
# Build the shared modules |
sharedmods: $(BUILDPYTHON) |
@case $$MAKEFLAGS in \ |
- *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' LDFLAGS='$(LDFLAGS)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q build;; \ |
- *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' LDFLAGS='$(LDFLAGS)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py build;; \ |
+ *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' LDFLAGS='$(PY_LDFLAGS)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q build;; \ |
+ *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' LDFLAGS='$(PY_LDFLAGS)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py build;; \ |
esac |
# Build static library |
@@ -440,18 +446,18 @@ |
libpython$(VERSION).so: $(LIBRARY_OBJS) |
if test $(INSTSONAME) != $(LDLIBRARY); then \ |
- $(LDSHARED) $(LDFLAGS) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ |
+ $(LDSHARED) $(PY_LDFLAGS) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ |
$(LN) -f $(INSTSONAME) $@; \ |
else \ |
- $(LDSHARED) $(LDFLAGS) -o $@ $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ |
+ $(LDSHARED) $(PY_LDFLAGS) -o $@ $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ |
fi |
libpython$(VERSION).dylib: $(LIBRARY_OBJS) |
- $(CC) -dynamiclib -Wl,-single_module $(LDFLAGS) -undefined dynamic_lookup -Wl,-install_name,$(prefix)/lib/libpython$(VERSION).dylib -Wl,-compatibility_version,$(VERSION) -Wl,-current_version,$(VERSION) -o $@ $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ |
+ $(CC) -dynamiclib -Wl,-single_module $(PY_LDFLAGS) -undefined dynamic_lookup -Wl,-install_name,$(prefix)/lib/libpython$(VERSION).dylib -Wl,-compatibility_version,$(VERSION) -Wl,-current_version,$(VERSION) -o $@ $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ |
libpython$(VERSION).sl: $(LIBRARY_OBJS) |
- $(LDSHARED) $(LDFLAGS) -o $@ $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST) |
+ $(LDSHARED) $(PY_LDFLAGS) -o $@ $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST) |
# Copy up the gdb python hooks into a position where they can be automatically |
# loaded by gdb during Lib/test/test_gdb.py |
@@ -497,7 +503,7 @@ |
# for a shared core library; otherwise, this rule is a noop. |
$(DLLLIBRARY) libpython$(VERSION).dll.a: $(LIBRARY_OBJS) |
if test -n "$(DLLLIBRARY)"; then \ |
- $(LDSHARED) $(LDFLAGS) -Wl,--out-implib=$@ -o $(DLLLIBRARY) $^ \ |
+ $(LDSHARED) $(PY_LDFLAGS) -Wl,--out-implib=$@ -o $(DLLLIBRARY) $^ \ |
$(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST); \ |
else true; \ |
fi |
@@ -541,10 +547,10 @@ |
$(SIGNAL_OBJS) \ |
$(MODOBJS) \ |
$(srcdir)/Modules/getbuildinfo.c |
- $(CC) -c $(PY_CFLAGS) -DSVNVERSION="\"`LC_ALL=C $(SVNVERSION)`\"" -o $@ $(srcdir)/Modules/getbuildinfo.c |
+ $(CC) -c $(PY_CORE_CFLAGS) -DSVNVERSION="\"`LC_ALL=C $(SVNVERSION)`\"" -o $@ $(srcdir)/Modules/getbuildinfo.c |
Modules/getpath.o: $(srcdir)/Modules/getpath.c Makefile |
- $(CC) -c $(PY_CFLAGS) -DPYTHONPATH='"$(PYTHONPATH)"' \ |
+ $(CC) -c $(PY_CORE_CFLAGS) -DPYTHONPATH='"$(PYTHONPATH)"' \ |
-DPREFIX='"$(prefix)"' \ |
-DEXEC_PREFIX='"$(exec_prefix)"' \ |
-DVERSION='"$(VERSION)"' \ |
@@ -552,7 +558,7 @@ |
-o $@ $(srcdir)/Modules/getpath.c |
Modules/python.o: $(srcdir)/Modules/python.c |
- $(MAINCC) -c $(PY_CFLAGS) -o $@ $(srcdir)/Modules/python.c |
+ $(MAINCC) -c $(PY_CORE_CFLAGS) -o $@ $(srcdir)/Modules/python.c |
$(IO_OBJS): $(IO_H) |
@@ -561,7 +567,7 @@ |
-$(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C) |
$(PGEN): $(PGENOBJS) |
- $(CC) $(OPT) $(LDFLAGS) $(PGENOBJS) $(LIBS) -o $(PGEN) |
+ $(CC) $(OPT) $(PY_LDFLAGS) $(PGENOBJS) $(LIBS) -o $(PGEN) |
Parser/grammar.o: $(srcdir)/Parser/grammar.c \ |
$(srcdir)/Include/token.h \ |
@@ -581,10 +587,10 @@ |
Python/compile.o Python/symtable.o Python/ast.o: $(GRAMMAR_H) $(AST_H) |
Python/getplatform.o: $(srcdir)/Python/getplatform.c |
- $(CC) -c $(PY_CFLAGS) -DPLATFORM='"$(MACHDEP)"' -o $@ $(srcdir)/Python/getplatform.c |
+ $(CC) -c $(PY_CORE_CFLAGS) -DPLATFORM='"$(MACHDEP)"' -o $@ $(srcdir)/Python/getplatform.c |
Python/importdl.o: $(srcdir)/Python/importdl.c |
- $(CC) -c $(PY_CFLAGS) -I$(DLINCLDIR) -o $@ $(srcdir)/Python/importdl.c |
+ $(CC) -c $(PY_CORE_CFLAGS) -I$(DLINCLDIR) -o $@ $(srcdir)/Python/importdl.c |
Objects/unicodectype.o: $(srcdir)/Objects/unicodectype.c \ |
$(srcdir)/Objects/unicodetype_db.h |
@@ -1130,7 +1136,7 @@ |
# Some make's put the object file in the current directory |
.c.o: |
- $(CC) -c $(PY_CFLAGS) -o $@ $< |
+ $(CC) -c $(PY_CORE_CFLAGS) -o $@ $< |
# Run reindent on the library |
reindent: |