diff --git a/.gitignore b/.gitignore index 9d1e74f..4a58bf0 100644 --- a/.gitignore +++ b/.gitignore @@ -23,3 +23,4 @@ /COPASI-Build-170.tar.gz /COPASI-Build-184.tar.gz /COPASI-Build-197.tar.gz +/COPASI-Build-207.tar.gz diff --git a/COPASI-find_crossguid2.patch b/COPASI-find_crossguid2.patch new file mode 100644 index 0000000..137971c --- /dev/null +++ b/COPASI-find_crossguid2.patch @@ -0,0 +1,56 @@ +--- CMakeModules/FindCROSSGUID.orig.cmake 2019-03-23 19:54:03.269453000 +0100 ++++ CMakeModules/FindCROSSGUID.cmake 2019-03-23 19:56:45.218630640 +0100 +@@ -16,11 +16,11 @@ + # $CROSSGUID_DIR is an environment variable that would + # correspond to the ./configure --prefix=$CROSSGUID_DIR + +-find_package(crossguid CONFIG REQUIRED +- CONFIGS crossguid-config.cmake ++find_package(crossguid2 CONFIG REQUIRED ++ CONFIGS crossguid2-config.cmake + PATHS $ENV{CROSSGUID_DIR}/${CMAKE_INSTALL_LIBDIR}/cmake + ${COPASI_DEPENDENCY_DIR}/${CMAKE_INSTALL_LIBDIR}/cmake +- /usr/${CMAKE_INSTALL_LIBDIR}/cmake ++ ${CMAKE_INSTALL_LIBDIR}/cmake/crossguid2 + ) + + if (NOT CROSSGUID_FOUND) +@@ -29,6 +29,7 @@ + find_path(CROSSGUID_INCLUDE_DIR crossguid/guid.hpp + PATHS $ENV{CROSSGUID_DIR}/include + $ENV{CROSSGUID_DIR} ++ ${INCLUDE_INSTALL_DIR}/crossguid2 + ${COPASI_DEPENDENCY_DIR}/include + ${COPASI_DEPENDENCY_DIR} + ~/Library/Frameworks +@@ -45,10 +46,10 @@ + endif (NOT CROSSGUID_INCLUDE_DIR) + + find_library(CROSSGUID_LIBRARY +- NAMES crossguid crossguid-dgb ++ NAMES crossguid2 crossguid-dgb + PATHS $ENV{CROSSGUID_DIR}/lib + $ENV{CROSSGUID_DIR} +- ${COPASI_DEPENDENCY_DIR}/${CMAKE_INSTALL_LIBDIR} ++ ${CMAKE_INSTALL_LIBDIR} + ${COPASI_DEPENDENCY_DIR}/lib + ${COPASI_DEPENDENCY_DIR} + ~/Library/Frameworks +@@ -73,14 +74,14 @@ + else () + set(CROSSGUID_FOUND ${crossguid_FOUND}) + +- get_target_property(CROSSGUID_INCLUDE_DIR crossguid INTERFACE_INCLUDE_DIRECTORIES) +- get_target_property(CROSSGUID_LIBRARY crossguid IMPORTED_LOCATION_RELEASE) ++ get_target_property(CROSSGUID_INCLUDE_DIR crossguid2 INTERFACE_INCLUDE_DIRECTORIES) ++ get_target_property(CROSSGUID_LIBRARY crossguid2 IMPORTED_LOCATION_RELEASE) + + if (NOT CROSSGUID_LIBRARY) + get_target_property(CROSSGUID_LIBRARY crossguid IMPORTED_LOCATION_DEBUG) + endif() + +- get_target_property(CROSSGUID_INTERFACE_LINK_LIBRARIES crossguid INTERFACE_LINK_LIBRARIES) ++ get_target_property(CROSSGUID_INTERFACE_LINK_LIBRARIES crossguid2 INTERFACE_LINK_LIBRARIES) + + if (CROSSGUID_INTERFACE_LINK_LIBRARIES) + set(CROSSGUID_LIBRARY ${CROSSGUID_LIBRARY} ${CROSSGUID_INTERFACE_LINK_LIBRARIES}) diff --git a/COPASI-fix_install_libpaths.patch b/COPASI-fix_install_libpaths.patch index 8f03174..c5aabf0 100644 --- a/COPASI-fix_install_libpaths.patch +++ b/COPASI-fix_install_libpaths.patch @@ -105,7 +105,7 @@ # they still work with the current objectmodel --- copasi/bindings/octave/CMakeLists.orig.txt 2015-01-07 15:45:42.000000000 +0100 +++ copasi/bindings/octave/CMakeLists.txt 2015-01-08 18:34:10.609971192 +0100 -@@ -145,12 +145,12 @@ +@@ -147,12 +147,12 @@ # set(OCTAVE_PACKAGE_INSTALL_DIR) if (UNIX OR CYGWIN) @@ -118,5 +118,5 @@ -INSTALL(TARGETS binding_octave_lib DESTINATION ${OCTAVE_PACKAGE_INSTALL_DIR} ) +INSTALL(TARGETS binding_octave_lib PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE DESTINATION ${OCTAVE_PACKAGE_INSTALL_DIR}) - add_test(NAME octave_test_version - COMMAND octave --no-gui --eval "COPASI;display(COPASI.CVersion.VERSION.getVersion())" + set(OCTAVE_INTERPRETER "octave" CACHE STRING "full path to the octave interpreter to be used for running tests." ) + diff --git a/COPASI.spec b/COPASI.spec index 164aec8..80ab596 100644 --- a/COPASI.spec +++ b/COPASI.spec @@ -1,4 +1,4 @@ -%global buildid 197 +%global buildid 207 %global octpkg COPASI %global with_python3 1 @@ -26,7 +26,8 @@ %global with_mono 1 %else %global with_mono 0 -Obsoletes: %{name}-sharp < 4.24.197-7 + +Obsoletes: COPASI-sharp < 4.24.197-7 %endif %endif # @@ -44,8 +45,8 @@ Obsoletes: %{name}-sharp < 4.24.197-7 Name: COPASI Summary: Biochemical network simulator -Version: 4.24.%{buildid} -Release: 8%{?dist} +Version: 4.25.%{buildid} +Release: 1%{?dist} ##Artistic 2.0 is main license ##GPLv2+ is related to a Mixed Source Licensing Scenario @@ -87,12 +88,8 @@ BuildRequires: cppunit-devel BuildRequires: libcurl-devel BuildRequires: libxslt-devel BuildRequires: pkgconf-pkg-config -%ifarch %{openblas_arches} -BuildRequires: openblas-devel, openblas-srpm-macros -%else -BuildRequires: blas-devel -BuildRequires: lapack-devel -%endif +BuildRequires: openblas-devel, openblas-srpm-macros, lapack-devel +BuildRequires: crossguid2-devel >= 0:0.2.2 BuildRequires: desktop-file-utils BuildRequires: swig BuildRequires: expat-devel @@ -102,17 +99,7 @@ BuildRequires: cmake, gcc, gcc-c++ BuildRequires: bison BuildRequires: ImageMagick BuildRequires: libappstream-glib -# Use new minizip starting from fedora 30 -# rhbz #1632172 -%if 0%{?fedora} == 29 -BuildRequires: minizip-compat-devel -%endif -%if 0%{?fedora} == 28 -BuildRequires: minizip-devel -%endif -%if 0%{?fedora} >= 30 -#BuildRequires: minizip-devel >= 2.5.0 -%endif +BuildRequires: minizip-devel Requires: %{name}-data = %{version}-%{release} Requires: libsedml%{?_isa} >= 1:0.4.3-3 @@ -138,7 +125,10 @@ Patch4: %{name}-fix_exe_permissions.patch Patch5: %{name}-set_QWTPLOT3D_QT5.patch ##This patch sets paths to find libCombine files on Fedora -Patch6: COPASI-libCombine_paths.patch +Patch6: %{name}-libCombine_paths.patch + +##This patch sets paths to find libcroosguid2 files on Fedora +Patch7: %{name}-find_crossguid2.patch %description COPASI is a software application for simulation and analysis of biochemical @@ -266,9 +256,10 @@ for file in `find copasi -type f \( -name "*.cpp" \)`; do mv $file.new $file done -%patch0 -p0 -%patch4 -p0 -%patch6 -p0 +%patch0 -p0 -b .fix_install_libpaths +%patch4 -p0 -b .fix_exe_permissions +%patch6 -p0 -b .libCombine_paths +%patch7 -p0 -b .find_crossguid2 %if 0%{?with_qwt6} %patch3 -p0 @@ -290,17 +281,7 @@ sed -e 's|@@_libmml_libdir@@|%{_qt5_libdir}|g' -i CMakeModules/FindQtMmlQt4.cmak %build mkdir -p build && pushd build -export CXXFLAGS="-DF2C_INTEGER=int -DF2C_LOGICAL=long %{optflags} %{__global_ldflags} -DCOPASI_OVERWRITE_USE_LAPACK -DNO_BLAS_WRAP" - -%ifarch %{openblas_arches} -export LIBBLAS=libopenblas.so -export INCBLAS=%{_includedir}/openblas -%else -export LIBBLAS=libblas.so -export LIBLAPACK=liblapack.so -export INCBLAS=%{_includedir} -%endif - +export CXXFLAGS="-I$PWD/../copasi/lapack -DF2C_INTEGER=int -DF2C_LOGICAL=long %{optflags} %{__global_ldflags}" %cmake -Wno-dev \ -DCOPASI_OVERRIDE_VERSION:STRING=%{version} \ %if 0%{?with_python3} @@ -342,14 +323,17 @@ export INCBLAS=%{_includedir} -DQWT_VERSION_STRING:STRING="%(pkg-config --modversion Qt5Qwt6)" \ -DQWT_LIBRARY:FILEPATH=%{_qt5_libdir}/libqwt-qt5.so \ -DQWT_INCLUDE_DIR:PATH=%{_qt5_headerdir}/qwt \ - -DBUILD_GUI:BOOL=ON -DBUILD_COPASISBW:BOOL=ON --DENABLE_MML:BOOL=ON -DENABLE_USE_SBMLUNIT=ON \ + -DBUILD_GUI:BOOL=ON -DBUILD_COPASISBW:BOOL=ON -DENABLE_MML:BOOL=ON -DENABLE_USE_SBMLUNIT=ON \ -DCMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING="%{__global_ldflags} -pthread" \ -DCMAKE_EXE_LINKER_FLAGS:STRING="%{__global_ldflags}" \ -DMML_INCLUDE_DIR:PATH=%{_qt5_headerdir}/libmml-qt5 -DMML_LIBRARY:FILEPATH=%{_qt5_libdir}/libmml.so \ -DENABLE_SBW_INTEGRATION=ON -DBUILD_CXX_EXAMPLES=OFF \ -DENABLE_COPASI_BANDED_GRAPH:BOOL=ON -DENABLE_COPASI_SEDML:BOOL=ON \ -DENABLE_COPASI_NONLIN_DYN_OSCILLATION:BOOL=ON -DENABLE_COPASI_EXTUNIT:BOOL=ON \ - -DBLAS_blas_LIBRARY:FILEPATH=%{_libdir}/$LIBBLAS -DLAPACK_lapack_LIBRARY:FILEPATH=%{_libdir}/$LIBLAPACK -DCLAPACK_INCLUDE_DIR:PATH=$INCBLAS \ + -DBLAS_blas_LIBRARY:FILEPATH=%{_libdir}/libopenblas.so -DBLAS_INCLUDE_DIR:PATH=%{_includedir}/openblas \ + -DCLAPACK_INCLUDE_DIR:PATH= -DLAPACK_lapack_LIBRARY:FILEPATH=%{_libdir}/liblapack.so -DCLAPACK_LIBRARIES:FILEPATH= \ + -DCOPASI_OVERWRITE_USE_LAPACK:BOOL=ON -DNO_BLAS_WRAP:BOOL=ON -DBLA_VENDOR=Generic \ + -DCROSSGUID_INCLUDE_DIR:PATH=%{_includedir}/crossguid2 \ -DENABLE_FLEX_BISON:BOOL=ON -DENABLE_COPASI_PARAMETERFITTING_RESIDUAL_SCALING:BOOL=ON \ -DENABLE_WITH_MERGEMODEL:BOOL=ON -DENABLE_USE_MATH_CONTAINER:BOOL=ON \ -DLIBSBML_INCLUDE_DIR:PATH=%{_includedir}/sbml -DLIBSBML_SHARED:BOOL=ON -DLIBSBML_LIBRARY:FILEPATH=%{_libdir}/libsbml.so \ @@ -470,6 +454,11 @@ appstream-util validate-relax --nonet $RPM_BUILD_ROOT%{_metainfodir}/*.appdata.x %{_datadir}/copasi/doc/ %changelog +* Sat Mar 16 2019 Antonio Trande - 4.25.207-1 +- Release 4.25 build-207 +- Use openblas always +- Add crossguid dependency + * Fri Mar 08 2019 Antonio Trande - 4.24.197-8 - Obsolete COPASI-sharp on fedora 30+/pp64* (rhbz#1588734,#1686738) diff --git a/sources b/sources index f6d5ba2..dc418ef 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (COPASI-Build-197.tar.gz) = 273d4144f81bc65af819583141a754bc2e7c50e26bdcf15265045e19434740d84a5ce8ac09aab393658ff20da48f7a487acb7fd58aebdf483df3b40917b3ef30 +SHA512 (COPASI-Build-207.tar.gz) = eda3c4416912f73849b701c60accf4a1f49317623ba23fea3d4dc6a437b2417a91ae71b9bafa448b57d3ce0e1928b078593b75acdd9bc8ddc9d3973683130603