Hello community,
here is the log from the commit of package libzypp for openSUSE:Factory
checked in at Tue May 25 13:27:59 CEST 2010.
--------
--- libzypp/libzypp.changes 2010-05-12 19:36:06.000000000 +0200
+++ /mounts/work_src_done/STABLE/libzypp/libzypp.changes 2010-05-21 20:33:26.000000000 +0200
@@ -1,0 +2,38 @@
+Fri May 21 20:00:55 CEST 2010 - ma@suse.de
+
+- Fix broken IdStringType comparison (bnc#607572)
+- version 7.7.2 (6)
+
+-------------------------------------------------------------------
+Thu May 20 21:01:05 CEST 2010 - ma@suse.de
+
+- Fix packages provided via delta rpm being placed in
+ the wrong package cache (bnc#607583)
+- version 7.7.1 (6)
+
+-------------------------------------------------------------------
+Thu May 20 01:13:49 CEST 2010 - ma@suse.de
+
+- Update zypp-po.tar.bz2
+
+-------------------------------------------------------------------
+Tue May 18 18:02:44 CEST 2010 - ma@suse.de
+
+- Fix arch detection on sprac (bug #566291)
+- Arch: add sparc64v and sparcv9v and armv7l
+- RepoManager: refresh repo if last refresh is in the future (bnc#593617)
+- version 7.6.1 (6)
+
+-------------------------------------------------------------------
+Mon May 17 15:25:14 CEST 2010 - ma@suse.de
+
+- Fix package-manager-su to support LXDE (Andrea Florio) (bnc#582235)
+- Cleanup spec file (Pavol Rusnak)
+- version 7.6.0 (6)
+
+-------------------------------------------------------------------
+Sun May 16 01:13:39 CEST 2010 - ma@suse.de
+
+- Update zypp-po.tar.bz2
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
libzypp-7.6.0.tar.bz2
New:
----
libzypp-7.7.2.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libzypp.spec ++++++
--- /var/tmp/diff_new_pack.rOY1ES/_old 2010-05-25 13:25:57.000000000 +0200
+++ /var/tmp/diff_new_pack.rOY1ES/_new 2010-05-25 13:25:57.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package libzypp (Version 7.6.0)
+# spec file for package libzypp (Version 7.7.2)
#
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -22,13 +22,11 @@
License: GPLv2+
Group: System/Packages
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-AutoReqProv: on
Summary: Package, Patch, Pattern, and Product Management
-Version: 7.6.0
+Version: 7.7.2
Release: 1
Source: %{name}-%{version}.tar.bz2
Source1: %{name}-rpmlintrc
-Prefix: /usr
Provides: yast2-packagemanager
Obsoletes: yast2-packagemanager
%if 0%{?suse_version}
@@ -37,7 +35,13 @@
BuildRequires: cmake
BuildRequires: openssl-devel
BuildRequires: libudev-devel
-BuildRequires: boost-devel dejagnu doxygen gcc-c++ gettext-devel graphviz libxml2-devel
+BuildRequires: boost-devel
+BuildRequires: dejagnu
+BuildRequires: doxygen
+BuildRequires: gcc-c++
+BuildRequires: gettext-devel
+BuildRequires: graphviz
+BuildRequires: libxml2-devel
BuildRequires: libsatsolver-devel >= 0.14.17
%if 0%{?suse_version}
@@ -56,12 +60,16 @@
%endif
%if 0%{?suse_version}
-BuildRequires: hicolor-icon-theme rpm-devel update-desktop-files
+BuildRequires: hicolor-icon-theme
+BuildRequires: update-desktop-files
+BuildRequires: rpm-devel
Requires: uuid-runtime
%endif
%if 0%{?fedora_version}
-BuildRequires: glib2-devel popt-devel rpm-devel
+BuildRequires: glib2-devel
+BuildRequires: popt-devel
+BuildRequires: rpm-devel
%endif
%if 0%{?mandriva_version}
@@ -124,9 +132,16 @@
%package devel
License: GPLv2+
-Requires: libzypp == %{version}
-Requires: libxml2-devel openssl-devel rpm-devel glibc-devel zlib-devel
-Requires: bzip2 popt-devel boost-devel libstdc++-devel
+Requires: libzypp = %{version}
+Requires: libxml2-devel
+Requires: openssl-devel
+Requires: rpm-devel
+Requires: glibc-devel
+Requires: zlib-devel
+Requires: bzip2
+Requires: popt-devel
+Requires: boost-devel
+Requires: libstdc++-devel
Requires: libudev-devel
Requires: cmake
Requires: libcurl-devel >= %{min_curl_version}
@@ -161,20 +176,20 @@
mkdir build
cd build
export CFLAGS="$RPM_OPT_FLAGS"
-export CXXFLAGS="$CFLAGS"
-cmake -DCMAKE_INSTALL_PREFIX=%{prefix} \
+export CXXFLAGS="$RPM_OPT_FLAGS"
+cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DDOC_INSTALL_DIR=%{_docdir} \
-DLIB=%{_lib} \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_SKIP_RPATH=1 \
%{?use_translation_set:-DUSE_TRANSLATION_SET=%use_translation_set} \
..
-make %{?jobs:-j %jobs} VERBOSE=1
-make -C doc/autodoc %{?jobs:-j %jobs}
-make -C po %{?jobs:-j %jobs} translations
+make %{?_smp_mflags} VERBOSE=1
+make -C doc/autodoc %{?_smp_mflags}
+make -C po %{?_smp_mflags} translations
%if 0%{?run_testsuite}
- make -C tests %{?jobs:-j %jobs}
+ make -C tests %{?_smp_mflags}
pushd tests
LD_LIBRARY_PATH=$PWD/../zypp:$LD_LIBRARY_PATH ctest .
popd
@@ -187,12 +202,12 @@
cd build
make install DESTDIR=$RPM_BUILD_ROOT
make -C doc/autodoc install DESTDIR=$RPM_BUILD_ROOT
-mkdir -p $RPM_BUILD_ROOT/etc/zypp/repos.d
-mkdir -p $RPM_BUILD_ROOT/etc/zypp/services.d
-mkdir -p $RPM_BUILD_ROOT/%{_usr}/lib/zypp
-mkdir -p $RPM_BUILD_ROOT/%{_var}/lib/zypp
-mkdir -p $RPM_BUILD_ROOT/%{_var}/log/zypp
-mkdir -p $RPM_BUILD_ROOT/%{_var}/cache/zypp
+mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/zypp/repos.d
+mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/zypp/services.d
+mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib/zypp
+mkdir -p $RPM_BUILD_ROOT%{_var}/lib/zypp
+mkdir -p $RPM_BUILD_ROOT%{_var}/log/zypp
+mkdir -p $RPM_BUILD_ROOT%{_var}/cache/zypp
%if 0%{?suse_version}
%suse_update_desktop_file -G "" -C "" package-manager
@@ -210,8 +225,8 @@
# convert old lock file to new
# TODO make this a separate file?
# TODO run the sript only when updating form pre-11.0 libzypp versions
-LOCKSFILE=/etc/zypp/locks
-OLDLOCKSFILE=/etc/zypp/locks.old
+LOCKSFILE=%{_sysconfdir}/zypp/locks
+OLDLOCKSFILE=%{_sysconfdir}/zypp/locks.old
is_old(){
# if no such file, exit with false (1 in bash)
@@ -274,35 +289,34 @@
%files -f zypp.lang
%defattr(-,root,root)
-%dir /etc/zypp
-%dir /etc/zypp/repos.d
-%dir /etc/zypp/services.d
-%config(noreplace) /etc/zypp/zypp.conf
-%config(noreplace) /etc/zypp/systemCheck
+%dir %{_sysconfdir}/zypp
+%dir %{_sysconfdir}/zypp/repos.d
+%dir %{_sysconfdir}/zypp/services.d
+%config(noreplace) %{_sysconfdir}/zypp/zypp.conf
+%config(noreplace) %{_sysconfdir}/zypp/systemCheck
%config(noreplace) %{_sysconfdir}/logrotate.d/zypp-history.lr
- %{_usr}/lib/zypp
%dir %{_var}/lib/zypp
%dir %{_var}/log/zypp
%dir %{_var}/cache/zypp
-%dir %{prefix}/lib/zypp
-%{prefix}/share/zypp
-%{prefix}/share/applications/package-manager.desktop
-%{prefix}/share/icons/hicolor/scalable/apps/package-manager-icon.svg
-%{prefix}/share/icons/hicolor/16x16/apps/package-manager-icon.png
-%{prefix}/share/icons/hicolor/22x22/apps/package-manager-icon.png
-%{prefix}/share/icons/hicolor/24x24/apps/package-manager-icon.png
-%{prefix}/share/icons/hicolor/32x32/apps/package-manager-icon.png
-%{prefix}/share/icons/hicolor/48x48/apps/package-manager-icon.png
-%{prefix}/bin/*
+%{_prefix}/lib/zypp
+%{_datadir}/zypp
+%{_datadir}/applications/package-manager.desktop
+%{_datadir}/icons/hicolor/scalable/apps/package-manager-icon.svg
+%{_datadir}/icons/hicolor/16x16/apps/package-manager-icon.png
+%{_datadir}/icons/hicolor/22x22/apps/package-manager-icon.png
+%{_datadir}/icons/hicolor/24x24/apps/package-manager-icon.png
+%{_datadir}/icons/hicolor/32x32/apps/package-manager-icon.png
+%{_datadir}/icons/hicolor/48x48/apps/package-manager-icon.png
+%{_bindir}/*
%{_libdir}/libzypp*so.*
-%doc %_mandir/man5/locks.5.*
+%doc %{_mandir}/man5/locks.5.*
%files devel
%defattr(-,root,root)
%{_libdir}/libzypp.so
%{_docdir}/%{name}
-%{prefix}/include/zypp
-%{prefix}/share/cmake/Modules/*
+%{_includedir}/zypp
+%{_datadir}/cmake/Modules/*
%{_libdir}/pkgconfig/libzypp.pc
%changelog
++++++ libzypp-7.6.0.tar.bz2 -> libzypp-7.7.2.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-7.6.0/libzypp.spec.cmake new/libzypp-7.7.2/libzypp.spec.cmake
--- old/libzypp-7.6.0/libzypp.spec.cmake 2010-05-12 19:16:42.000000000 +0200
+++ new/libzypp-7.7.2/libzypp.spec.cmake 2010-05-21 20:02:22.000000000 +0200
@@ -11,16 +11,14 @@
# norootforbuild
Name: @PACKAGE@
-License: GPL v2 or later
+License: GPLv2+
Group: System/Packages
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Autoreqprov: on
Summary: Package, Patch, Pattern, and Product Management
Version: @VERSION@
Release: 0
Source: %{name}-%{version}.tar.bz2
Source1: %{name}-rpmlintrc
-Prefix: /usr
Provides: yast2-packagemanager
Obsoletes: yast2-packagemanager
%if 0%{?suse_version}
@@ -29,13 +27,19 @@
BuildRequires: cmake
BuildRequires: openssl-devel
BuildRequires: libudev-devel
-BuildRequires: boost-devel dejagnu doxygen gcc-c++ gettext-devel graphviz libxml2-devel
+BuildRequires: boost-devel
+BuildRequires: dejagnu
+BuildRequires: doxygen
+BuildRequires: gcc-c++
+BuildRequires: gettext-devel
+BuildRequires: graphviz
+BuildRequires: libxml2-devel
BuildRequires: libsatsolver-devel >= 0.14.17
%if 0%{?suse_version}
%requires_eq satsolver-tools
%else
-Requires: satsolver-tools
+Requires: satsolver-tools
%endif
# required for testsuite, webrick
@@ -48,19 +52,23 @@
%endif
%if 0%{?suse_version}
-BuildRequires: hicolor-icon-theme update-desktop-files rpm-devel
-Requires: uuid-runtime
+BuildRequires: hicolor-icon-theme
+BuildRequires: update-desktop-files
+BuildRequires: rpm-devel
+Requires: uuid-runtime
%endif
%if 0%{?fedora_version}
-BuildRequires: glib2-devel popt-devel rpm-devel
+BuildRequires: glib2-devel
+BuildRequires: popt-devel
+BuildRequires: rpm-devel
%endif
%if 0%{?mandriva_version}
BuildRequires: glib2-devel
BuildRequires: librpm-devel
# uuidgen
-Requires: e2fsprogs
+Requires: e2fsprogs
%endif
%if 0%{?suse_version}
@@ -80,7 +88,7 @@
%define use_translation_set sle-zypp
# No requirement, but as we'd use it in case it is present,
# check for a sufficient version:
-Conflicts: aria2 < %{min_aria_version}
+Conflicts: aria2 < %{min_aria_version}
# ---------------------------------------------------------------
%else
# ---------------------------------------------------------------
@@ -88,15 +96,15 @@
# need CURLOPT_REDIR_PROTOCOLS:
%define min_curl_version 7.19.4
# want aria2:
-Requires: aria2 >= %{min_aria_version}
-BuildRequires: aria2 >= %{min_aria_version}
+Requires: aria2 >= %{min_aria_version}
+BuildRequires: aria2 >= %{min_aria_version}
%endif
# ---------------------------------------------------------------
%if 0%{?suse_version}
-Requires: libcurl4 >= %{min_curl_version}
+Requires: libcurl4 >= %{min_curl_version}
%else
-Requires: libcurl >= %{min_curl_version}
+Requires: libcurl >= %{min_curl_version}
%endif
BuildRequires: libcurl-devel >= %{min_curl_version}
@@ -115,16 +123,23 @@
Ladislav Slezak
%package devel
-Requires: libzypp == %{version}
-Requires: libxml2-devel openssl-devel rpm-devel glibc-devel zlib-devel
-Requires: bzip2 popt-devel boost-devel libstdc++-devel
+Requires: libzypp = %{version}
+Requires: libxml2-devel
+Requires: openssl-devel
+Requires: rpm-devel
+Requires: glibc-devel
+Requires: zlib-devel
+Requires: bzip2
+Requires: popt-devel
+Requires: boost-devel
+Requires: libstdc++-devel
Requires: libudev-devel
Requires: cmake
Requires: libcurl-devel >= %{min_curl_version}
%if 0%{?suse_version}
%requires_ge libsatsolver-devel
%else
-Requires: libsatsolver-devel
+Requires: libsatsolver-devel
%endif
Summary: Package, Patch, Pattern, and Product Management - developers files
Group: System/Packages
@@ -152,20 +167,20 @@
mkdir build
cd build
export CFLAGS="$RPM_OPT_FLAGS"
-export CXXFLAGS="$CFLAGS"
-cmake -DCMAKE_INSTALL_PREFIX=%{prefix} \
+export CXXFLAGS="$RPM_OPT_FLAGS"
+cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DDOC_INSTALL_DIR=%{_docdir} \
-DLIB=%{_lib} \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_SKIP_RPATH=1 \
%{?use_translation_set:-DUSE_TRANSLATION_SET=%use_translation_set} \
..
-make %{?jobs:-j %jobs} VERBOSE=1
-make -C doc/autodoc %{?jobs:-j %jobs}
-make -C po %{?jobs:-j %jobs} translations
+make %{?_smp_mflags} VERBOSE=1
+make -C doc/autodoc %{?_smp_mflags}
+make -C po %{?_smp_mflags} translations
%if 0%{?run_testsuite}
- make -C tests %{?jobs:-j %jobs}
+ make -C tests %{?_smp_mflags}
pushd tests
LD_LIBRARY_PATH=$PWD/../zypp:$LD_LIBRARY_PATH ctest .
popd
@@ -178,12 +193,12 @@
cd build
make install DESTDIR=$RPM_BUILD_ROOT
make -C doc/autodoc install DESTDIR=$RPM_BUILD_ROOT
-mkdir -p $RPM_BUILD_ROOT/etc/zypp/repos.d
-mkdir -p $RPM_BUILD_ROOT/etc/zypp/services.d
-mkdir -p $RPM_BUILD_ROOT/%{_usr}/lib/zypp
-mkdir -p $RPM_BUILD_ROOT/%{_var}/lib/zypp
-mkdir -p $RPM_BUILD_ROOT/%{_var}/log/zypp
-mkdir -p $RPM_BUILD_ROOT/%{_var}/cache/zypp
+mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/zypp/repos.d
+mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/zypp/services.d
+mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib/zypp
+mkdir -p $RPM_BUILD_ROOT%{_var}/lib/zypp
+mkdir -p $RPM_BUILD_ROOT%{_var}/log/zypp
+mkdir -p $RPM_BUILD_ROOT%{_var}/cache/zypp
%if 0%{?suse_version}
%suse_update_desktop_file -G "" -C "" package-manager
@@ -202,8 +217,8 @@
# convert old lock file to new
# TODO make this a separate file?
# TODO run the sript only when updating form pre-11.0 libzypp versions
-LOCKSFILE=/etc/zypp/locks
-OLDLOCKSFILE=/etc/zypp/locks.old
+LOCKSFILE=%{_sysconfdir}/zypp/locks
+OLDLOCKSFILE=%{_sysconfdir}/zypp/locks.old
is_old(){
# if no such file, exit with false (1 in bash)
@@ -267,35 +282,34 @@
%files -f zypp.lang
%defattr(-,root,root)
-%dir /etc/zypp
-%dir /etc/zypp/repos.d
-%dir /etc/zypp/services.d
-%config(noreplace) /etc/zypp/zypp.conf
-%config(noreplace) /etc/zypp/systemCheck
+%dir %{_sysconfdir}/zypp
+%dir %{_sysconfdir}/zypp/repos.d
+%dir %{_sysconfdir}/zypp/services.d
+%config(noreplace) %{_sysconfdir}/zypp/zypp.conf
+%config(noreplace) %{_sysconfdir}/zypp/systemCheck
%config(noreplace) %{_sysconfdir}/logrotate.d/zypp-history.lr
- %{_usr}/lib/zypp
%dir %{_var}/lib/zypp
%dir %{_var}/log/zypp
%dir %{_var}/cache/zypp
-%dir %{prefix}/lib/zypp
-%{prefix}/share/zypp
-%{prefix}/share/applications/package-manager.desktop
-%{prefix}/share/icons/hicolor/scalable/apps/package-manager-icon.svg
-%{prefix}/share/icons/hicolor/16x16/apps/package-manager-icon.png
-%{prefix}/share/icons/hicolor/22x22/apps/package-manager-icon.png
-%{prefix}/share/icons/hicolor/24x24/apps/package-manager-icon.png
-%{prefix}/share/icons/hicolor/32x32/apps/package-manager-icon.png
-%{prefix}/share/icons/hicolor/48x48/apps/package-manager-icon.png
-%{prefix}/bin/*
+%{_prefix}/lib/zypp
+%{_datadir}/zypp
+%{_datadir}/applications/package-manager.desktop
+%{_datadir}/icons/hicolor/scalable/apps/package-manager-icon.svg
+%{_datadir}/icons/hicolor/16x16/apps/package-manager-icon.png
+%{_datadir}/icons/hicolor/22x22/apps/package-manager-icon.png
+%{_datadir}/icons/hicolor/24x24/apps/package-manager-icon.png
+%{_datadir}/icons/hicolor/32x32/apps/package-manager-icon.png
+%{_datadir}/icons/hicolor/48x48/apps/package-manager-icon.png
+%{_bindir}/*
%{_libdir}/libzypp*so.*
-%doc %_mandir/man5/locks.5.*
+%doc %{_mandir}/man5/locks.5.*
%files devel
%defattr(-,root,root)
%{_libdir}/libzypp.so
%{_docdir}/%{name}
-%{prefix}/include/zypp
-%{prefix}/share/cmake/Modules/*
+%{_includedir}/zypp
+%{_datadir}/cmake/Modules/*
%{_libdir}/pkgconfig/libzypp.pc
%changelog
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-7.6.0/package/libzypp.changes new/libzypp-7.7.2/package/libzypp.changes
--- old/libzypp-7.6.0/package/libzypp.changes 2010-05-12 19:16:42.000000000 +0200
+++ new/libzypp-7.7.2/package/libzypp.changes 2010-05-21 20:02:22.000000000 +0200
@@ -1,4 +1,42 @@
-------------------------------------------------------------------
+Fri May 21 20:00:55 CEST 2010 - ma@suse.de
+
+- Fix broken IdStringType comparison (bnc#607572)
+- version 7.7.2 (6)
+
+-------------------------------------------------------------------
+Thu May 20 21:01:05 CEST 2010 - ma@suse.de
+
+- Fix packages provided via delta rpm being placed in
+ the wrong package cache (bnc#607583)
+- version 7.7.1 (6)
+
+-------------------------------------------------------------------
+Thu May 20 01:13:49 CEST 2010 - ma@suse.de
+
+- Update zypp-po.tar.bz2
+
+-------------------------------------------------------------------
+Tue May 18 18:02:44 CEST 2010 - ma@suse.de
+
+- Fix arch detection on sprac (bug #566291)
+- Arch: add sparc64v and sparcv9v and armv7l
+- RepoManager: refresh repo if last refresh is in the future (bnc#593617)
+- version 7.6.1 (6)
+
+-------------------------------------------------------------------
+Mon May 17 15:25:14 CEST 2010 - ma@suse.de
+
+- Fix package-manager-su to support LXDE (Andrea Florio) (bnc#582235)
+- Cleanup spec file (Pavol Rusnak)
+- version 7.6.0 (6)
+
+-------------------------------------------------------------------
+Sun May 16 01:13:39 CEST 2010 - ma@suse.de
+
+- Update zypp-po.tar.bz2
+
+-------------------------------------------------------------------
Wed May 12 19:09:54 CEST 2010 - ma@suse.de
- Add methods to evaluate gpg geys expiration dates.
Files old/libzypp-7.6.0/po/zypp-po.tar.bz2 and new/libzypp-7.7.2/po/zypp-po.tar.bz2 differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-7.6.0/tests/sat/CMakeLists.txt new/libzypp-7.7.2/tests/sat/CMakeLists.txt
--- old/libzypp-7.6.0/tests/sat/CMakeLists.txt 2010-05-12 19:16:41.000000000 +0200
+++ new/libzypp-7.7.2/tests/sat/CMakeLists.txt 2010-05-21 20:02:22.000000000 +0200
@@ -2,6 +2,6 @@
# to find the KeyRingTest receiver
INCLUDE_DIRECTORIES( ${LIBZYPP_SOURCE_DIR}/tests/zypp )
-ADD_TESTS(Solvable SolvParsing WhatProvides WhatObsoletes LookupAttr AttrMatcher)
+ADD_TESTS(Solvable SolvParsing WhatProvides WhatObsoletes LookupAttr AttrMatcher IdString)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-7.6.0/tests/sat/IdString_test.cc new/libzypp-7.7.2/tests/sat/IdString_test.cc
--- old/libzypp-7.6.0/tests/sat/IdString_test.cc 1970-01-01 01:00:00.000000000 +0100
+++ new/libzypp-7.7.2/tests/sat/IdString_test.cc 2010-05-21 20:02:22.000000000 +0200
@@ -0,0 +1,59 @@
+#include "TestSetup.h"
+#include
+
+BOOST_AUTO_TEST_CASE(idstring)
+{
+ // id 0 ==> NULL
+ // id 1 ==> ""
+ // evaluates id in a boolean context
+ IdString a0( 0 );
+ IdString a1( 1 );
+
+ BOOST_CHECK_EQUAL( a0.id(), 0 );
+ BOOST_CHECK_EQUAL( a1.id(), 1 );
+
+ BOOST_CHECK( !a0 );
+ BOOST_CHECK( a1 );
+
+ BOOST_CHECK( !(a0 == a1) );
+ BOOST_CHECK( (a0 != a1) );
+ BOOST_CHECK( (a0 < a1) );
+ BOOST_CHECK( (a1 > a0) );
+ BOOST_CHECK( !(a0 >= a1) );
+ BOOST_CHECK( !(a1 <= a0) );
+
+ BOOST_CHECK_EQUAL( a0.compare( (const char *)0 ), 0 );
+ BOOST_CHECK_EQUAL( a0.compare( "" ), -1 );
+ BOOST_CHECK_EQUAL( a0.compare( a1 ), -1 );
+
+ BOOST_CHECK_EQUAL( a1.compare( (const char *)0 ), 1 );
+ BOOST_CHECK_EQUAL( a1.compare( "" ), 0 );
+ BOOST_CHECK_EQUAL( a1.compare( a0 ), 1 );
+}
+
+BOOST_AUTO_TEST_CASE(idstringtype)
+{
+ sat::SolvAttr a0( sat::SolvAttr::allAttr );
+ sat::SolvAttr a1( sat::SolvAttr::noAttr );
+
+ BOOST_CHECK_EQUAL( a0.id(), 0 );
+ BOOST_CHECK_EQUAL( a1.id(), 1 );
+
+ BOOST_CHECK( !a0 );
+ BOOST_CHECK( !a1 ); // evaluates empty string (id 0/1) in a boolean context
+
+ BOOST_CHECK( !(a0 == a1) );
+ BOOST_CHECK( (a0 != a1) );
+ BOOST_CHECK( (a0 < a1) );
+ BOOST_CHECK( (a1 > a0) );
+ BOOST_CHECK( !(a0 >= a1) );
+ BOOST_CHECK( !(a1 <= a0) );
+
+ BOOST_CHECK_EQUAL( a0.compare( (const char *)0 ), 0 );
+ BOOST_CHECK_EQUAL( a0.compare( "" ), -1 );
+ BOOST_CHECK_EQUAL( a0.compare( a1 ), -1 );
+
+ BOOST_CHECK_EQUAL( a1.compare( (const char *)0 ), 1 );
+ BOOST_CHECK_EQUAL( a1.compare( "" ), 0 );
+ BOOST_CHECK_EQUAL( a1.compare( a0 ), 1 );
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-7.6.0/tests/zypp/Deltarpm_test.cc new/libzypp-7.7.2/tests/zypp/Deltarpm_test.cc
--- old/libzypp-7.6.0/tests/zypp/Deltarpm_test.cc 2010-05-12 19:16:41.000000000 +0200
+++ new/libzypp-7.7.2/tests/zypp/Deltarpm_test.cc 2010-05-21 20:02:22.000000000 +0200
@@ -63,9 +63,7 @@
cout << (it->edition() == "4.21.3-2") << endl; // fine
cout << (it->edition() == Edition("4.21.3-2")) << endl; // fine
- cout << (it->edition().match(Edition("4.21.3-2")) == 0) << endl; // !match returns -1,0,1
- cout << (it->edition().match("4.21.3-2") == 0) << endl; // !match returns -1,0,1
+ cout << (it->edition().match(Edition("4.21.3-2")) == 0) << endl; // match returns -1,0,1
+ cout << (it->edition().match("4.21.3-2") == 0) << endl; // match returns -1,0,1
}
-
- //! \todo FIXME Edition("0:4.21.3-2") != Edition("4.21.3-2") (not even does Edition("0:4.21.3-2").match(Edition("4.21.3-2"))
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-7.6.0/tests/zypp/Edition_test.cc new/libzypp-7.7.2/tests/zypp/Edition_test.cc
--- old/libzypp-7.6.0/tests/zypp/Edition_test.cc 2010-05-12 19:16:41.000000000 +0200
+++ new/libzypp-7.7.2/tests/zypp/Edition_test.cc 2010-05-21 20:02:22.000000000 +0200
@@ -27,6 +27,8 @@
BOOST_CHECK_EQUAL(_ed1, Edition ("1", ""));
BOOST_CHECK_EQUAL(_ed2, Edition ("1.1", ""));
+ BOOST_CHECK_EQUAL(_ed2, Edition ("1_1", "")); // Edition strings may differ in separator (non alphanum)
+ BOOST_CHECK_EQUAL(_ed2, Edition ("0:1.1")); // epoch 0 is no epoch
BOOST_CHECK_EQUAL(_ed3, Edition ("1", "", "1"));
BOOST_CHECK_EQUAL(_ed3, Edition ("1", "", 1));
BOOST_CHECK_EQUAL(_ed4, Edition ("1", "1", 2));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-7.6.0/tools/package-manager/package-manager-su new/libzypp-7.7.2/tools/package-manager/package-manager-su
--- old/libzypp-7.6.0/tools/package-manager/package-manager-su 2010-05-12 19:16:42.000000000 +0200
+++ new/libzypp-7.7.2/tools/package-manager/package-manager-su 2010-05-21 20:02:22.000000000 +0200
@@ -301,6 +301,7 @@
if [ x"$KDE_FULL_SESSION" = x"true" ]; then DE=kde;
elif [ x"$GNOME_DESKTOP_SESSION_ID" != x"" ]; then DE=gnome;
elif xprop -root _DT_SAVE_MODE | grep ' = \"xfce4\"$' >/dev/null 2>&1; then DE=xfce;
+ elif [ x"$DESKTOP_SESSION" == x"LXDE" ]; then DE=lxde;
fi
}
@@ -376,6 +377,15 @@
fi
}
+su_lxde()
+{
+ if which gnomesu &>/dev/null ; then
+ su_gnome
+ else
+ su_generic
+ fi
+}
+
[ x"$1" != x"" ] || exit_failure_syntax
user=
@@ -441,6 +451,10 @@
su_xfce
;;
+ lxde)
+ su_lxde
+ ;;
+
*)
[ x"$user" = x"" ] && user=root
exit_failure_operation_impossible "no graphical method available for invoking '$cmd' as '$user'"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-7.6.0/VERSION.cmake new/libzypp-7.7.2/VERSION.cmake
--- old/libzypp-7.6.0/VERSION.cmake 2010-05-12 19:16:41.000000000 +0200
+++ new/libzypp-7.7.2/VERSION.cmake 2010-05-21 20:02:22.000000000 +0200
@@ -60,9 +60,9 @@
#
SET(LIBZYPP_MAJOR "7")
SET(LIBZYPP_COMPATMINOR "6")
-SET(LIBZYPP_MINOR "6")
-SET(LIBZYPP_PATCH "0")
+SET(LIBZYPP_MINOR "7")
+SET(LIBZYPP_PATCH "2")
#
-# LAST RELEASED: 7.6.0 (6)
+# LAST RELEASED: 7.7.2 (6)
# (The number in parenthesis is LIBZYPP_COMPATMINOR)
#=======
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-7.6.0/zypp/Arch.cc new/libzypp-7.7.2/zypp/Arch.cc
--- old/libzypp-7.6.0/zypp/Arch.cc 2010-05-12 19:16:41.000000000 +0200
+++ new/libzypp-7.7.2/zypp/Arch.cc 2010-05-21 20:02:22.000000000 +0200
@@ -49,7 +49,6 @@
, _archStr( archStr_r )
, _idBit( idBit_r )
, _compatBits( idBit_r )
- , _compatScore( idBit_r ? 1 : 0 ) // number of compatible archs
{}
CompatEntry( IdString archStr_r,
@@ -58,7 +57,6 @@
, _archStr( archStr_r.asString() )
, _idBit( idBit_r )
, _compatBits( idBit_r )
- , _compatScore( idBit_r ? 1 : 0 ) // number of compatible archs
{}
void addCompatBit( const CompatBits & idBit_r ) const
@@ -66,7 +64,6 @@
if ( idBit_r && ! (_compatBits & idBit_r) )
{
_compatBits |= idBit_r;
- ++_compatScore;
}
}
@@ -91,9 +88,9 @@
/** compare by score, then archStr. */
int compare( const CompatEntry & rhs ) const
{
- if ( _compatScore != rhs._compatScore )
- return( _compatScore < rhs._compatScore ? -1 : 1 );
- return _archStr.compare( rhs._archStr );
+ if ( _idBit.value() != rhs. _idBit.value() )
+ return( _idBit.value() < rhs. _idBit.value() ? -1 : 1 );
+ return _archStr.compare( rhs._archStr ); // Id 1: non builtin
}
bool isBuiltIn() const
@@ -106,7 +103,6 @@
std::string _archStr; // frequently used by the UI so we keep a reference
CompatBits _idBit;
mutable CompatBits _compatBits;
- mutable unsigned _compatScore;
};
///////////////////////////////////////////////////////////////////
@@ -121,7 +117,7 @@
bit >>= 1;
}
return str << str::form( "%-15s ", obj._archStr.c_str() ) << str::numstring(bitnum,2) << ' '
- << obj._compatBits << ' ' << obj._compatScore;
+ << obj._compatBits << ' ' << obj._compatBits.value();
}
/** \relates Arch::CompatEntry */
@@ -154,7 +150,7 @@
// You have to change them accordingly.
//
// NOTE: Thake care CompatBits::IntT is able to provide one
- // bit for each architectue.
+ // bit for each architecture.
//
#define DEF_BUILTIN(A) const IdString _##A( #A );
DEF_BUILTIN( noarch );
@@ -184,11 +180,14 @@
DEF_BUILTIN( alphaev5 );
DEF_BUILTIN( alpha );
+ DEF_BUILTIN( sparc64v );
+ DEF_BUILTIN( sparcv9v );
DEF_BUILTIN( sparc64 );
DEF_BUILTIN( sparcv9 );
DEF_BUILTIN( sparcv8 );
DEF_BUILTIN( sparc );
+ DEF_BUILTIN( armv7l );
DEF_BUILTIN( armv6l );
DEF_BUILTIN( armv5tejl );
DEF_BUILTIN( armv5tel );
@@ -274,6 +273,9 @@
///////////////////////////////////////////////////////////////////
// Define the CompatibleWith relation:
//
+ // NOTE: Order of definition is significant! (Arch::compare)
+ // - define compatible (less) architectures first!
+ //
defCompatibleWith( _i386, _noarch );
defCompatibleWith( _i486, _noarch,_i386 );
defCompatibleWith( _i586, _noarch,_i386,_i486 );
@@ -301,9 +303,11 @@
//
defCompatibleWith( _sparc, _noarch );
defCompatibleWith( _sparcv8, _noarch,_sparc );
- //
- defCompatibleWith( _sparcv9, _noarch,_sparc );
- defCompatibleWith( _sparc64, _noarch,_sparc,_sparcv9 );
+ defCompatibleWith( _sparcv9, _noarch,_sparc,_sparcv8 );
+ defCompatibleWith( _sparcv9v, _noarch,_sparc,_sparcv8,_sparcv9 );
+ //
+ defCompatibleWith( _sparc64, _noarch,_sparc,_sparcv8,_sparcv9 );
+ defCompatibleWith( _sparc64v, _noarch,_sparc,_sparcv8,_sparcv9,_sparcv9v,_sparc64 );
//
defCompatibleWith( _armv3l, _noarch );
defCompatibleWith( _armv4l, _noarch,_armv3l );
@@ -312,6 +316,7 @@
defCompatibleWith( _armv5tel, _noarch,_armv3l,_armv4l,_armv4tl,_armv5l );
defCompatibleWith( _armv5tejl, _noarch,_armv3l,_armv4l,_armv4tl,_armv5l,_armv5tel );
defCompatibleWith( _armv6l, _noarch,_armv3l,_armv4l,_armv4tl,_armv5l,_armv5tel,_armv5tejl );
+ defCompatibleWith( _armv7l, _noarch,_armv3l,_armv4l,_armv4tl,_armv5l,_armv5tel,_armv5tejl,_armv6l );
//
defCompatibleWith( _sh3, _noarch );
//
@@ -410,11 +415,14 @@
const Arch Arch_alphaev5( _alphaev5 );
const Arch Arch_alpha( _alpha );
+ const Arch Arch_sparc64v( _sparc64v );
const Arch Arch_sparc64( _sparc64 );
+ const Arch Arch_sparcv9v( _sparcv9v );
const Arch Arch_sparcv9( _sparcv9 );
const Arch Arch_sparcv8( _sparcv8 );
const Arch Arch_sparc( _sparc );
+ const Arch Arch_armv7l( _armv7l );
const Arch Arch_armv6l( _armv6l );
const Arch Arch_armv5tejl( _armv5tejl );
const Arch Arch_armv5tel( _armv5tel );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-7.6.0/zypp/Arch.h new/libzypp-7.7.2/zypp/Arch.h
--- old/libzypp-7.6.0/zypp/Arch.h 2010-05-12 19:16:41.000000000 +0200
+++ new/libzypp-7.7.2/zypp/Arch.h 2010-05-21 20:02:22.000000000 +0200
@@ -92,10 +92,10 @@
bool compatibleWith( const Arch & targetArch_r ) const;
/** Arch comparison.
- * Primary key is the number of compatible Archs, then
- * the string representation. Thus Arch_noarch is the
- * least Arch.
- */
+ * Compatible architectures are treated as \c less (i.e. <tt>i686>i386>noarch</tt>).
+ * So \c Arch_noarch is the least Arch. Equivalent architectures
+ * (compatible in both directions) are ordered arbitrary.
+ */
int compare( const Arch & rhs ) const;
/** Arch comparison (static version). */
@@ -198,9 +198,13 @@
/** \relates Arch */
extern const Arch Arch_alpha;
+ /** \relates Arch */
+ extern const Arch Arch_sparc64v;
/** \relates Arch */
extern const Arch Arch_sparc64;
/** \relates Arch */
+ extern const Arch Arch_sparcv9v;
+ /** \relates Arch */
extern const Arch Arch_sparcv9;
/** \relates Arch */
extern const Arch Arch_sparcv8;
@@ -208,6 +212,8 @@
extern const Arch Arch_sparc;
/** \relates Arch */
+ extern const Arch Arch_armv7l;
+ /** \relates Arch */
extern const Arch Arch_armv6l;
/** \relates Arch */
extern const Arch Arch_armv5tejl;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-7.6.0/zypp/IdStringType.h new/libzypp-7.7.2/zypp/IdStringType.h
--- old/libzypp-7.6.0/zypp/IdStringType.h 2010-05-12 19:16:41.000000000 +0200
+++ new/libzypp-7.7.2/zypp/IdStringType.h 2010-05-21 20:02:22.000000000 +0200
@@ -115,40 +115,42 @@
using base::SafeBool<Derived>::operator bool_type;
#endif
public:
- static int compare( const Derived & lhs, const Derived & rhs ) { return compare( lhs.idStr(), rhs.idStr() ); }
- static int compare( const Derived & lhs, const IdString & rhs ) { return compare( lhs.idStr(), rhs ); }
- static int compare( const Derived & lhs, const std::string & rhs ) { return Derived::_doCompare( lhs.c_str(), rhs.c_str() ); }
- static int compare( const Derived & lhs, const char * rhs ) { return Derived::_doCompare( lhs.c_str(), rhs );}
-
- static int compare( const IdString & lhs, const Derived & rhs ) { return compare( lhs, rhs.idStr() ); }
- static int compare( const IdString & lhs, const IdString & rhs ) { return lhs.compareEQ( rhs ) ? 0 :
- Derived::_doCompare( lhs.c_str(), rhs.c_str() ); }
- static int compare( const IdString & lhs, const std::string & rhs ) { return Derived::_doCompare( lhs.c_str(), rhs.c_str() ); }
- static int compare( const IdString & lhs, const char * rhs ) { return Derived::_doCompare( lhs.c_str(), rhs ); }
-
- static int compare( const std::string & lhs, const Derived & rhs ) { return Derived::_doCompare( lhs.c_str(), rhs.c_str() );}
- static int compare( const std::string & lhs, const IdString & rhs ) { return Derived::_doCompare( lhs.c_str(), rhs.c_str() ); }
- static int compare( const std::string & lhs, const std::string & rhs ) { return Derived::_doCompare( lhs.c_str(), rhs.c_str() ); }
- static int compare( const std::string & lhs, const char * rhs ) { return Derived::_doCompare( lhs.c_str(), rhs ); }
-
- static int compare( const char * lhs, const Derived & rhs ) { return Derived::_doCompare( lhs, rhs.c_str() );}
- static int compare( const char * lhs, const IdString & rhs ) { return Derived::_doCompare( lhs, rhs.c_str() ); }
- static int compare( const char * lhs, const std::string & rhs ) { return Derived::_doCompare( lhs, rhs.c_str() ); }
+ // - break it down to idString/const char* <=> idString/cont char*
+ // - handle idString(0)/NULL being the least value
+ // - everything else goes to _doCompare (no NULL)
+ static int compare( const Derived & lhs, const Derived & rhs ) { return compare( lhs.idStr(), rhs.idStr() ); }
+ static int compare( const Derived & lhs, const IdString & rhs ) { return compare( lhs.idStr(), rhs ); }
+ static int compare( const Derived & lhs, const std::string & rhs ) { return compare( lhs.idStr(), rhs.c_str() ); }
+ static int compare( const Derived & lhs, const char * rhs ) { return compare( lhs.idStr(), rhs );}
+
+ static int compare( const IdString & lhs, const Derived & rhs ) { return compare( lhs, rhs.idStr() ); }
+ static int compare( const IdString & lhs, const IdString & rhs ) { return lhs == rhs ? 0 : Derived::_doCompare( (lhs ? lhs.c_str() : (const char *)0 ),
+ (rhs ? rhs.c_str() : (const char *)0 ) ); }
+ static int compare( const IdString & lhs, const std::string & rhs ) { return compare( lhs, rhs.c_str() ); }
+ static int compare( const IdString & lhs, const char * rhs ) { return Derived::_doCompare( (lhs ? lhs.c_str() : (const char *)0 ), rhs ); }
+
+ static int compare( const std::string & lhs, const Derived & rhs ) { return compare( lhs.c_str(), rhs.idStr() ); }
+ static int compare( const std::string & lhs, const IdString & rhs ) { return compare( lhs.c_str(), rhs ); }
+ static int compare( const std::string & lhs, const std::string & rhs ) { return compare( lhs.c_str(), rhs.c_str() ); }
+ static int compare( const std::string & lhs, const char * rhs ) { return compare( lhs.c_str(), rhs ); }
+
+ static int compare( const char * lhs, const Derived & rhs ) { return compare( lhs, rhs.idStr() ); }
+ static int compare( const char * lhs, const IdString & rhs ) { return Derived::_doCompare( lhs, (rhs ? rhs.c_str() : (const char *)0 ) ); }
+ static int compare( const char * lhs, const std::string & rhs ) { return compare( lhs, rhs.c_str() ); }
static int compare( const char * lhs, const char * rhs ) { return Derived::_doCompare( lhs, rhs ); }
public:
int compare( const Derived & rhs ) const { return compare( idStr(), rhs.idStr() ); }
int compare( const IdStringType & rhs ) const { return compare( idStr(), rhs.idStr() ); }
int compare( const IdString & rhs ) const { return compare( idStr(), rhs ); }
- int compare( const std::string & rhs ) const { return Derived::_doCompare( c_str(), rhs.c_str() ); }
- int compare( const char * rhs ) const { return Derived::_doCompare( c_str(), rhs ); }
+ int compare( const std::string & rhs ) const { return compare( idStr(), rhs.c_str() ); }
+ int compare( const char * rhs ) const { return compare( idStr(), rhs ); }
private:
static int _doCompare( const char * lhs, const char * rhs )
{
- if ( lhs == rhs ) return 0;
- if ( lhs && rhs ) return ::strcmp( lhs, rhs );
- return( lhs ? 1 : -1 );
+ if ( ! lhs ) return rhs ? -1 : 0;
+ return rhs ? ::strcmp( lhs, rhs ) : 1;
}
private:
@@ -167,7 +169,7 @@
/** \relates IdStringType Equal */
template <class Derived>
inline bool operator==( const IdStringType<Derived> & lhs, const IdStringType<Derived> & rhs )
- { return lhs.idStr().compareEQ( rhs.idStr() ); }
+ { return lhs.compare( rhs ) == 0; }
/** \overload */
template <class Derived>
inline bool operator==( const IdStringType<Derived> & lhs, const IdString & rhs )
@@ -196,7 +198,7 @@
/** \relates IdStringType NotEqual */
template <class Derived>
inline bool operator!=( const IdStringType<Derived> & lhs, const IdStringType<Derived> & rhs )
- { return ! lhs.idStr().compareEQ( rhs.idStr() ); }
+ { return lhs.compare( rhs ) != 0; }
/** \overload */
template <class Derived>
inline bool operator!=( const IdStringType<Derived> & lhs, const IdString & rhs )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-7.6.0/zypp/media/MediaCD.cc new/libzypp-7.7.2/zypp/media/MediaCD.cc
--- old/libzypp-7.6.0/zypp/media/MediaCD.cc 2010-05-12 19:16:41.000000000 +0200
+++ new/libzypp-7.7.2/zypp/media/MediaCD.cc 2010-05-21 20:02:22.000000000 +0200
@@ -202,6 +202,7 @@
//
MediaCD::DeviceList MediaCD::detectDevices( bool supportingDVD ) const
{
+ // http://www.kernel.org/pub/linux/utils/kernel/hotplug/libudev/index.html
zypp::AutoDispose udev( ::udev_new(), ::udev_unref );
if ( ! udev )
{
@@ -256,6 +257,8 @@
detected.push_back( media );
}
}
+ if ( detected.empty() )
+ WAR << "Did not find any CD/DVD device." << endl;
return detected;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-7.6.0/zypp/repo/PackageProvider.cc new/libzypp-7.7.2/zypp/repo/PackageProvider.cc
--- old/libzypp-7.6.0/zypp/repo/PackageProvider.cc 2010-05-12 19:16:41.000000000 +0200
+++ new/libzypp-7.7.2/zypp/repo/PackageProvider.cc 2010-05-21 20:02:22.000000000 +0200
@@ -249,15 +249,8 @@
return ManagedFile();
}
- Pathname destination( Pathname::dirname( delta ) / defRpmFileName( _package ) );
-
- if ( ! delta.getDispose() )
- {
- // There is no cleanup method associated with the deta. Thus the
- // delta is not a temporary file, and we don't want to write in
- // the package into this directory.
- destination = filesystem::TmpPath::defaultLocation() / defRpmFileName( _package );
- }
+ // build the package and put it into the cache
+ Pathname destination( _package->repoInfo().packagesPath() / _package->location().filename() );
if ( ! applydeltarpm::provide( delta, destination,
bind( &PackageProvider::progressDeltaApply, this, _1 ) ) )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-7.6.0/zypp/RepoManager.cc new/libzypp-7.7.2/zypp/RepoManager.cc
--- old/libzypp-7.6.0/zypp/RepoManager.cc 2010-05-12 19:16:41.000000000 +0200
+++ new/libzypp-7.7.2/zypp/RepoManager.cc 2010-05-21 20:02:22.000000000 +0200
@@ -775,13 +775,20 @@
DBG << "current time: " << (Date::ValueType)Date::now() << endl;
DBG << "last refresh = " << diff << " minutes ago" << endl;
- if (diff < ZConfig::instance().repo_refresh_delay())
+ if ( diff < ZConfig::instance().repo_refresh_delay() )
{
- MIL << "Repository '" << info.alias()
- << "' has been refreshed less than repo.refresh.delay ("
- << ZConfig::instance().repo_refresh_delay()
- << ") minutes ago. Advising to skip refresh" << endl;
- return REPO_CHECK_DELAYED;
+ if ( diff < 0 )
+ {
+ WAR << "Repository '" << info.alias() << "' was refreshed in the future!" << endl;
+ }
+ else
+ {
+ MIL << "Repository '" << info.alias()
+ << "' has been refreshed less than repo.refresh.delay ("
+ << ZConfig::instance().repo_refresh_delay()
+ << ") minutes ago. Advising to skip refresh" << endl;
+ return REPO_CHECK_DELAYED;
+ }
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-7.6.0/zypp/ZConfig.cc new/libzypp-7.7.2/zypp/ZConfig.cc
--- old/libzypp-7.6.0/zypp/ZConfig.cc 2010-05-12 19:16:41.000000000 +0200
+++ new/libzypp-7.7.2/zypp/ZConfig.cc 2010-05-21 20:02:22.000000000 +0200
@@ -58,11 +58,11 @@
Arch architecture( buf.machine );
MIL << "Uname architecture is '" << buf.machine << "'" << endl;
- // some CPUs report i686 but dont implement cx8 and cmov
- // check for both flags in /proc/cpuinfo and downgrade
- // to i586 if either is missing (cf bug #18885)
if ( architecture == Arch_i686 )
{
+ // some CPUs report i686 but dont implement cx8 and cmov
+ // check for both flags in /proc/cpuinfo and downgrade
+ // to i586 if either is missing (cf bug #18885)
std::ifstream cpuinfo( "/proc/cpuinfo" );
if ( cpuinfo )
{
@@ -78,6 +78,40 @@
}
break;
}
+ }
+ }
+ else
+ {
+ ERR << "Cant open " << PathInfo("/proc/cpuinfo") << endl;
+ }
+ }
+ else if ( architecture == Arch_sparc || architecture == Arch_sparc64 )
+ {
+ // Check for sun4[vum] to get the real arch. (bug #566291)
+ std::ifstream cpuinfo( "/proc/cpuinfo" );
+ if ( cpuinfo )
+ {
+ for( iostr::EachLine in( cpuinfo ); in; in.next() )
+ {
+ if ( str::hasPrefix( *in, "type" ) )
+ {
+ if ( in->find( "sun4v" ) != std::string::npos )
+ {
+ architecture = ( architecture == Arch_sparc64 ? Arch_sparc64v : Arch_sparcv9v );
+ WAR << "CPU has 'sun4v': architecture upgraded to '" << architecture << "'" << endl;
+ }
+ else if ( in->find( "sun4u" ) != std::string::npos )
+ {
+ architecture = ( architecture == Arch_sparc64 ? Arch_sparc64 : Arch_sparcv9 );
+ WAR << "CPU has 'sun4u': architecture upgraded to '" << architecture << "'" << endl;
+ }
+ else if ( in->find( "sun4m" ) != std::string::npos )
+ {
+ architecture = Arch_sparcv8;
+ WAR << "CPU has 'sun4m': architecture upgraded to '" << architecture << "'" << endl;
+ }
+ break;
+ }
}
}
else
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org