Commit | Line | Data |
---|---|---|
59f0d218 FF |
1 | TERMUX_PKG_HOMEPAGE=http://www.busybox.net/ |
2 | TERMUX_PKG_DESCRIPTION="Tiny versions of many common UNIX utilities into a single small executable" | |
3 | TERMUX_PKG_ESSENTIAL=yes | |
1df4a885 | 4 | TERMUX_PKG_VERSION=1.24.2 |
4932e61a | 5 | TERMUX_PKG_BUILD_REVISION=6 |
59f0d218 FF |
6 | TERMUX_PKG_SRCURL=http://www.busybox.net/downloads/busybox-${TERMUX_PKG_VERSION}.tar.bz2 |
7 | TERMUX_PKG_BUILD_IN_SRC=yes | |
e4ba46a8 | 8 | # We replace env in the old coreutils package: |
324ea7ac | 9 | TERMUX_PKG_CONFLICTS="coreutils (<< 8.25-4)" |
59f0d218 | 10 | |
ed021630 FF |
11 | # NOTE: sed on mac does not work for building busybox, install gnu-sed with |
12 | # homebrew using the --with-default-names option. | |
59f0d218 FF |
13 | |
14 | CFLAGS+=" -llog -DTERMUX_EXPOSE_MEMPCPY=1" # Android system liblog.so for syslog | |
15 | ||
16 | termux_step_configure () { | |
17 | # Bug in gold linker with busybox in android r10e: | |
18 | # https://sourceware.org/ml/binutils/2015-02/msg00386.html | |
19 | CFLAGS+=" -fuse-ld=bfd" | |
20 | LD+=.bfd | |
21 | ||
22 | cp $TERMUX_PKG_BUILDER_DIR/busybox.config .config | |
23 | echo "CONFIG_SYSROOT=\"$TERMUX_STANDALONE_TOOLCHAIN/sysroot\"" >> .config | |
24 | echo "CONFIG_PREFIX=\"$TERMUX_PREFIX\"" >> .config | |
25 | echo "CONFIG_CROSS_COMPILER_PREFIX=\"${TERMUX_HOST_PLATFORM}-\"" >> .config | |
26 | echo "CONFIG_FEATURE_CROND_DIR=\"$TERMUX_PREFIX/var/spool/cron\"" >> .config | |
27 | make oldconfig | |
28 | } | |
29 | ||
30 | termux_step_post_make_install () { | |
31 | # Create symlinks in $PREFIX/bin/applets to $PREFIX/bin/busybox | |
32 | rm -Rf $TERMUX_PREFIX/bin/applets | |
33 | mkdir -p $TERMUX_PREFIX/bin/applets | |
34 | cd $TERMUX_PREFIX/bin/applets | |
35 | for f in `cat $TERMUX_PKG_SRCDIR/busybox.links`; do ln -s ../busybox `basename $f`; done | |
36 | ||
e4ba46a8 | 37 | # The 'ash' and 'env' applets are special in that they go into $PREFIX/bin: |
59f0d218 | 38 | cd $TERMUX_PREFIX/bin |
e4ba46a8 FF |
39 | ln -f -s busybox ash |
40 | ln -f -s busybox env | |
59f0d218 FF |
41 | |
42 | # Install busybox man page | |
43 | mkdir -p $TERMUX_PREFIX/share/man/man1 | |
44 | cp $TERMUX_PKG_SRCDIR/docs/busybox.1 $TERMUX_PREFIX/share/man/man1 | |
f6b57934 FF |
45 | |
46 | # Needed for 'crontab -e' to work out of the box: | |
47 | local _CRONTABS=$TERMUX_PREFIX/var/spool/cron/crontabs | |
48 | mkdir -p $_CRONTABS | |
49 | echo "Used by the busybox crontab and crond tools" > $_CRONTABS/README.termux | |
59f0d218 FF |
50 | } |
51 |