From: Redvers Davies Date: Mon, 22 Dec 2003 08:11:34 +0000 (-0500) Subject: Cross compilation patches for arm. X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=e4568ebb449242658dc89dca2cbff0f024acf76c;p=p5sagit%2Fp5-mst-13.2.git Cross compilation patches for arm. Message-Id: <1072098653.4789.6.camel@ragefire> Date: Mon, 22 Dec 2003 08:11:34 -0500 p4raw-id: //depot/perl@21985 --- diff --git a/Cross/Makefile b/Cross/Makefile index 4e93f98..da9ce10 100644 --- a/Cross/Makefile +++ b/Cross/Makefile @@ -1,8 +1,8 @@ ## Toplevel Makefile for cross-compilation of perl # -## $Id: Makefile,v 1.4 2003/09/05 00:48:19 red Exp red $ +## $Id: Makefile,v 1.5 2003/12/12 00:48:19 red Exp red $ -export TOPDIR?=${shell pwd} +export TOPDIR=${shell pwd} include $(TOPDIR)/config export CFLAGS export SYS=$(ARCH)-$(OS) @@ -39,9 +39,11 @@ gen_patch: diff -Bbur ../installperl installperl > installperl.patch patch: - cd .. ; patch -p1 < Cross/Makefile.SH.patch - cd .. ; patch -p1 < Cross/installperl.patch ; mv installperl installperl-patched - cd .. ; sed -e 's/XXSTRIPXX/$(SYS)/' installperl-patched > installperl + cd .. ; if [ ! -e ./CROSS_PATCHED ] ; then \ + patch -p1 < Cross/Makefile.SH.patch; \ + patch -p1 < Cross/installperl.patch ; mv installperl installperl-patched; \ + sed -e 's/XXSTRIPXX/$(SYS)/' installperl-patched > installperl; \ + touch CROSS_PATCHED ; fi perl: @echo Perl cross-build directory is $(TOPDIR) diff --git a/Cross/Makefile.SH.patch b/Cross/Makefile.SH.patch index 6f17b37..567db60 100644 --- a/Cross/Makefile.SH.patch +++ b/Cross/Makefile.SH.patch @@ -122,10 +122,10 @@ -@test -f extra.pods && rm -f `cat extra.pods` -@rm -f extra.pods -@for x in `grep -l '^=[a-z]' README.* | grep -v README.vms` ; do \ -@@ -793,18 +794,7 @@ - $(MAKE) install.perl install.man STRIPFLAGS=$(STRIPFLAGS) INSTALLFLAGS=-n - - install.perl: all installperl +@@ -796,18 +797,7 @@ + INSTALL_DEPENDENCE = all + + install.perl: $(INSTALL_DEPENDENCE) installperl - if [ -n "$(COMPILE)" ]; \ - then \ - cd utils; $(MAKE) compile; \ @@ -142,7 +142,7 @@ # XXX Experimental. Hardwired values, but useful for testing. # Eventually Configure could ask for some of these values. -@@ -920,16 +910,16 @@ +@@ -923,16 +913,16 @@ # # DynaLoader may be needed for extensions that use Makefile.PL. @@ -163,7 +163,7 @@ @$(LDLIBPTH) sh ext/util/make_ext nonxs $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) .PHONY: clean _tidy _mopup _cleaner1 _cleaner2 \ -@@ -1069,7 +1059,7 @@ +@@ -1072,7 +1062,7 @@ test_prep_pre: preplibrary utilities $(nonxs_ext) @@ -172,7 +172,7 @@ PERL=./perl $(MAKE) _test_prep _test_tty: -@@ -1157,7 +1147,7 @@ +@@ -1165,7 +1155,7 @@ # Can't depend on lib/Config.pm because that might be where miniperl # is crashing. diff --git a/Cross/README b/Cross/README index 4c5d25a..54d16eb 100644 --- a/Cross/README +++ b/Cross/README @@ -19,7 +19,7 @@ You need a working and tested cross-compiler for your build and target combination. The binary directory must be in your path. -1) You should be reading me (README) in perl-5.8.1/Cross +1) You should be reading me (README) in perl-5.8.3/Cross 2) Make sure you are in the Cross directory. @@ -68,6 +68,7 @@ Should you wish to produce optimised binaries for different architectures you can add the appropriate compiler flags to the Makefile in a new ifeq ($(ARCH),...) ... endif block. + Please refer to your cross-compiler documentation for details. @@ -83,4 +84,4 @@ References ---------- Redvers Davies Open Zaurus http://www.openzaurus.org/ -Perl OZ Packages http://www.openzaurus.org/official/testing/feed/ +Perl OZ Packages http://www.criticalintegration.com/perl-oz/ diff --git a/Cross/config.sh-arm-linux b/Cross/config.sh-arm-linux index 1857d75..64ffc74 100644 --- a/Cross/config.sh-arm-linux +++ b/Cross/config.sh-arm-linux @@ -36,8 +36,8 @@ api_subversion='0' api_version='8' api_versionstring='5.8.0' ar='ar' -archlib='/usr/lib/perl5/5.8.1/armv4l-linux' -archlibexp='/usr/lib/perl5/5.8.1/armv4l-linux' +archlib='/usr/lib/perl5/5.8.3/armv4l-linux' +archlibexp='/usr/lib/perl5/5.8.3/armv4l-linux' archname64='' archname='armv4l-linux' archobjs='' @@ -55,7 +55,7 @@ castflags='0' cat='cat' cc='cc' cccdlflags='-fpic' -ccdlflags='-rdynamic -Wl,-rpath,/usr/lib/perl5/5.8.1/armv4l-linux/CORE' +ccdlflags='-rdynamic -Wl,-rpath,/usr/lib/perl5/5.8.3/armv4l-linux/CORE' ccflags='-fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' @@ -668,7 +668,7 @@ inc_version_list=' ' inc_version_list_init='0' incpath='' inews='' -installarchlib='./install_me_here/usr/lib/perl5/5.8.1/armv4l-linux' +installarchlib='./install_me_here/usr/lib/perl5/5.8.3/armv4l-linux' installbin='./install_me_here/usr/bin' installhtml1dir='' installhtml3dir='' @@ -676,13 +676,13 @@ installman1dir='./install_me_here/usr/share/man/man1' installman3dir='./install_me_here/usr/share/man/man3' installprefix='./install_me_here/usr' installprefixexp='./install_me_here/usr' -installprivlib='./install_me_here/usr/lib/perl5/5.8.1' +installprivlib='./install_me_here/usr/lib/perl5/5.8.3' installscript='./install_me_here/usr/bin' -installsitearch='./install_me_here/usr/lib/perl5/site_perl/5.8.1/armv4l-linux' +installsitearch='./install_me_here/usr/lib/perl5/site_perl/5.8.3/armv4l-linux' installsitebin='./install_me_here/usr/bin' installsitehtml1dir='' installsitehtml3dir='' -installsitelib='./install_me_here/usr/lib/perl5/site_perl/5.8.1' +installsitelib='./install_me_here/usr/lib/perl5/site_perl/5.8.3' installsiteman1dir='./install_me_here/usr/share/man/man1' installsiteman3dir='./install_me_here/usr/share/man/man3' installsitescript='./install_me_here/usr/bin' @@ -809,8 +809,8 @@ pmake='' pr='' prefix='/usr' prefixexp='/usr' -privlib='/usr/lib/perl5/5.8.1' -privlibexp='/usr/lib/perl5/5.8.1' +privlib='/usr/lib/perl5/5.8.3' +privlibexp='/usr/lib/perl5/5.8.3' procselfexe='"/proc/self/exe"' prototype='define' ptrsize='4' @@ -871,17 +871,17 @@ sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 6, 17, 29, 31, 0' sig_size='68' signal_t='void' -sitearch='/usr/lib/perl5/site_perl/5.8.1/armv4l-linux' -sitearchexp='/usr/lib/perl5/site_perl/5.8.1/armv4l-linux' +sitearch='/usr/lib/perl5/site_perl/5.8.3/armv4l-linux' +sitearchexp='/usr/lib/perl5/site_perl/5.8.3/armv4l-linux' sitebin='/usr/bin' sitebinexp='/usr/bin' sitehtml1dir='' sitehtml1direxp='' sitehtml3dir='' sitehtml3direxp='' -sitelib='/usr/lib/perl5/site_perl/5.8.1' +sitelib='/usr/lib/perl5/site_perl/5.8.3' sitelib_stem='/usr/lib/perl5/site_perl' -sitelibexp='/usr/lib/perl5/site_perl/5.8.1' +sitelibexp='/usr/lib/perl5/site_perl/5.8.3' siteman1dir='/usr/share/man/man1' siteman1direxp='/usr/share/man/man1' siteman3dir='/usr/share/man/man3' @@ -918,7 +918,7 @@ stdio_stream_array='' strerror_r_proto='0' strings='/usr/include/string.h' submit='' -subversion='1' +subversion='3' sysman='/usr/share/man/man1' tail='' tar='' @@ -1000,13 +1000,13 @@ vendorprefix='' vendorprefixexp='' vendorscript='' vendorscriptexp='' -version='5.8.1' -version_patchlevel_string='version 8 subversion 1' +version='5.8.3' +version_patchlevel_string='version 8 subversion 3' versiononly='undef' vi='' voidflags='15' xlibpth='/usr/lib/386 /lib/386' -xs_apiversion='5.8.1' +xs_apiversion='5.8.3' yacc='yacc' yaccflags='' zcat='' @@ -1017,7 +1017,7 @@ config_args='' config_argc=0 PERL_REVISION=5 PERL_VERSION=8 -PERL_SUBVERSION=1 +PERL_SUBVERSION=3 PERL_API_REVISION=5 PERL_API_VERSION=8 PERL_API_SUBVERSION=0 diff --git a/Cross/installperl.patch b/Cross/installperl.patch index 0101e66..7e10c94 100644 --- a/Cross/installperl.patch +++ b/Cross/installperl.patch @@ -3,7 +3,7 @@ @@ -3,8 +3,8 @@ BEGIN { require 5.004; - chdir '..' if !-d 'lib' and -d '..\lib'; + chdir '..' if !-d 'lib' and -d '../lib'; - @INC = 'lib'; - $ENV{PERL5LIB} = 'lib'; +# @INC = 'lib'; @@ -11,7 +11,7 @@ } use strict; -@@ -931,7 +931,7 @@ +@@ -946,7 +946,7 @@ print " " if (@opts); print "$file\n"; }