diff options
Diffstat (limited to 'system/fwupd/fwupd.SlackBuild')
-rw-r--r-- | system/fwupd/fwupd.SlackBuild | 76 |
1 files changed, 46 insertions, 30 deletions
diff --git a/system/fwupd/fwupd.SlackBuild b/system/fwupd/fwupd.SlackBuild index 4a13c70e21..b69daad80d 100644 --- a/system/fwupd/fwupd.SlackBuild +++ b/system/fwupd/fwupd.SlackBuild @@ -2,7 +2,8 @@ # Slackware build script for fwupd -# Copyright 2017-2021 Andrew Clemons, Wellington New Zealand +# Copyright 2017-2022 Andrew Clemons, Wellington New Zealand +# Copyright 2022-2024 Andrew Clemons, Tokyo Japan # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -25,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd) PRGNAM=fwupd -VERSION=${VERSION:-1.3.12} +VERSION=${VERSION:-1.9.19} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} @@ -38,9 +39,6 @@ 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 "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE" exit 0 @@ -52,16 +50,19 @@ OUTPUT=${OUTPUT:-/tmp} if [ "$ARCH" = "i586" ]; then SLKCFLAGS="-O2 -march=i586 -mtune=i686" - LIBDIRSUFFIX="" + uefi_capsule="enabled" elif [ "$ARCH" = "i686" ]; then SLKCFLAGS="-O2 -march=i686 -mtune=i686" - LIBDIRSUFFIX="" + uefi_capsule="enabled" elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" - LIBDIRSUFFIX="64" + uefi_capsule="enabled" +elif [ "$ARCH" = "aarch64" ]; then + SLKCFLAGS="-O2 -fPIC" + uefi_capsule="enabled" else SLKCFLAGS="-O2" - LIBDIRSUFFIX="" + uefi_capsule="disabled" fi set -e @@ -79,8 +80,9 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; -# uefi requires tss2-esys which is not on slackbuilds.org -# dell is disabled because it requires uefi +# to use updated meson +PYVER=$(python3 -c 'import sys; print("%d.%d" % sys.version_info[:2])') +export PYTHONPATH=/opt/python$PYVER/site-packages/ CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ @@ -90,46 +92,60 @@ meson --prefix=/usr \ --libexecdir=/usr/libexec \ --buildtype=release \ --mandir=/usr/man \ - -Dsystemd=false \ - -Dplugin_dell=false \ - -Dplugin_tpm=false \ - -Dplugin_uefi=false \ + -Db_lto=true \ + -Dbuild=all \ + -Dconsolekit=disabled \ + -Delogind=disabled \ + -Dfirmware-packager=true \ + -Dgcab:docs=false \ + -Dhsi=enabled \ + -Dlvfs=true \ + -Dman=true \ + -Dpassim=disabled \ + -Dplugin_amdgpu=disabled \ + -Dplugin_redfish=disabled \ + -Dplugin_uefi_capsule=$uefi_capsule \ + -Dsupported_build=enabled \ + -Dsystemd=disabled \ build "${NINJA:=ninja}" -C build DESTDIR=$PKG $NINJA -C build install +# fix permissions on rules.d +chown polkitd:root $PKG/usr/share/polkit-1/rules.d +chmod 0700 $PKG/usr/share/polkit-1/rules.d + find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true find $PKG/usr/man -type f -exec gzip -9 {} \; for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done -mv $PKG/etc/pki/fwupd/GPG-KEY-Hughski-Limited $PKG/etc/pki/fwupd/GPG-KEY-Hughski-Limited.new -mv $PKG/etc/pki/fwupd/GPG-KEY-Linux-Foundation-Firmware $PKG/etc/pki/fwupd/GPG-KEY-Linux-Foundation-Firmware.new -mv $PKG/etc/pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service $PKG/etc/pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service.new -mv $PKG/etc/pki/fwupd/LVFS-CA.pem $PKG/etc/pki/fwupd/LVFS-CA.pem.new -mv $PKG/etc/pki/fwupd-metadata/GPG-KEY-Linux-Foundation-Metadata $PKG/etc/pki/fwupd-metadata/GPG-KEY-Linux-Foundation-Metadata.new -mv $PKG/etc/pki/fwupd-metadata/GPG-KEY-Linux-Vendor-Firmware-Service $PKG/etc/pki/fwupd-metadata/GPG-KEY-Linux-Vendor-Firmware-Service.new -mv $PKG/etc/pki/fwupd-metadata/LVFS-CA.pem $PKG/etc/pki/fwupd-metadata/LVFS-CA.pem.new +mv $PKG/usr/bin/{,fwupd-}dbxtool +mv $PKG/usr/man/man1/{,fwupd-}dbxtool.1.gz + +mv $PKG/etc/fwupd/fwupd.conf $PKG/etc/fwupd/fwupd.conf.new mv $PKG/etc/fwupd/remotes.d/lvfs.conf $PKG/etc/fwupd/remotes.d/lvfs.conf.new mv $PKG/etc/fwupd/remotes.d/lvfs-testing.conf $PKG/etc/fwupd/remotes.d/lvfs-testing.conf.new -mv $PKG/etc/fwupd/remotes.d/vendor.conf $PKG/etc/fwupd/remotes.d/vendor.conf.new mv $PKG/etc/fwupd/remotes.d/vendor-directory.conf $PKG/etc/fwupd/remotes.d/vendor-directory.conf.new -mv $PKG/etc/fwupd/remotes.d/fwupd-tests.conf $PKG/etc/fwupd/remotes.d/fwupd-tests.conf.new -mv $PKG/etc/fwupd/daemon.conf $PKG/etc/fwupd/daemon.conf.new -mv $PKG/etc/fwupd/redfish.conf $PKG/etc/fwupd/redfish.conf.new -mv $PKG/etc/fwupd/thunderbolt.conf $PKG/etc/fwupd/thunderbolt.conf.new -mv $PKG/etc/fwupd/upower.conf $PKG/etc/fwupd/upower.conf.new +mv $PKG/etc/grub.d/35_fwupd $PKG/etc/grub.d/35_fwupd.new rm -rf $PKG/usr/share/installed-tests mkdir -p $PKG/usr/share/dbus-1/system-services sed 's|@libexecdir@|/usr/libexec|' data/org.freedesktop.fwupd.service.in > $PKG/usr/share/dbus-1/system-services/org.freedesktop.fwupd.service -mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +mkdir -p $PKG/usr/doc + +# move meson installed docs +mv $PKG/usr/share/doc/fwupd $PKG/usr/doc/$PRGNAM-$VERSION +(cd $PKG/usr/doc/$PRGNAM-$VERSION && unlink libfwupd && unlink libfwupdplugin) +mv $PKG/usr/share/doc/* $PKG/usr/doc/$PRGNAM-$VERSION/ +rm -rf $PKG/usr/share/doc + cp -a \ - AUTHORS CODE_OF_CONDUCT.md COMMITMENT CONTRIBUTING.md COPYING MAINTAINERS README.md RELEASE \ + CODE_OF_CONDUCT.md COMMITMENT CONTRIBUTING.md COPYING MAINTAINERS README.md RELEASE SECURITY.md \ $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild |