#!/bin/sh # Build RPM (of all things) for Slackware. CWD=`pwd` if [ "$TMP" = "" ]; then TMP=/tmp fi PKG=$TMP/package-rpm cd $TMP tar xzvf $CWD/rpm-4.0.2.tar.gz cd rpm-4.0.2 zcat $CWD/rpm-4.0.2.diff.gz | patch -p1 # Install the docs before mangling them with our filters: mkdir -p $PKG/usr/doc/rpm-4.0.2 cp -a ABOUT-NLS CHANGES COPYING CREDITS GROUPS INSTALL README \ README.amiga RPM-GPG-KEY RPM-PGP-KEY TODO $PKG/usr/doc/rpm-4.0.2 cp -a doc/manual $PKG/usr/doc/rpm-4.0.2 chown -R root.root $PKG/usr/doc/rpm-4.0.2 find $PKG/usr/doc/rpm-4.0.2 -type d | xargs chmod 755 find $PKG/usr/doc/rpm-4.0.2 -type f | xargs chmod 644 # Change the /usr/src/redhat path to /usr/src/rpm. This ain't redhat. find . -name "*.orig" | xargs rm --verbose for file in `find . -type f` ; do echo "Filtering /src/redhat path in $file..." cp -a $file $file.orig cat $file.orig | sed "/\/src\/redhat/s//\/src\/rpm/" > $file done for file in `find . -type f` ; do echo "Filtering {_usrsrc}/redhat path in $file..." cp -a $file $file.orig cat $file.orig | sed "/{_usrsrc}\/redhat/s//{_usrsrc}\/rpm/" > $file done find . -name "*.orig" | xargs rm --verbose # Using "rpm" for the vendor name cures the /usr/src bug. CFLAGS=-O2 ./configure --prefix=/usr sparc-rpm-linux # rpm's configure is broken, must copy libtool to popt cp -a libtool popt make make install DESTDIR=$PKG gzip -9 --force $PKG/usr/man/man3/popt.3 \ $PKG/usr/man/man8/rpm.8 \ $PKG/usr/man/man8/rpm2cpio.8 strip $PKG/bin/rpm $PKG/usr/bin/rpm2cpio mkdir -p $PKG/var/lib/rpm/tmp cat $CWD/Packages > $PKG/var/lib/rpm/tmp/Packages mkdir -p $PKG/install cat $CWD/doinst.sh > $PKG/install/doinst.sh cd $PKG echo "y n" | makepkg $TMP/rpm.tgz