vcpkg/ports/e2fsprogs/portfile.cmake (90 lines of code) (raw):

set(VERSION 1.47.2) message(WARNING "${PORT} currently requires the following packages:\n" " x64: gcc-x86-64-linux-gnu g++-x86-64-linux-gnu binutils-x86-64-linux-gnu pkg-config-x86-64-linux-gnu\n" " arm: gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf binutils-arm-linux-gnueabihf pkg-config-arm-linux-gnueabihf\n" " arm64: gcc-aarch64-linux-gnu g++-aarch64-linux-gnu binutils-aarch64-linux-gnu pkg-config-aarch64-linux-gnu\n" ) if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Linux") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO tytso/e2fsprogs REF ff64357f839071968a727f8b5a08b0ddaedc5bbb SHA512 af19134b97df86ce33564ef0a7f357125af4171d8a1862f775e6404ca6e104223b06b2eeaea6064ba184c410688ca8f95901389b5562bbb551767e230615cdde HEAD_REF main PATCHES get_current_physblock.patch ) if (VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") set(HOST "x86_64-linux-gnu") elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64") set(HOST "aarch64-linux-gnu") elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "arm") set(HOST "arm-linux-gnueabihf") endif() vcpkg_configure_make( SOURCE_PATH ${SOURCE_PATH} OPTIONS --target=${HOST} --host=${HOST} ) vcpkg_install_make() vcpkg_copy_pdbs() file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/e2fsprogs-config.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" ) find_path(EXT2_FS_INCLUDE_DIR ext2_fs.h PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/include" NO_DEFAULT_PATH) file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/e2fsprogs) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/e2fsprogs/info) file(INSTALL ${SOURCE_PATH}/NOTICE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) else() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO tytso/e2fsprogs REF ff64357f839071968a727f8b5a08b0ddaedc5bbb SHA512 af19134b97df86ce33564ef0a7f357125af4171d8a1862f775e6404ca6e104223b06b2eeaea6064ba184c410688ca8f95901389b5562bbb551767e230615cdde HEAD_REF main PATCHES get_current_physblock.patch windows-msvc.patch ) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA ) vcpkg_install_cmake() vcpkg_copy_pdbs() file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/e2fsprogs-config.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" ) file(INSTALL ${SOURCE_PATH}/lib/ext2fs/bitops.h ${SOURCE_PATH}/lib/ext2fs/ext2_err.h ${SOURCE_PATH}/lib/ext2fs/ext2_ext_attr.h ${SOURCE_PATH}/lib/ext2fs/ext2_fs.h ${SOURCE_PATH}/lib/ext2fs/ext2_io.h ${SOURCE_PATH}/lib/ext2fs/ext2_types.h ${SOURCE_PATH}/lib/ext2fs/ext2fs.h ${SOURCE_PATH}/lib/ext2fs/ext3_extents.h ${SOURCE_PATH}/lib/ext2fs/hashmap.h ${SOURCE_PATH}/lib/ext2fs/qcow2.h ${SOURCE_PATH}/lib/ext2fs/tdb.h DESTINATION ${CURRENT_PACKAGES_DIR}/include/ext2fs ) file(INSTALL ${SOURCE_PATH}/lib/et/com_err.h DESTINATION ${CURRENT_PACKAGES_DIR}/include ) file(INSTALL ${SOURCE_PATH}/lib/et/com_err.h DESTINATION ${CURRENT_PACKAGES_DIR}/include/et ) file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") find_path(EXT2_FS_INCLUDE_DIR ext2_fs.h PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/include" NO_DEFAULT_PATH) file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/e2fsprogs) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/e2fsprogs/info) file(INSTALL ${SOURCE_PATH}/NOTICE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) endif()