diff options
Diffstat (limited to 'source/ap/screen/screen.SlackBuild')
-rwxr-xr-x | source/ap/screen/screen.SlackBuild | 54 |
1 files changed, 37 insertions, 17 deletions
diff --git a/source/ap/screen/screen.SlackBuild b/source/ap/screen/screen.SlackBuild index b182233c..dfaad141 100755 --- a/source/ap/screen/screen.SlackBuild +++ b/source/ap/screen/screen.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010, 2011, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA +# Copyright 2008, 2009, 2010, 2011, 2013, 2014, 2015, 2016 Patrick J. Volkerding, Sebeka, Minnesota, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -20,21 +20,22 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -VERSION=${VERSION:-4.0.3} -BUILD=${BUILD:-4} +PKGNAM=screen +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} +BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then case "$( uname -m )" in - i?86) export ARCH=i486 ;; + i?86) export ARCH=i586 ;; arm*) export ARCH=arm ;; # Unless $ARCH is already set, use uname -m for all other archs: *) export ARCH=$( uname -m ) ;; esac fi -if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then @@ -47,6 +48,8 @@ CWD=$(pwd) TMP=${TMP:-/tmp} PKG=$TMP/package-screen +NUMJOBS=${NUMJOBS:-" -j7 "} + rm -rf $PKG mkdir -p $TMP $PKG cd $TMP @@ -55,12 +58,6 @@ tar xvf $CWD/screen-$VERSION.tar.?z* || exit 1 cd screen-$VERSION || exit 1 -# Increase the size of the termname buffer from 20 to 63: -zcat $CWD/screen.d_termname.envterm.buffersizeincrease.diff.gz | patch -p1 --verbose || exit 1 - -# Patch for newer glibc that might return NULL from crypt(): -zcat $CWD/screen.crypt.diff.gz | patch -p2 --verbose || exit 1 - chown -R root:root . find . \ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ @@ -68,17 +65,39 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; +# Apply patches taken from Debian: +for pf in \ + 26source_encoding.patch.gz \ + 45suppress_remap.patch.gz \ + 52fix_screen_utf8_nfd.patch.gz \ + 58-show-encoding-hardstatus.patch.gz \ + ; do zcat $CWD/$pf | patch --verbose -p1 || exit 1 +done + +# Do not link against libelf: +zcat $CWD/screen.no_libelf.diff.gz | patch -p1 --verbose || exit 1 + +# Reconf after patching configure.ac: +autoreconf -vif + +# Configure: CFLAGS="$SLKCFLAGS" \ -./configure --prefix=/usr \ +./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --mandir=/usr/man \ + --infodir=/usr/info \ --with-sys-screenrc=/etc/screenrc \ --with-pty-mode=0620 \ --with-pty-group=5 \ + --disable-pam \ --enable-telnet \ --disable-socket-dir \ - --enable-locale \ + --enable-use-locale \ --enable-colors256 \ --enable-rxvt_osc \ - --build=$ARCH-slackware-linux + --build=$ARCH-slackware-linux || exit 1 # Substitutions: perl -pi -e 's|.*#undef HAVE_BRAILLE.*|#define HAVE_BRAILLE 1|' config.h @@ -86,7 +105,7 @@ perl -pi -e 's|/usr/local/etc/screenrc|/etc/screenrc|' etc/etcscreenrc doc/* perl -pi -e 's|/local/etc/screenrc|/etc/screenrc|' doc/* # Build screen: -make || exit 1 +make $NUMJOBS || make || exit 1 make install DESTDIR=$PKG || exit 1 # Prepare package: @@ -94,6 +113,7 @@ make install DESTDIR=$PKG || exit 1 find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null ) + # Sorry, pal. Not around here. chmod 755 $PKG/usr/bin/screen-$VERSION mkdir -p $PKG/etc/skel @@ -104,7 +124,7 @@ gzip -9 $PKG/usr/info/* gzip -9 $PKG/usr/man/man1/* mkdir -p $PKG/usr/doc/screen-$VERSION chmod 644 doc/FAQ -cp -a COPYING ChangeLog INSTALL NEWS README TODO \ +cp -a COPYING ChangeLog HACKING INSTALL NEWS README TODO \ doc/FAQ doc/README.DOTSCREEN \ $PKG/usr/doc/screen-$VERSION mkdir -p $PKG/install |