Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cmake updates #602

Open
wants to merge 89 commits into
base: master
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
89 commits
Select commit Hold shift + click to select a range
6359119
add assertions in a bug hunt
sjunges May 24, 2024
5223187
Merge branch 'master' of https://github.com/moves-rwth/storm
sjunges Jun 1, 2024
976bd76
Merge branch 'master' of https://github.com/moves-rwth/storm
sjunges Jun 4, 2024
bdbc3cb
Merge branch 'master' of https://github.com/moves-rwth/storm
sjunges Aug 20, 2024
52cfeea
removed untargeted include directories in favour of targeted include …
sjunges Aug 20, 2024
a221bd6
fix version exporting
sjunges Aug 20, 2024
0849dcb
Merge branch 'targetincludes' into stormpyprep
sjunges Aug 20, 2024
c7080da
stormversion prolbem
sjunges Aug 20, 2024
34b0323
cmake_dir to project_dir
sjunges Aug 20, 2024
87e6585
carl via fetchcontent
sjunges Aug 26, 2024
4e9cc97
update
sjunges Aug 28, 2024
120be47
Merge branch 'master' of https://github.com/moves-rwth/storm
sjunges Aug 28, 2024
db17d6f
Merge branch 'master' into stormpyprep
sjunges Aug 28, 2024
59dd288
upate
sjunges Aug 28, 2024
4bccfc9
updates
sjunges Aug 28, 2024
dbff1a8
updates
sjunges Sep 3, 2024
0508d75
Merge branch 'master' of https://github.com/moves-rwth/storm
sjunges Sep 4, 2024
cdc5c9f
Merge branch 'master' into stormpyprep
sjunges Sep 4, 2024
9531c6e
updates
sjunges Sep 4, 2024
927f22d
update
sjunges Sep 4, 2024
fbec5e3
Merge branch 'master' of https://github.com/moves-rwth/storm
sjunges Sep 25, 2024
3f77cdc
Merge branch 'master' of https://github.com/moves-rwth/storm
sjunges Nov 9, 2024
d76f1df
Merge branch 'master' of https://github.com/moves-rwth/storm
sjunges Jan 13, 2025
891651f
Merge branch 'master' of https://github.com/moves-rwth/storm
sjunges Jan 14, 2025
9782fb6
Merge branch 'master' of https://github.com/moves-rwth/storm
sjunges Jan 14, 2025
2ccf76f
Merge branch 'master' of https://github.com/moves-rwth/storm
sjunges Feb 3, 2025
029c09f
Merge branch 'master' into stormpyprep
sjunges Feb 4, 2025
2063d88
update some wip stuff
sjunges Feb 4, 2025
2588658
outdated skip
sjunges Feb 4, 2025
56c209d
updates to cmake building
sjunges Feb 11, 2025
77f69ce
Merge branch 'master' of https://github.com/moves-rwth/storm into sto…
sjunges Feb 11, 2025
60ec049
setting the version in some libs
sjunges Feb 12, 2025
692a95c
various updates, including some suggestions by MV
sjunges Feb 18, 2025
eb8ba83
target sources
sjunges Feb 19, 2025
250facd
buildtest stuff from MV and no more ubuntu 22.04
sjunges Feb 19, 2025
a73d3c9
typo
sjunges Feb 19, 2025
90777e7
towards an installable storm version
sjunges Feb 26, 2025
ef3a458
missing files and no old flag
sjunges Feb 26, 2025
9c3dbd6
fix commit hash for carl (for now)
sjunges Feb 26, 2025
608098e
update
sjunges Feb 26, 2025
d6b1bba
latest carl version
sjunges Feb 26, 2025
b140350
fix dependency
sjunges Feb 26, 2025
6fd5561
sylvan PIC
sjunges Feb 26, 2025
e5ff962
bugfix?
sjunges Feb 26, 2025
d17c478
pch support on linux
sjunges Feb 27, 2025
a67fad6
use carl config again
sjunges Feb 27, 2025
89ee454
add make install
sjunges Feb 27, 2025
c101a75
warning disable doesnt work
sjunges Feb 27, 2025
9bb1e97
better info
sjunges Feb 27, 2025
c88d838
no sylvan assert
sjunges Feb 27, 2025
bb68a25
Merge branch 'master' of https://github.com/moves-rwth/storm
sjunges Feb 27, 2025
f5d972b
Merge branch 'master' into stormpyprep
sjunges Feb 27, 2025
f58fe30
exit code 0 on --version
sjunges Feb 27, 2025
ae7c57a
warnings and compile flags
sjunges Mar 2, 2025
9c9acb4
updates based on CI and z3 support for older versions
sjunges Mar 2, 2025
b69e600
format and co
sjunges Mar 2, 2025
f0c68dd
find z3
sjunges Mar 2, 2025
2172aaa
ci update
sjunges Mar 3, 2025
a30d9d1
updates
sjunges Mar 3, 2025
e65ee20
ci updates (thanks MV)
sjunges Mar 3, 2025
03377ee
no shipped glpk
sjunges Mar 3, 2025
fe4a6d6
ci
sjunges Mar 3, 2025
51368b8
fix
sjunges Mar 3, 2025
f46d0c8
test?
sjunges Mar 3, 2025
806bd1e
update ci
sjunges Mar 4, 2025
2a7dbd9
updates
sjunges Mar 4, 2025
1e69891
updates in CI
sjunges Mar 7, 2025
073d5b7
Merge branch 'master' into stormpyprep
sjunges Mar 7, 2025
0d4511a
updates in spot
sjunges Mar 7, 2025
1346040
Merge branch 'stormpyprep' of https://github.com/sjunges/storm into s…
sjunges Mar 7, 2025
598ec36
update carl
sjunges Mar 10, 2025
994d640
build starter proj using installed storm
sjunges Mar 23, 2025
aa040f4
update
sjunges Mar 23, 2025
8d3ddd5
merge
sjunges Mar 23, 2025
9ab2f1f
update
sjunges Mar 23, 2025
ade2c8f
log output on failure
sjunges Mar 23, 2025
897c24f
toplevel
sjunges Mar 23, 2025
6045c6d
updates
sjunges Mar 24, 2025
a1d8b48
various fixes
sjunges Mar 24, 2025
d85bad5
updates
sjunges Mar 25, 2025
42065e8
updates
sjunges Mar 25, 2025
73f5950
Merge branch 'master' into stormpyprep
sjunges Mar 25, 2025
2e9865e
update
sjunges Mar 25, 2025
12dd139
Merge branch 'stormpyprep' of https://github.com/sjunges/storm into s…
sjunges Mar 25, 2025
8bb20dc
update
sjunges Mar 26, 2025
bdafdcc
fix mathsat
sjunges Mar 26, 2025
ff742e0
fix
sjunges Mar 26, 2025
7bcfc57
update
sjunges Mar 26, 2025
02e7b9e
test?
sjunges Mar 26, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
various fixes
sjunges committed Mar 24, 2025
commit a1d8b489e5af7daef3345cbc6bf6926b154f6832
24 changes: 15 additions & 9 deletions .github/workflows/buildtest.yml
Original file line number Diff line number Diff line change
@@ -207,9 +207,11 @@ jobs:
docker exec ci bash -c "cd /opt/storm-starter; git checkout cmakeupdates"
- name: Configure and make starter project on installed storm.
run: |
docker exec ci bash -c "cd /opt/storm-starter; mkdir build-installed; cd build-installed; cmake .."
docker exec ci bash -c "cd /opt/storm-starter/build-installed make -j ${NR_JOBS}"
docker exec ci bash -c "mv /opt/storm/build /opt/storm/build-backup"
docker exec ci bash -c "cd /opt/storm-starter; mkdir build-installed; cd build-installed; cmake -DNEVER_FETCH_STORM=TRUE .."
docker exec ci bash -c "cd /opt/storm-starter/build-installed; make -j ${NR_JOBS}"
docker exec ci bash -c "/opt/storm-starter/build-installed/bin/starter-project"
docker exec ci bash -c "mv /opt/storm/build-backup /opt/storm/build"

