]> git.pld-linux.org Git - packages/poldek.git/blobdiff - poldek.spec
- revert crap commit
[packages/poldek.git] / poldek.spec
index 015eeabe59ea05aac17aaf029bf8ef38e6b2c9f6..851fd80853afe1a11c21201804fd941551439b86 100644 (file)
@@ -2,32 +2,39 @@
 # Conditional build:
 %bcond_with    static  # don't use shared libraries
 %bcond_without imode   # don't build interactive mode
+%bcond_without python  # don't build python bindings
 #
 # required versions (forced to avoid SEGV with mixed db used by rpm and poldek)
 %define        ver_db  4.3.27-1
-%define        ver_rpm 4.4.3
+%define        ver_rpm 4.4.9-1
+#
+%define                snap    20070703.00
+%define                rel     13
 Summary:       RPM packages management helper tool
-Summary(pl):   Pomocnicze narzêdzie do zarz±dzania pakietami RPM
+Summary(pl.UTF-8):     Pomocnicze narzędzie do zarządzania pakietami RPM
 Name:          poldek
-Version:       0.20
-Release:       4
+Version:       0.21
+Release:       0.%{snap}.%{rel}
 License:       GPL v2
 Group:         Applications/System
-Source0:       http://poldek.pld-linux.org/download/%{name}-%{version}.tar.bz2
-# Source0-md5: 61c0c03ee4a9de36339fc943b6901266
+Source0:       http://poldek.pld-linux.org/download/snapshots/%{name}-%{version}-cvs%{snap}.tar.bz2
+# Source0-md5: dae23dec560fad954abf157fd250e4c3
 Source1:       %{name}.conf
 Source2:       %{name}-multilib.conf
 Source3:       %{name}-aliases.conf
-# drop?
-#PatchX:               %{name}-etc_dir.patch
-# drop?
-#PatchX:               %{name}-retr_term.patch
-# is still needed?
-#Patch2:               %{name}-simplestatic.patch
-Patch0:                %{name}-cvs-fixes.patch
-Patch1:                %{name}-ask-abort.patch
-Patch2:                %{name}-obsoletes.patch
-Patch3:                %{name}-rpm_4_4_3.patch
+%if %{with imode}
+Source4:       %{name}.desktop
+Source5:       %{name}.png
+%endif
+Patch1:                %{name}-vserver-packages.patch
+Patch2:                %{name}-config.patch
+Patch3:                %{name}-multilib.patch
+Patch4:                %{name}-ndie_fix.patch
+Patch5:                %{name}-uri-escape-fix.patch
+Patch6:                %{name}-install-dist.patch
+Patch7:                %{name}-nohold-fix.patch
+Patch8:                %{name}-dir-dot.patch
+Patch9:                %{name}-suggests-one-package.patch
 URL:           http://poldek.pld-linux.org/
 BuildRequires: autoconf
 BuildRequires: automake
@@ -40,9 +47,13 @@ BuildRequires:       libxml2-devel
 BuildRequires: openssl-devel >= 0.9.7d
 BuildRequires: pcre-devel
 BuildRequires: perl-tools-pod
+BuildRequires: pkgconfig
 BuildRequires: popt-devel
+%{?with_python:BuildRequires:  python-devel}
 BuildRequires: readline-devel >= 5.0
 BuildRequires: rpm-devel >= %{ver_rpm}
+%{?with_python:BuildRequires:  rpm-pythonprov}
+BuildRequires: xmlto
 BuildRequires: zlib-devel
 %if %{with static}
 BuildRequires: bzip2-static
@@ -60,9 +71,11 @@ BuildRequires:       zlib-static
 %endif
 Requires(triggerpostun):       awk
 Requires(triggerpostun):       sed >= 4.0
-Requires:       %{name}-libs = %{version}-%{release}
+Requires:      %{name}-libs = %{version}-%{release}
 Requires:      db >= %{ver_db}
 Requires:      rpm >= %{ver_rpm}
