Christian Wiese
12 years ago
1 changed files with 78 additions and 0 deletions
@ -0,0 +1,78 @@ |
|||||||
|
# --- SDE-COPYRIGHT-NOTE-BEGIN ---
|
||||||
|
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
|
||||||
|
#
|
||||||
|
# Filename: package/.../perl/perl-5.16.0-cross-0.7-make-shared-lib.patch
|
||||||
|
# Copyright (C) 2012 The OpenSDE Project
|
||||||
|
#
|
||||||
|
# More information can be found in the files COPYING and README.
|
||||||
|
#
|
||||||
|
# This patch file is dual-licensed. It is available under the license the
|
||||||
|
# patched project is licensed under, as long as it is an OpenSource license
|
||||||
|
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms
|
||||||
|
# of the GNU General Public License as published by the Free Software
|
||||||
|
# Foundation; either version 2 of the License, or (at your option) any later
|
||||||
|
# version.
|
||||||
|
# --- SDE-COPYRIGHT-NOTE-END ---
|
||||||
|
|
||||||
|
Description: Add a 'shared-lib" make target
|
||||||
|
|
||||||
|
When using the perl cross patchset from http://perlcross.berlios.de/
|
||||||
|
the build flag -Duseshrplib doesn't seem to be honored.
|
||||||
|
This is a workaround adding a 'shared-lib' make target which can be
|
||||||
|
can be used to build a shared libperl.
|
||||||
|
|
||||||
|
diff --git a/Makefile b/Makefile
|
||||||
|
index 273102b..3b017a4 100644
|
||||||
|
--- a/Makefile
|
||||||
|
+++ b/Makefile
|
||||||
|
@@ -162,6 +162,11 @@ libperl$a: op$o perl$o $(obj) $(dynaloader_o)
|
||||||
|
$(AR) cru $@ $(filter %.o,$^)
|
||||||
|
$(RANLIB) $@
|
||||||
|
|
||||||
|
+shared-lib: libperl.$(so).$(ver_major).$(ver_minor).$(ver_micro)
|
||||||
|
+
|
||||||
|
+libperl.$(so).$(ver_major).$(ver_minor).$(ver_micro): op$o perl$o $(obj) $(dynaloader_o)
|
||||||
|
+ $(CC) -shared $(filter %.o,$^) -o $@
|
||||||
|
+
|
||||||
|
perl.o: git_version.h
|
||||||
|
|
||||||
|
preplibrary: miniperl$X $(CONFIGPM) lib/re.pm
|
||||||
|
diff --git a/Makefile.config.SH b/Makefile.config.SH
|
||||||
|
index ddf4680..47e1df2 100755
|
||||||
|
--- a/Makefile.config.SH
|
||||||
|
+++ b/Makefile.config.SH
|
||||||
|
@@ -147,5 +147,9 @@ if [ "$disabledmods" == 'define' ]; then
|
||||||
|
cat >> Makefile.config << END
|
||||||
|
disabled_dynamic_ext=$disabled_dynamic_ext
|
||||||
|
disabled_nonxs_ext=$disabled_nonxs_ext
|
||||||
|
+
|
||||||
|
+ver_major=$PERL_REVISION
|
||||||
|
+ver_minor=$PERL_VERSION
|
||||||
|
+ver_micro=$PERL_SUBVERSION
|
||||||
|
END
|
||||||
|
fi
|
||||||
|
diff --git a/Makefile.config.SH b/Makefile.config.SH
|
||||||
|
index 47e1df2..e2783df 100755
|
||||||
|
--- a/Makefile.config.SH
|
||||||
|
+++ b/Makefile.config.SH
|
||||||
|
@@ -116,6 +116,7 @@ o = $_o
|
||||||
|
x = $_exe
|
||||||
|
O = $_o
|
||||||
|
X = $_exe
|
||||||
|
+so = $dlext
|
||||||
|
|
||||||
|
dynaloader = $dynaloader
|
||||||
|
END
|
||||||
|
diff --git a/Makefile b/Makefile
|
||||||
|
index 3b017a4..1ee1cd7 100644
|
||||||
|
--- a/Makefile
|
||||||
|
+++ b/Makefile
|
||||||
|
@@ -165,7 +165,7 @@ libperl$a: op$o perl$o $(obj) $(dynaloader_o)
|
||||||
|
shared-lib: libperl.$(so).$(ver_major).$(ver_minor).$(ver_micro)
|
||||||
|
|
||||||
|
libperl.$(so).$(ver_major).$(ver_minor).$(ver_micro): op$o perl$o $(obj) $(dynaloader_o)
|
||||||
|
- $(CC) -shared $(filter %.o,$^) -o $@
|
||||||
|
+ $(CC) -shared -fPIC $(LDFLAGS) $(filter %.o,$^) -o $@
|
||||||
|
|
||||||
|
perl.o: git_version.h
|
||||||
|
|
Loading…
Reference in new issue