Hello community,

here is the log from the commit of package HepMC for openSUSE:Factory checked 
in at 2017-08-24 18:49:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/HepMC (Old)
 and      /work/SRC/openSUSE:Factory/.HepMC.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "HepMC"

Thu Aug 24 18:49:00 2017 rev:3 rq:515864 version:3.0.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/HepMC/HepMC.changes      2014-04-25 
16:09:25.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.HepMC.new/HepMC.changes 2017-08-24 
18:49:13.276266118 +0200
@@ -1,0 +2,23 @@
+Wed Aug  9 18:33:34 UTC 2017 - jeng...@inai.de
+
+- Reapply shared library guidelines.
+- Add sover.diff to force shlib versioning.
+- Slightly trim description for length.
+
+-------------------------------------------------------------------
+Sat Aug  5 15:34:17 UTC 2017 - badshah...@gmail.com
+
+- Update to version 3.0.0:
+  + See list of changes from:
+    https://gitlab.cern.ch/hepmc/HepMC3/blob/3.0.0/ChangeLog.
+- Drop shared library subpackage; there is no numbered shared lib
+  any more. Package everything into the devel package.
+- Use cmake macros for build and install.
+- Drop unused cmake options.
+- Build and install doxygen documentation.
+- Manually install examples to docdir, running fdupes to weed out
+  duplicated files.
+- Update URL and Source URL for new upstream links.
+- Updated file-list.
+
+-------------------------------------------------------------------

Old:
----
  HepMC-2.06.09.tar.gz

New:
----
  hepmc3.0.0.tgz
  sover.diff

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ HepMC.spec ++++++
--- /var/tmp/diff_new_pack.koZdJ8/_old  2017-08-24 18:49:15.295981734 +0200
+++ /var/tmp/diff_new_pack.koZdJ8/_new  2017-08-24 18:49:15.311979482 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package HepMC
 #
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,38 +17,31 @@
 
 
 Name:           HepMC
-Version:        2.06.09
+%define lname  libHepMC-3_0_0
+Version:        3.0.0
 Release:        0
 Summary:        An event record for High Energy Physics Monte Carlo Generators 
in C++
 License:        GPL-2.0
 Group:          Development/Libraries/C and C++ 
-Url:            http://lcgapp.cern.ch/project/simu/HepMC/
-Source:         
http://lcgapp.cern.ch/project/simu/HepMC/download/%{name}-%{version}.tar.gz
+Url:            http://hepmc.web.cern.ch/hepmc/
+Source:         http://hepmc.web.cern.ch/hepmc/releases/hepmc%{version}.tgz
+Patch1:         sover.diff
 BuildRequires:  cmake
+BuildRequires:  doxygen
+BuildRequires:  fdupes
 BuildRequires:  gcc-c++
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 
 %description
 The HepMC package is an object oriented event record written in C++
 for High Energy Physics Monte Carlo Generators. Many extensions from
-HEPEVT, the Fortran HEP standard, are supported: the number of entries
-is unlimited, spin density matrices can be stored with each vertex,
-flow patterns (such as color) can be stored and traced, integers
-representing random number generator states can be stored, and an
-arbitrary number of event weights can be included. Particles and
-vertices are kept separate in a graph structure, physically similar to
-a physics event. The added information supports the modularisation of
-event generators. The package has been kept as simple as possible with
-minimal internal/external dependencies. Event information is accessed
-by means of iterators supplied with the package.
-Reference: M. Dobbs and J.B. Hansen, Comput. Phys. Commun. 134 (2001)
-41. 
+HEPEVT, the Fortran HEP standard, are supported.
 
-%package -n libHepMC4
-Summary:        Shared libraries for HepMC
-Group:          Development/Libraries/C and C++ 
+%package -n %{lname}
+Summary:        An event record for High Energy Physics Monte Carlo Generators
+Group:          System/Libraries
 
-%description -n libHepMC4
+%description -n %{lname}
 The HepMC package is an object oriented event record written in C++
 for High Energy Physics Monte Carlo Generators. Many extensions from
 HEPEVT, the Fortran HEP standard, are supported: the number of entries
@@ -58,88 +51,64 @@
 arbitrary number of event weights can be included. Particles and
 vertices are kept separate in a graph structure, physically similar to
 a physics event. The added information supports the modularisation of
-event generators. The package has been kept as simple as possible with
-minimal internal/external dependencies. Event information is accessed
-by means of iterators supplied with the package.
-Reference: M. Dobbs and J.B. Hansen, Comput. Phys. Commun. 134 (2001)
-41. 
+event generators. Event information is accessed by means of iterators
+supplied with the package.
 
-This package provides the shared libraries for HepMC.
-
-%package -n HepMC-devel
+%package devel
 Summary:        Header files for HepMC
 Group:          Development/Libraries/C and C++ 
-Requires:       libHepMC4 = %{version}
+Requires:       %{lname} = %{version}
 
-%description -n HepMC-devel
+%description devel
 The HepMC package is an object oriented event record written in C++
 for High Energy Physics Monte Carlo Generators. Many extensions from
