[mmg3d] Rework cmake patch

Sandro Mani smani at fedoraproject.org
Sat Jan 3 15:58:10 UTC 2015


commit 2a05ffb74e6fafc7b6e11290092f1d4730ffed3c
Author: Sandro Mani <manisandro at gmail.com>
Date:   Sat Jan 3 16:46:13 2015 +0100

    Rework cmake patch

 mmg3d.spec                                    |   22 +++++++++++++++-------
 mmg3d_install-dirs.patch => mmg3d_cmake.patch |   18 +++++++++++++++---
 mmg3d_soname.patch                            |   11 -----------
 3 files changed, 30 insertions(+), 21 deletions(-)
---
diff --git a/mmg3d.spec b/mmg3d.spec
index 8482f03..7768527 100644
--- a/mmg3d.spec
+++ b/mmg3d.spec
@@ -1,6 +1,11 @@
+# Bump this as appropriate when doing release updates, check i.e. with abi_compliance_checker
+# First digit: major, bump when incompatible changes were performed
+# Second digit: minor, bump when interface was extended
+%global so_ver 4.0.1
+
 Name:           mmg3d
 Version:        4.0.1
-Release:        3%{?dist}
+Release:        4%{?dist}
 Summary:        Anisotropic Tetrahedral Remesher / Moving Mesh Generator
 
 Group:          Applications/Engineering
@@ -8,10 +13,8 @@ License:        GPLv3+
 URL:            http://www.math.u-bordeaux1.fr/~dobrzyns/logiciels/mmg3d.php
 Source0:        https://gforge.inria.fr/frs/download.php/file/33418/%{name}4-%{version}-Source.tar.gz
 
-# Set a soname to the shared library
-Patch0:         mmg3d_soname.patch
-# Fix install directories
-Patch1:         mmg3d_install-dirs.patch
+# Fix install directories, pass soname for the shared library
+Patch0:         mmg3d_cmake.patch
 
 BuildRequires:  cmake
 BuildRequires:  scotch-devel
@@ -40,11 +43,12 @@ Header files for %{name}.
 
 
 %prep
-%autosetup -p1 -n %{name}4-%{version}-Source
+%setup -q -n %{name}4-%{version}-Source
+%patch0 -p1
 
 
 %build
-LDFLAGS="-Wl,--as-needed" %cmake -DLIBMMG3D4_STATIC=OFF -DLIBMMG3D4_SHARED=ON .
+LDFLAGS="-Wl,--as-needed" %cmake -DLIBMMG3D4_STATIC=OFF -DLIBMMG3D4_SHARED=ON -DSO_VER=%{so_ver} .
 make %{?_smp_mflags}
 
 
@@ -70,6 +74,10 @@ make %{?_smp_mflags}
 
 
 %changelog
+* Sat Jan 03 2015 Sandro Mani <manisandro at gmail.com> - 4.0.1-4
+- Pass soname from spec
+- Merge patches together
+
 * Sun Aug 17 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 4.0.1-3
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
 
diff --git a/mmg3d_install-dirs.patch b/mmg3d_cmake.patch
similarity index 67%
rename from mmg3d_install-dirs.patch
rename to mmg3d_cmake.patch
index daf0913..fd37dd1 100644
--- a/mmg3d_install-dirs.patch
+++ b/mmg3d_cmake.patch
@@ -1,7 +1,17 @@
 diff -rupN mmg3d4-4.0.1-Source/CMakeLists.txt mmg3d4-4.0.1-Source-new/CMakeLists.txt
 --- mmg3d4-4.0.1-Source/CMakeLists.txt	2014-02-24 11:20:32.000000000 +0100
-+++ mmg3d4-4.0.1-Source-new/CMakeLists.txt	2014-06-14 00:00:51.570922209 +0200
-@@ -140,10 +140,10 @@ IF ( LIBMMG3D4_STATIC )
++++ mmg3d4-4.0.1-Source-new/CMakeLists.txt	2015-01-03 16:42:44.046583098 +0100
+@@ -4,6 +4,9 @@ PROJECT (mmg3d4)
+ # To see flags and options of compilation
+ #SET(CMAKE_VERBOSE_MAKEFILE TRUE)
+ 
++SET(SO_VER "" CACHE STRING "Soname MAJ.MIN.PATCH")
++STRING(SUBSTRING ${SO_VER} 0 1 SO_MAJ)
++
+ # Executable path
+ #SET(EXECUTABLE_OUTPUT_PATH $ENV{HOME}/bin/$ENV{ARCHI}/)
+ SET(MMG_SOURCE_DIR ${CMAKE_SOURCE_DIR}/sources/)
+@@ -140,10 +143,10 @@ IF ( LIBMMG3D4_STATIC )
      ${source_files} ${lib_file} )
    SET_TARGET_PROPERTIES(${PROJECT_NAME}_a PROPERTIES OUTPUT_NAME ${PROJECT_NAME})
    TARGET_LINK_LIBRARIES(${PROJECT_NAME}_a ${LIBRARIES})
@@ -15,9 +25,11 @@ diff -rupN mmg3d4-4.0.1-Source/CMakeLists.txt mmg3d4-4.0.1-Source-new/CMakeLists
  ENDIF()
  
  # Compile shared library
-@@ -154,10 +154,10 @@ IF ( LIBMMG3D4_SHARED )
+@@ -153,11 +156,12 @@ IF ( LIBMMG3D4_SHARED )
+     .dummy
      ${source_files} ${lib_file})
    SET_TARGET_PROPERTIES(${PROJECT_NAME}_so PROPERTIES OUTPUT_NAME ${PROJECT_NAME})
++  SET_TARGET_PROPERTIES(${PROJECT_NAME}_so PROPERTIES VERSION ${SO_VER} SOVERSION ${SO_MAJ})
    TARGET_LINK_LIBRARIES(${PROJECT_NAME}_so ${LIBRARIES})
 -  INSTALL(FILES ${MMG_SOURCE_DIR}/lib${PROJECT_NAME}.h DESTINATION include)
 +  INSTALL(FILES ${MMG_SOURCE_DIR}/lib${PROJECT_NAME}.h DESTINATION ${INCLUDE_INSTALL_DIR})


More information about the scm-commits mailing list