mirror of
git://slackware.nl/current.git
synced 2024-12-31 10:28:29 +01:00
ce9883adca
a/acpid-2.0.30-x86_64-1.txz: Upgraded. a/etc-15.0-x86_64-9.txz: Rebuilt. Added support for /etc/ld.so.conf.d/. Thanks to Qury. a/kernel-firmware-20180904_85c5d90-noarch-1.txz: Upgraded. a/kernel-generic-4.14.68-x86_64-1.txz: Upgraded. a/kernel-huge-4.14.68-x86_64-1.txz: Upgraded. a/kernel-modules-4.14.68-x86_64-1.txz: Upgraded. a/pkgtools-15.0-noarch-22.txz: Rebuilt. installpkg: prevent noise from the "stray cat" if tar hands it a broken pipe. Thanks to ivandi. Also (in the comments) provide a possibly better but untested solution. Thanks to SeB. a/sysvinit-2.90-x86_64-2.txz: Rebuilt. sysvinit-2.90 added an undocumented feature that tries to spawn agetty if it sees console= in the kernel command line. Avoiding the debate about whether this code belongs in init at all, at least such a change should be documented, and probably made opt-in. This patch disables the new behavior unless "sysvinit_agetty" is also seen in the kernel command line. It seems like this might have been something added for Hurd, and it might be wise to stick to what we've got rather than following upstream on this particular package. If anyone notices any other odd behavior, please let me know. Thanks to shastah. a/sysvinit-scripts-2.1-noarch-19.txz: Rebuilt. When checking for intel_pstate, direct the stderr to /dev/null in case the file doesn't exist in /sys. Thanks to ivandi. Allow forcing an option by editing /etc/default/cpufreq. ap/cups-filters-1.21.2-x86_64-1.txz: Upgraded. ap/ghostscript-9.24-x86_64-1.txz: Upgraded. Patched multiple -dSAFER sandbox bypass vulnerabilities. Thanks to Tavis Ormandy. For more information, see: https://www.ghostscript.com/doc/9.24/News.htm https://www.kb.cert.org/vuls/id/332928 (* Security fix *) ap/sudo-1.8.25-x86_64-1.txz: Upgraded. d/binutils-2.31.1-x86_64-2.txz: Rebuilt. elf.c (_bfd_elf_get_symbol_version_string): Return _("<corrupt>") for corrupt symbol version info. elflink.c (bfd_elf_record_link_assignment): Always clear h->verinfo.verdef when overriding a dynamic definition. Thanks to Michael Short for pointing out the upstream patches. d/ccache-3.4.3-x86_64-1.txz: Upgraded. d/kernel-headers-4.14.68-x86-1.txz: Upgraded. d/llvm-6.0.1-x86_64-2.txz: Rebuilt. Recompiled with -DCLANG_BUILD_SHARED_LIBS=ON to fix issues when multiple OpenCL drivers are installed. Thanks to Heinz Wiesinger. d/mercurial-4.7.1-x86_64-1.txz: Upgraded. k/kernel-source-4.14.68-noarch-1.txz: Upgraded. l/mozilla-nss-3.39-x86_64-1.txz: Upgraded. n/curl-7.61.1-x86_64-1.txz: Upgraded. This update fixes an NTLM password overflow via integer overflow. For more information, see: https://curl.haxx.se/docs/CVE-2018-14618.html https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-14618 (* Security fix *) n/gnupg2-2.2.10-x86_64-1.txz: Upgraded. n/libtirpc-1.1.4-x86_64-1.txz: Upgraded. n/netatalk-3.1.11-x86_64-2.txz: Rebuilt. rc.atalk: fixed errors in status output. Thanks to marav. n/nghttp2-1.33.0-x86_64-1.txz: Upgraded. n/p11-kit-0.23.14-x86_64-1.txz: Upgraded. n/stunnel-5.49-x86_64-1.txz: Upgraded. x/libdrm-2.4.94-x86_64-1.txz: Upgraded. x/xf86-video-ati-20180824_de88ea27-x86_64-1.txz: Upgraded. xap/hexchat-2.14.2-x86_64-1.txz: Upgraded. xap/mozilla-firefox-60.2.0esr-x86_64-1.txz: Upgraded. This release contains security fixes and improvements. For more information, see: https://www.mozilla.org/security/known-vulnerabilities/firefoxESR.html (* Security fix *) xap/xlockmore-5.56-x86_64-1.txz: Upgraded. isolinux/initrd.img: Rebuilt. kernels/*: Upgraded. usb-and-pxe-installers/usbboot.img: Rebuilt.
195 lines
6.1 KiB
Bash
Executable file
195 lines
6.1 KiB
Bash
Executable file
#!/bin/bash
|
|
# Copyright 2005, 2006, 2008, 2009, 2010, 2012 Eric Hameleers, Eindhoven, NL
|
|
# Copyright 2013, 2014, 2015, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
|
|
# All rights reserved.
|
|
#
|
|
# Permission to use, copy, modify, and distribute this software for
|
|
# any purpose with or without fee is hereby granted, provided that
|
|
# the above copyright notice and this permission notice appear in all
|
|
# copies.
|
|
#
|
|
# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
|
|
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
# IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
|
|
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
|
# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
|
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
|
# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
# SUCH DAMAGE.
|
|
# -----------------------------------------------------------------------------
|
|
|
|
cd $(dirname $0) ; CWD=$(pwd)
|
|
|
|
PKGNAM=mozilla-nss
|
|
SRCNAM=nss
|
|
VERSION=${VERSION:-3.39}
|
|
NSPR=${NSPR:-4.20}
|
|
BUILD=${BUILD:-1}
|
|
|
|
# Automatically determine the architecture we're building on:
|
|
MARCH=$( uname -m )
|
|
if [ -z "$ARCH" ]; then
|
|
case "$MARCH" in
|
|
i?86) export ARCH=i586 ;;
|
|
armv7hl) export ARCH=$MARCH ;;
|
|
arm*) export ARCH=arm ;;
|
|
# Unless $ARCH is already set, use uname -m for all other archs:
|
|
*) export ARCH=$MARCH ;;
|
|
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=""
|
|
elif [ "$ARCH" = "x86_64" ]; then
|
|
SLKCFLAGS="-O2 -fPIC"
|
|
LIBDIRSUFFIX="64"
|
|
export USE_64=1
|
|
elif [ "$ARCH" = "armv7hl" ]; then
|
|
SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16"
|
|
LIBDIRSUFFIX=""
|
|
else
|
|
SLKCFLAGS="-O2"
|
|
LIBDIRSUFFIX=""
|
|
fi
|
|
|
|
TMP=${TMP:-/tmp}
|
|
PKG=$TMP/package-$PKGNAM
|
|
|
|
# Seems parallel build does not work with this.
|
|
#NUMJOBS=${NUMJOBS:-" -j7 "}
|
|
|
|
rm -rf $PKG
|
|
mkdir -p $TMP $PKG
|
|
|
|
cd $TMP
|
|
rm -rf nss-${VERSION}
|
|
rm -rf nspr-${NSPR}
|
|
tar xvf $CWD/nss-$VERSION.tar.?z || exit 1
|
|
cd nss-$VERSION
|
|
tar xvf $CWD/nspr-$NSPR.tar.?z || exit 1
|
|
mv nspr*/nspr .
|
|
|
|
# -Werror is problematic with gcc7:
|
|
sed -i "s|\ -Werror| |" nss/coreconf/Werror.mk || exit 1
|
|
|
|
# Make sure ownerships and permissions are sane:
|
|
chown -R root:root .
|
|
find . \
|
|
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
|
|
-exec chmod 755 {} \; -o \
|
|
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
|
|
-exec chmod 644 {} \;
|
|
|
|
echo Building ...
|
|
export LDFLAGS="-lz"
|
|
export CFLAGS="$SLKCFLAGS"
|
|
export CXXFLAGS="$SLKCFLAGS"
|
|
export BUILD_OPT=1
|
|
export NSDISTMODE="copy"
|
|
export NSS_USE_SYSTEM_SQLITE=1
|
|
export NSS_ENABLE_ECC=1
|
|
cd nss
|
|
# Seems parallel build does not work with this.
|
|
#make $NUMJOBS nss_build_all export || exit 1
|
|
make nss_build_all export || exit 1
|
|
cd -
|
|
|
|
# Install all the needed stuff to the package dir:
|
|
mkdir -p $PKG/usr/{bin,lib${LIBDIRSUFFIX},include/{nss,nspr}}
|
|
cd dist/$(uname -s)*
|
|
cp -pL bin/{certutil,cmsutil,crlutil,modutil,pk12util,shlibsign,signtool,signver,ssltap} $PKG/usr/bin/
|
|
cp -pL lib/* $PKG/usr/lib${LIBDIRSUFFIX}/
|
|
chmod 755 $PKG/usr/lib${LIBDIRSUFFIX}/*.so*
|
|
cp -rL include/* $PKG/usr/include/nspr/
|
|
cp -rpL ../public/nss/*.h $PKG/usr/include/nss/
|
|
# Remove some things we do not need:
|
|
rm -f $PKG/usr/bin/*.so
|
|
rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.a
|
|
rm -rf $PKG/usr/include/nspr/md
|
|
cp -L lib/libcrmf.a $PKG/usr/lib${LIBDIRSUFFIX}/ # yes, put this one back
|
|
cd -
|
|
|
|
cd nss/cmd/smimetools
|
|
cp -a smime $PKG/usr/bin/
|
|
chmod 0755 $PKG/usr/bin/smime
|
|
sed -i -e 's#/usr/local/bin#/usr/bin#g' $PKG/usr/bin/smime
|
|
cd -
|
|
|
|
# Install nspr-config:
|
|
cat nspr/$(uname -s)*/config/nspr-config | sed -e "s,prefix=/usr/local,prefix=/usr,g" | sed -e "s,libdir=\${exec_prefix}/lib,libdir=\${exec_prefix}/lib${LIBDIRSUFFIX},g" > $PKG/usr/bin/nspr-config
|
|
chmod 755 $PKG/usr/bin/nspr-config
|
|
|
|
# Install nss-config:
|
|
sed -e "s,@prefix@,/usr,g" \
|
|
-e "s,@MOD_MAJOR_VERSION@,$(printf $VERSION | cut -d. -f1),g" \
|
|
-e "s,@MOD_MINOR_VERSION@,$(printf $VERSION | cut -d. -f2),g" \
|
|
-e "s,@MOD_PATCH_VERSION@,$(printf $VERSION | cut -d. -f3),g" \
|
|
$CWD/nss-config.in > $PKG/usr/bin/nss-config
|
|
chmod 755 $PKG/usr/bin/nss-config
|
|
|
|
# Provide pkg-config files:
|
|
mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
|
|
cat <<EOT > $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/mozilla-nss.pc
|
|
prefix=/usr
|
|
exec_prefix=\${prefix}
|
|
libdir=/usr/lib${LIBDIRSUFFIX}
|
|
includedir=\${prefix}/include/nss
|
|
|
|
Name: NSS
|
|
Description: Network Security Services
|
|
Version: $VERSION
|
|
Requires: nspr >= $NSPR sqlite3
|
|
Libs: -L\${libdir} -lnss3 -lsmime3 -lssl3 -lsoftokn3 -lnssutil3
|
|
Cflags: -I\${includedir}
|
|
EOT
|
|
cat <<EOT > $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/mozilla-nspr.pc
|
|
prefix=/usr
|
|
exec_prefix=\${prefix}
|
|
libdir=/usr/lib${LIBDIRSUFFIX}
|
|
includedir=\${prefix}/include/nspr
|
|
|
|
Name: NSPR
|
|
Description: The Netscape Portable Runtime
|
|
Version: $NSPR
|
|
Libs: -L\${libdir} -lplds4 -lplc4 -lnspr4
|
|
Cflags: -I\${includedir}
|
|
EOT
|
|
|
|
( cd $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
|
|
ln -s mozilla-nspr.pc nspr.pc
|
|
ln -s mozilla-nss.pc nss.pc
|
|
)
|
|
|
|
# Add documentation:
|
|
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
|
|
cp -a \
|
|
$CWD/MPL-1.1.txt $CWD/gpl-2.0.txt $CWD/lgpl-2.1.txt \
|
|
$CWD/faq.html \
|
|
$PKG/usr/doc/$PKGNAM-$VERSION
|
|
chown -R root:root $PKG/usr/doc/$PKGNAM-$VERSION
|
|
|
|
# Strip binaries:
|
|
find $PKG | xargs file | grep -e "executable" -e "shared object" \
|
|
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
|
|
|
|
# Add a package description:
|
|
mkdir -p $PKG/install
|
|
cat $CWD/slack-desc > $PKG/install/slack-desc
|
|
|
|
# Build the package:
|
|
cd $PKG
|
|
/sbin/makepkg -l y -c n $TMP/${PKGNAM}-${VERSION}-${ARCH}-${BUILD}.txz
|
|
|