diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c0a2e11..65f8e95 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -70,8 +70,8 @@ jobs: libroadrunner_deps_owner: [ "sys-bio" ] libroadrunner_deps_repo: [ "libroadrunner-deps" ] libroadrunner_deps_name: [ "libroadrunner-deps" ] - libroadrunner_deps_release_version: [ "v2.2.22" ] - python_version: [ "3.11" ] + libroadrunner_deps_release_version: [ "v2.3.5" ] + python_version: [ "3.14" ] runs-on: ${{ matrix.platform.os_name }} container: image: ${{ matrix.platform.container_image || '' }} @@ -179,8 +179,9 @@ jobs: wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh bash Miniconda3-latest-Linux-x86_64.sh -b -p /Miniconda3 /Miniconda3/bin/conda create -y --name python${{ matrix.python_version }} python=${{ matrix.python_version }} - /Miniconda3/bin/conda init && bash ~/.bashrc && . ~/.bashrc cd ${RUNNER_WORKSPACE} - echo "export PATH=/Miniconda3/envs/python${{ matrix.python_version }}/bin:$PATH" >> "${GITHUB_ENV}" + cd ${RUNNER_WORKSPACE} + echo "/Miniconda3/envs/python${{ matrix.python_version }}/bin" >> "${GITHUB_PATH}" + echo "LD_LIBRARY_PATH=/Miniconda3/envs/python${{ matrix.python_version }}/lib:$LD_LIBRARY_PATH" >> "${GITHUB_ENV}" - name: Download Dependencies binaries shell: bash diff --git a/CMakeLists.txt b/CMakeLists.txt index 59bcd72..d5c53d6 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -47,29 +47,42 @@ else () endif () ## Find ZLIB -find_package(ZLIB CONFIG REQUIRED) -set(LIBZ_LIBRARY ZLIB::ZLIBSTATIC) -get_target_property(LIBZ_LIBRARY_LOCATION ZLIB::ZLIBSTATIC LOCATION) -message(STATUS "ZLIB Library: ${LIBZ_LIBRARY_LOCATION}") -set(ZLIB_LIBRARY "${LIBZ_LIBRARY_LOCATION}" CACHE FILEPATH "Path to zlib library" FORCE) -set(ZLIB_INCLUDE_DIR "${DEPENDENCIES_INSTALL_PREFIX}/include" CACHE PATH "Path to zlib include directory" FORCE) -set(ZLIB_FOUND TRUE CACHE BOOL "ZLIB found" FORCE) +option(WITH_ZLIB "Link libsbmlnetwork against zlib." ON) +set(LIBZ_LIBRARY "") +if (WITH_ZLIB) + find_package(ZLIB CONFIG REQUIRED) + set(LIBZ_LIBRARY ZLIB::ZLIBSTATIC) + get_target_property(LIBZ_LIBRARY_LOCATION ZLIB::ZLIBSTATIC LOCATION) + message(STATUS "ZLIB Library: ${LIBZ_LIBRARY_LOCATION}") + set(ZLIB_LIBRARY "${LIBZ_LIBRARY_LOCATION}" CACHE FILEPATH "Path to zlib library" FORCE) + set(ZLIB_INCLUDE_DIR "${DEPENDENCIES_INSTALL_PREFIX}/include" CACHE PATH "Path to zlib include directory" FORCE) + set(ZLIB_FOUND TRUE CACHE BOOL "ZLIB found" FORCE) +endif () ## Find expat -find_package(expat CONFIG REQUIRED) -set(EXPAT_LIBRARY expat::expat) -get_target_property(EXPAT_LIBRARY_LOCATION expat::expat LOCATION) -get_target_property(EXPAT_INCLUDE_DIR expat::expat INTERFACE_INCLUDE_DIRECTORIES) -message(STATUS "Expat Library: ${EXPAT_LIBRARY_LOCATION}") -message(STATUS "Expat Include: ${EXPAT_INCLUDE_DIR}") +if (DEFINED EXPAT_LIBRARY AND DEFINED EXPAT_INCLUDE_DIR) + message(STATUS "Expat Library: ${EXPAT_LIBRARY}") + message(STATUS "Expat Include: ${EXPAT_INCLUDE_DIR}") +else () + find_package(expat CONFIG REQUIRED) + set(EXPAT_LIBRARY expat::expat) + get_target_property(EXPAT_LIBRARY_LOCATION expat::expat LOCATION) + get_target_property(EXPAT_INCLUDE_DIR expat::expat INTERFACE_INCLUDE_DIRECTORIES) + message(STATUS "Expat Library: ${EXPAT_LIBRARY_LOCATION}") + message(STATUS "Expat Include: ${EXPAT_INCLUDE_DIR}") +endif () ## Find libSBML -find_package(${SBML_TARGET_NAME} CONFIG REQUIRED) -set(LIBSBML_LIBRARY ${SBML_TARGET_NAME}) -message(STATUS "libSBML Target: ${LIBSBML_LIBRARY}") +if (DEFINED LIBSBML_LIBRARY) + message(STATUS "libSBML Library: ${LIBSBML_LIBRARY}") +else () + find_package(${SBML_TARGET_NAME} CONFIG REQUIRED) + set(LIBSBML_LIBRARY ${SBML_TARGET_NAME}) + message(STATUS "libSBML Target: ${LIBSBML_LIBRARY}") +endif () ## Set dependencies include directory -set(DEPENDENCIES_INCLUDE_DIR "${DEPENDENCIES_INSTALL_PREFIX}/include") +set(DEPENDENCIES_INCLUDE_DIR "${DEPENDENCIES_INSTALL_PREFIX}/include" "${LIBSBML_INSTALL_PREFIX}/include" "${EXPAT_INCLUDE_DIR}") ## whether to build the dynamic version of the library set(BUILD_SHARED_LIBS ON CACHE BOOL "Build the dynamic version of the library")