+Requires:      rpm-lib = %(rpm -q --qf '%{V}' rpm-lib)
+# vf* scripts use sed
 Requires:      sed
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -79,16 +92,17 @@ shell mode of Perl's CPAN.
 %{?with_static:This version is statically linked.}
 
 %{!?with_imode:This version hasn't got interactive mode.}
+#'vim
 
-%description -l pl
-poldek jest narzêdziem linii poleceñ s³u¿±cym do weryfikacji,
-instalacji (w³±czaj±c instalacjê systemu od zera), aktualizacji i
-usuwania pakietów.
+%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
+usuwania pakietów.
 
-Program mo¿e byæ u¿ywany w trybie wsadowym (jak debianowy apt-get) lub
+Program może być używany w trybie wsadowym (jak debianowy apt-get) lub
 interaktywnym. Tryb interaktywny posiada interfejs readline z
-dope³nianiem komend i histori±, podobny do trybu shell perlowego
-modu³u CPAN.
+dopełnianiem komend i historią, podobny do trybu shell perlowego
+modułu CPAN.
 
 %{?with_static:Ta wersja jest konsolidowana statycznie.}
 
@@ -96,45 +110,68 @@ modu
 
 %package libs
 Summary:       poldek libraries
-Summary(pl):   Biblioteki poldka
+Summary(pl.UTF-8):     Biblioteki poldka
 Group:         Libraries
 
 %description libs
 poldek libraries.
 
-%description libs -l pl
+%description libs -l pl.UTF-8
 Biblioteki poldka.
 
 %package devel
 Summary:       Header files for poldek libraries
-Summary(pl):   Pliki nag³ówkowe bibliotek poldka
+Summary(pl.UTF-8):     Pliki nagłówkowe bibliotek poldka
 Group:         Development/Libraries
-Requires:       %{name}-libs = %{version}-%{release}
+Requires:      %{name}-libs = %{version}-%{release}
 
 %description devel
 Header files for poldek libraries.
 
-%description devel -l pl
-Pliki nag³ówkowe bibliotek poldka.
+%description devel -l pl.UTF-8
+Pliki nagłówkowe bibliotek poldka.
 
 %package static
 Summary:       poldek static libraries
-Summary(pl):   Biblioteki statyczne poldka
+Summary(pl.UTF-8):     Biblioteki statyczne poldka
 Group:         Development/Libraries
-Requires:       %{name}-devel = %{version}-%{release}
+Requires:      %{name}-devel = %{version}-%{release}
 
 %description static
 poldek static libraries.
 
-%description static -l pl
+%description static -l pl.UTF-8
 Biblioteki statyczne poldka.
 
+%package -n python-poldek
+Summary:       Python modules for poldek
+Summary(pl.UTF-8):     Moduły języka Python dla poldka
+Group:         Libraries/Python
+Requires:      %{name}-libs = %{version}-%{release}
+%pyrequires_eq python-libs
+
+%description -n python-poldek
+Python modules for poldek.
+
+%description -n python-poldek -l pl.UTF-8
+Moduły języka Python dla poldka.
+
 %prep
-%setup -q
-%patch0 -p2
-%patch1 -p0
-%patch2 -p0
-%patch3 -p0
+%setup -q -n %{name}-%{version}%{?snap:-cvs%{snap}}
+%patch1 -p1
+%patch2 -p1
+%ifarch %{x8664}
+%patch3 -p1
+%endif
+%patch4 -p0
+%patch5 -p0
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
+
+# cleanup backups after patching
+find . '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
 
 %build
 %{__autopoint}
@@ -146,7 +183,8 @@ cp -f config.sub trurlib
 %configure \
        %{?with_static:--enable-static --disable-shared} \
        %{!?with_imode:--disable-imode} \
-       --enable-nls
+       --enable-nls \
+       %{?with_python:--with-python}
 %{__make}
 
 %install
@@ -156,6 +194,12 @@ install -d $RPM_BUILD_ROOT%{_sysconfdir}
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
+%if %{with python}
+%{__make} -C python install \
+       DESTDIR=$RPM_BUILD_ROOT \
+       libdir=%{py_sitedir}
+%endif
+
 %{?with_static:rm -f $RPM_BUILD_ROOT%{_bindir}/rpmvercmp}
 
 %ifarch i486 i686 ppc sparc alpha athlon
@@ -181,20 +225,25 @@ install -d $RPM_BUILD_ROOT%{_sysconfdir}
 
 %{?with_static:rm -f $RPM_BUILD_ROOT%{_bindir}/rpmvercmp}
 
-sed -e "s|%%ARCH%%|%{_ftp_arch}|g" \
-%ifarch %{x8664}
-       -e "s|%%ALT_ARCH%%|%{_ftp_alt_arch}|g" \
-%else
-       -e '/%%ALT_ARCH%%/d' \
-%endif
-       < %{SOURCE1} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/pld-source.conf
+sed -e '
+       s|%%ARCH%%|%{_ftp_arch}|g
+' < %{SOURCE1} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/pld-source.conf
 
 %ifarch %{x8664}
-sed "s|%%ARCH%%|%{_ftp_alt_arch}|g" < %{SOURCE2} >> $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/pld-source.conf
+sed '
+       s|%%ARCH%%|%{_ftp_alt_arch}|g
+' < %{SOURCE2} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/pld-multilib-source.conf
 %endif
 
 install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/aliases.conf
 
+%if %{with imode}
+# add desktop file and icon
+install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}}
+install %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir}/%{name}.desktop
+install %{SOURCE5} $RPM_BUILD_ROOT%{_pixmapsdir}/%{name}.png
+%endif
+
 # get rid of non-pld sources
 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/{rh,fedora}-source.conf
 # include them in %doc
