99 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			99 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| 
 | |
| # Slackware build script for cthulhu
 | |
| # Created based on PKGBUILD from Storm Dragon <storm_dragon@stormux.org>
 | |
| 
 | |
| cd $(dirname $0) ; CWD=$(pwd)
 | |
| 
 | |
| PRGNAM=cthulhu
 | |
| VERSION=${VERSION:-0.4}
 | |
| BUILD=${BUILD:-1}
 | |
| TAG=storm
 | |
| PKGTYPE=txz
 | |
| export PYTHON=/usr/bin/python3.11
 | |
| 
 | |
| if [ -z "$ARCH" ]; then
 | |
|   case "$( uname -m )" in
 | |
|     i?86) ARCH=i586 ;;
 | |
|     arm*) ARCH=arm ;;
 | |
|        *) ARCH=$( uname -m ) ;;
 | |
|   esac
 | |
| fi
 | |
| 
 | |
| # If the variable PRINT_PACKAGE_NAME is set, then this script will report what
 | |
| # the name of the created package would be, and then exit. This information
 | |
| # could be useful to other scripts.
 | |
| if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
 | |
|   echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
 | |
|   exit 0
 | |
| fi
 | |
| 
 | |
| TMP=$CWD
 | |
| PKG=$TMP/package-$PRGNAM
 | |
| OUTPUT=$CWD
 | |
| 
 | |
| if [ "$ARCH" = "i586" ]; then
 | |
|   SLKCFLAGS="-O2 -march=i586 -mtune=i686"
 | |
|   LIBDIRSUFFIX=""
 | |
| elif [ "$ARCH" = "i686" ]; then
 | |
|   SLKCFLAGS="-O2 -march=i686 -mtune=i686"
 | |
|   LIBDIRSUFFIX=""
 | |
| elif [ "$ARCH" = "x86_64" ]; then
 | |
|   SLKCFLAGS="-O2 -fPIC"
 | |
|   LIBDIRSUFFIX="64"
 | |
| else
 | |
|   SLKCFLAGS="-O2"
 | |
|   LIBDIRSUFFIX=""
 | |
| fi
 | |
| 
 | |
| set -e
 | |
| 
 | |
| rm -rf $PKG
 | |
| mkdir -p $TMP $PKG $OUTPUT
 | |
| cd $TMP
 | |
| rm -rf $PRGNAM-$VERSION
 | |
| git clone https://git.stormux.org/storm/cthulhu.git $PRGNAM-$VERSION
 | |
| cd $PRGNAM-$VERSION
 | |
| chown -R root:root .
 | |
| find -L . \
 | |
|  \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
 | |
|   -o -perm 511 \) -exec chmod 755 {} \; -o \
 | |
|  \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
 | |
|   -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
 | |
| 
 | |
| # Prepare the source
 | |
| NOCONFIGURE=1 ./autogen.sh
 | |
| 
 | |
| CFLAGS="$SLKCFLAGS" \
 | |
| CXXFLAGS="$SLKCFLAGS" \
 | |
| ./configure \
 | |
|   --prefix=/usr \
 | |
|   --libdir=/usr/lib${LIBDIRSUFFIX} \
 | |
|   --sysconfdir=/etc \
 | |
|   --localstatedir=/var \
 | |
|   --mandir=/usr/man \
 | |
|   --docdir=/usr/doc/$PRGNAM-$VERSION \
 | |
|   --build=$ARCH-slackware-linux
 | |
| 
 | |
| make
 | |
| make install DESTDIR=$PKG
 | |
| 
 | |
| find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
 | |
|   | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
 | |
| 
 | |
| mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
 | |
| cp -a AUTHORS COPYING ChangeLog NEWS README.md \
 | |
|   $PKG/usr/doc/$PRGNAM-$VERSION
 | |
| cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
 | |
| 
 | |
| mkdir -p $PKG/install
 | |
| cat $CWD/slack-desc > $PKG/install/slack-desc
 | |
| cat $CWD/doinst.sh > $PKG/install/doinst.sh
 | |
| 
 | |
| cd $PKG
 | |
| # let's avoid a "bad interpreter error
 | |
| sed "s,#!python3.11,#!/usr/bin/python3.11," usr/bin/cthulhu > dummy
 | |
| mv dummy usr/bin/cthulhu
 | |
| chmod 755 usr/bin/cthulhu
 | |
| /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
 |