summaryrefslogtreecommitdiff
path: root/graphics/LDraw_data/LDraw_data.SlackBuild
blob: 07c9ebea140fd99899fb53b76f5bd30306d56a32 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#!/bin/sh

# Slackware build script for LDRAW datafiles, needed by
# several LDraw utilities

# Written by Niels Horn - niels.horn@gmail.com
# revision date 2010/01/14

PRGNAM=LDraw_data
VERSION=200903
ARCH=noarch
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}

PRGSRC=complete.zip
PRGUNZIPPED=ldraw

CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

set -e

rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGUNZIPPED
unzip $CWD/$PRGSRC
cd $PRGUNZIPPED

# Check if we have the right version of the "source"
srcver=$(echo "20$(basename $(ls -1 models/note*.txt | tail -n1) .txt | cut -b5-)")
if [ "$srcver" -ne "$VERSION" ] ; then
  echo "Version of source ($srcver) does not match VERSION variable ($VERSION)"
  exit 1
fi

chown -R root:root .
find . -type d -exec chmod 0755 {} \;
find . -type f -exec chmod 0644 {} \;

# Copy the 'read-only' data to the package
mkdir -p $PKG/usr/share/LDRAW
cp -a \
  *.ldr p parts \
  $PKG/usr/share/LDRAW/

# Create / Copy the 'writable' sub-directories to /var/lib/ldraw/ and correct permissions
mkdir -p $PKG/var/lib/ldraw/{models,bitmap}
cp -a \
  models \
  $PKG/var/lib/ldraw/
chgrp -R users $PKG/var/lib/ldraw/{models,bitmap}
chmod 0775 $PKG/var/lib/ldraw/{models,bitmap}
chmod 0664 $PKG/var/lib/ldraw/models/*

# Create symlinks
( cd $PKG/usr/share/LDRAW
  ln -s ../../../var/lib/ldraw/bitmap BITMAP ; ln -s BITMAP bitmap
  ln -s ../../../var/lib/ldraw/models MODELS ; ln -s MODELS models
  ln -s parts PARTS
  ln -s s PARTS/S
  ln -s p P
)

# Move documentation
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/
cp -a \
  *.txt \
  $PKG/usr/doc/$PRGNAM-$VERSION/
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild

# unzip & make 'mklist'
# (this is a one-time executable, that won't be installed,
#  so we don't worry about CFLAGS)
unzip -o mklist1_4.zip
make

# Run 'mklist' to generate "parts.lst"
( cd $PKG/usr/share/LDRAW
  $TMP/$PRGUNZIPPED/mklist -d )

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc

cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}