summaryrefslogtreecommitdiff
path: root/source/ap/rpm
diff options
context:
space:
mode:
authorPatrick J Volkerding <volkerdi@slackware.com>2018-05-28 19:12:29 +0000
committerEric Hameleers <alien@slackware.com>2018-05-31 23:39:35 +0200
commit646a5c1cbfd95873950a87b5f75d52073a967023 (patch)
treeb8b8d2ab3b0d432ea69ad1a64d1c789649d65020 /source/ap/rpm
parentd31c50870d0bee042ce660e445c9294a59a3a65b (diff)
downloadcurrent-646a5c1cbfd95873950a87b5f75d52073a967023.tar.gz
Mon May 28 19:12:29 UTC 201820180528191229
a/pkgtools-15.0-noarch-13.txz: Rebuilt. installpkg: default line length for --terselength is the number of columns. removepkg: added --terse mode. upgradepkg: default line length for --terselength is the number of columns. upgradepkg: accept -option in addition to --option. ap/vim-8.1.0026-x86_64-1.txz: Upgraded. d/bison-3.0.5-x86_64-1.txz: Upgraded. e/emacs-26.1-x86_64-1.txz: Upgraded. kde/kopete-4.14.3-x86_64-8.txz: Rebuilt. Recompiled against libidn-1.35. n/conntrack-tools-1.4.5-x86_64-1.txz: Upgraded. n/libnetfilter_conntrack-1.0.7-x86_64-1.txz: Upgraded. n/libnftnl-1.1.0-x86_64-1.txz: Upgraded. n/links-2.16-x86_64-2.txz: Rebuilt. Rebuilt to enable X driver for -g mode. n/lynx-2.8.9dev.19-x86_64-1.txz: Upgraded. n/nftables-0.8.5-x86_64-1.txz: Upgraded. n/p11-kit-0.23.11-x86_64-1.txz: Upgraded. n/ulogd-2.0.7-x86_64-1.txz: Upgraded. n/whois-5.3.1-x86_64-1.txz: Upgraded. xap/network-manager-applet-1.8.12-x86_64-1.txz: Upgraded. xap/vim-gvim-8.1.0026-x86_64-1.txz: Upgraded.
Diffstat (limited to 'source/ap/rpm')
-rwxr-xr-xsource/ap/rpm/rpm.SlackBuild47
-rw-r--r--source/ap/rpm/slack-desc10
2 files changed, 45 insertions, 12 deletions
diff --git a/source/ap/rpm/rpm.SlackBuild b/source/ap/rpm/rpm.SlackBuild
index 33f570e8..63103558 100755
--- a/source/ap/rpm/rpm.SlackBuild
+++ b/source/ap/rpm/rpm.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,9 +22,11 @@
# Build RPM (of all things) for Slackware.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=rpm
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -38,6 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -55,9 +65,19 @@ elif [ "$ARCH" = "armel" ]; then
LIBDIRSUFFIX=""
fi
+if [ -x /usr/bin/rpm ]; then
+ echo "RPM detected."
+ echo
+ echo "The rpm package needs to be removed before building to ensure that"
+ echo "the binaries do not link to earlier library versions."
+ echo
+ echo "Removing the rpm package in 15 seconds, and then continuing with the build."
+ sleep 15
+ removepkg rpm
+fi
+
DB_INC="/usr/include/db48"
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=/tmp/package-rpm
@@ -66,8 +86,8 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf rpm-$VERSION
-xz -dc $CWD/rpm-$VERSION.tar.xz | tar xvf - || exit 1
-cd rpm-$VERSION
+tar xvf $CWD/rpm-$VERSION.tar.?z || exit 1
+cd rpm-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -93,11 +113,24 @@ LDFLAGS="-ldl" \
--without-lua \
--without-dmalloc \
--enable-sqlite3 \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+cd python
+ python setup.py install --root=$PKG || exit 1
+ python3 setup.py install --root=$PKG || exit 1
+cd -
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# This used to be at /bin/rpm, so make a symlink from there to the new
+# location:
+mkdir -p $PKG/bin
+ln -s ../usr/bin/rpm $PKG/bin/rpm
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/ap/rpm/slack-desc b/source/ap/rpm/slack-desc
index e41765e1..cc6f3e08 100644
--- a/source/ap/rpm/slack-desc
+++ b/source/ap/rpm/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-------------------------------------------------------|
rpm: rpm (RPM package format tool)
rpm:
rpm: RPM is a tool from Red Hat Software used to install and remove
-rpm: packages in the .rpm format. When installing RPM packages on
+rpm: packages in the .rpm format. When installing RPM packages on
rpm: Slackware, you may need to use the --nodeps and --force options.
rpm: Before installing any binary package, it's wise to examine it to
-rpm: see what it's going to do, and if it will overwrite any files. You
+rpm: see what it's going to do, and if it will overwrite any files. You
rpm: can use rpm2tgz to convert .rpm packages to .tgz packages so you
rpm: can look them over.
rpm: