Skip to content

Commit

Permalink
feat(hermes-shm): add all features
Browse files Browse the repository at this point in the history
  • Loading branch information
hdfeos committed Jan 22, 2025
1 parent 7da25d3 commit ec35799
Show file tree
Hide file tree
Showing 2 changed files with 94 additions and 23 deletions.
49 changes: 39 additions & 10 deletions ports/hermes-shm/portfile.cmake
Original file line number Diff line number Diff line change
@@ -1,18 +1,47 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO grc-iit/hermes-shm
REF "v${VERSION}"
SHA512 83b9253b2172587ac60a75f1501417d42bc0fe7045291a66aad1bb196eb7ff26d67cdd8fafce8fbeb412decd52d82a9df7fefed227a5eb8bcf212c058520bf60
HEAD_REF master
PATCHES
random.patch
)
if(VCPKG_TARGET_IS_OSX)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO grc-iit/hermes-shm
REF "v${VERSION}"
SHA512 83b9253b2172587ac60a75f1501417d42bc0fe7045291a66aad1bb196eb7ff26d67cdd8fafce8fbeb412decd52d82a9df7fefed227a5eb8bcf212c058520bf60
HEAD_REF master
PATCHES
random.patch
sysinfo.patch
)
else()
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO grc-iit/hermes-shm
REF "v${VERSION}"
SHA512 83b9253b2172587ac60a75f1501417d42bc0fe7045291a66aad1bb196eb7ff26d67cdd8fafce8fbeb412decd52d82a9df7fefed227a5eb8bcf212c058520bf60
HEAD_REF master
PATCHES
random.patch
)
endif()


vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
bench BUILD_HSHM_BENCHMARKS
boost BUILD_Boost_TESTS
cereal HERMES_ENABLE_CEREAL
coverage HERMES_ENABLE_COVERAGE
doxygen HERMES_ENABLE_DOXYGEN
elf HERMES_USE_ELF
mpi BUILD_MPI_TESTS
openmp BUILD_OpenMP_TESTS
pthread HERMES_PTHREADS_ENABLED
shared BUILD_SHARED_LIBS
test BUILD_HSHM_TESTS
thallium HERMES_RPC_THALLIUM
)

vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
-DHERMES_ENABLE_DOXYGEN=OFF
${FEATURE_OPTIONS}
)

vcpkg_cmake_install()
Expand Down
68 changes: 55 additions & 13 deletions ports/hermes-shm/vcpkg.json
Original file line number Diff line number Diff line change
@@ -1,15 +1,57 @@
{
"name": "hermes-shm",
"version": "1.1.0",
"homepage": "https://grc.iit.edu/hermes-shm/",
"description": "This library contains a variety of data structures and synchronization primitives which are compatible with shared memory.",
"license": "BSD-3-Clause",
"dependencies": [
{
"name": "vcpkg-cmake",
"host": true
},
"catch2",
"cereal"
]
"name": "hermes-shm",
"version": "1.1.0",
"homepage": "https://grc.iit.edu/hermes-shm/",
"description": "This library contains a variety of data structures and synchronization primitives which are compatible with shared memory.",
"license": "BSD-3-Clause",
"dependencies": [
{
"name": "vcpkg-cmake",
"host": true
},
"catch2"
],
"default-features": ["bench","boost","cereal","coverage","doxygen","elf","mpi","openmp","pthread","shared","test","thallium"],
"features": {
"bench": {
"description": "Build benchmarks"
},
"boost": {
"description": "Build Boost tests",
"dependencies": ["boost"]
},
"cereal": {
"description": "Enable serialization using cereal",
"dependencies": ["cereal"]
},
"coverage": {
"description": "Check how well tests cover code"
},
"doxygen": {
"description": "Check how well the code is documented"
},
"elf": {
"description": "Enable ELF"
},
"mpi": {
"description": "Build MPI tests",
"dependencies": ["mpi"]
},
"openmp": {
"description": "Build OpenMP tests"
},
"pthread": {
"description": "Support spawning pthreads"
},
"shared": {
"description": "Build shared libraries"
},
"test": {
"description": "Build tests"
},
"thallium": {
"description": "Test with Thallium",
"dependencies": ["thallium"]
}
}
}

0 comments on commit ec35799

Please sign in to comment.