05d292b2 (kx 2023-03-24 03:51:10 +0300 1) #!/bin/bash
05d292b2 (kx 2023-03-24 03:51:10 +0300 2)
05d292b2 (kx 2023-03-24 03:51:10 +0300 3) cd $(dirname $0) ; CWD=$(pwd)
05d292b2 (kx 2023-03-24 03:51:10 +0300 4)
05d292b2 (kx 2023-03-24 03:51:10 +0300 5) PKGNAM=cgit-ui
05d292b2 (kx 2023-03-24 03:51:10 +0300 6) VERSION=${VERSION:-$(echo cgit-ui-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
05d292b2 (kx 2023-03-24 03:51:10 +0300 7) BUILD=${BUILD:-2}
05d292b2 (kx 2023-03-24 03:51:10 +0300 8)
05d292b2 (kx 2023-03-24 03:51:10 +0300 9) # Automatically determine the architecture we're building on:
05d292b2 (kx 2023-03-24 03:51:10 +0300 10) if [ -z "$ARCH" ]; then
05d292b2 (kx 2023-03-24 03:51:10 +0300 11) case "$( uname -m )" in
05d292b2 (kx 2023-03-24 03:51:10 +0300 12) i?86) export ARCH=i586 ;;
05d292b2 (kx 2023-03-24 03:51:10 +0300 13) arm*) export ARCH=arm ;;
05d292b2 (kx 2023-03-24 03:51:10 +0300 14) # Unless $ARCH is already set, use uname -m for all other archs:
05d292b2 (kx 2023-03-24 03:51:10 +0300 15) *) export ARCH=$( uname -m ) ;;
05d292b2 (kx 2023-03-24 03:51:10 +0300 16) esac
05d292b2 (kx 2023-03-24 03:51:10 +0300 17) fi
05d292b2 (kx 2023-03-24 03:51:10 +0300 18)
05d292b2 (kx 2023-03-24 03:51:10 +0300 19) if [ "$ARCH" = "i586" ]; then
05d292b2 (kx 2023-03-24 03:51:10 +0300 20) SLKCFLAGS="-O2 -march=i586 -mtune=i686"
05d292b2 (kx 2023-03-24 03:51:10 +0300 21) LIBDIRSUFFIX=""
05d292b2 (kx 2023-03-24 03:51:10 +0300 22) elif [ "$ARCH" = "s390" ]; then
05d292b2 (kx 2023-03-24 03:51:10 +0300 23) SLKCFLAGS="-O2"
05d292b2 (kx 2023-03-24 03:51:10 +0300 24) LIBDIRSUFFIX=""
05d292b2 (kx 2023-03-24 03:51:10 +0300 25) elif [ "$ARCH" = "x86_64" ]; then
05d292b2 (kx 2023-03-24 03:51:10 +0300 26) SLKCFLAGS="-O2 -fPIC"
05d292b2 (kx 2023-03-24 03:51:10 +0300 27) LIBDIRSUFFIX="64"
05d292b2 (kx 2023-03-24 03:51:10 +0300 28) else
05d292b2 (kx 2023-03-24 03:51:10 +0300 29) SLKCFLAGS="-O2"
05d292b2 (kx 2023-03-24 03:51:10 +0300 30) LIBDIRSUFFIX=""
05d292b2 (kx 2023-03-24 03:51:10 +0300 31) fi
05d292b2 (kx 2023-03-24 03:51:10 +0300 32)
05d292b2 (kx 2023-03-24 03:51:10 +0300 33) TMP=${TMP:-/tmp}
05d292b2 (kx 2023-03-24 03:51:10 +0300 34) PKG=$TMP/package-$PKGNAM
05d292b2 (kx 2023-03-24 03:51:10 +0300 35)
05d292b2 (kx 2023-03-24 03:51:10 +0300 36) rm -rf $PKG
05d292b2 (kx 2023-03-24 03:51:10 +0300 37) mkdir -p $TMP $PKG
05d292b2 (kx 2023-03-24 03:51:10 +0300 38)
05d292b2 (kx 2023-03-24 03:51:10 +0300 39) cd $TMP
05d292b2 (kx 2023-03-24 03:51:10 +0300 40) rm -rf $PKGNAM-$VERSION
05d292b2 (kx 2023-03-24 03:51:10 +0300 41) tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
05d292b2 (kx 2023-03-24 03:51:10 +0300 42) cd $PKGNAM-$VERSION || exit 1
05d292b2 (kx 2023-03-24 03:51:10 +0300 43)
05d292b2 (kx 2023-03-24 03:51:10 +0300 44) chown -R root:root .
05d292b2 (kx 2023-03-24 03:51:10 +0300 45) find . \
05d292b2 (kx 2023-03-24 03:51:10 +0300 46) \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
05d292b2 (kx 2023-03-24 03:51:10 +0300 47) -exec chmod 755 {} \+ -o \
05d292b2 (kx 2023-03-24 03:51:10 +0300 48) \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
05d292b2 (kx 2023-03-24 03:51:10 +0300 49) -exec chmod 644 {} \+
05d292b2 (kx 2023-03-24 03:51:10 +0300 50)
05d292b2 (kx 2023-03-24 03:51:10 +0300 51) CFLAGS="$SLKCFLAGS" \
05d292b2 (kx 2023-03-24 03:51:10 +0300 52) ./configure \
05d292b2 (kx 2023-03-24 03:51:10 +0300 53) --prefix=/usr \
05d292b2 (kx 2023-03-24 03:51:10 +0300 54) --sysconfdir=/etc \
05d292b2 (kx 2023-03-24 03:51:10 +0300 55) --libdir=/usr/lib${LIBDIRSUFFIX} \
05d292b2 (kx 2023-03-24 03:51:10 +0300 56) --with-scriptdir=/srv/www/htdocs/cgit \
05d292b2 (kx 2023-03-24 03:51:10 +0300 57) --build=$ARCH-slackware-linux || exit 1
05d292b2 (kx 2023-03-24 03:51:10 +0300 58)
05d292b2 (kx 2023-03-24 03:51:10 +0300 59)
05d292b2 (kx 2023-03-24 03:51:10 +0300 60) make || exit 1
05d292b2 (kx 2023-03-24 03:51:10 +0300 61) make install DESTDIR=$PKG || exit 1
05d292b2 (kx 2023-03-24 03:51:10 +0300 62)
05d292b2 (kx 2023-03-24 03:51:10 +0300 63) find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
05d292b2 (kx 2023-03-24 03:51:10 +0300 64) | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
05d292b2 (kx 2023-03-24 03:51:10 +0300 65)
05d292b2 (kx 2023-03-24 03:51:10 +0300 66) mv $PKG/usr/share/man $PKG/usr/
05d292b2 (kx 2023-03-24 03:51:10 +0300 67) gzip -9 $PKG/usr/man/man?/*
05d292b2 (kx 2023-03-24 03:51:10 +0300 68) rmdir $PKG/usr/share/man
05d292b2 (kx 2023-03-24 03:51:10 +0300 69)
05d292b2 (kx 2023-03-24 03:51:10 +0300 70) find $PKG/usr/man -type f -exec gzip -9 {} \;
05d292b2 (kx 2023-03-24 03:51:10 +0300 71)
05d292b2 (kx 2023-03-24 03:51:10 +0300 72) mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
05d292b2 (kx 2023-03-24 03:51:10 +0300 73) cp -a \
05d292b2 (kx 2023-03-24 03:51:10 +0300 74) ChangeLog LICENSE README README.md doc \
05d292b2 (kx 2023-03-24 03:51:10 +0300 75) $PKG/usr/doc/$PKGNAM-$VERSION
05d292b2 (kx 2023-03-24 03:51:10 +0300 76)
05d292b2 (kx 2023-03-24 03:51:10 +0300 77) cp -a $CWD/$PKGNAM.info $PKG/usr/doc/$PKGNAM-$VERSION
05d292b2 (kx 2023-03-24 03:51:10 +0300 78) cp -a $CWD/$PKGNAM.SlackBuild $PKG/usr/doc/$PKGNAM-$VERSION
05d292b2 (kx 2023-03-24 03:51:10 +0300 79)
05d292b2 (kx 2023-03-24 03:51:10 +0300 80) # If there's a ChangeLog file, installing at least part of the recent history
05d292b2 (kx 2023-03-24 03:51:10 +0300 81) # is useful, but don't let it get totally out of control:
05d292b2 (kx 2023-03-24 03:51:10 +0300 82) if [ -r ChangeLog ]; then
05d292b2 (kx 2023-03-24 03:51:10 +0300 83) DOCSDIR=$(echo $PKG/usr/doc/*-$VERSION)
05d292b2 (kx 2023-03-24 03:51:10 +0300 84) cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
05d292b2 (kx 2023-03-24 03:51:10 +0300 85) touch -r ChangeLog $DOCSDIR/ChangeLog
05d292b2 (kx 2023-03-24 03:51:10 +0300 86) fi
05d292b2 (kx 2023-03-24 03:51:10 +0300 87)
05d292b2 (kx 2023-03-24 03:51:10 +0300 88) mkdir -p $PKG/install
05d292b2 (kx 2023-03-24 03:51:10 +0300 89) cat $CWD/slack-desc > $PKG/install/slack-desc
05d292b2 (kx 2023-03-24 03:51:10 +0300 90)
05d292b2 (kx 2023-03-24 03:51:10 +0300 91) cd $PKG
05d292b2 (kx 2023-03-24 03:51:10 +0300 92) /sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz