Merge pull request #1321 from jasjuang/master

enable cmake config for glm
This commit is contained in:
Robert Schumacher 2017-06-20 15:22:25 -07:00 committed by GitHub
commit 9f0f110f36
3 changed files with 41 additions and 17 deletions

View File

@ -1,3 +1,3 @@
Source: glm Source: glm
Version: 0.9.8.1 Version: 0.9.8.4
Description: OpenGL Mathematics (GLM) https://glm.g-truc.net Description: OpenGL Mathematics (GLM) https://glm.g-truc.net

View File

@ -1,20 +1,26 @@
#header-only library
include(vcpkg_common_functions) include(vcpkg_common_functions)
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/glm)
vcpkg_download_distfile(ARCHIVE
URLS "https://github.com/g-truc/glm/releases/download/0.9.8.1/glm-0.9.8.1.zip"
FILENAME "glm-0.9.8.1.zip"
SHA512 93223ea7a08d969331a6b93d598c0b59dfc09e86770661c444f81939bd175053d3f6b1211a4aa4e59d732df39b97fe491eb35d4ac2efb286a1cf68ed29bfa80a
)
vcpkg_extract_source_archive(${ARCHIVE})
# Remove glm/CMakeLists.txt vcpkg_from_github(
file(REMOVE ${SOURCE_PATH}/glm/CMakeLists.txt) OUT_SOURCE_PATH SOURCE_PATH
REPO g-truc/glm
REF 0.9.8.4
SHA512 ff0e0651a695caebe9235882d14e09546d52b3cdf66cca8e2078f15b02a3fca4e47bd97d2807aa329f76aa633af3b4999501bd4d0b22ad44b00558d4917f39ed
HEAD_REF master
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
)
vcpkg_install_cmake()
vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/glm")
vcpkg_copy_pdbs()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
# Put the license file where vcpkg expects it # Put the license file where vcpkg expects it
file(COPY ${SOURCE_PATH}/copying.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/glm/) file(COPY ${SOURCE_PATH}/copying.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/glm/)
file(RENAME ${CURRENT_PACKAGES_DIR}/share/glm/copying.txt ${CURRENT_PACKAGES_DIR}/share/glm/copyright) file(RENAME ${CURRENT_PACKAGES_DIR}/share/glm/copying.txt ${CURRENT_PACKAGES_DIR}/share/glm/copyright)
# Copy the glm header files
file(GLOB HEADER_FILES ${SOURCE_PATH}/glm/*)
file(COPY ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include/glm)

View File

@ -76,8 +76,6 @@ function(vcpkg_fixup_cmake_targets)
"${RELEASE_SHARE}/*[Cc]onfig-release.cmake" "${RELEASE_SHARE}/*[Cc]onfig-release.cmake"
) )
foreach(RELEASE_TARGET ${RELEASE_TARGETS}) foreach(RELEASE_TARGET ${RELEASE_TARGETS})
get_filename_component(RELEASE_TARGET_NAME ${RELEASE_TARGET} NAME)
file(READ ${RELEASE_TARGET} _contents) file(READ ${RELEASE_TARGET} _contents)
string(REGEX REPLACE "\\\${_IMPORT_PREFIX}/bin/([^ \"]+\\.exe)" "\${_IMPORT_PREFIX}/tools/${PORT}/\\1" _contents "${_contents}") string(REGEX REPLACE "\\\${_IMPORT_PREFIX}/bin/([^ \"]+\\.exe)" "\${_IMPORT_PREFIX}/tools/${PORT}/\\1" _contents "${_contents}")
file(WRITE ${RELEASE_TARGET} "${_contents}") file(WRITE ${RELEASE_TARGET} "${_contents}")
@ -99,6 +97,26 @@ function(vcpkg_fixup_cmake_targets)
file(REMOVE ${DEBUG_TARGET}) file(REMOVE ${DEBUG_TARGET})
endforeach() endforeach()
file(GLOB MAIN_TARGETS "${RELEASE_SHARE}/*[Tt]argets.cmake")
foreach(MAIN_TARGET ${MAIN_TARGETS})
file(READ ${MAIN_TARGET} _contents)
string(REGEX REPLACE
"get_filename_component\\(_IMPORT_PREFIX \"\\\${CMAKE_CURRENT_LIST_FILE}\" PATH\\)(\nget_filename_component\\(_IMPORT_PREFIX \"\\\${_IMPORT_PREFIX}\" PATH\\))*"
"get_filename_component(_IMPORT_PREFIX \"\${CMAKE_CURRENT_LIST_FILE}\" PATH)\nget_filename_component(_IMPORT_PREFIX \"\${_IMPORT_PREFIX}\" PATH)\nget_filename_component(_IMPORT_PREFIX \"\${_IMPORT_PREFIX}\" PATH)"
_contents "${_contents}")
file(WRITE ${MAIN_TARGET} "${_contents}")
endforeach()
file(GLOB MAIN_CONFIGS "${RELEASE_SHARE}/*[Cc]onfig.cmake")
foreach(MAIN_CONFIG ${MAIN_CONFIGS})
file(READ ${MAIN_CONFIG} _contents)
string(REGEX REPLACE
"get_filename_component\\(PACKAGE_PREFIX_DIR \"\\\${CMAKE_CURRENT_LIST_DIR}/\\.\\./(\\.\\./)*\" ABSOLUTE\\)"
"get_filename_component(PACKAGE_PREFIX_DIR \"\${CMAKE_CURRENT_LIST_DIR}/../../\" ABSOLUTE)"
_contents "${_contents}")
file(WRITE ${MAIN_CONFIG} "${_contents}")
endforeach()
# Remove /debug/share/<port>/ if it's empty. # Remove /debug/share/<port>/ if it's empty.
file(GLOB_RECURSE REMAINING_FILES "${DEBUG_SHARE}/*") file(GLOB_RECURSE REMAINING_FILES "${DEBUG_SHARE}/*")
if(NOT REMAINING_FILES) if(NOT REMAINING_FILES)