ChezScheme.SlackBuild 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. #!/bin/sh
  2. # SlackBuild for ChezScheme, 9 August 2017
  3. # AW Green <awg@posteo.us>
  4. # All rights reserved.
  5. #
  6. # Permission to use, copy, modify, or distribute this software for any
  7. # purpose with or without fee is hereby granted, provided that this
  8. # notice of copyright and permission appear in all copies.
  9. #
  10. # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
  11. # WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
  12. # WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
  13. # AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
  14. # DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
  15. # PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  16. # TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  17. # PERFORMANCE OF THIS SOFTWARE.
  18. ## ChezScheme itself remains a copyrighted work. Please see the file
  19. ## LICENSE in the ChezScheme source distribution.
  20. PRGNAM=ChezScheme
  21. VERSION=${VERSION:-9.4.1_ce11b34}
  22. BUILD=${BUILD:-1}
  23. TAG=${TAG:-_SBo}
  24. if [ -z "$ARCH" ]; then
  25. case "$( uname -m )" in
  26. i?86) ARCH=i586 ;;
  27. arm*) ARCH=arm ;;
  28. *) ARCH=$( uname -m ) ;;
  29. esac
  30. fi
  31. CWD=$(pwd)
  32. TMP=${TMP:-/tmp/SBo}
  33. PKG=$TMP/package-$PRGNAM
  34. OUTPUT=${OUTPUT:-/tmp}
  35. if [ "$ARCH" = "i586" ]; then
  36. WSIZE="--32"
  37. LIBDIRSUFFIX=""
  38. elif [ "$ARCH" = "i686" ]; then
  39. WSIZE="--32"
  40. LIBDIRSUFFIX=""
  41. elif [ "$ARCH" = "x86_64" ]; then
  42. WSIZE="--64"
  43. LIBDIRSUFFIX="64"
  44. else
  45. LIBDIRSUFFIX=""
  46. fi
  47. if [ "${THREADED:-no}" = "yes" ]; then
  48. THREADS="--threads"
  49. fi
  50. set -e
  51. rm -rf $PKG
  52. mkdir -p $TMP $PKG $OUTPUT
  53. cd $TMP
  54. for SRCNAM in \
  55. ChezScheme-ce11b3485fc146704fc466377bf6e6f9357cdc9d \
  56. nanopass-framework-scheme-1f7e80bcff16766ef419183169bbc343db07db0c \
  57. zlib-cacf7f1d4e3d44d871b605da3b647f07d718623f \
  58. stex-3bd2b86cc5ae1797d05fc5cc6f11cc43383f741d \
  59. ; do
  60. PNAM=$(echo $SRCNAM | sed -e 's/-.*//')
  61. rm -rf $SRCNAM $PNAM
  62. tar xvf $CWD/$SRCNAM.tar.gz
  63. mv $SRCNAM $PNAM
  64. done
  65. cd $PRGNAM
  66. mv \
  67. $TMP/nanopass \
  68. $TMP/zlib \
  69. $TMP/stex \
  70. .
  71. chown -R root:root .
  72. find -L . \
  73. \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
  74. -o -perm 511 \) -exec chmod 755 {} \; -o \
  75. \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
  76. -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
  77. ./configure \
  78. $WSIZE \
  79. $THREADS \
  80. --installprefix=/usr \
  81. --installlib=/usr/lib${LIBDIRSUFFIX} \
  82. --installman=/usr/man \
  83. --gzip-man-pages \
  84. --temproot=$PKG
  85. make build
  86. make install
  87. if [ "${TEST:-no}" = "yes" ]; then
  88. make test
  89. fi
  90. mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
  91. cp -a LOG LICENSE NOTICE LOG CHARTER.md CONTRIBUTING.md BUILDING $PKG/usr/doc/$PRGNAM-$VERSION
  92. cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
  93. mkdir -p $PKG/install
  94. cat $CWD/slack-desc > $PKG/install/slack-desc
  95. cd $PKG
  96. /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}