build-package.sh: create dummy libutil.so which links to libc

Replace libutil.so with linker script so we don't have to patch
each program that tries to link with libutil.so.
This commit is contained in:
Leonid Pliushch 2019-03-04 17:19:32 +02:00
parent c9b80cf42d
commit d450e6af8f
2 changed files with 8 additions and 0 deletions

View File

@ -5,6 +5,7 @@ termux_step_extract_into_massagedir() {
cd $TERMUX_PREFIX cd $TERMUX_PREFIX
tar -N "$TERMUX_BUILD_TS_FILE" \ tar -N "$TERMUX_BUILD_TS_FILE" \
--exclude='lib/libc++_shared.so' --exclude='lib/libstdc++.so' \ --exclude='lib/libc++_shared.so' --exclude='lib/libstdc++.so' \
--exclude='lib/libutil.so' \
-czf "$TARBALL_ORIG" . -czf "$TARBALL_ORIG" .
# Extract tar in order to massage it # Extract tar in order to massage it

View File

@ -155,6 +155,13 @@ termux_step_setup_toolchain() {
mv $_TERMUX_TOOLCHAIN_TMPDIR $TERMUX_STANDALONE_TOOLCHAIN mv $_TERMUX_TOOLCHAIN_TMPDIR $TERMUX_STANDALONE_TOOLCHAIN
fi fi
# On Android 7, libutil functionality is provided by libc.
# But many programs still may search for libutil.
if [ ! -f $TERMUX_PREFIX/lib/libutil.so ]; then
mkdir -p "$TERMUX_PREFIX/lib"
echo 'INPUT(-lc)' > $TERMUX_PREFIX/lib/libutil.so
fi
local _STL_LIBFILE_NAME=libc++_shared.so local _STL_LIBFILE_NAME=libc++_shared.so
if [ ! -f $TERMUX_PREFIX/lib/libstdc++.so ]; then if [ ! -f $TERMUX_PREFIX/lib/libstdc++.so ]; then
# Setup libc++_shared.so in $PREFIX/lib and libstdc++.so as a link to it, # Setup libc++_shared.so in $PREFIX/lib and libstdc++.so as a link to it,