Once more, this time building everywhere. OBS-URL: https://build.opensuse.org/request/show/247700 OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm:svn/subversion?expand=0&rev=178
76 lines
3.3 KiB
Diff
76 lines
3.3 KiB
Diff
Prevent the linker from adding an rpath to shared libraries. Original
|
|
patch by David Kimdon <dwhedon@debian.org>. The basic theory is:
|
|
|
|
- Split the $(LINK) makefile macro into $(LINK) and $(LINK_LIB).
|
|
- Comment out LD_RUN_PATH in the Perl makefiles.
|
|
- Use libtool instead of apxs to install the apache modules.
|
|
libtool relinks without rpath in this case, apxs obviously doesn't.
|
|
|
|
--- a/Makefile.in
|
|
+++ b/Makefile.in
|
|
@@ -216,10 +216,10 @@
|
|
# special compilation for files destined for cxxhl
|
|
COMPILE_CXXHL_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=compile $(COMPILE_CXX) $(LT_CFLAGS) $(CXXHL_INCLUDES) -o $@ -c
|
|
|
|
-LINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -rpath $(libdir)
|
|
-LINK_LIB = $(LINK) $(LT_SO_VERSION)
|
|
-LINK_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=link $(CXX) $(LT_LDFLAGS) $(CXXFLAGS) $(LDFLAGS) -rpath $(libdir)
|
|
-LINK_CXX_LIB = $(LINK_CXX) $(LT_SO_VERSION)
|
|
+LINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS)
|
|
+LINK_LIB = $(LINK) $(LT_SO_VERSION) -rpath $(libdir)
|
|
+LINK_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=link $(CXX) $(LT_LDFLAGS) $(CXXFLAGS) $(LDFLAGS)
|
|
+LINK_CXX_LIB = $(LINK_CXX) $(LT_SO_VERSION) -rpath $(libdir)
|
|
|
|
# special link rule for mod_dav_svn
|
|
LINK_APACHE_MOD = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -rpath $(APACHE_LIBEXECDIR) -avoid-version -module $(APACHE_LDFLAGS)
|
|
@@ -777,7 +777,9 @@
|
|
./config.status subversion/bindings/swig/perl/native/Makefile.PL
|
|
|
|
$(SWIG_PL_DIR)/native/Makefile: $(SWIG_PL_DIR)/native/Makefile.PL
|
|
- cd $(SWIG_PL_DIR)/native; $(PERL) Makefile.PL
|
|
+ cd $(SWIG_PL_DIR)/native; \
|
|
+ $(PERL) Makefile.PL INSTALLDIRS=vendor; \
|
|
+ sed -i -e '/^LD_RUN_PATH/s/^/#/' Makefile Makefile.[a-z]*
|
|
|
|
# There is a "readlink -f" command on some systems for the same purpose,
|
|
# but it's not as portable (e.g. Mac OS X doesn't have it). These should
|
|
--- a/build.conf
|
|
+++ b/build.conf
|
|
@@ -502,7 +502,7 @@
|
|
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)
|
|
+link-cmd = $(LINK_LIB) $(SWIG_PY_LIBS)
|
|
install = swig-py-lib
|
|
# need special build rule to include -DSWIGPYTHON
|
|
compile-cmd = $(COMPILE_SWIG_PY)
|
|
@@ -525,7 +525,7 @@
|
|
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)
|
|
--- a/build/generator/gen_base.py
|
|
+++ b/build/generator/gen_base.py
|
|
@@ -415,7 +415,7 @@
|
|
self.install = options.get('install')
|
|
self.compile_cmd = options.get('compile-cmd')
|
|
self.sources = options.get('sources', '*.c *.cpp')
|
|
- self.link_cmd = options.get('link-cmd', '$(LINK)')
|
|
+ self.link_cmd = options.get('link-cmd', '$(LINK_LIB)')
|
|
|
|
self.external_lib = options.get('external-lib')
|
|
self.external_project = options.get('external-project')
|
|
@@ -467,6 +467,7 @@
|
|
extmap = self.gen_obj._extension_map
|
|
self.objext = extmap['exe', 'object']
|
|
self.filename = build_path_join(self.path, name + extmap['exe', 'target'])
|
|
+ self.link_cmd = '$(LINK)'
|
|
|
|
self.manpages = options.get('manpages', '')
|
|
self.testing = options.get('testing')
|