diff --git a/.gitignore b/.gitignore index 7daa5e9..aedcdfe 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,5 @@ +*.rpm +*.tar* +result_*/ /libyui-3.0.4-37f6bc2.tar.gz /libyui-3.0.5-4d4bf96.tar.gz diff --git a/libyui.spec b/libyui.spec index bc579c4..99f5e0c 100644 --- a/libyui.spec +++ b/libyui.spec @@ -1,38 +1,28 @@ -%global commit 4d4bf96e92e551a437257646f8987b0fe54c3d9f -%global shortcommit %(c=%{commit}; echo ${c:0:7}) %global libsuffix yui %global major_so_ver 5 # 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. -# 0 = release build -# 1 = temporary build for buildroot -%global no_ui_dep 0 - -%global _hardened_build 1 - +# Uncomment next line when rebuilding on ABI changes. +#%%global no_ui_dep 1 Name: lib%{libsuffix} -Version: 3.0.5 -Release: 2%{?dist} -License: LGPLv2 or LGPLv3 -Source0: https://github.com/%{name}/%{name}/archive/%{commit}/%{name}-%{version}-%{shortcommit}.tar.gz +Version: 3.0.9 +Release: 1%{?dist} +Summary: GUI-abstraction library -Group: System Environment/Libraries +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: doxygen-latex BuildRequires: fdupes BuildRequires: graphviz BuildRequires: pkgconfig -%if !%{no_ui_dep} -Requires: yui-ui%{?_isa} = %{major_so_ver} -%endif - -URL: https://github.com/%{name}/%{name}/ -Summary: GUI-abstraction library +%{?!no_ui_dep:Requires: yui-ui%{?_isa} = %{major_so_ver}} %description @@ -47,108 +37,121 @@ YaST for generic (C++) applications. %package devel - -Group: Development/Libraries - -Requires: boost-devel%{?_isa} -Requires: cmake%{?_isa} -Requires: %{name}%{?_isa} = %{version}-%{release} - Summary: Files needed for developing with %{name} +Requires: boost-devel%{?_isa} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: %{name}-devel-common = %{version}-%{release} %description devel %{name} can be used independently of YaST for generic (C++) applications and has very few dependencies. -%package doc -License: (LGPLv2 or LGPLv3) and MIT -Group: Documentation +%package devel-common +Summary: Common files needed for developing with %{name} BuildArch: noarch +Requires: %{name}-devel = %{version}-%{release} + +%description devel-common +%{summary}, e.g. headers and CMake-macros. + + +%package doc Summary: Documentation files for %{name} +BuildArch: noarch %description doc -This package includes the developer's documentation as HTML and some -brief examples how to build a UI using %{name}. +This package includes the developer's documentation as PDF and HTML, +a changelog and some brief examples how to build a UI using %{name}. %prep -%setup -q -n %{name}-%{commit} - +%setup -q -n %{name}-%{name}-master-%{version} ./bootstrap.sh + %build mkdir -p build cd build - %cmake ..\ -DPREFIX=%{_prefix} \ -DLIB_DIR=%{_libdir} \ -DDOC_DIR=%{_defaultdocdir} \ -DDOC_SUBDIR=%{name}-%{version} \ - -DINSTALL_DOCS=ON \ - -DSKIP_LATEX=ON \ -DCMAKE_BUILD_TYPE=RELEASE \ -DRESPECT_FLAGS=ON - make %{?_smp_mflags} make %{?_smp_mflags} docs %install cd build - %make_install -install -m0755 -d %{buildroot}/%{_libdir}/%{libsuffix} -install -m0755 -d %{buildroot}/%{_datadir}/%{name}/theme -install -pm0644 ../COPYING* %{buildroot}/%{_defaultdocdir}/%{name}-%{version} -install -pm0644 ../ChangeLog %{buildroot}/%{_defaultdocdir}/%{name}-%{version} +install -m0755 -d %{buildroot}%{_libdir}/%{libsuffix} +install -m0755 -d %{buildroot}%{_datadir}/%{name}/theme -%fdupes %{buildroot}/%{_defaultdocdir}/%{name}-%{version} +# remove preinstalled stuff in docdir +# get's picked-up by -doc-pkg later +rm -rf %{buildroot}%{_defaultdocdir} ../examples/CMake* + +# prep docs +mv ./doc/html .. +mv ./doc/latex/refman.pdf .. +rm -rf ../html/*.m* +%fdupes ../html %post -p /sbin/ldconfig - %postun -p /sbin/ldconfig %files +%doc COPYING* %{_libdir}/lib*.so.%{major_so_ver}* %dir %{_libdir}/%{libsuffix} %dir %{_datadir}/%{name} %dir %{_datadir}/%{name}/theme -%dir %{_defaultdocdir}/%{name}-%{version} -%doc %{_defaultdocdir}/%{name}-%{version}/C* %files devel %{_libdir}/lib*.so -%{_includedir}/%{libsuffix} %{_libdir}/pkgconfig/%{name}.pc -%{_libdir}/cmake/%{name} +%{_libdir}/cmake/ + + +%files devel-common +%{_includedir}/%{libsuffix} %{_datadir}/%{name}/buildtools %files doc -%dir %{_defaultdocdir}/%{name}-%{version} -%doc %{_defaultdocdir}/%{name}-%{version}/*/ +%doc COPYING* ChangeLog *.pdf examples/ html/ %changelog +* 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.* +- 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` -- removed macros from changelog * Wed May 15 2013 Björn Esser - 3.0.4-2 - readded Requires: yui_ui with conditional for ABI changes as proposed: diff --git a/sources b/sources index 47272ce..b070ddd 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -4719a1679ddd5f2fe8a678b82920449a libyui-3.0.5-4d4bf96.tar.gz +cc2bd25c86131e9577350710c0e81ad2 libyui-3.0.9.tar.gz