portfile.cmake 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. vcpkg_fail_port_install(ON_TARGET "UWP")
  2. vcpkg_from_github(
  3. OUT_SOURCE_PATH SOURCE_PATH
  4. REPO kcat/openal-soft
  5. REF a01dbeb09f0a6cdb1f2946b9fdf6c16c8b979066
  6. SHA512 cf59e0150861a428dec0764f4479fa80ae64dc75e3367b577902616d77509de8ae906633713bc509596b18435d19ec323e77592ef01f79cfc1a1706016550993
  7. HEAD_REF master
  8. PATCHES
  9. dont-export-symbols-in-static-build.patch
  10. )
  11. if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
  12. set(OPENAL_LIBTYPE "SHARED")
  13. else()
  14. set(OPENAL_LIBTYPE "STATIC")
  15. endif()
  16. set(ALSOFT_REQUIRE_LINUX OFF)
  17. set(ALSOFT_REQUIRE_WINDOWS OFF)
  18. set(ALSOFT_REQUIRE_OSX OFF)
  19. if(VCPKG_TARGET_IS_LINUX)
  20. set(ALSOFT_REQUIRE_LINUX ON)
  21. endif()
  22. if(VCPKG_TARGET_IS_WINDOWS)
  23. set(ALSOFT_REQUIRE_WINDOWS ON)
  24. endif()
  25. if(VCPKG_TARGET_IS_OSX)
  26. set(ALSOFT_REQUIRE_OSX ON)
  27. endif()
  28. vcpkg_configure_cmake(
  29. SOURCE_PATH ${SOURCE_PATH}
  30. OPTIONS
  31. -DCMAKE_SYSTEM_VERSION=10.0.18362.0
  32. -DLIBTYPE=${OPENAL_LIBTYPE}
  33. -DALSOFT_UTILS=OFF
  34. -DALSOFT_NO_CONFIG_UTIL=ON
  35. -DALSOFT_EXAMPLES=OFF
  36. -DALSOFT_TESTS=OFF
  37. -DALSOFT_CONFIG=OFF
  38. -DALSOFT_HRTF_DEFS=OFF
  39. -DALSOFT_AMBDEC_PRESETS=OFF
  40. -DALSOFT_BACKEND_ALSA=${ALSOFT_REQUIRE_LINUX}
  41. -DALSOFT_BACKEND_OSS=OFF
  42. -DALSOFT_BACKEND_SOLARIS=OFF
  43. -DALSOFT_BACKEND_SNDIO=OFF
  44. -DALSOFT_BACKEND_QSA=OFF
  45. -DALSOFT_BACKEND_PORTAUDIO=OFF
  46. -DALSOFT_BACKEND_PULSEAUDIO=OFF
  47. -DALSOFT_BACKEND_COREAUDIO=${ALSOFT_REQUIRE_OSX}
  48. -DALSOFT_BACKEND_JACK=OFF
  49. -DALSOFT_BACKEND_OPENSL=OFF
  50. -DALSOFT_BACKEND_WAVE=ON
  51. -DALSOFT_REQUIRE_WINMM=${ALSOFT_REQUIRE_WINDOWS}
  52. -DALSOFT_REQUIRE_DSOUND=${ALSOFT_REQUIRE_WINDOWS}
  53. -DALSOFT_REQUIRE_MMDEVAPI=${ALSOFT_REQUIRE_WINDOWS}
  54. -DALSOFT_CPUEXT_NEON=OFF
  55. )
  56. vcpkg_install_cmake()
  57. vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/OpenAL)
  58. foreach(HEADER al.h alc.h)
  59. file(READ ${CURRENT_PACKAGES_DIR}/include/AL/${HEADER} AL_H)
  60. if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
  61. string(REPLACE "defined(AL_LIBTYPE_STATIC)" "1" AL_H "${AL_H}")
  62. else()
  63. string(REPLACE "defined(AL_LIBTYPE_STATIC)" "0" AL_H "${AL_H}")
  64. endif()
  65. file(WRITE ${CURRENT_PACKAGES_DIR}/include/AL/${HEADER} "${AL_H}")
  66. endforeach()
  67. file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
  68. file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
  69. file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
  70. file(COPY ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
  71. vcpkg_copy_pdbs()