Slackbuild adapted from 12.2 to 13 still drops stuff in /usr/lib,,, is this normal?
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Slackbuild adapted from 12.2 to 13 still drops stuff in /usr/lib,,, is this normal?
Hi Forum,
I tried adapting the slackbuild from Python 2.5.2 from Slackware 12.2 to Slackware64 13...
made these channges in bold :
Code:
#!/bin/bash
CWD=`pwd`
TMP=${TMP:-/tmp}
PKG=$TMP/package-python
rm -rf $PKG
mkdir -p $PKG
VERSION=2.5.2
ARCH=${ARCH:-x86_64}
BUILD=${BUILD:-4}
# Location for Python site-packages:
SITEPK=$PKG/usr/lib64/python2.5/site-packages
# same as above without $PKG
TOOLSDIR=/usr/lib64/python2.5/site-packages
# Normally I don't trust -O3, but it is the Python default so
# I'll assume that in this case it has been well tested.
if [ "$ARCH" = "i386" ]; then
SLKCFLAGS="-O3 -march=i386 -mcpu=i686"
elif [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O3 -march=i486 -mtune=i686"
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O3"
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O3 -fPIC"
fi
cd $TMP
rm -rf Python-$VERSION
tar xjvf $CWD/Python-$VERSION.tar.bz2 || exit 1
cd Python-$VERSION
# Security patches:
zcat $CWD/patches/CVE-2008-1679-1721.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
zcat $CWD/patches/CVE-2008-3144.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
zcat $CWD/patches/CVE-2008-3142.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
zcat $CWD/patches/CVE-2008-2316.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
zcat $CWD/patches/CVE-2008-2315.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
# Clean up after the patches:
find . -name "*.orig" -exec rm "{}" \;
chown -R root:root .
find . -type d -exec chmod 755 {} \;
find . -type f -perm 775 -exec chmod 755 {} \;
find . -type f -perm 664 -exec chmod 644 {} \;
find . -type d -name CVS -exec rm -r {} \;
OPT="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib64 \
--docdir=/usr/doc/python-$VERSION \
--mandir=/usr/man \
--with-ncurses \
--with-threads \
--enable-ipv6 \
--enable-shared \
--build=$ARCH-slackware-linux
make -j4 || exit 1
make install DESTDIR=$PKG
# Install some python-demo files:
mkdir -p $PKG/usr/doc/python-$VERSION
cp -a Demo $PKG/usr/doc/python-$VERSION
# We'll install the python-tools under site-packages:
mkdir -p $SITEPK
( cd Tools ; cp -a * $SITEPK )
mkdir -p $PKG/usr/doc/python-$VERSION
mv $SITEPK/README $PKG/usr/doc/python-$VERSION/README.python-tools
( cd $PKG/usr/doc/python-$VERSION
ln -sf $TOOLSDIR Tools
)
# Make a few useful symlinks:
mkdir -p $PKG/usr/bin
( cd $PKG/usr/bin
ln -sf $TOOLSDIR/modulator/modulator.py modulator
ln -sf $TOOLSDIR/pynche/pynche pynche
ln -sf $TOOLSDIR/i18n/msgfmt.py .
ln -sf $TOOLSDIR/i18n/pygettext.py .
)
# Install docs:
mkdir -p $PKG/usr/doc/python-$VERSION
cp -a README $PKG/usr/doc/python-$VERSION
cp -a Misc $PKG/usr/doc/python-$VERSION
( cd $PKG/usr/doc/python-$VERSION ; mkdir html )
( cd $PKG/usr/doc/python-$VERSION/html
tar xjvf $CWD/html-$VERSION.tar.bz2
chown -R root:root .
)
( cd $PKG/usr/bin
rm -f python
ln -sf python2.5 python
)
( cd $PKG
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
)
gzip -9 $PKG/usr/man/man1/*.?
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
makepkg -l y -c n $TMP/python-$VERSION-$ARCH-$BUILD.tgz
But when I installpkg --warn my-new-python, I find that this package drops stuff to /usr/lib as well as to /usr/lib64...
Is this normal...?
Is this acceptable from the standpoint of system health...? I mean, my Slackware is pure 64, yet when it was freshly installed it already had a /usr/lib...
What do you think of this...?
I ask because I also plan to use scons and this builds with a given version of python, correctly installed...
Guess that the patches are incompatible with Py 2.5.2....
I will build the package anyway, explodepkg, merge /usr/lib with /usr/lib64, and hack the doinst.sh about all ocurrences of /usr/lib, compress again and rename it to *.tgz...
Is this a wise move... ? Don't know any other way...
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.