cGit-UI for Git Repositories

cGit-UI – is a web interface for Git Repositories. cGit CGI script is writen in C and therefore it's fast enough

3 Commits   0 Branches   1 Tag
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