# required versions (forced to avoid SEGV with mixed db used by rpm and poldek)
%define ver_db 4.2.50-1
%define ver_rpm 4.4.1
-%define snap 20050613.22
+%define snap 20051010.17
Summary: RPM packages management helper tool
Summary(pl): Pomocnicze narzêdzie do zarz±dzania pakietami RPM
Name: poldek
Version: 0.19.0
-Release: 1
+Release: 1.%{snap}.1
License: GPL v2
Group: Applications/System
-Source0: http://team.pld.org.pl/~mis/poldek/download/snapshots/%{name}-%{version}-cvs%{snap}.tar.bz2
-# Source0-md5: d529239d781c3d9e36577305d46d1a37
+# Source0: http://team.pld.org.pl/~mis/poldek/download/snapshots/%{name}-%{version}-cvs%{snap}.tar.bz2
+Source0: %{name}-%{version}-cvs%{snap}.tar.bz2
+# Source0-md5: 8e8a62781bbda45822e1f1707792615b
Source1: %{name}.conf
+Source2: %{name}-multilib.conf
+Source3: %{name}-aliases.conf
URL: http://team.pld.org.pl/~mis/poldek/
BuildRequires: automake
BuildRequires: autoconf
BuildRequires: bzip2-devel
BuildRequires: db-devel >= %{ver_db}
+BuildRequires: check
BuildRequires: gettext-autopoint
BuildRequires: home-etc-devel
BuildRequires: libtool
+BuildRequires: libxml2-devel
BuildRequires: openssl-devel >= 0.9.7d
BuildRequires: pcre-devel
BuildRequires: perl-tools-pod
BuildRequires: popt-devel
-BuildRequires: readline-devel
+BuildRequires: readline-devel >= 5.0
BuildRequires: rpm-devel >= %{ver_rpm}
BuildRequires: zlib-devel
%if %{with static}
BuildRequires: zlib-static
%endif
Requires(triggerpostun): sed >= 4.0
+Requires(triggerpostun): awk
+Requires: %{name}-libs = %{version}-%{release}
Requires: db >= %{ver_db}
Requires: openssl >= 0.9.7d
Requires: rpm >= %{ver_rpm}
%{!?with_imode:This version hasn't got interactive mode.}
-%{!?with_imode:This version hasn't got interactive mode.}
+#'
%description -l pl
poldek jest narzêdziem linii poleceñ s³u¿±cym do weryfikacji,
%{!?with_imode:Ta wersja nie posiada trybu interaktywnego.}
%package libs
-Summary: poldek library
+Summary: poldek libraries
Summary(pl): Biblioteki poldka
Group: Libraries
perl -pi -e 's|HAVE_FOPENCOOKIE|HAVE_FOPENCOOKIE_XXX|g' trurlib/nstream.c
%configure \
- %{?with_static:--enable-static} \
+ %{?with_static:--enable-static --disable-shared} \
%{!?with_imode:--disable-imode} \
--enable-nls
%{__make}
#
# CHANGE IT WHEN SWITCHING poldek.conf FROM AC TO TH !!!
#
-%ifarch i386 i586 i686 ppc sparc alpha amd64 athlon
+%ifarch i386 i586 i686 ppc sparc alpha athlon
+%define _ftp_arch %{_target_cpu}
+%else
+%ifarch amd64
%define _ftp_arch %{_target_cpu}
+%define _ftp_alt_arch i686
%else
%ifarch i486
%define _ftp_arch i386
%endif
%endif
%endif
+%endif
%{?with_static:rm -f $RPM_BUILD_ROOT%{_bindir}/rpmvercmp}
-sed "s|%%ARCH%%|%{_ftp_arch}|g" < %{SOURCE1} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/pld-source.conf
-%find_lang %{name}
+sed -e "s|%%ARCH%%|%{_ftp_arch}|g" \
+%ifarch amd64
+ -e "s|%%ALT_ARCH%%|%{_ftp_alt_arch}|g" \
+%else
+ -e '/%%ALT_ARCH%%/d' \
+%endif
+ < %{SOURCE1} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/pld-source.conf
+
+%ifarch amd64
+sed "s|%%ARCH%%|%{_ftp_alt_arch}|g" < %{SOURCE2} >> $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/pld-source.conf
+%endif
+
+install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/aliases.conf
-%post libs -p /sbin/ldconfig
-%postun libs -p /sbin/ldconfig
+# get rid of non-pld sources
+rm -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/{rh,fedora}-source.conf
+# include them in %doc
+rm -rf configs
+cp -a conf configs
+rm -f configs/Makefile*
+
+%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
+
+%postun
+[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
+
+%post libs -p /sbin/ldconfig
+%postun libs -p /sbin/ldconfig
+
%triggerpostun -- poldek <= 0.18.3-5
-sed -i -e '/^promoteepoch:.*yes/s/^/#/' %{_sysconfdir}/poldek.conf
+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
-sed -i -e 's://ftp.pld-linux.org://ftp.ac.pld-linux.org:g' /etc/poldek.conf
+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/ {
+ name = $3;
+ path = $4;
+ auto = "yes";
+ autoup = "yes";
+ type = "pdir";
+
+ if (sub(",noauto", "", name)) {
+ auto = "no";
+ }
+
+ # skip ac sources. already in new config.
+ if (name !~ /^ac(-(ready|test|supported|updates-(general|security)))?$/) {
+ print "";
+ print "[source]";
+ print "name = " name;
+ print "type = " type;
+ print "path = " path;
+ print "auto = " auto;
+ print "autoup = " autoup;
+ }
+
+ }' < /etc/poldek.conf.rpmsave >> /etc/poldek/source.conf
+ echo "Converted old custom sources (non-ac dist ones) from /etc/poldek.conf.rpmsave to new poldek format in /etc/poldek/source.conf"
+
+ # propagate use_sudo to new config. only works for untouched poldek.conf and that's intentional.
+ if grep -q '^use_sudo.*=.*yes' /etc/poldek.conf.rpmsave; then
+ sed -i -e '/^#use sudo = no/s/^.*/use sudo = yes/' /etc/poldek/poldek.conf
+ fi
+
+ # copy hold=
+ hold=$(grep ^hold /etc/poldek.conf.rpmsave)
+ if [ "$hold" ]; then
+ sed -i -e "/^#hold =/s/^.*/$hold/" /etc/poldek/poldek.conf
+ fi
+fi
+
%files -f %{name}.lang
%defattr(644,root,root,755)
-%doc README* NEWS TODO conf/*.conf
+%doc README* NEWS TODO configs/
%dir %{_sysconfdir}/%{name}
%attr(644,root,root) %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/%{name}/*.conf
%attr(755,root,root) %{_bindir}/*
%files libs
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib*.so.*
+%attr(755,root,root) %{_libdir}/lib*.so.*.*.*
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/lib*.so
-%{_includedir}/*
%{_libdir}/lib*.la
+%{_includedir}/*
%files static
%defattr(644,root,root,755)