diff options
Diffstat (limited to 'vcpkg/ports/freealut/cmake_builds.patch')
| -rw-r--r-- | vcpkg/ports/freealut/cmake_builds.patch | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/vcpkg/ports/freealut/cmake_builds.patch b/vcpkg/ports/freealut/cmake_builds.patch new file mode 100644 index 0000000..187b326 --- /dev/null +++ b/vcpkg/ports/freealut/cmake_builds.patch @@ -0,0 +1,114 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 963c530..656ce14 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,6 +1,6 @@ + # cmake project file by Prakash Punnoor + # improved by Ryan Pavlik +-cmake_minimum_required(VERSION 2.6) ++cmake_minimum_required(VERSION 2.8.12) + + project(Alut C) + +@@ -27,7 +27,6 @@ include_directories(${Alut_SOURCE_DIR}/include) + + # What to build? + option(BUILD_EXAMPLES "build example applications" ON) +-option(BUILD_STATIC "build static library too" OFF) + option(BUILD_TESTS "build the test-suite" ON) + + # How to build it? +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index b72d1a1..5fc6cdc 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -39,35 +39,7 @@ set(ALUT_HEADERS + ../include/AL/alut.h) + source_group(APIHeader FILES ${ALUT_HEADERS}) + +- +-if(BUILD_STATIC) +- # we can't create a static library with the same name +- # as the shared one, so we copy it over after creation +- add_library(alut_static STATIC ${ALUT_SOURCES} ${ALUT_INTERNAL_HEADERS} ${ALUT_HEADERS}) +- target_link_libraries(alut_static ${OPENAL_LIBRARY} ${ADD_LIBS}) +- if(UNIX) +- target_link_libraries(alut_static m) +- endif() +- if(NOT WIN32) +- # TODO this is an inelegant hack... +- add_custom_command(TARGET +- alut_static +- POST_BUILD +- COMMAND +- ${CMAKE_COMMAND} +- ARGS +- -E +- copy +- ${CMAKE_BINARY_DIR}/src/${CMAKE_STATIC_LIBRARY_PREFIX}alut_static${CMAKE_STATIC_LIBRARY_SUFFIX} +- ${CMAKE_BINARY_DIR}/src/${CMAKE_STATIC_LIBRARY_PREFIX}alut${CMAKE_STATIC_LIBRARY_SUFFIX}) +- install_files(/lib${LIB_SUFFIX} +- FILES +- ${CMAKE_STATIC_LIBRARY_PREFIX}alut${CMAKE_STATIC_LIBRARY_SUFFIX}) +- endif() +-endif() +- +- +-add_library(alut SHARED ${ALUT_SOURCES} ${ALUT_INTERNAL_HEADERS} ${ALUT_HEADERS}) ++add_library(alut ${ALUT_SOURCES} ${ALUT_INTERNAL_HEADERS} ${ALUT_HEADERS}) + set_property(TARGET + alut + PROPERTY +@@ -80,12 +52,40 @@ set_target_properties(alut + SOVERSION + ${MAJOR_VERSION}) + target_link_libraries(alut ${OPENAL_LIBRARY}) ++target_include_directories(alut PUBLIC ${OPENAL_INCLUDE_DIR}) + if(UNIX) + target_link_libraries(alut m) + endif() ++if(NOT BUILD_SHARED_LIBS) ++ target_compile_definitions(alut PUBLIC ALUT_BUILD_STATIC) ++endif() + + install(TARGETS alut ++ EXPORT "FreeALUTTargets" + LIBRARY DESTINATION lib${LIB_SUFFIX} + ARCHIVE DESTINATION lib${LIB_SUFFIX} + RUNTIME DESTINATION bin +- PUBLIC_HEADER DESTINATION include/AL) ++ PUBLIC_HEADER DESTINATION include/AL ++ ) ++ ++include(CMakePackageConfigHelpers) ++ ++set(version_config "${CMAKE_CURRENT_BINARY_DIR}/temp/FreeALUTConfigVersion.cmake") ++set(project_config "${CMAKE_CURRENT_BINARY_DIR}/temp/FreeALUTConfig.cmake") ++set(namespace "FreeALUT::") ++ ++write_basic_package_version_file("${version_config}" ++ COMPATIBILITY SameMajorVersion ++ VERSION ${PACKAGE_VERSION}) ++ ++configure_package_config_file("Config.cmake.in" ++ "${project_config}" ++ INSTALL_DESTINATION ++ lib${LIB_SUFFIX}/cmake/freealut) ++ ++install(FILES "${project_config}" "${version_config}" ++ DESTINATION lib${LIB_SUFFIX}/cmake/freealut) ++ ++install(EXPORT "FreeALUTTargets" ++ NAMESPACE "${namespace}" ++ DESTINATION lib${LIB_SUFFIX}/cmake/freealut) +diff --git a/src/Config.cmake.in b/src/Config.cmake.in +new file mode 100644 +index 0000000..2a20f59 +--- /dev/null ++++ b/src/Config.cmake.in +@@ -0,0 +1,5 @@ ++ ++@PACKAGE_INIT@ ++ ++include("${CMAKE_CURRENT_LIST_DIR}/FreeALUTTargets.cmake") ++check_required_components("FreeALUT") |