Imported Upstream version 17.2.2
[platform/upstream/libzypp.git] / libzypp.spec.cmake
index ebd430d..c97c532 100644 (file)
@@ -16,8 +16,6 @@
 #
 
 
-%define force_gcc_46 0
-
 Name:           @PACKAGE@
 Version:        @VERSION@
 Release:        0
@@ -32,13 +30,13 @@ Provides:       yast2-packagemanager
 Obsoletes:      yast2-packagemanager
 
 # Features we provide (update doc/autoinclude/FeatureTest.doc):
-Provides:       libzypp(plugin) = 0
+Provides:       libzypp(plugin) = 0.1
 Provides:       libzypp(plugin:appdata) = 0
 Provides:       libzypp(plugin:commit) = 1
 Provides:       libzypp(plugin:services) = 1
 Provides:       libzypp(plugin:system) = 1
 Provides:       libzypp(plugin:urlresolver) = 0
-Provides:       libzypp(repovarexpand) = 0
+Provides:       libzypp(repovarexpand) = 1.1
 
 %if 0%{?suse_version}
 Recommends:     logrotate
@@ -52,15 +50,17 @@ BuildRequires:  pkgconfig(libudev)
 %else
 BuildRequires:  hal-devel
 %endif
+%if 0%{?suse_version} >= 1330
+BuildRequires:  libboost_headers-devel
+BuildRequires:  libboost_program_options-devel
+BuildRequires:  libboost_test-devel
+BuildRequires:  libboost_thread-devel
+%else
 BuildRequires:  boost-devel
+%endif
 BuildRequires:  dejagnu
 BuildRequires:  doxygen
-%if 0%{?force_gcc_46}
-BuildRequires:  gcc46
-BuildRequires:  gcc46-c++
-%else
 BuildRequires:  gcc-c++ >= 4.6
-%endif
 BuildRequires:  gettext-devel
 BuildRequires:  graphviz
 BuildRequires:  libxml2-devel
@@ -75,7 +75,7 @@ BuildRequires:  pkgconfig
 BuildRequires:  pkg-config
 %endif
 
-BuildRequires:  libsolv-devel >= 0.6.23
+BuildRequires:  libsolv-devel >= 0.6.27
 %if 0%{?suse_version} >= 1100
 BuildRequires:  libsolv-tools
 %requires_eq    libsolv-tools
@@ -86,33 +86,27 @@ Requires:       libsolv-tools
 # required for testsuite, webrick
 BuildRequires:  ruby
 
-%if 0%{?suse_version}
-BuildRequires:  libexpat-devel
-%else
-BuildRequires:  expat-devel
-%endif
-
 Requires:       rpm
 
 %if 0%{?suse_version}
-BuildRequires:  rpm-devel
+BuildRequires:  rpm-devel > 4.4
 %endif
 
 %if 0%{?fedora_version} || 0%{?rhel_version} >= 600 || 0%{?centos_version} >= 600
 BuildRequires:  glib2-devel
 BuildRequires:  popt-devel
-BuildRequires:  rpm-devel
+BuildRequires:  rpm-devel > 4.4
 %endif
 
 %if 0%{?mandriva_version}
 BuildRequires:  glib2-devel
-BuildRequires:  librpm-devel
+BuildRequires:  librpm-devel > 4.4
 %endif
 
 %if 0%{?suse_version}
-Requires:       gpg2
+BuildRequires:  libgpgme-devel
 %else
-Requires:       gnupg2
+BuildRequires:  gpgme-devel
 %endif
 
 %define min_curl_version 7.19.4
@@ -131,6 +125,14 @@ BuildRequires:  libcurl-devel >= %{min_curl_version}
 Requires:       libcurl   >= %{min_curl_version}
 %endif
 
+# required for documentation
+%if 0%{?suse_version} >= 1330
+BuildRequires:  rubygem(asciidoctor)
+%else
+BuildRequires:  asciidoc
+BuildRequires:  libxslt-tools
+%endif
+
 %description
 Package, Patch, Pattern, and Product Management
 
