# 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 mmg2d_sover 5.0.0 %global mmg3d_sover 5.0.0 %global mmgs_sover 5.0.0 %global mmg_sover 5.0.0 Name: mmg Version: 5.3.13 Release: 1%{?dist} Summary: Surface and volume remeshers License: LGPLv3+ URL: https://www.mmgtools.org/ Source0: https://github.com/MmgTools/mmg/archive/v%{version}/%{name}-%{version}.tar.gz # - Set project language to C # - Fix library installation dirs # - Add shared library versioning Patch0: mmg_cmake.patch BuildRequires: doxygen BuildRequires: cmake BuildRequires: gcc BuildRequires: make BuildRequires: scotch-devel %description mmg is an open source software for bidimensional and tridimensional surface and volume remeshing. It provides: - The mmg2d application and library: adaptation and optimization of a bidimensional triangulation - The mmgs application and library: adaptation and optimization of a surface triangulation and isovalue discretization - The mmg3d application and library: adaptation and optimization of a tetrahedral mesh and implicit domain meshing - The mmg library, combining the mmg2d, mmgs and mmg3d libraries. %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %description devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. ############################################################################### %package -n mmg2d Summary: Surface remesher %description -n mmg2d The mmg2d application and library: adaptation and optimization of a bidimensional triangulation. %package -n mmg2d-devel Summary: Development files for mmg2d Requires: mmg2d%{?_isa} = %{version}-%{release} %description -n mmg2d-devel The mmg2d-devel package contains libraries and header files for developing applications that use mmg2d. %package -n mmg2d-devel-doc Summary: Development documentation for mmg2d BuildArch: noarch %description -n mmg2d-devel-doc The mmg2d-devel-doc package contains the documentation for developing applications that use mmg2d. ############################################################################### %package -n mmgs Summary: Surface remesher %description -n mmgs The mmgs application and library: adaptation and optimization of a surface triangulation and isovalue discretization. %package -n mmgs-devel Summary: Development files for mmgs Requires: mmgs%{?_isa} = %{version}-%{release} %description -n mmgs-devel The mmgs-devel package contains libraries and header files for developing applications that use mmgs. %package -n mmgs-devel-doc Summary: Development documentation for mmgs BuildArch: noarch %description -n mmgs-devel-doc The mmgs-devel-doc package contains the documentation for developing applications that use mmgs. ############################################################################### %package -n mmg3d Summary: Volume remesher Obsoletes: mmg3d-libs < 5.3.10 Provides: mmg3d-libs = %{version}-%{release} %description -n mmg3d The mmg3d application and library: adaptation and optimization of a tetrahedral mesh and implicit domain meshing. %package -n mmg3d-devel Summary: Development files for mmg3d Requires: mmg3d%{?_isa} = %{version}-%{release} %description -n mmg3d-devel The mmg3d-devel package contains libraries and header files for developing applications that use mmg3d %package -n mmg3d-devel-doc Summary: Development documentation for mmg3d Requires: mmg3d%{?_isa} = %{version}-%{release} %description -n mmg3d-devel-doc The mmg3d-devel-doc package contains the documentation for developing applications that use mmg3d ############################################################################### %prep %autosetup -p1 %build LDFLAGS="%{__global_ldflags} -Wl,--as-needed" %cmake \ -DBUILD_SHARED_LIBS=ON \ -Dlibmmg2d_so_SOVER=%{mmg2d_sover} \ -Dlibmmg3d_so_SOVER=%{mmg3d_sover} \ -Dlibmmgs_so_SOVER=%{mmgs_sover} \ -Dlibmmg_so_SOVER=%{mmg_sover} . %make_build make doc %install %make_install # Install suffix-less symlinks ln -s mmg2d_O3 %{buildroot}/%{_bindir}/mmg2d ln -s mmgs_O3 %{buildroot}/%{_bindir}/mmgs ln -s mmg3d_O3 %{buildroot}/%{_bindir}/mmg3d # Install man pages install -Dpm 0644 doc/man/mmg2d.1.gz %{buildroot}%{_mandir}/man1/mmg2d.1.gz install -Dpm 0644 doc/man/mmgs.1.gz %{buildroot}%{_mandir}/man1/mmgs.1.gz install -Dpm 0644 doc/man/mmg3d.1.gz %{buildroot}%{_mandir}/man1/mmg3d.1.gz %ldconfig_scriptlets %ldconfig_scriptlets -n mmg2d %ldconfig_scriptlets -n mmgs %ldconfig_scriptlets -n mmg3d %files %doc AUTHORS README.md %license LICENSE COPYING COPYING.LESSER %{_libdir}/libmmg.so.* %files devel %dir %{_includedir}/mmg %{_includedir}/mmg/libmmg.h %{_includedir}/mmg/libmmgf.h %{_libdir}/libmmg.so %files -n mmg2d %doc AUTHORS README.md %license LICENSE COPYING COPYING.LESSER %{_bindir}/mmg2d_O3 %{_bindir}/mmg2d %{_libdir}/libmmg2d.so.* %{_mandir}/man1/mmg2d.1* %files -n mmg2d-devel %dir %{_includedir}/mmg %{_includedir}/mmg/mmg2d/ %{_libdir}/libmmg2d.so %files -n mmg2d-devel-doc %doc doc/mmg2d/html %files -n mmgs %doc AUTHORS README.md %license LICENSE COPYING COPYING.LESSER %{_bindir}/mmgs_O3 %{_bindir}/mmgs %{_libdir}/libmmgs.so.* %{_mandir}/man1/mmgs.1* %files -n mmgs-devel %dir %{_includedir}/mmg %{_includedir}/mmg/mmgs/ %{_libdir}/libmmgs.so %files -n mmgs-devel-doc %doc doc/mmgs/html %files -n mmg3d %doc AUTHORS README.md %license LICENSE COPYING COPYING.LESSER %{_bindir}/mmg3d_O3 %{_bindir}/mmg3d %{_libdir}/libmmg3d.so.* %{_mandir}/man1/mmg3d.1* %files -n mmg3d-devel %dir %{_includedir}/mmg %{_includedir}/mmg/mmg3d/ %{_libdir}/libmmg3d.so %files -n mmg3d-devel-doc %doc doc/mmg3d/html %changelog * Thu Jan 24 2019 Sandro Mani - 5.3.13-1 - Update to 5.3.13 * Wed Aug 29 2018 Sandro Mani - 5.3.11-1 - Update to 5.3.11 * Thu Jul 19 2018 Sandro Mani - 5.3.10-4 - Rebuild (scotch) * Fri Jul 13 2018 Fedora Release Engineering - 5.3.10-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Sun Jun 10 2018 Sandro Mani - 5.3.10-2 - Use %%ldconfig_scriptlets - Move documentation to separate subpackages - Install man pages * Fri Jun 08 2018 Sandro Mani - 5.3.10-1 - Initial package