diff options
Diffstat (limited to 'vcpkg/ports/pmdk/portfile.cmake')
| -rw-r--r-- | vcpkg/ports/pmdk/portfile.cmake | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/vcpkg/ports/pmdk/portfile.cmake b/vcpkg/ports/pmdk/portfile.cmake new file mode 100644 index 0000000..9701c4c --- /dev/null +++ b/vcpkg/ports/pmdk/portfile.cmake @@ -0,0 +1,41 @@ +vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY ONLY_DYNAMIC_CRT) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO pmem/pmdk + REF 73d8f958e855904dc0776a7d77d0f0d3698a65b1 #v1.12.0 + SHA512 ffe77796c9028478985ca98e4162a671e3e7f580faa46b31d0dcf8c5e97aa6478044efdf7ad238285044f18f754a20a4e2a1b5992c7b9cffa709884eb62007ab + HEAD_REF master + PATCHES "remove_getopt.patch" +) + +file(REMOVE "${SOURCE_PATH}/src/windows/getopt" "${SOURCE_PATH}/src/test/getopt") + +# Build only the selected projects +vcpkg_msbuild_install( + SOURCE_PATH "${SOURCE_PATH}" + PROJECT_SUBPATH src/PMDK.sln + TARGET "Solution Items\\libpmem,Solution Items\\libpmemlog,Solution Items\\libpmemblk,Solution Items\\libpmemobj,Solution Items\\libpmempool,Solution Items\\Tools\\pmempool" + OPTIONS /p:SRCVERSION=${VERSION} + ADDITIONAL_LIBS getopt.lib +) + +set(DEBUG_ARTIFACTS_PATH "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/src/x64/Debug") +set(RELEASE_ARTIFACTS_PATH "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/src/x64/Release") + +# Install header files +file(GLOB HEADER_FILES "${SOURCE_PATH}/src/include/*.h") +file(INSTALL ${HEADER_FILES} DESTINATION "${CURRENT_PACKAGES_DIR}/include") +file(GLOB HEADER_FILES "${SOURCE_PATH}/src/include/libpmemobj/*.h") +file(INSTALL ${HEADER_FILES} DESTINATION "${CURRENT_PACKAGES_DIR}/include/libpmemobj") + +# Remove unneeded header files +file(REMOVE "${CURRENT_PACKAGES_DIR}/include/libvmmalloc.h") +file(REMOVE "${CURRENT_PACKAGES_DIR}/include/librpmem.h") + +# Install tools (release only) +file(INSTALL "${RELEASE_ARTIFACTS_PATH}/libs/pmempool.exe" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/${PORT}") + +vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/pmdk) + +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE") |