-HEPEVT, the Fortran HEP standard, are supported: the number of entries
-is unlimited, spin density matrices can be stored with each vertex,
-flow patterns (such as color) can be stored and traced, integers
-representing random number generator states can be stored, and an
-arbitrary number of event weights can be included. Particles and
-vertices are kept separate in a graph structure, physically similar to
-a physics event. The added information supports the modularisation of
-event generators. The package has been kept as simple as possible with
-minimal internal/external dependencies. Event information is accessed
-by means of iterators supplied with the package.
-Reference: M. Dobbs and J.B. Hansen, Comput. Phys. Commun. 134 (2001)
-41. 
+HEPEVT, the Fortran HEP standard, are supported.
 
 This package provides the source and header files required for
-developng with HepMC.
-
+developing with HepMC.
 
 %prep
-%setup -q -n %{name}-%{version}
-# CORRECT EXEC PERMISSIONS IN ChangeLog
-chmod 0644 ChangeLog
+%setup -q -n hepmc%{version}
+%patch -P 1 -p1
 
 %build
-mkdir ../BUILD
-pushd ../BUILD
-cmake ../%{name}-%{version} \
-       -DCMAKE_INSTALL_PREFIX=%{_prefix} \
-       -DCMAKE_BUILD_TYPE=Release \
-       -Dmomentum:STRING="GEV" \
-       -Dlength:STRING="MM" \
-       -Dbuild_docs:BOOL=OFF 
-
-make %{?_smp_mflags}
-popd
+%cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \
+       -DHEPMC_ENABLE_ROOTIO:BOOL=OFF \
+       -DCONFIG_INSTALL_DIR:PATH=%{_libdir}/HepMC/
+
+%make_jobs
+cd ../doc/doxygen
+make
 
 %install
-pushd ../BUILD
-%make_install
+%cmake_install
 # REMOVE STATIC LIBRARIES
-rm -f %{buildroot}%{_prefix}/lib/*.a
+rm -f %{buildroot}%{_libdir}/*.a
 
-# MOVE SHARED LIBS TO LIBDIR
-mkdir -p %{buildroot}%{_libdir}
-%if "%{_lib}" != "lib"
-    mv %{buildroot}%{_prefix}/lib/*.so* %{buildroot}%{_libdir}/
-%endif
-popd
+# Weird duplicated installation dir
+rm -fr %{buildroot}%{_builddir}
 
-# MOVE EXAMPLES AND DOCUMENTATION TO DOCDIR
-mkdir -p %{buildroot}%{_docdir}/%{name}
-mv %{buildroot}%{_datadir}/%{name}/examples 
%{buildroot}%{_docdir}/%{name}/examples
-mv %{buildroot}%{_datadir}/%{name}/doc/*.pdf %{buildroot}%{_docdir}/%{name}/
+chmod +x %{buildroot}%{_bindir}/HepMC-config
 
-%post -n libHepMC4 -p /sbin/ldconfig
+#Install examples manually so that fdupes can be run on them
+mkdir -p %{buildroot}%{_docdir}/%{name}
+cp -pr examples %{buildroot}%{_docdir}/%{name}/
+%fdupes %{buildroot}%{_docdir}/%{name}/examples
 
-%postun -n libHepMC4 -p /sbin/ldconfig
+%post   -n %{lname} -p /sbin/ldconfig
+%postun -n %{lname} -p /sbin/ldconfig
 
-%files -n libHepMC4
+%files -n %{lname}
 %defattr(-,root,root)
-%doc AUTHORS ChangeLog README COPYING
-%{_libdir}/*.so.*
+%{_libdir}/libHepMC-3.0.0.so
 
-%files -n HepMC-devel
+%files devel
 %defattr(-,root,root)
-%{_docdir}/%{name}/
+%doc README* ChangeLog DESIGN doc/doxygen/html
+%dir %{_docdir}/%{name}
+%doc %{_docdir}/%{name}/examples
+%{_bindir}/HepMC-config
 %{_includedir}/%{name}/
-%{_libdir}/*.so
+%{_datadir}/%{name}/
 
 %changelog

++++++ sover.diff ++++++
From: Jan Engelhardt <jeng...@inai.de>
Date: 2017-08-09 20:31:06.319101869 +0200

build: force shared library versioning

openSUSE packages are to contain versioned shared libraries.
Use the inter-distro naming scheme to make this happen.

---
 CMakeLists.txt |    1 +
 1 file changed, 1 insertion(+)

Index: hepmc3.0.0/CMakeLists.txt
===================================================================
--- hepmc3.0.0.orig/CMakeLists.txt
+++ hepmc3.0.0/CMakeLists.txt
@@ -253,6 +253,7 @@ set(CPACK_PACKAGE_VERSION_PATCH 0)
 set(CPACK_PACKAGE_RELEASE 0)
 set(CPACK_PACKAGE_FILE_NAME "HepMC")
 set(CPACK_PACKAGE_DESCRIPTION "Event record library for high energy physics 
Monte Carlo")
+set_target_properties(HepMC PROPERTIES LIBRARY_OUTPUT_NAME 
HepMC-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH})
 
 set(CPACK_PACKAGING_INSTALL_PREFIX "/usr")
 SET(CPACK_INSTALL_PREFIX "/usr")

Reply via email to