From 6d089c733cce818cc235422d3c040947cd9a1f0e Mon Sep 17 00:00:00 2001 From: Juan RP Date: Sun, 19 Jan 2014 10:56:15 +0100 Subject: [PATCH] perl: cross compile on any target not just armv6l. --- srcpkgs/perl/files/arm-linux-gnueabihf7 | 1 - .../{arm-linux-gnueabihf => cross}/bitcount.h | 0 .../{arm-linux-gnueabihf => cross}/config.h | 0 .../{arm-linux-gnueabihf => cross}/config.sh | 30 +++++++++---------- .../{arm-linux-gnueabihf => cross}/mg_data.h | 0 .../{arm-linux-gnueabihf => cross}/uudmap.h | 0 srcpkgs/perl/template | 13 ++++---- 7 files changed, 21 insertions(+), 23 deletions(-) delete mode 120000 srcpkgs/perl/files/arm-linux-gnueabihf7 rename srcpkgs/perl/files/{arm-linux-gnueabihf => cross}/bitcount.h (100%) rename srcpkgs/perl/files/{arm-linux-gnueabihf => cross}/config.h (100%) rename srcpkgs/perl/files/{arm-linux-gnueabihf => cross}/config.sh (96%) rename srcpkgs/perl/files/{arm-linux-gnueabihf => cross}/mg_data.h (100%) rename srcpkgs/perl/files/{arm-linux-gnueabihf => cross}/uudmap.h (100%) diff --git a/srcpkgs/perl/files/arm-linux-gnueabihf7 b/srcpkgs/perl/files/arm-linux-gnueabihf7 deleted file mode 120000 index e7816d81eea..00000000000 --- a/srcpkgs/perl/files/arm-linux-gnueabihf7 +++ /dev/null @@ -1 +0,0 @@ -arm-linux-gnueabihf \ No newline at end of file diff --git a/srcpkgs/perl/files/arm-linux-gnueabihf/bitcount.h b/srcpkgs/perl/files/cross/bitcount.h similarity index 100% rename from srcpkgs/perl/files/arm-linux-gnueabihf/bitcount.h rename to srcpkgs/perl/files/cross/bitcount.h diff --git a/srcpkgs/perl/files/arm-linux-gnueabihf/config.h b/srcpkgs/perl/files/cross/config.h similarity index 100% rename from srcpkgs/perl/files/arm-linux-gnueabihf/config.h rename to srcpkgs/perl/files/cross/config.h diff --git a/srcpkgs/perl/files/arm-linux-gnueabihf/config.sh b/srcpkgs/perl/files/cross/config.sh similarity index 96% rename from srcpkgs/perl/files/arm-linux-gnueabihf/config.sh rename to srcpkgs/perl/files/cross/config.sh index de5c6e5f649..d04536f9600 100644 --- a/srcpkgs/perl/files/arm-linux-gnueabihf/config.sh +++ b/srcpkgs/perl/files/cross/config.sh @@ -14,7 +14,7 @@ : Configure command line arguments. config_arg0='./Configure' -config_args='-des -Dusethreads -Duseshrplib -Dprefix=/usr -Dvendorprefix=/usr -Dprivlib=/usr/share/perl5/core_perl -Darchlib=/usr/lib/perl5/core_perl -Dsitelib=/usr/share/perl5/site_perl -Dsitearch=/usr/lib/perl5/site_perl -Dvendorlib=/usr/share/perl5/vendor_perl -Dvendorarch=/usr/lib/perl5/vendor_perl -Dscriptdir=/usr/bin -Dvendorscript=/usr/bin -Dinc_version_list=none -Dman1ext=1p -Dman3ext=3p -Dman1dir=/usr/share/man/man1 -Dman3dir=/usr/share/man/man3 -Dcccdlflags=-fPIC -Doptimize=-O2 -march=armv6 -mfpu=vfp -mfloat-abi=hard' +config_args='-des -Dusethreads -Duseshrplib -Dprefix=/usr -Dvendorprefix=/usr -Dprivlib=/usr/share/perl5/core_perl -Darchlib=/usr/lib/perl5/core_perl -Dsitelib=/usr/share/perl5/site_perl -Dsitearch=/usr/lib/perl5/site_perl -Dvendorlib=/usr/share/perl5/vendor_perl -Dvendorarch=/usr/lib/perl5/vendor_perl -Dscriptdir=/usr/bin -Dvendorscript=/usr/bin -Dinc_version_list=none -Dman1ext=1p -Dman3ext=3p -Dman1dir=/usr/share/man/man1 -Dman3dir=/usr/share/man/man3 -Dcccdlflags=-fPIC -Doptimize=-O2 @@XBPS_CROSS_CFLAGS@@' config_argc=20 config_arg1='-des' config_arg2='-Dusethreads' @@ -35,7 +35,7 @@ config_arg16='-Dman3ext=3p' config_arg17='-Dman1dir=/usr/share/man/man1' config_arg18='-Dman3dir=/usr/share/man/man3' config_arg19='-Dcccdlflags=-fPIC' -config_arg20='-Doptimize=-O2 -march=armv6 -mfpu=vfp -mfloat-abi=hard' +config_arg20='-Doptimize=-O2 @@XBPS_CROSS_CFLAGS@@' Author='' Date='$Date' @@ -63,7 +63,7 @@ ar='ar' archlib='/usr/lib/perl5/core_perl' archlibexp='/usr/lib/perl5/core_perl' archname64='' -archname='armv6l-linux-thread-multi' +archname='@@XBPS_CROSS_ARCH@@-linux-thread-multi' archobjs='' asctime_r_proto='REENTRANT_PROTO_B_SB' awk='awk' @@ -79,7 +79,7 @@ byteorder='1234' c='' castflags='1' cat='cat' -cc='arm-linux-gnueabihf-gcc' +cc='@@XBPS_CROSS_TRIPLET@@-gcc' cccdlflags='-fPIC' ccdlflags='-Wl,-E -Wl,-rpath,/usr/lib/perl5/core_perl/CORE' ccflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' @@ -758,7 +758,7 @@ i_vfork='undef' ignore_versioned_solibs='y' inc_version_list=' ' inc_version_list_init='0' -incpath='/usr/arm-linux-gnueabihf/usr/include' +incpath='/usr/@@XBPS_CROSS_TRIPLET@@/usr/include' inews='' initialinstalllocation='/usr/bin' installarchlib='/usr/lib/perl5/core_perl' @@ -796,22 +796,22 @@ ivsize='4' ivtype='long' known_extensions='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize VMS/DCLsym VMS/Stdio Win32 Win32API/File Win32CORE XS/APItest XS/Typemap arybase attributes mro re threads threads/shared ' ksh='' -ld='arm-linux-gnueabihf-gcc' +ld='@@XBPS_CROSS_TRIPLET@@-gcc' ld_can_script='define' -lddlflags='-shared -O2 -march=armv6 -mfpu=vfp -mfloat-abi=hard -L/usr/arm-linux-gnueabihf/usr/lib -fstack-protector' -ldflags=' -fstack-protector -L/usr/arm-linux-gnueabihf/usr/lib' +lddlflags='-shared @@XBPS_CROSS_CFLAGS@@ -L/usr/@@XBPS_CROSS_TRIPLET@@/usr/lib -fstack-protector' +ldflags=' -fstack-protector -L/usr/@@XBPS_CROSS_TRIPLET@@/usr/lib' ldflags_uselargefiles='' ldlibpthname='LD_LIBRARY_PATH' less='less' lib_ext='.a' -libc='/usr/arm-linux-gnueabihf/usr/lib/libc-2.18.so' +libc='/usr/@@XBPS_CROSS_TRIPLET@@/usr/lib/libc-2.18.so' libperl='libperl.so' -libpth='/usr/arm-linux-gnueabihf/usr/lib /usr/local/lib /usr/lib' +libpth='/usr/@@XBPS_CROSS_TRIPLET@@/usr/lib /usr/local/lib /usr/lib' libs='-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat' -libsdirs=' /usr/arm-linux-gnueabihf/usr/lib' +libsdirs=' /usr/@@XBPS_CROSS_TRIPLET@@/usr/lib' libsfiles=' libnsl.so libgdbm.so libdb.so libdl.so libm.so libcrypt.so libutil.so libpthread.so libc.so libgdbm_compat.so' -libsfound=' /usr/arm-linux-gnueabihf/usr/lib/libnsl.so /usr/arm-linux-gnueabihf/usr/lib/libgdbm.so /usr/arm-linux-gnueabihf/usr/lib/libdb.so /usr/arm-linux-gnueabihf/usr/lib/libdl.so /usr/arm-linux-gnueabihf/usr/lib/libm.so /usr/arm-linux-gnueabihf/usr/lib/libcrypt.so /usr/arm-linux-gnueabihf/usr/lib/libutil.so /usr/arm-linux-gnueabihf/usr/lib/libpthread.so /usr/arm-linux-gnueabihf/usr/lib/libc.so /usr/arm-linux-gnueabihf/usr/lib/libgdbm_compat.so' -libspath=' /usr/arm-linux-gnueabihf/usr/lib /usr/lib' +libsfound=' /usr/@@XBPS_CROSS_TRIPLET@@/usr/lib/libnsl.so /usr/@@XBPS_CROSS_TRIPLET@@/usr/lib/libgdbm.so /usr/@@XBPS_CROSS_TRIPLET@@/usr/lib/libdb.so /usr/@@XBPS_CROSS_TRIPLET@@/usr/lib/libdl.so /usr/@@XBPS_CROSS_TRIPLET@@/usr/lib/libm.so /usr/@@XBPS_CROSS_TRIPLET@@/usr/lib/libcrypt.so /usr/@@XBPS_CROSS_TRIPLET@@/usr/lib/libutil.so /usr/@@XBPS_CROSS_TRIPLET@@/usr/lib/libpthread.so /usr/@@XBPS_CROSS_TRIPLET@@/usr/lib/libc.so /usr/@@XBPS_CROSS_TRIPLET@@/usr/lib/libgdbm_compat.so' +libspath=' /usr/@@XBPS_CROSS_TRIPLET@@/usr/lib /usr/lib' libswanted='sfio socket inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun m crypt sec util pthread c cposix posix ucb BSD gdbm_compat' libswanted_uselargefiles='' line='' @@ -883,7 +883,7 @@ nvtype='double' o_nonblock='O_NONBLOCK' obj_ext='.o' old_pthread_create_joinable='' -optimize='-O2 -march=armv6 -mfpu=vfp -mfloat-abi=hard' +optimize='-O2 @@XBPS_CROSS_CFLAGS@@' orderlib='false' osname='linux' osvers='3.10.18_4' @@ -903,7 +903,7 @@ perlpath='/usr/bin/perl' pg='pg' phostname='hostname' pidtype='pid_t' -plibpth='/lib/arm-linux-gnueabihf/4.7.3 /lib /usr/lib/arm-linux-gnueabihf/4.7.3 /usr/lib' +plibpth='/lib/@@XBPS_CROSS_TRIPLET@@/4.7.3 /lib /usr/lib/@@XBPS_CROSS_TRIPLET@@/4.7.3 /usr/lib' pmake='' pr='' prefix='/usr' diff --git a/srcpkgs/perl/files/arm-linux-gnueabihf/mg_data.h b/srcpkgs/perl/files/cross/mg_data.h similarity index 100% rename from srcpkgs/perl/files/arm-linux-gnueabihf/mg_data.h rename to srcpkgs/perl/files/cross/mg_data.h diff --git a/srcpkgs/perl/files/arm-linux-gnueabihf/uudmap.h b/srcpkgs/perl/files/cross/uudmap.h similarity index 100% rename from srcpkgs/perl/files/arm-linux-gnueabihf/uudmap.h rename to srcpkgs/perl/files/cross/uudmap.h diff --git a/srcpkgs/perl/template b/srcpkgs/perl/template index ed74c5a9c92..82df94c7c46 100644 --- a/srcpkgs/perl/template +++ b/srcpkgs/perl/template @@ -171,16 +171,15 @@ do_configure() { -Dman3dir=/usr/share/man/man3" if [ "$CROSS_BUILD" ]; then - # Copy target files - if [ ! -d $FILESDIR/$XBPS_CROSS_TRIPLET ]; then - msg_error "$pkgver: cannot be cross built for $XBPS_CROSS_TRIPLET, contact $maintainer.\n" - fi - cp -f ${FILESDIR}/${XBPS_CROSS_TRIPLET}/* . + cp -f ${FILESDIR}/cross/* . cp -f ${FILESDIR}/Configure.cross . # substitute some required strings in generated config.sh - sed -e "s|@@PERL_VERSION@@|${version}|g" \ - -e "s|@@PERL_SUBVERSION@@|${version##*.}|g" \ + sed -e "s,@@XBPS_CROSS_ARCH@@,${XBPS_CROSS_ARCH},g" \ + -e "s,@@XBPS_CROSS_TRIPLET@@,${XBPS_CROSS_TRIPLET},g" \ + -e "s,@@XBPS_CROSS_CFLAGS@@,${XBPS_CROSS_CFLAGS},g" \ + -e "s,@@PERL_VERSION@@,${version},g" \ + -e "s,@@PERL_SUBVERSION@@,${version##*.},g" \ -i config.sh sh ./Configure.cross