|
Revision 264, 1.2 kB
(checked in by root, 5 years ago)
|
Initial import.
|
- Property svn:executable set to
|
| Line | |
|---|
| 1 |
#!/bin/bash |
|---|
| 2 |
|
|---|
| 3 |
SELF=$(basename $0) |
|---|
| 4 |
HOMEDIR=$PWD |
|---|
| 5 |
|
|---|
| 6 |
if [ $# = 0 ]; then |
|---|
| 7 |
cat << EOF |
|---|
| 8 |
usage: $SELF <perl-module> |
|---|
| 9 |
|
|---|
| 10 |
Convert a perl-module into a Slackware package. |
|---|
| 11 |
EOF |
|---|
| 12 |
exit 1 |
|---|
| 13 |
fi |
|---|
| 14 |
|
|---|
| 15 |
SEEK=${1//::/\/} |
|---|
| 16 |
DIRNAME=${1//::/-} |
|---|
| 17 |
FOUND="" |
|---|
| 18 |
|
|---|
| 19 |
for SEARCH in $(perl -e 'print("@INC");'); do |
|---|
| 20 |
if [ -r "$SEARCH/$SEEK/.packlist" ]; then |
|---|
| 21 |
FOUND="$SEARCH/$SEEK/.packlist" |
|---|
| 22 |
break |
|---|
| 23 |
elif [ -r "$SEARCH/auto/$SEEK/.packlist" ]; then |
|---|
| 24 |
FOUND="$SEARCH/auto/$SEEK/.packlist" |
|---|
| 25 |
break |
|---|
| 26 |
fi |
|---|
| 27 |
done |
|---|
| 28 |
|
|---|
| 29 |
if [ -z "$FOUND" ]; then |
|---|
| 30 |
echo "$SELF: could not find .packlist for $1" |
|---|
| 31 |
exit 1 |
|---|
| 32 |
fi |
|---|
| 33 |
|
|---|
| 34 |
TMPDIR=/var/tmp/$SELF.$$ |
|---|
| 35 |
mkdir -p $TMPDIR |
|---|
| 36 |
trap "rm -rf $TMPDIR" INT EXIT |
|---|
| 37 |
(cat $FOUND; echo $FOUND) | cpio --quiet -pd $TMPDIR || exit 1 |
|---|
| 38 |
cd $TMPDIR || exit 1 |
|---|
| 39 |
mkdir -p install |
|---|
| 40 |
|
|---|
| 41 |
NAME=$(echo ${1//::/-} | tr [[:upper:]] [[:lower:]]) |
|---|
| 42 |
VERSION=$(perl -e "use $1; print \$$1::VERSION;") |
|---|
| 43 |
|
|---|
| 44 |
# Can't get version programatically, try CPAN build directory |
|---|
| 45 |
if [ -z "$VERSION" ]; then |
|---|
| 46 |
if [ -r ~/.cpan/build/$DIRNAME-* ]; then |
|---|
| 47 |
VERSION=~/.cpan/build/$DIRNAME-* |
|---|
| 48 |
VERSION=$(basename $VERSION) |
|---|
| 49 |
VERSION=${VERSION#$DIRNAME-} |
|---|
| 50 |
fi |
|---|
| 51 |
fi |
|---|
| 52 |
|
|---|
| 53 |
cat << EOF > install/slack-desc |
|---|
| 54 |
perl-$NAME: |
|---|
| 55 |
perl-$NAME: $1 Perl module version $VERSION |
|---|
| 56 |
perl-$NAME: |
|---|
| 57 |
EOF |
|---|
| 58 |
yes | makepkg $HOMEDIR/perl-$NAME-$VERSION-i386-1.tgz |
|---|