subversion/subversion-1.6.0-pie.patch

63 lines
2.4 KiB
Diff

--- subversion-1.6.0/build.conf.pie
+++ subversion-1.6.0/build.conf
@@ -472,7 +472,7 @@ type = swig_lib
lang = python
path = subversion/bindings/swig/python/libsvn_swig_py
libs = libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_subr apriconv apr
-link-cmd = $(LINK) $(SWIG_PY_LIBS)
+link-cmd = $(LINK_LIB) $(SWIG_PY_LIBS)
install = swig-py-lib
# need special build rule to include -DSWIGPYTHON
compile-cmd = $(COMPILE_SWIG_PY)
@@ -495,7 +495,7 @@ type = swig_lib
lang = ruby
path = subversion/bindings/swig/ruby/libsvn_swig_ruby
libs = libsvn_client libsvn_wc libsvn_delta libsvn_subr apriconv apr
-link-cmd = $(LINK) $(SWIG_RB_LIBS)
+link-cmd = $(LINK_LIB) $(SWIG_RB_LIBS)
install = swig-rb-lib
# need special build rule to include
compile-cmd = $(COMPILE_SWIG_RB)
--- subversion-1.6.0/build/generator/gen_base.py.pie
+++ subversion-1.6.0/build/generator/gen_base.py
@@ -413,6 +413,9 @@ class TargetExe(TargetLinked):
self.manpages = options.get('manpages', '')
self.testing = options.get('testing')
+ if self.install == 'test' or self.install == 'bdb-test':
+ self.link_cmd = '$(LINK_TEST)'
+
def add_dependencies(self):
TargetLinked.add_dependencies(self)
@@ -455,8 +458,11 @@ class TargetLib(TargetLinked):
self.msvc_fake = options.get('msvc-fake') == 'yes' # has fake target
self.msvc_export = options.get('msvc-export', '').split()
- ### hmm. this is Makefile-specific
- self.link_cmd = '$(LINK_LIB)'
+ ### more Makefile-specific stuff:
+ if self.install == 'test':
+ self.link_cmd = '$(LINK_TEST_LIB)'
+ elif self.link_cmd == '$(LINK)':
+ self.link_cmd = '$(LINK_LIB)'
class TargetApacheMod(TargetLib):
--- subversion-1.6.0/Makefile.in.pie
+++ subversion-1.6.0/Makefile.in
@@ -184,8 +185,11 @@ COMPILE_JAVAHL_CXX = $(LIBTOOL) $(LTCXXF
COMPILE_JAVAHL_JAVAC = $(JAVAC) $(JAVAC_FLAGS)
COMPILE_JAVAHL_JAVAH = $(JAVAH)
-LINK_LIB = $(LINK) -rpath $(libdir)
-LINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -rpath $(libdir)
+BASE_LINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS)
+LINK = $(BASE_LINK) -pie
+LINK_TEST = $(BASE_LINK) -no-install
+LINK_LIB = $(BASE_LINK) -rpath $(libdir)
+LINK_TEST_LIB = $(BASE_LINK)
LINK_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=link $(CXX) $(LT_LDFLAGS) $(CXXFLAGS) $(LDFLAGS) -rpath $(libdir)
# special link rule for mod_dav_svn