linuxTests:
name: Linux Tests (${{ matrix.distro }}, ${{ matrix.buildType }})
@@ -266,9 +268,11 @@ jobs:
docker exec ci bash -c "cd /opt/storm-starter; git checkout cmakeupdates"
- name: Configure and make starter project on installed storm.
run: |
docker exec ci bash -c "cd /opt/storm-starter; mkdir build-installed; cd build-installed; cmake .."
docker exec ci bash -c "cd /opt/storm-starter/build-installed make -j ${NR_JOBS}"
docker exec ci bash -c "mv /opt/storm/build /opt/storm/build-backup"
docker exec ci bash -c "cd /opt/storm-starter; mkdir build-installed; cd build-installed; cmake -DNEVER_FETCH_STORM=TRUE .."
docker exec ci bash -c "cd /opt/storm-starter/build-installed; make -j ${NR_JOBS}"
docker exec ci bash -c "/opt/storm-starter/build-installed/bin/starter-project"
docker exec ci bash -c "mv /opt/storm/build-backup /opt/storm/build"
macTests:
name: macOS Tests (${{ matrix.config.name }})
strategy:
@@ -338,13 +342,13 @@ jobs:
run: ctest test--output-on-failure
- name: Install storm
working-directory: ./build
run: make install
run: sudo make install
- name: Run installed storm
working-directory: .
run: |
mv /opt/storm/build /opt/storm/build-backup
mv ${GITHUB_WORKSPACE}/build ${GITHUB_WORKSPACE}/build-backup
/usr/local/bin/storm --version"
mv /opt/storm/build-backup /opt/storm/build
mv ${GITHUB_WORKSPACE}/build-backup ${GITHUB_WORKSPACE}/build
deploy:
name: Test and Deploy (${{ matrix.buildType.name }})
runs-on: ubuntu-latest
@@ -412,9 +416,11 @@ jobs:
docker exec ci bash -c "cd /opt/storm-starter; git checkout cmakeupdates"
- name: Configure and make starter project on installed storm.
run: |
docker exec ci bash -c "cd /opt/storm-starter; mkdir build-installed; cd build-installed; cmake .."
docker exec ci bash -c "cd /opt/storm-starter/build-installed make -j ${NR_JOBS}"
docker exec ci bash -c "mv /opt/storm/build /opt/storm/build-backup"
docker exec ci bash -c "cd /opt/storm-starter; mkdir build-installed; cd build-installed; cmake -DNEVER_FETCH_STORM=TRUE .."
docker exec ci bash -c "cd /opt/storm-starter/build-installed; make -j ${NR_JOBS}"
docker exec ci bash -c "/opt/storm-starter/build-installed/bin/starter-project"
docker exec ci bash -c "mv /opt/storm/build-backup /opt/storm/build"
- name: Login into docker
# Only login if using master on original repo (and not for pull requests or forks)
if: github.repository_owner == 'moves-rwth' && github.ref == 'refs/heads/master'
3 changes: 3 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -485,6 +485,9 @@ message(STATUS "Storm - Build type: ${CMAKE_BUILD_TYPE}")
# in the the system does not have a library
include(resources/3rdparty/CMakeLists.txt)

