%global debug_package %{nil} URL: https://github.com/MCC45TR/uke-linux-hardware-support Source0: uke-libwacom-2.20.0.tar.xz ExclusiveArch: aarch64 BuildRequires: git-core BuildRequires: glib2-devel libgudev1-devel libevdev-devel BuildRequires: libxml2-devel BuildRequires: meson gcc BuildRequires: systemd systemd-devel BuildRequires: gcc BuildRequires: meson = 1.12.1-2.fc46 BuildRequires: python3 = 3.15.2-1.fc46 Name: uke-libwacom Version: 2.20.0 Release: 15.fc46 License: HPND Summary: Tablet Information Client Library Requires: uke-libwacom-data Provides: senemos-native-runtime(libwacom) = 2.20.0-15.fc46 Requires: uke-libwacom-data = 2.20.0-15.fc46 Provides: libwacom = 2.20.0-15.fc46 Provides: libwacom%{?_isa} = 2.20.0-15.fc46 Obsoletes: libwacom < 2.20.0-15.fc46 Conflicts: libwacom %description -n uke-libwacom libwacom is a library that provides information about Wacom tablets and tools. This information can then be used by drivers or applications to tweak the UI or general settings to match the physical tablet. %package -n uke-libwacom-devel Version: 2.20.0 Release: 15.fc46 License: HPND Summary: Tablet Information Client Library Development Package Requires: uke-libwacom = 2.20.0-15.fc46 Requires: pkgconfig Provides: libwacom-devel = 2.20.0-15.fc46 Provides: libwacom-devel%{?_isa} = 2.20.0-15.fc46 Obsoletes: libwacom-devel < 2.20.0-15.fc46 Conflicts: libwacom-devel %description -n uke-libwacom-devel Tablet information client library development package. %package -n uke-libwacom-data Version: 2.20.0 Release: 15.fc46 License: HPND Summary: Tablet Information Client Library Data Files BuildArch: noarch Provides: libwacom-data = 2.20.0-15.fc46 Provides: libwacom-data%{?_isa} = 2.20.0-15.fc46 Obsoletes: libwacom-data < 2.20.0-15.fc46 Conflicts: libwacom-data %description -n uke-libwacom-data Tablet information client library data files. %package -n uke-libwacom-utils Version: 2.20.0 Release: 15.fc46 License: HPND Summary: Tablet Information Client Library Utilities Package Requires: uke-libwacom = 2.20.0-15.fc46 Provides: libwacom-utils = 2.20.0-15.fc46 Provides: libwacom-utils%{?_isa} = 2.20.0-15.fc46 Obsoletes: libwacom-utils < 2.20.0-15.fc46 Conflicts: libwacom-utils %description -n uke-libwacom-utils Utilities to handle and/or debug libwacom devices. %prep %setup -q ( mkdir -p "%{_builddir}/uke-libwacom-2.20.0/work/libwacom" cd '%{_builddir}/uke-libwacom-2.20.0/work/libwacom' rm -rf 'libwacom-2.20.0' /usr/bin/rpmuncompress -x '%{_builddir}/uke-libwacom-2.20.0/inputs/libwacom/libwacom-2.20.0.tar.xz' STATUS=$? if [ $STATUS -ne 0 ]; then exit $STATUS fi cd 'libwacom-2.20.0' /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . /usr/bin/git init -q /usr/bin/git config user.name "rpm-build" /usr/bin/git config user.email "" /usr/bin/git config gc.auto 0 /usr/bin/git add --force . GIT_COMMITTER_DATE=@${SOURCE_DATE_EPOCH:-${RPM_BUILD_TIME:?}} GIT_AUTHOR_DATE=@${SOURCE_DATE_EPOCH:-${RPM_BUILD_TIME:?}}\ /usr/bin/git commit -q --no-gpg-sign --allow-empty -a\ --author "rpm-build " -m "libwacom-2.20.0 base" /usr/bin/git checkout --track -b rpm-build ) %build ( cd "%{_builddir}/uke-libwacom-2.20.0/work/libwacom/libwacom-2.20.0" CFLAGS="${CFLAGS:--O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer }" ; export CFLAGS ; CXXFLAGS="${CXXFLAGS:--O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer }" ; export CXXFLAGS ; FFLAGS="${FFLAGS:--O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules }" ; export FFLAGS ; FCFLAGS="${FCFLAGS:--O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules }" ; export FCFLAGS ; VALAFLAGS="${VALAFLAGS:--g}" ; export VALAFLAGS ; RUSTFLAGS="${RUSTFLAGS:--Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn}" ; export RUSTFLAGS ; LDFLAGS="${LDFLAGS:--Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes }" ; export LDFLAGS ; LT_SYS_LIBRARY_PATH="${LT_SYS_LIBRARY_PATH:-/usr/lib64:}" ; export LT_SYS_LIBRARY_PATH ; CC="${CC:-gcc}" ; export CC ; CXX="${CXX:-g++}" ; export CXX /usr/bin/meson setup --buildtype=plain --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/libexec --bindir=/usr/bin --sbindir=/usr/bin --includedir=/usr/include --datadir=/usr/share --mandir=/usr/share/man --infodir=/usr/share/info --localedir=/usr/share/locale --sysconfdir=/etc --localstatedir=/var --sharedstatedir=/var/lib --wrap-mode=nodownload --auto-features=enabled . redhat-linux-build -Dtests=disabled -Ddocumentation=disabled /usr/bin/meson compile -C redhat-linux-build -j${RPM_BUILD_NCPUS} --verbose ) %install ( cd "%{_builddir}/uke-libwacom-2.20.0/work/libwacom/libwacom-2.20.0" DESTDIR=%{buildroot} /usr/bin/meson install -C redhat-linux-build --no-rebuild install -d ${RPM_BUILD_ROOT}//usr/lib/udev/rules.d # Senemos Uke: keep Python outside every target payload. rm -f %{buildroot}/usr/bin/libwacom-update-db %{buildroot}/usr/bin/libwacom-show-stylus %{buildroot}/usr/share/man/man1/libwacom-show-stylus.1* if find %{buildroot} -type f \( -name "*.py" -o -name "*.pyc" -o -name "*.pyo" -o -name "python[0-9]*" \) -print | grep .; then exit 1; fi while IFS= read -r -d "" file; do if head -c 256 "$file" | LC_ALL=C grep -aE "^#!.*(python|pypy)"; then exit 1; fi; done < <(find %{buildroot} -type f -print0) ) %check ( cd "%{_builddir}/uke-libwacom-2.20.0/work/libwacom/libwacom-2.20.0" /usr/bin/meson test -C redhat-linux-build -j${RPM_BUILD_NCPUS} --print-errorlogs ) %files -n uke-libwacom %license work/libwacom/libwacom-2.20.0/COPYING %doc work/libwacom/libwacom-2.20.0/README.md /usr/lib64/libwacom.so.* /usr/bin/libwacom-list-local-devices /usr/share/man/man1/libwacom-list-local-devices.1* %files -n uke-libwacom-devel %dir /usr/include/libwacom-1.0/ %dir /usr/include/libwacom-1.0/libwacom /usr/include/libwacom-1.0/libwacom/libwacom.h /usr/lib64/libwacom.so /usr/lib64/pkgconfig/libwacom.pc %files -n uke-libwacom-data %doc work/libwacom/libwacom-2.20.0/COPYING /usr/lib/udev/rules.d/65-libwacom.rules /usr/lib/udev/hwdb.d/65-libwacom.hwdb %dir /usr/share/libwacom /usr/share/libwacom/*.tablet /usr/share/libwacom/*.stylus %dir /usr/share/libwacom/layouts /usr/share/libwacom/layouts/*.svg %files -n uke-libwacom-utils /usr/bin/libwacom-list-devices /usr/share/man/man1/libwacom-list-devices.1* %changelog * Thu Oct 29 2026 Senemos Maintainers <75160848+MCC45TR@users.noreply.github.com> - 2.20.0-15.fc46 - Build this component independently from its reviewed source recipe.