detect-hardlinks.sh: Show which files are hard links
[termux-packages] / build-package.sh
index 917b0b9..af26052 100755 (executable)
@@ -175,6 +175,7 @@ TERMUX_PKG_FOLDERNAME=""
 TERMUX_PKG_KEEP_STATIC_LIBRARIES="false"
 TERMUX_PKG_KEEP_HEADER_FILES="false"
 TERMUX_PKG_ESSENTIAL=""
+TERMUX_PKG_CONFLICTS="" # https://www.debian.org/doc/debian-policy/ch-relationships.html#s-conflicts
 TERMUX_PKG_CONFFILES=""
 # Set if a host build should be done in TERMUX_PKG_HOSTBUILD_DIR:
 TERMUX_PKG_HOSTBUILD=""
@@ -423,13 +424,13 @@ termux_step_massage () {
        if [ "$TERMUX_DEBUG" = "" ]; then
                 find . -type f | xargs file | grep -E "(executable|shared object)" | grep ELF | cut -f 1 -d : | xargs $STRIP --strip-unneeded --preserve-dates -R '.gnu.version*'
        fi
-        # Remove DT_ entries which the android 5.1 linker warns about:
-        find . -type f | xargs $TERMUX_ELF_CLEANER
         # Fix shebang paths:
         for file in `find . -type f`; do
                 head -c 100 $file | grep -E "^#\!.*\\/bin\\/.*" | grep -q -E -v "^#\! ?\\/system" && sed --follow-symlinks -i -E "s@^#\!(.*)/bin/(.*)@#\!$TERMUX_PREFIX/bin/\2@" $file
         done
        set -e -o pipefail
+        # Remove DT_ entries which the android 5.1 linker warns about:
+        find . -type f -print0 | xargs -0 $TERMUX_ELF_CLEANER
 
        test ! -z "$TERMUX_PKG_RM_AFTER_INSTALL" && rm -Rf $TERMUX_PKG_RM_AFTER_INSTALL
 
@@ -608,7 +609,9 @@ cd $TERMUX_PKG_BUILDDIR
 termux_step_post_make_install
 cd $TERMUX_PKG_MASSAGEDIR
 termux_step_extract_into_massagedir
+cd $TERMUX_PKG_MASSAGEDIR
 termux_step_massage
+cd $TERMUX_PKG_MASSAGEDIR/$TERMUX_PREFIX
 termux_step_post_massage
 
 # Create data tarball containing files to package:
@@ -640,6 +643,7 @@ Homepage: $TERMUX_PKG_HOMEPAGE
 HERE
 test ! -z "$TERMUX_PKG_DEPENDS" && echo "Depends: $TERMUX_PKG_DEPENDS" >> DEBIAN/control
 test ! -z "$TERMUX_PKG_ESSENTIAL" && echo "Essential: yes" >> DEBIAN/control
+test ! -z "$TERMUX_PKG_CONFLICTS" && echo "Conflicts: $TERMUX_PKG_CONFLICTS" >> DEBIAN/control
 
 # Create DEBIAN/conffiles (see https://www.debian.org/doc/debian-policy/ap-pkg-conffiles.html):
 for f in $TERMUX_PKG_CONFFILES; do echo $TERMUX_PREFIX/$f >> DEBIAN/conffiles; done