SET(STORM_HAVE_LP_SOLVER (STORM_HAVE_GLPK OR STORM_HAVE_GUROBI OR STORM_HAVE_SOPLEX OR STORM_HAVE_Z3_OPTIMIZE))


if(PROJECT_IS_TOP_LEVEL)
# Include Doxygen
include(resources/doxygen/CMakeLists.txt)
4 changes: 4 additions & 0 deletions resources/3rdparty/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -205,6 +205,7 @@ find_package(Z3 QUIET 4.8.7 NO_MODULE)
# Notice that such old z3 versions do not provide config files, so we could bump this version ahead.
if(TARGET z3::libz3)
set(STORM_HAVE_Z3 ON)
set(STORM_Z3_CONFIG ON) # For the config file, did we include z3 via a config (yes)

set(Z3_VERSION "${Z3_VERSION_MAJOR}.${Z3_VERSION_MINOR}.${Z3_VERSION_PATCH}")

@@ -223,7 +224,10 @@ else()
find_package(Z3 QUIET 4.8.7)

if (Z3_FOUND)

set(STORM_HAVE_Z3 ON)
set(STORM_Z3_CONFIG OFF) # For the config file, did we include z3 via a config (no)

if ("${Z3_VERSION}" VERSION_EQUAL "4.10.1")
message (WARNING "Storm cannot be linked against Z3 version 4.10.1, see issue 252.")
message(WARNING "Storm - Could not link with z3. Building of Prism/JANI models will not be supported.")
26 changes: 0 additions & 26 deletions resources/3rdparty/include_glpk.cmake
Original file line number Diff line number Diff line change
@@ -18,31 +18,5 @@ if(GLPK_FOUND)
else()
message (WARNING "Storm - Not using GLPK.")
endif()
# set(GLPK_LIB_DIR ${STORM_3RDPARTY_BINARY_DIR}/glpk-5.0/lib)
#
# # Set sysroot to circumvent problems in macOS "Mojave" (or higher) where the header files are no longer in /usr/include
# set(GLPK_INCLUDE_FLAGS "")
# if (CMAKE_OSX_SYSROOT)
# set(GLPK_INCLUDE_FLAGS "CPPFLAGS=--sysroot=${CMAKE_OSX_SYSROOT}")
# endif()
#
# ExternalProject_Add(glpk_ext
# DOWNLOAD_COMMAND ""
# PREFIX ${STORM_3RDPARTY_BINARY_DIR}/glpk-5.0
# SOURCE_DIR ${STORM_3RDPARTY_SOURCE_DIR}/glpk-5.0
# CONFIGURE_COMMAND ${STORM_3RDPARTY_SOURCE_DIR}/glpk-5.0/configure --prefix=${STORM_3RDPARTY_BINARY_DIR}/glpk-5.0 --libdir=${GLPK_LIB_DIR} CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} ${GLPK_INCLUDE_FLAGS}
# BUILD_COMMAND make "CFLAGS=-O3 -w" -j${STORM_RESOURCES_BUILD_JOBCOUNT}
# INSTALL_COMMAND make install -j${STORM_RESOURCES_BUILD_JOBCOUNT}
# BUILD_IN_SOURCE 0
# LOG_CONFIGURE ON
# LOG_BUILD ON
# LOG_INSTALL ON
# BUILD_BYPRODUCTS ${GLPK_LIB_DIR}/libglpk${DYNAMIC_EXT} ${GLPK_LIB_DIR}/libglpk${STATIC_EXT}
# )
# set(GLPK_LIBRARIES ${GLPK_LIB_DIR}/libglpk${DYNAMIC_EXT})
# set(GLPK_INCLUDE_DIR ${STORM_3RDPARTY_BINARY_DIR}/glpk-5.0/include)
# set(GLPK_VERSION_STRING 5.0)
# add_dependencies(storm_resources glpk_ext)
#endif()


1 change: 1 addition & 0 deletions src/storm-config.h.in
Original file line number Diff line number Diff line change
@@ -82,6 +82,7 @@
#cmakedefine STORM_HAVE_SOPLEX
#cmakedefine STORM_HAVE_SPOT
#cmakedefine STORM_HAVE_XERCES
#cmakedefine STORM_HAVE_LP_SOLVER
// Whether Intel Threading Building Blocks are available and to be used
#cmakedefine STORM_HAVE_INTELTBB
// Whether LTL model checking shall be enabled
4 changes: 4 additions & 0 deletions src/test/storm/solver/LpSolverTest.cpp
Original file line number Diff line number Diff line change
@@ -22,7 +22,11 @@ class DefaultEnvironment {
static const bool strictRelationSupport = true;

static bool skip() {
#ifdef STORM_HAVE_LP_SOLVER
return false;
#else
return true;
#endif
}
};