@@ -139,7 +141,14 @@ Summary:        Package, Patch, Pattern, and Product Management - developers fil
 Group:          Development/Libraries/C and C++
 Provides:       yast2-packagemanager-devel
 Obsoletes:      yast2-packagemanager-devel
+%if 0%{?suse_version} >= 1330
+Requires:       libboost_headers-devel
+Requires:       libboost_program_options-devel
+Requires:       libboost_test-devel
+Requires:       libboost_thread-devel
+%else
 Requires:       boost-devel
+%endif
 Requires:       bzip2
 Requires:       glibc-devel
 Requires:       libstdc++-devel
@@ -147,7 +156,7 @@ Requires:       libxml2-devel
 Requires:       libzypp = %{version}
 Requires:       openssl-devel
 Requires:       popt-devel
-Requires:       rpm-devel
+Requires:       rpm-devel > 4.4
 Requires:       zlib-devel
 %if 0%{?suse_version} >= 1130 || 0%{?fedora_version} >= 16
 Requires:       libudev-devel
@@ -189,10 +198,6 @@ Package, Patch, Pattern, and Product Management - developers files
 %build
 mkdir build
 cd build
-%if 0%{?force_gcc_46}
-export CC=gcc-4.6
-export CXX=g++-4.6
-%endif
 export CFLAGS="$RPM_OPT_FLAGS"
 export CXXFLAGS="$RPM_OPT_FLAGS"
 unset EXTRA_CMAKE_OPTIONS
@@ -211,15 +216,7 @@ cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \
 make %{?_smp_mflags} VERBOSE=1
 make -C doc/autodoc %{?_smp_mflags}
 make -C po %{?_smp_mflags} translations
-
-%if 0%{?run_testsuite}
-  make -C tests %{?_smp_mflags}
-  pushd tests
-  LD_LIBRARY_PATH=$PWD/../zypp:$LD_LIBRARY_PATH ctest .
-  popd
-%endif
-
-#make check
+make -C tests %{?_smp_mflags}
 
 %install
 rm -rf "$RPM_BUILD_ROOT"
@@ -233,6 +230,7 @@ mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/zypp/repos.d
 %endif
 mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/zypp/services.d
 mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/zypp/systemCheck.d
+mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/zypp/vars.d
 mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/zypp/vendors.d
 mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/zypp/multiversion.d
 mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/zypp/credentials.d
@@ -247,11 +245,21 @@ mkdir -p $RPM_BUILD_ROOT%{_var}/lib/zypp
 mkdir -p $RPM_BUILD_ROOT%{_var}/log/zypp
 mkdir -p $RPM_BUILD_ROOT%{_var}/cache/zypp
 
+# Default to 'solver.dupAllowVendorChange = false' on TW and post SLE12
+%if 0%{?suse_version} >= 1330 || "%{distribution}" == "openSUSE Tumbleweed"
+sed -i "s|# solver.dupAllowVendorChange = true|solver.dupAllowVendorChange = false|g" %{buildroot}%{_sysconfdir}/zypp/zypp.conf
+%endif
+
 make -C po install DESTDIR=$RPM_BUILD_ROOT
 # Create filelist with translations
 cd ..
 %{find_lang} zypp
 
+%check
+pushd build/tests
+LD_LIBRARY_PATH=$RPM_BUILD_ROOT%{_libdir}:${LD_LIBRARY_PATH} ctest .
+popd
+
 %post
 /sbin/ldconfig
 if [ -f /var/cache/zypp/zypp.db ]; then rm /var/cache/zypp/zypp.db; fi
@@ -331,6 +339,7 @@ rm -rf "$RPM_BUILD_ROOT"
 %endif
 %dir               %{_sysconfdir}/zypp/services.d
 %dir               %{_sysconfdir}/zypp/systemCheck.d
+%dir               %{_sysconfdir}/zypp/vars.d
 %dir               %{_sysconfdir}/zypp/vendors.d
 %dir               %{_sysconfdir}/zypp/multiversion.d
 %dir               %{_sysconfdir}/zypp/credentials.d