%global libsuffix yui %global major_so_ver 6 # This flag breaks the dependency loop between libyui and ui plugin packages # to make it possible to (re)build plugin packages for libyui ABI changes. # Uncomment next line when rebuilding on ABI changes. #%%global no_ui_dep 1 Name: lib%{libsuffix} Version: 3.0.13 Release: 4%{?dist} Summary: GUI-abstraction library License: (LGPLv2 or LGPLv3) and MIT URL: https://github.com/%{name}/%{name} Source0: %{url}/archive/%{name}/master/%{version}.tar.gz#/%{name}-%{version}.tar.gz BuildRequires: boost-devel BuildRequires: cmake >= 2.8 BuildRequires: doxygen BuildRequires: fdupes BuildRequires: graphviz %{?!no_ui_dep:Requires: yui-ui%{?_isa} == %{major_so_ver}} %description This is the user interface engine that provides the abstraction from graphical user interfaces (Qt, Gtk) and text based user interfaces (ncurses). Originally developed for YaST, %{name} can now be used independently of YaST for generic (C++) applications. %{name} has very few dependencies. %package devel Summary: Files needed for developing with %{name} Requires: boost-devel%{?_isa} Requires: %{name}%{?_isa} == %{version}-%{release} %if 0%{?fedora} && 0%{?fedora} <= 22 Obsoletes: %{name}-devel-common <= %{version}-%{release} %endif #0%{?fedora} && 0%{?fedora} <= 22 %description devel %{name} can be used independently of YaST for generic (C++) applications and has very few dependencies. %package doc Summary: Documentation files for %{name} BuildArch: noarch %description doc This package includes the developer's documentation and some brief examples how to build a UI using %{name}. %prep %setup -qn %{name}-%{name}-master-%{version} ./bootstrap.sh %build mkdir -p build pushd build %cmake \ -DPREFIX=%{_prefix} \ -DLIB_DIR=%{_libdir} \ -DCMAKE_BUILD_TYPE=RELEASE \ -DRESPECT_FLAGS=ON \ .. make %{?_smp_mflags} make %{?_smp_mflags} docs popd %install pushd build mkdir -p %{buildroot}%{_libdir}/%{libsuffix} \ %{buildroot}%{_datadir}/%{name}/theme %make_install rm -rf %{buildroot}%{_defaultdocdir} \ ../examples/CMake* \ doc/html/*.m* %fdupes doc/html popd %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %doc ChangeLog COPYING* %{_libdir}/%{name}.so.%{major_so_ver}* %dir %{_libdir}/%{libsuffix} %dir %{_datadir}/%{name} %dir %{_datadir}/%{name}/theme %files devel %{_datadir}/%{name}/buildtools %{_includedir}/%{libsuffix} %{_libdir}/%{name}.so %{_libdir}/pkgconfig/%{name}.pc %{_libdir}/cmake %files doc %doc ChangeLog COPYING* examples/ build/doc/html/ %changelog * Sat May 24 2014 Björn Esser - 3.0.13-4 - no need to provide `%%{name}-devel-common` * Fri May 23 2014 Björn Esser - 3.0.13-3 - rebuilt with dependency on yui-ui with strict abi * Fri May 23 2014 Björn Esser - 3.0.13-2 - remove build of pdf-autodocs - minor improvents on spec * Fri May 23 2014 Petr Machata - 3.0.13-1 - Rebuild for boost 1.55.0 * Tue Mar 18 2014 Björn Esser - 3.0.13-0 - new upstream release (#1048445) * Fri Aug 30 2013 Björn Esser - 3.0.10-1 - new upstream version * Tue Jul 30 2013 Petr Machata - 3.0.9-2 - Rebuild for boost 1.54.0 * Sat Jul 27 2013 Björn Esser - 3.0.9-1 - new upstream version - restructured spec for better readability - removed %%commit, using direct github-tarball - removed hardening flags and Group-tag - removed CMake-Requires from devel-pkg - added devel-common-pkg - fixed License - installing docs manually, adding PDF to doc-pkg * Thu May 16 2013 Björn Esser - 3.0.5-2 - fixed -doc licensing html/ is LGPLv2 or LGPLv3 examples/ is MIT * Thu May 16 2013 Björn Esser - 3.0.5-1 - new upstream version: obsoletes Patch0/1 - modified Requires: yui_ui to to depend on %%{major_so_ver} - install lib*.so.%%{major_so_ver}* in main-pkg not lib*.so.* - add `-DRESPECT_FLAGS=ON` * Wed May 15 2013 Björn Esser - 3.0.4-2 - readded Requires: yui_ui with conditional for ABI changes as proposed: https://bugzilla.redhat.com/show_bug.cgi?id=959926#c9 * Wed May 15 2013 Björn Esser - 3.0.4-1 - new upstream version - add Patch1 to skip generation of pdf-docs if doxygen-latex is installed. - added needed bootstrap to prep * Tue May 14 2013 Björn Esser - 3.0.3-3 - removed macro from Patch0. - fixed typo -> s/pakage/package/ - removed Provides/Requires: yui_ui * Mon May 13 2013 Björn Esser - 3.0.3-2 - fixup as suggested in https://bugzilla.redhat.com/show_bug.cgi?id=959926#c2 - add Patch0 to obey conventions about the compiler flags set in the system rpm configuration. See: https://fedoraproject.org/wiki/Packaging:Guidelines#Compiler_flags - fixup as suggested in https://bugzilla.redhat.com/show_bug.cgi?id=959926#c4 - build a hardened version just in case - add Requires: yui-ui, because libyui without UI-plugins is as useful as a car without gas and tires. - add -devel Provides: yui-ui to provide a FAKE yui-ui to satisfy dependencies during rpmbuild of the UI-plugins and made sure this is known by documenting this in libyui-devel description. - add -devel Requires: cmake to solve the /usr/lib*/cmake/ ownership-problem, which is needed for libyui*-builds anyways. * Mon May 06 2013 Björn Esser - 3.0.3-1 - Initial RPM release.