# skip tests known to be problematic in a specific version %global skip_checks_version 0.1.12 # concurrency-stress-test: https://bugzilla.gnome.org/show_bug.cgi?id=673419 %global skip_checks concurrency-stress-test %define major 0 %define api 0.1 %define libname %mklibname babl %{api} %{major} %define girname %mklibname babl-gir %{api} %define develname %mklibname -d babl %{api} %define url_ver %(echo %{version}|cut -d. -f1,2) Name: babl Epoch: 1 Version: 0.1.84 Release: %mkrel 2 Summary: Dynamic, any to any, pixel format conversion library Group: System/Libraries License: LGPLv3+ URL: http://www.gegl.org/babl Source0: https://download.gimp.org/pub/%{name}/%{url_ver}/%{name}-%{version}.tar.xz BuildRequires: appstream-vala BuildRequires: librsvg BuildRequires: meson BuildRequires: pkgconfig(appstream-glib) BuildRequires: pkgconfig(gio-2.0) BuildRequires: pkgconfig(gobject-introspection-1.0) BuildRequires: pkgconfig(lcms2) BuildRequires: pkgconfig(vapigen) BuildRequires: vala-tools %description Babl is a dynamic, any to any, pixel format conversion library. It provides conversions between the myriad of buffer types images can be stored in. Babl doesn't only help with existing pixel formats, but also facilitates creation of new and uncommon ones. GEGL uses babl both for enumeration of pixel formats as well as conversions between them. %package -n %{libname} Summary: A library for %{name} Group: System/Libraries %description -n %{libname} Babl is a dynamic, any to any, pixel format conversion library. It provides conversions between the myriad of buffer types images can be stored in. Babl doesn't only help with existing pixel formats, but also facilitates creation of new and uncommon ones. GEGL uses babl both for enumeration of pixel formats as well as conversions between them. %package -n %{girname} Summary: GObject Introspection interface description for Babl Requires: %{libname} = %{epoch}:%{version}-%{release} Conflicts: %{_lib}babl0.1-devel < 1:0.1.78-2 %description -n %{girname} GObject Introspection interface description for Babl. %package -n %{develname} Summary: Header files for %{name} Group: Development/C Requires: %{libname} = %{epoch}:%{version}-%{release} Requires: %{girname} = %{epoch}:%{version}-%{release} Provides: lib%{name}-devel = %{epoch}:%{version}-%{release} Provides: %{name}-devel = %{epoch}:%{version}-%{release} Obsoletes: %{libname}-devel < 1.80 Obsoletes: %{_lib}%{name}-devel < 1.80 %description -n %{develname} Babl is a dynamic, any to any, pixel format conversion library. It provides conversions between the myriad of buffer types images can be stored in. Babl doesn't only help with existing pixel formats, but also facilitates creation of new and uncommon ones. GEGL uses babl both for enumeration of pixel formats as well as conversions between them. %prep %autosetup -p1 %build %meson -Denable-vapi=true \ %ifarch %{ix86} -Denable-mmx=false \ -Denable-sse=false \ -Denable-sse2=false \ -Denable-sse4.1=false \ -Denable-avx2=false \ -Denable-f16c=false \ %endif -Denable-gir=true %meson_build %install rm -fr %{buildroot} installed-docs %meson_install cp -r docs installed-docs cd installed-docs rm -f "%{buildroot}/%{develdocdir}"/graphics/meson.build rm -f "%{buildroot}/%{develdocdir}"/graphics/.gitignore %check # skip tests known to be problematic in a specific version %if "%version" == "%skip_checks_version" pushd tests for problematic in %skip_checks; do rm -f "$problematic" cat << EOF > "$problematic" #!/bin/sh echo Skipping test "$problematic" EOF chmod +x "$problematic" done popd %endif %meson_test %files -n %{libname} %doc NEWS TODO AUTHORS %{_libdir}/libbabl-%{api}.so.%{major}{,.*} %dir %{_libdir}/babl-%{api}/ %{_libdir}/babl-%{api}/cairo.so %{_libdir}/babl-%{api}/CIE.so %{_libdir}/babl-%{api}/double.so %{_libdir}/babl-%{api}/fast-float.so %{_libdir}/babl-%{api}/float.so %{_libdir}/babl-%{api}/gegl-fixups.so %{_libdir}/babl-%{api}/gggl-lies.so %{_libdir}/babl-%{api}/gggl.so %{_libdir}/babl-%{api}/gggl-table-lies.so %{_libdir}/babl-%{api}/gggl-table.so %{_libdir}/babl-%{api}/gimp-8bit.so %{_libdir}/babl-%{api}/grey.so %{_libdir}/babl-%{api}/half.so %{_libdir}/babl-%{api}/HCY.so %{_libdir}/babl-%{api}/HSL.so %{_libdir}/babl-%{api}/HSV.so %{_libdir}/babl-%{api}/naive-CMYK.so %{_libdir}/babl-%{api}/simple.so %{_libdir}/babl-%{api}/avx2-int8.so %{_libdir}/babl-%{api}/sse2-float.so %{_libdir}/babl-%{api}/sse2-int16.so %{_libdir}/babl-%{api}/sse2-int8.so %{_libdir}/babl-%{api}/sse4-int8.so %{_libdir}/babl-%{api}/sse-half.so %{_libdir}/babl-%{api}/two-table.so %{_libdir}/babl-%{api}/u16.so %{_libdir}/babl-%{api}/u32.so %{_libdir}/babl-%{api}/ycbcr.so %files -n %{girname} %{_libdir}/girepository-1.0/Babl-%{api}.typelib %files -n %{develname} %doc installed-docs/* %{_libdir}/libbabl-%{api}.so %{_libdir}/pkgconfig/babl.pc %dir %{_includedir}/babl-%{api}/babl %{_includedir}/babl-%{api}/babl/* %{_datadir}/gir-1.0/Babl-%{api}.gir %{_datadir}/vala/vapi/babl-0.1.deps %{_datadir}/vala/vapi/babl-0.1.vapi