@@ -202,33 +251,25 @@ rm -rf configs
 cp -a conf configs
 rm -f configs/Makefile*
 
+%if %{with python}
+%py_postclean
+rm -f $RPM_BUILD_ROOT%{py_sitedir}/_poldekmod.la
+%endif
+
 %find_lang %{name}
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%post
-[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
+%post  -p      /sbin/postshell
+-/usr/sbin/fix-info-dir -c %{_infodir}
 
-%postun
-[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
+%postun        -p      /sbin/postshell
+-/usr/sbin/fix-info-dir -c %{_infodir}
 
 %post  libs -p /sbin/ldconfig
 %postun        libs -p /sbin/ldconfig
 
-%triggerpostun -- poldek <= 0.18.3-5
-if [ -f /etc/poldek.conf ]; then
-       sed -i -e '/^promoteepoch:.*yes/s/^/#/' /etc/poldek.conf
-fi
-
-# otherwise don't touch
-%ifarch i386 i586 i686 ppc sparc alpha amd64 athlon
-%triggerpostun -- poldek <= 0.18.7-1
-if [ -f /etc/poldek.conf ]; then
-       sed -i -e 's://ftp.pld-linux.org://ftp.ac.pld-linux.org:g' /etc/poldek.conf
-fi
-%endif
-
 %triggerpostun -- poldek < 0.19.0-1.20050613.22.0
 if [ -f /etc/poldek.conf.rpmsave ]; then
        awk '/^source/ {
@@ -237,11 +278,18 @@ if [ -f /etc/poldek.conf.rpmsave ]; then
        auto = "yes";
        autoup = "yes";
        type = "pdir";
+       pri = "";
 
        if (sub(",noauto", "", name)) {
                auto = "no";
        }
 
+       # process pri=\d+
+       if (match(name, /,pri=[0-9]+/)) {
+               pri = substr(name, RSTART + 5, RLENGTH - 5);
+               name = substr(name, 1, RSTART - 1) substr(name, RSTART + RLENGTH);
+       }
+
        # skip ac sources. already in new config.
        if (name !~ /^ac(-(ready|test|supported|updates-(general|security)))?$/) {
                print "";
@@ -251,6 +299,9 @@ if [ -f /etc/poldek.conf.rpmsave ]; then
                print "path = " path;
                print "auto = " auto;
                print "autoup = " autoup;
+               if (pri) {
+                       print "pri = " pri;
+               }
        }
 
        }' < /etc/poldek.conf.rpmsave >> /etc/poldek/source.conf
@@ -274,8 +325,12 @@ fi
 %{_mandir}/man1/%{name}*
 %lang(pl) %{_mandir}/pl/man1/%{name}*
 %{_infodir}/poldek.info*
+%if %{with imode}
+%{_desktopdir}/%{name}.desktop
+%{_pixmapsdir}/%{name}.png
+%endif
 
-%if %{without static}
+%if !%{with static}
 %files libs
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/lib*.so.*.*.*
@@ -290,3 +345,11 @@ fi
 %files static
 %defattr(644,root,root,755)
 %{_libdir}/lib*.a
+
+%if %{with python}
+%files -n python-poldek
+%defattr(644,root,root,755)
+%attr(755,root,root) %{py_sitedir}/_poldekmod.so
+%{py_sitescriptdir}/poldek.py[co]
+%{py_sitescriptdir}/poldekmod.py[co]
+%endif
This page took 0.127057 seconds and 4 git commands to generate.