X-Git-Url: https://git.pld-linux.org/?a=blobdiff_plain;f=poldek.spec;h=16f3017044c236274365c17f1378cef58a3bd312;hb=1e0595d6832f4b3d1c11a5f040fcd9cfbcddbd94;hp=74aa7eb9e4385d1ede3b35da0617545db146f46f;hpb=f77a8b4c8226590f408ac8e1a5ce60c10aa540de;p=packages%2Fpoldek.git diff --git a/poldek.spec b/poldek.spec index 74aa7eb..16f3017 100644 --- a/poldek.spec +++ b/poldek.spec @@ -3,79 +3,59 @@ %bcond_with static # don't use shared libraries %bcond_without imode # don't build interactive mode %bcond_without python # don't build python bindings -# +%bcond_with snap # install configs for official Th snapshot + +# current snapshot name +%define SNAP 2012 + # required versions (forced to avoid SEGV with mixed db used by rpm and poldek) -%if "%{pld_release}" == "ti" -%define ver_db 4.5.20 -%define ver_db_rel 8 -%else -%define ver_db 4.7.25 -%define ver_db_rel 1 -%endif -%define ver_rpm 4.5-5 -# -%define snap 20080820.23 -%define rel 35 +%define db_pkg db5.2 +%define ver_db 5.2 +%define ver_db_rel 3 +%define ver_rpm 5.4.10 + +%define snap rc7 +%define rel 3%{?with_snap:.%{SNAP}} Summary: RPM packages management helper tool +Summary(hu.UTF-8): RPM csomagkezelést segítő eszköz Summary(pl.UTF-8): Pomocnicze narzędzie do zarządzania pakietami RPM Name: poldek -Version: 0.30 -Release: 0.%{snap}.%{rel} +Version: 0.30.0 +Release: 1.%{snap}.%{rel} License: GPL v2 Group: Applications/System #Source0: http://poldek.pld-linux.org/download/snapshots/%{name}-%{version}-cvs%{snap}.tar.bz2 -Source0: http://carme.pld-linux.org/~megabajt/snaps/poldek/%{name}-%{version}-cvs%{snap}.tar.bz2 -# Source0-md5: 2738eb3996f1cdf1e5d74b913d6e7414 +Source0: http://carme.pld-linux.org/~megabajt/snaps/poldek/%{name}-%{version}%{snap}.tar.xz +# Source0-md5: 56ba9e7b709a99965f42e24e65eb2d7f Source1: %{name}.conf Source2: %{name}-multilib.conf -Source3: %{name}-ti.conf -Source4: %{name}-multilib-ti.conf Source5: %{name}-aliases.conf Source6: %{name}.desktop Source7: %{name}.png Source8: %{name}-debuginfo.conf Source9: %{name}-aidath.conf Source10: %{name}-multilib-aidath.conf +Source11: %{name}-archive.conf +Source100: %{name}-snap.conf +Source101: %{name}-multilib-snap.conf +Source102: %{name}-debuginfo-snap.conf Patch0: %{name}-vserver-packages.patch Patch1: %{name}-config.patch -Patch2: %{name}-abort-on-upgrade.patch -Patch3: %{name}-inline.patch -Patch4: %{name}-ls-llu.patch -Patch5: %{name}-op-ldalldesc.patch -Patch6: %{name}-nocolor-upgrade.patch -Patch7: %{name}-upgrade-dist.patch -Patch8: %{name}-keep-reinstalled-provides.patch -Patch9: %{name}-dont-ask-for-suggests-on-errors.patch -Patch10: %{name}-crash-on-invalid-locale.patch -Patch11: %{name}-noutf8.patch -Patch12: %{name}-dont-suggests-required-packages.patch -Patch13: %{name}-tty-for-erasures.patch -Patch14: %{name}-both_langs.patch -Patch15: %{name}-317130.patch -Patch16: %{name}-321546.patch -Patch17: %{name}-size-type.patch -Patch18: %{name}-no-inlines.patch -Patch19: %{name}-export-missing-symbol.patch -Patch20: %{name}-skip-suggests-on-upgrade.patch -Patch21: %{name}-po.patch -Patch22: %{name}-refcnt.patch -Patch23: %{name}-assertion-failed.patch -Patch24: %{name}-unescape-urlencoded-strings.patch -Patch25: %{name}-ls-source-rpm.patch -Patch26: %{name}-add-arch-match.patch -Patch27: %{name}-multilib-upgrade.patch -Patch28: %{name}-score-reqs-marked-to-install.patch -Patch29: %{name}-dont-be-greedy.patch -Patch30: %{name}-dont-lose-deps.patch -Patch31: %{name}-ls-queryfmt.patch +Patch2: %{name}-size-type.patch +Patch3: %{name}-Os-fail-workaround.patch +Patch4: %{name}-git.patch +Patch5: %{name}-inherited-group.patch URL: http://poldek.pld-linux.org/ BuildRequires: autoconf BuildRequires: automake BuildRequires: bzip2-devel -BuildRequires: db-devel >= %{ver_db}-%{ver_db_rel} +BuildRequires: check-devel +BuildRequires: %{db_pkg}-devel >= %{ver_db}-%{ver_db_rel} +BuildRequires: docbook-dtd412-xml BuildRequires: gettext-devel BuildRequires: libtool BuildRequires: libxml2-devel +BuildRequires: neon-devel BuildRequires: openssl-devel >= 0.9.7d BuildRequires: pcre-devel BuildRequires: pkgconfig @@ -84,10 +64,12 @@ BuildRequires: popt-devel BuildRequires: readline-devel >= 5.0 BuildRequires: rpm-devel >= %{ver_rpm} %{?with_python:BuildRequires: rpm-pythonprov} +BuildRequires: swig-python +BuildRequires: xmlto BuildRequires: zlib-devel %if %{with static} BuildRequires: bzip2-static -BuildRequires: db-static >= %{ver_db}-%{ver_db_rel} +BuildRequires: %{db_pkg}-static >= %{ver_db}-%{ver_db_rel} BuildRequires: glibc-static BuildRequires: libselinux-static BuildRequires: libxml2-static @@ -102,10 +84,11 @@ BuildRequires: zlib-static Requires(triggerpostun): awk Requires(triggerpostun): sed >= 4.0 Requires: %{name}-libs = %{version}-%{release} -Requires: db >= %{ver_db}-%{ver_db_rel} +Requires: %{db_pkg} >= %{ver_db}-%{ver_db_rel} Requires: rpm >= %{ver_rpm} Requires: rpm-db-ver = %{ver_db} -Requires: rpm-lib = %(rpm -q --qf '%{V}' rpm-lib) +#Requires: rpm-lib = %(rpm -q --qf '%{V}' rpm-lib) +Requires: rpm-lib >= 5.4.10 # vf* scripts use sed Requires: sed BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) @@ -125,6 +108,20 @@ shell mode of Perl's CPAN. %{!?with_imode:This version hasn't got interactive mode.} #'vim +%description -l hu.UTF-8 +poldek egy RPM csomagkezelő eszköz, amely megkönnyíti a +csomagellenőrzést, telepítést (beleértve a rendszertelepítést a +nulláról), frissítést és eltávolítást. + +A program használható parancssorból (mint a Debian apt-get programja) +vagy interaktív módban. Az interaktív mód egy readline környezetet +jelent, parancskiegészítéssel és előzményekkel, hasonlóan a Perl CPAN +shell módjához. + +%{?with_static:Ez a verzió statikusan linkelt.} + +%{!?with_imode:Ennek a verziónak nincs interaktív módja.} + %description -l pl.UTF-8 poldek jest narzędziem linii poleceń służącym do weryfikacji, instalacji (włączając instalację systemu od zera), aktualizacji i @@ -141,17 +138,22 @@ modułu CPAN. %package libs Summary: poldek libraries +Summary(hu.UTF-8): A poldek könyvtárai Summary(pl.UTF-8): Biblioteki poldka Group: Libraries %description libs poldek libraries. +%description libs -l hu.UTF-8 +A poldek könyvtárai. + %description libs -l pl.UTF-8 Biblioteki poldka. %package devel Summary: Header files for poldek libraries +Summary(hu.UTF-8): A poldek könyvtár fejlesztői fájljai Summary(pl.UTF-8): Pliki nagłówkowe bibliotek poldka Group: Development/Libraries Requires: %{name}-libs = %{version}-%{release} @@ -160,11 +162,15 @@ Requires: rpm-devel >= %{ver_rpm} %description devel Header files for poldek libraries. +%description devel -l hu.UTF-8 +A poldek könyvtár fejlesztői fájljai. + %description devel -l pl.UTF-8 Pliki nagłówkowe bibliotek poldka. %package static Summary: poldek static libraries +Summary(hu.UTF-8): poldek statikus könyvtárak Summary(pl.UTF-8): Biblioteki statyczne poldka Group: Development/Libraries Requires: %{name}-devel = %{version}-%{release} @@ -172,11 +178,15 @@ Requires: %{name}-devel = %{version}-%{release} %description static poldek static libraries. +%description static -l hu.UTF-8 +poldek statikus könyvtárak. + %description static -l pl.UTF-8 Biblioteki statyczne poldka. %package -n python-poldek Summary: Python modules for poldek +Summary(hu.UTF-8): Python modulok poldek-hez Summary(pl.UTF-8): Moduły języka Python dla poldka Group: Libraries/Python Requires: %{name}-libs = %{version}-%{release} @@ -185,171 +195,160 @@ Requires: %{name}-libs = %{version}-%{release} %description -n python-poldek Python modules for poldek. +%description -n python-poldek -l hu.UTF-8 +Python modulok poldek-hez. + %description -n python-poldek -l pl.UTF-8 Moduły języka Python dla poldka. %prep -%setup -q -n %{name}-%{version}%{?snap:-cvs%{snap}} +%setup -q %patch0 -p1 %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 -%patch6 -p0 -%patch7 -p0 -%patch8 -p0 -%patch9 -p0 -%patch10 -p1 -%patch11 -p1 -%patch12 -p1 -%patch13 -p1 -%patch14 -p1 -%patch15 -p1 -%patch16 -p1 -%patch17 -p1 -%patch18 -p1 -%patch19 -p0 -%patch20 -p1 -%patch21 -p1 -%patch22 -p0 -%patch23 -p1 -%patch24 -p1 -# LP#392984 -%patch25 -p1 -# LP#408036 -%patch26 -p1 -# LP#408034 -%patch27 -p1 -# score reqs already marked to install -%patch28 -p1 -# dont be greedy if upgraded pkg has needed capabilities -%patch29 -p1 -# http://lists.pld-linux.org/mailman/pipermail/pld-devel-pl/2009-November/150519.html -%patch30 -p1 -%patch31 -p1 + +%{__rm} m4/libtool.m4 m4/lt*.m4 # cleanup backups after patching find . '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f +chmod u+x ./configure ./doc/conf-xml2.sh %build %{__libtoolize} %{__aclocal} -I m4 +%{__autoheader} +%{__autoconf} +%{__automake} +cd tndb +%{__libtoolize} +%{__aclocal} +%{__autoheader} +%{__autoconf} +%{__automake} +cd ../trurlib +%{__libtoolize} +%{__aclocal} +%{__autoheader} %{__autoconf} %{__automake} -cp -f config.sub trurlib +cd .. -CPPFLAGS="-std=gnu99" +CPPFLAGS="%{rpmcppflags} -std=gnu99" %configure \ %{?with_static:--enable-static --disable-shared} \ %{!?with_imode:--disable-imode} \ --enable-nls \ %{?with_python:--with-python} -%{__make} +%{__make} -j1 # --enable-trace %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d +install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name}/repos.d,/var/cache/%{name}} -%{__make} install \ +%{__make} install -j1 \ DESTDIR=$RPM_BUILD_ROOT %if %{with python} -%{__make} -C python install \ +%{__make} -C python -j1 install \ DESTDIR=$RPM_BUILD_ROOT \ libdir=%{py_sitedir} %endif -%{?with_static:rm -f $RPM_BUILD_ROOT%{_bindir}/rpmvercmp} +%{?with_static:%{__rm} $RPM_BUILD_ROOT%{_bindir}/rpmvercmp} %ifarch i486 i686 ppc sparc alpha athlon -%define _ftp_arch %{_target_cpu} + %define _ftp_arch %{_target_cpu} %endif %ifarch %{x8664} -%define _ftp_arch x86_64 -%define _ftp_alt_arch i686 + %define _ftp_arch x86_64 + %define _ftp_alt_arch i686 %endif %ifarch i586 -%if "%{pld_release}" == "ti" -%define _ftp_arch i586 -%else -%define _ftp_arch i486 -%endif + %define _ftp_arch i486 %endif %ifarch pentium2 pentium3 pentium4 -%define _ftp_arch i686 + %define _ftp_arch i686 %endif %ifarch sparcv9 sparc64 -%define _ftp_arch sparc -%if "%{pld_release}" == "th" -%define _ftp_arch %{_target_cpu} -%ifarch sparc64 -%define _ftp_alt_arch sparcv9 + %define _ftp_arch sparc + %define _ftp_arch %{_target_cpu} + %ifarch sparc64 + %define _ftp_alt_arch sparcv9 + %endif %endif -%endif -%endif - -%{?with_static:rm -f $RPM_BUILD_ROOT%{_bindir}/rpmvercmp} -%if "%{pld_release}" == "ti" -sed -e ' - s|%%ARCH%%|%{_ftp_arch}|g -' < %{SOURCE3} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld.conf +%define pld_conf %{SOURCE1} +%define pld_debuginfo_conf %{SOURCE8} +%define pld_archive_conf %{SOURCE11} %ifarch %{x8664} -sed ' - s|%%ARCH%%|%{_ftp_alt_arch}|g -' < %{SOURCE4} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld-multilib.conf + %define pld_multilib_conf %{SOURCE2} %endif -%else -# pld_release = th -%ifarch sparcv9 sparc64 -sed -e ' - s|%%ARCH%%|%{_ftp_arch}|g -' < %{SOURCE9} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld.conf +# aidath +%ifarch sparcv9 sparc64 + %define pld_conf %{SOURCE9} + %undefine pld_archive_conf +%endif %ifarch sparc64 -sed ' - s|%%ARCH%%|%{_ftp_alt_arch}|g -' < %{SOURCE10} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld-multilib.conf + %define pld_multilib_conf %{SOURCE10} %endif -%else -sed -e ' - s|%%ARCH%%|%{_ftp_arch}|g -' < %{SOURCE1} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld.conf -sed -e ' - s|%%ARCH%%|%{_ftp_arch}|g -' < %{SOURCE8} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld-debuginfo.conf +%{__sed} -e 's|%%ARCH%%|%{_ftp_arch}|g' < %{pld_conf} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld.conf -%ifarch %{x8664} -sed ' - s|%%ARCH%%|%{_ftp_alt_arch}|g -' < %{SOURCE2} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld-multilib.conf +%if 0%{?pld_multilib_conf:1} + %{__sed} 's|%%ARCH%%|%{_ftp_alt_arch}|g' < %{pld_multilib_conf} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld-multilib.conf %endif + +%if 0%{?pld_debuginfo_conf:1} +%{__sed} -e 's|%%ARCH%%|%{_ftp_arch}|g' < %{pld_debuginfo_conf} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld-debuginfo.conf %endif + +%if 0%{?pld_archive_conf:1} +%{__sed} -e 's|%%ARCH%%|%{_ftp_arch}|g' < %{pld_archive_conf} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld-archive.conf %endif -install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/cli.conf +# Always install snapshot configs +%{__sed} -e 's|%%ARCH%%|%{_ftp_arch}|g' \ + -e 's|%%SNAP%%|%{SNAP}|g' < %{SOURCE100} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld-%{SNAP}.conf +%{__sed} -e 's|%%ARCH%%|%{_ftp_arch}|g' \ + -e 's|%%SNAP%%|%{SNAP}|g' < %{SOURCE102} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld-%{SNAP}-debuginfo.conf +%ifarch %{x8664} + %{__sed} -e 's|%%ARCH%%|%{_ftp_alt_arch}|g' \ + -e 's|%%SNAP%%|%{SNAP}|g' < %{SOURCE101} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld-%{SNAP}-multilib.conf +%endif + +%if %{with snap} +%{__sed} -i -e 's|@@SNAP@@||g' $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld.conf +%{__sed} -i '/@@SNAP@@.*/d' $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld-%{SNAP}.conf +%else +%{__sed} -i -e 's|@@SNAP@@||g' $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld-%{SNAP}.conf +%{__sed} -i '/@@SNAP@@.*/d' $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/repos.d/pld.conf +%endif + +cp -p %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/cli.conf %if %{with imode} # add desktop file and icon install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}} -install %{SOURCE6} $RPM_BUILD_ROOT%{_desktopdir}/%{name}.desktop -install %{SOURCE7} $RPM_BUILD_ROOT%{_pixmapsdir}/%{name}.png +cp -p %{SOURCE6} $RPM_BUILD_ROOT%{_desktopdir}/%{name}.desktop +cp -p %{SOURCE7} $RPM_BUILD_ROOT%{_pixmapsdir}/%{name}.png %endif # sources we don't package -rm -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/{rh,pld,fedora,centos}-source.conf +%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/{rh,fedora,centos}-source.conf # include them in %doc -rm -rf configs +%{__rm} -rf configs cp -a conf configs -rm -f configs/Makefile* +%{__rm} -f configs/Makefile* %if %{with python} %py_postclean -rm -f $RPM_BUILD_ROOT%{py_sitedir}/_poldekmod.la +%{__rm} $RPM_BUILD_ROOT%{py_sitedir}/_poldekmod.la %endif %find_lang %{name} @@ -422,7 +421,7 @@ if [ -f /etc/poldek.conf.rpmsave ]; then # copy hold= hold=$(grep ^hold /etc/poldek.conf.rpmsave) if [ "$hold" ]; then - sed -i -e "/^#hold =/s/^.*/$hold/" /etc/poldek/poldek.conf + %{__sed} -i -e "/^#hold =/s/^.*/$hold/" /etc/poldek/poldek.conf fi fi @@ -452,21 +451,24 @@ fi %files -f %{name}.lang %defattr(644,root,root,755) -%doc README* NEWS TODO configs +%doc ChangeLog README* NEWS TODO configs %dir %{_sysconfdir}/%{name} %dir %{_sysconfdir}/%{name}/repos.d %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/*.conf %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/repos.d/*.conf -%attr(755,root,root) %{_bindir}/* +%attr(755,root,root) %{_bindir}/ipoldek +%attr(755,root,root) %{_bindir}/poldek +%attr(755,root,root) %{_bindir}/rpmvercmp %dir %{_libdir}/%{name} %attr(755,root,root) %{_libdir}/%{name}/* -%{_mandir}/man1/%{name}* +%{_mandir}/man1/%{name}*.1* %lang(pl) %{_mandir}/pl/man1/%{name}* %{_infodir}/poldek.info* %if %{with imode} %{_desktopdir}/%{name}.desktop %{_pixmapsdir}/%{name}.png %endif +%dir /var/cache/%{name} %if %{without static} %files libs @@ -485,13 +487,29 @@ fi %files devel %defattr(644,root,root,755) -%{!?with_static:%attr(755,root,root) %{_libdir}/lib*.so} -%{_libdir}/lib*.la -%{_includedir}/* +%if %{without static} +%attr(755,root,root) %{_libdir}/libpoclidek.so +%attr(755,root,root) %{_libdir}/libpoldek.so +%attr(755,root,root) %{_libdir}/libtndb.so +%attr(755,root,root) %{_libdir}/libtrurl.so +%attr(755,root,root) %{_libdir}/libvfile.so +%endif +%{_libdir}/libpoclidek.la +%{_libdir}/libpoldek.la +%{_libdir}/libtndb.la +%{_libdir}/libtrurl.la +%{_libdir}/libvfile.la +%{_includedir}/poldek +%{_includedir}/tndb +%{_includedir}/trurl +%{_includedir}/vfile +%{_pkgconfigdir}/tndb.pc +%{_pkgconfigdir}/trurlib.pc %files static %defattr(644,root,root,755) -%{_libdir}/lib*.a +%{_libdir}/libtndb.a +%{_libdir}/libtrurl.a %if %{with python} %files -n python-poldek