Commit | Line | Data |
---|---|---|
a0e9a636 | 1 | TERMUX_PKG_HOMEPAGE=https://www.perl.org/ |
59f0d218 | 2 | TERMUX_PKG_DESCRIPTION="Capable, feature-rich programming language" |
291b3746 | 3 | TERMUX_PKG_VERSION=5.26.0 |
59f0d218 | 4 | TERMUX_PKG_SRCURL=http://www.cpan.org/src/5.0/perl-${TERMUX_PKG_VERSION}.tar.gz |
291b3746 | 5 | TERMUX_PKG_SHA256=ebe7c66906d4fb55449380ab1b7e004eeef52c38d3443fa301f8e17a1a4cb67f |
0e2bd86d | 6 | TERMUX_PKG_BUILD_IN_SRC="yes" |
59f0d218 FF |
7 | TERMUX_MAKE_PROCESSES=1 |
8 | TERMUX_PKG_RM_AFTER_INSTALL="bin/perl${TERMUX_PKG_VERSION}" | |
a3462cd1 | 9 | TERMUX_PKG_NO_DEVELSPLIT=yes |
0e2bd86d | 10 | |
59f0d218 | 11 | termux_step_post_extract_package () { |
a0e9a636 | 12 | # This port uses perl-cross: http://arsv.github.io/perl-cross/ |
291b3746 | 13 | local PERLCROSS_VERSION=1.1.5 |
a0e9a636 FF |
14 | local PERLCROSS_FILE=perl-cross-${PERLCROSS_VERSION}.tar.gz |
15 | local PERLCROSS_TAR=$TERMUX_PKG_CACHEDIR/$PERLCROSS_FILE | |
16 | if [ ! -f $PERLCROSS_TAR ]; then | |
17 | termux_download https://github.com/arsv/perl-cross/releases/download/$PERLCROSS_VERSION/$PERLCROSS_FILE \ | |
18 | $PERLCROSS_TAR \ | |
291b3746 | 19 | 0e719e75983b16c7726c2c9462f9498bb1fc4ad38c9f2513a65f3dd34e3decb3 |
a0e9a636 | 20 | fi |
59f0d218 | 21 | tar xf $PERLCROSS_TAR |
a0e9a636 | 22 | cd perl-cross-${PERLCROSS_VERSION} |
59f0d218 FF |
23 | cp -Rf * ../ |
24 | ||
25 | # Remove old installation to force fresh: | |
26 | rm -rf $TERMUX_PREFIX/lib/perl5 | |
a02b0383 | 27 | |
a02b0383 FF |
28 | # Export variable used by Kid.pm.patch: |
29 | export TERMUX_PKG_SRCDIR | |
59f0d218 FF |
30 | } |
31 | ||
32 | termux_step_configure () { | |
a0e9a636 | 33 | export PATH=$PATH:$TERMUX_STANDALONE_TOOLCHAIN/bin |
59f0d218 FF |
34 | |
35 | ORIG_AR=$AR; unset AR | |
36 | ORIG_AS=$AS; unset AS | |
37 | ORIG_CC=$CC; unset CC | |
38 | ORIG_CXX=$CXX; unset CXX | |
39 | ORIG_CPP=$CPP; unset CPP | |
40 | ORIG_CFLAGS=$CFLAGS; unset CFLAGS | |
41 | ORIG_CPPFLAGS=$CPPFLAGS; unset CPPFLAGS | |
42 | ORIG_CXXFLAGS=$CXXFLAGS; unset CXXFLAGS | |
43 | ORIG_LDFLAGS=$LDFLAGS; unset LDFLAGS | |
44 | ORIG_RANLIB=$RANLIB; unset RANLIB | |
45 | ORIG_LD=$LD; unset LD | |
46 | ||
aba4a7e0 FF |
47 | # Since we specify $TERMUX_PREFIX/bin/sh below for the shell |
48 | # it will be run during the build, so temporarily (removed in | |
49 | # termux_step_post_make_install below) setup symlink: | |
50 | rm -f $TERMUX_PREFIX/bin/sh | |
51 | ln -s /bin/sh $TERMUX_PREFIX/bin/sh | |
52 | ||
59f0d218 FF |
53 | cd $TERMUX_PKG_BUILDDIR |
54 | $TERMUX_PKG_SRCDIR/configure \ | |
55 | --target=$TERMUX_HOST_PLATFORM \ | |
56 | -Dsysroot=$TERMUX_STANDALONE_TOOLCHAIN/sysroot \ | |
57 | -Dprefix=$TERMUX_PREFIX \ | |
aba4a7e0 | 58 | -Dsh=$TERMUX_PREFIX/bin/sh \ |
a0e9a636 FF |
59 | -Dcc=$ORIG_CC \ |
60 | -Duseshrplib | |
59f0d218 | 61 | } |
9a9aaa90 FF |
62 | |
63 | termux_step_post_make_install () { | |
64 | # Replace hardlinks with symlinks: | |
65 | cd $TERMUX_PREFIX/share/man/man1 | |
291b3746 | 66 | rm perlbug.1 |
9a9aaa90 | 67 | ln -s perlthanks.1 perlbug.1 |
aba4a7e0 | 68 | |
aba4a7e0 FF |
69 | # Cleanup: |
70 | rm $TERMUX_PREFIX/bin/sh | |
a3462cd1 FF |
71 | |
72 | cd $TERMUX_PREFIX/lib | |
a0e9a636 | 73 | ln -f -s perl5/${TERMUX_PKG_VERSION}/${TERMUX_ARCH}-android/CORE/libperl.so libperl.so |
a3462cd1 FF |
74 | |
75 | cd $TERMUX_PREFIX/include | |
a0e9a636 | 76 | ln -f -s ../lib/perl5/${TERMUX_PKG_VERSION}/${TERMUX_ARCH}-android/CORE perl |
a7d4cb03 | 77 | cd ../lib/perl5/${TERMUX_PKG_VERSION}/${TERMUX_ARCH}-android/ |
78 | chmod +w Config_heavy.pl | |
79 | sed 's',"--sysroot=$TERMUX_STANDALONE_TOOLCHAIN"/sysroot,"-I/data/data/com.termux/files/usr/include",'g' Config_heavy.pl > Config_heavy.pl.new | |
80 | sed 's',"$TERMUX_STANDALONE_TOOLCHAIN"/sysroot,"-I/data/data/com.termux/files",'g' Config_heavy.pl.new > Config_heavy.pl | |
81 | rm Config_heavy.pl.new | |
9a9aaa90 | 82 | } |