%global debug_package %{nil} URL: https://github.com/MCC45TR/uke-linux-hardware-support Source0: uke-gstreamer1-1.28.8.tar.xz ExclusiveArch: aarch64 BuildRequires: bash-completion-devel BuildRequires: bison BuildRequires: check-devel BuildRequires: elfutils-devel BuildRequires: flex BuildRequires: gcc BuildRequires: gettext BuildRequires: glib2-devel >= 2.32.0 BuildRequires: gobject-introspection-devel >= 1.31.1 BuildRequires: libatomic BuildRequires: libcap-devel BuildRequires: libxml2-devel >= 2.4.0 BuildRequires: meson >= 0.48.0 BuildRequires: pkgconfig BuildRequires: rustc BuildRequires: gobject-introspection-devel = 1.86.0-12.fc46 BuildRequires: meson = 1.12.1-2.fc46 BuildRequires: python3 = 3.15.2-1.fc46 Name: uke-gstreamer1 Version: 1.28.8 Release: 14.fc46 License: LGPL-2.1-or-later Summary: GStreamer streaming media framework runtime Provides: senemos-native-runtime(gstreamer1) = 1.28.8-14.fc46 Provides: gstreamer1 = 1.28.8-14.fc46 Provides: gstreamer1%{?_isa} = 1.28.8-14.fc46 Obsoletes: gstreamer1 < 1.28.8-14.fc46 Conflicts: gstreamer1 %description -n uke-gstreamer1 GStreamer is a streaming media framework, based on graphs of filters which operate on media data. Applications using this library can do anything from real-time sound processing to playing videos, and just about anything else media-related. Its plugin-based architecture means that new data types or processing capabilities can be added simply by installing new plugins. %package -n uke-gstreamer1-devel Version: 1.28.8 Release: 14.fc46 License: LGPL-2.1-or-later Summary: Libraries/include files for GStreamer streaming media framework Requires: uke-gstreamer1 = 1.28.8-14.fc46 Requires: glib2-devel(aarch-64) >= 2.32.0 Requires: libxml2-devel(aarch-64) >= 2.4.0 Requires: check-devel Conflicts: gstreamer1-plugins-bad-free-devel < 1.13 Provides: gstreamer1-devel = 1.28.8-14.fc46 Provides: gstreamer1-devel%{?_isa} = 1.28.8-14.fc46 Obsoletes: gstreamer1-devel < 1.28.8-14.fc46 Conflicts: gstreamer1-devel %description -n uke-gstreamer1-devel The gstreamer1-devel package contains libraries and header files for developing applications that use gstreamer1. %prep %setup -q ( mkdir -p "%{_builddir}/uke-gstreamer1-1.28.8/work/gstreamer1" cd '%{_builddir}/uke-gstreamer1-1.28.8/work/gstreamer1' rm -rf 'gstreamer-1.28.8' /usr/bin/rpmuncompress -x '%{_builddir}/uke-gstreamer1-1.28.8/inputs/gstreamer1/gstreamer-1.28.8.tar.xz' STATUS=$? if [ $STATUS -ne 0 ]; then exit $STATUS fi cd 'gstreamer-1.28.8' /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . echo "Patch #0 (0001-gst-inspect-add-mode-to-output-RPM-requires-format.patch):" /usr/bin/patch --no-backup-if-mismatch -f -p3 -b --suffix .rpm-provides --fuzz=0 < %{_builddir}/uke-gstreamer1-1.28.8/inputs/gstreamer1/0001-gst-inspect-add-mode-to-output-RPM-requires-format.patch ) %build ( cd "%{_builddir}/uke-gstreamer1-1.28.8/work/gstreamer1/gstreamer-1.28.8" 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 \ -D package-name='Fedora GStreamer package' \ -D package-origin='http://download.fedoraproject.org' \ -D tests=disabled -D examples=disabled \ -D ptp-helper-permissions=capabilities \ -D libunwind=disabled -D libdw=disabled \ -D dbghelp=disabled \ -D doc=disabled /usr/bin/meson compile -C redhat-linux-build -j${RPM_BUILD_NCPUS} --verbose ) %install ( cd "%{_builddir}/uke-gstreamer1-1.28.8/work/gstreamer1/gstreamer-1.28.8" DESTDIR=%{buildroot} /usr/bin/meson install -C redhat-linux-build --no-rebuild /usr/lib/rpm/find-lang.sh %{buildroot} gstreamer-1.0 # Add the provides script install -m0755 -D %{_builddir}/uke-gstreamer1-1.28.8/inputs/gstreamer1/gstreamer1.prov $RPM_BUILD_ROOT/usr/lib/rpm/gstreamer1.prov # Add the gstreamer plugin file attribute entry (rpm >= 4.9.0) install -m0644 -D %{_builddir}/uke-gstreamer1-1.28.8/inputs/gstreamer1/gstreamer1.attr $RPM_BUILD_ROOT/usr/lib/rpm/fileattrs/gstreamer1.attr # Senemos Uke: keep Python outside every target payload. rm -f %{buildroot}/usr/libexec/gstreamer-1.0/gst-hotdoc-plugins-scanner %{buildroot}/usr/libexec/gstreamer-1.0/gst-plugins-doc-cache-generator rm -rf %{buildroot}/usr/share/gstreamer-1.0/gdb %{buildroot}/usr/share/gdb/auto-load 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 %files -n uke-gstreamer1 -f work/gstreamer1/gstreamer-1.28.8/gstreamer-1.0.lang %license work/gstreamer1/gstreamer-1.28.8/COPYING %doc work/gstreamer1/gstreamer-1.28.8/README.md work/gstreamer1/gstreamer-1.28.8/README.static-linking work/gstreamer1/gstreamer-1.28.8/RELEASE /usr/lib64/libgstreamer-1.0.so.* /usr/lib64/libgstbase-1.0.so.* /usr/lib64/libgstcheck-1.0.so.* /usr/lib64/libgstcontroller-1.0.so.* /usr/lib64/libgstnet-1.0.so.* %dir /usr/libexec/gstreamer-1.0/ /usr/libexec/gstreamer-1.0/gst-completion-helper /usr/libexec/gstreamer-1.0/gst-plugin-scanner %attr(755,root,root) %caps(cap_net_bind_service,cap_net_admin,cap_sys_nice=ep) /usr/libexec/gstreamer-1.0/gst-ptp-helper %dir /usr/lib64/gstreamer-1.0 /usr/lib64/gstreamer-1.0/libgstcoreelements.so /usr/lib64/gstreamer-1.0/libgstcoretracers.so /usr/lib64/girepository-1.0/Gst-1.0.typelib /usr/lib64/girepository-1.0/GstBase-1.0.typelib /usr/lib64/girepository-1.0/GstCheck-1.0.typelib /usr/lib64/girepository-1.0/GstController-1.0.typelib /usr/lib64/girepository-1.0/GstNet-1.0.typelib /usr/bin/gst-inspect-1.0 /usr/bin/gst-launch-1.0 /usr/bin/gst-stats-1.0 /usr/bin/gst-typefind-1.0 /usr/lib/rpm/gstreamer1.prov /usr/lib/rpm/fileattrs/gstreamer1.attr %doc /usr/share/man/man1/gst-inspect-1.0.* %doc /usr/share/man/man1/gst-launch-1.0.* %doc /usr/share/man/man1/gst-stats-1.0.* %doc /usr/share/man/man1/gst-typefind-1.0.* /usr/share/bash-completion/completions/gst-inspect-1.0 /usr/share/bash-completion/completions/gst-launch-1.0 /usr/share/bash-completion/helpers/gst %files -n uke-gstreamer1-devel %dir /usr/include/gstreamer-1.0 %dir /usr/include/gstreamer-1.0/gst %dir /usr/include/gstreamer-1.0/gst/base %dir /usr/include/gstreamer-1.0/gst/check %dir /usr/include/gstreamer-1.0/gst/controller %dir /usr/include/gstreamer-1.0/gst/net /usr/include/gstreamer-1.0/gst/*.h /usr/include/gstreamer-1.0/gst/base/*.h /usr/include/gstreamer-1.0/gst/check/*.h /usr/include/gstreamer-1.0/gst/controller/*.h /usr/include/gstreamer-1.0/gst/net/*.h /usr/lib64/libgstreamer-1.0.so /usr/lib64/libgstbase-1.0.so /usr/lib64/libgstcheck-1.0.so /usr/lib64/libgstcontroller-1.0.so /usr/lib64/libgstnet-1.0.so /usr/share/gir-1.0/Gst-1.0.gir /usr/share/gir-1.0/GstBase-1.0.gir /usr/share/gir-1.0/GstCheck-1.0.gir /usr/share/gir-1.0/GstController-1.0.gir /usr/share/gir-1.0/GstNet-1.0.gir /usr/share/aclocal/gst-element-check-1.0.m4 /usr/lib64/pkgconfig/gstreamer-1.0.pc /usr/lib64/pkgconfig/gstreamer-base-1.0.pc /usr/lib64/pkgconfig/gstreamer-controller-1.0.pc /usr/lib64/pkgconfig/gstreamer-check-1.0.pc /usr/lib64/pkgconfig/gstreamer-net-1.0.pc /usr/share/cmake/FindGStreamer.cmake %changelog * Thu Oct 29 2026 Senemos Maintainers <75160848+MCC45TR@users.noreply.github.com> - 1.28.8-14.fc46 - Build this component independently from its reviewed source recipe.