|
|
@ -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 |
|
|
|
|