12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- diff --git a/CMakeLists.txt b/CMakeLists.txt
- index 18190f647..f4b1b359d 100644
- --- a/CMakeLists.txt
- +++ b/CMakeLists.txt
- @@ -23,6 +23,9 @@ endif()
-
- project(AOM C CXX)
-
- +include(GNUInstallDirs)
- +include(CMakePackageConfigHelpers)
- +
- # GENERATED source property global visibility.
- if(POLICY CMP0118)
- cmake_policy(SET CMP0118 NEW)
- @@ -302,6 +305,52 @@ if(BUILD_SHARED_LIBS)
- set(AOM_LIB_TARGETS ${AOM_LIB_TARGETS} aom_static)
- endif()
-
- +set(PUBLIC_HEADERS
- + aom/aom.h
- + aom/aom_codec.h
- + aom/aom_decoder.h
- + aom/aom_encoder.h
- + aom/aom_frame_buffer.h
- + aom/aom_image.h
- + aom/aom_integer.h
- + aom/aomcx.h
- + aom/aomdx.h
- +)
- +
- +set_target_properties(aom PROPERTIES
- + PUBLIC_HEADER "${PUBLIC_HEADERS}")
- +
- +
- +target_include_directories(aom
- + PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
- + $<INSTALL_INTERFACE:include>)
- +
- +install(TARGETS aom
- + EXPORT unofficial-aom-targets
- + ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
- + LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
- + RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
- + PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/aom")
- +
- +install(EXPORT unofficial-aom-targets
- + FILE unofficial-aom-targets.cmake
- + NAMESPACE unofficial::
- + DESTINATION lib/cmake/aom)
- +
- +configure_package_config_file(cmake/aom-config.cmake.in
- + ${CMAKE_CURRENT_BINARY_DIR}/aom-config.cmake
- + INSTALL_DESTINATION lib/cmake/aom
- + NO_SET_AND_CHECK_MACRO
- + NO_CHECK_REQUIRED_COMPONENTS_MACRO)
- +
- +write_basic_package_version_file(${CMAKE_CURRENT_BINARY_DIR}/aom-config-version.cmake
- + VERSION ${SO_FILE_VERSION}
- + COMPATIBILITY SameMajorVersion)
- +
- +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/aom-config.cmake
- + ${CMAKE_CURRENT_BINARY_DIR}/aom-config-version.cmake
- + DESTINATION lib/cmake/aom)
- +
- # Setup dependencies.
- if(CONFIG_THREE_PASS)
- setup_ivf_dec_targets()
- diff --git a/cmake/aom-config.cmake.in b/cmake/aom-config.cmake.in
- new file mode 100644
- index 000000000..91cac3b5b
- --- /dev/null
- +++ b/cmake/aom-config.cmake.in
- @@ -0,0 +1,2 @@
- +@PACKAGE_INIT@
- +include(${CMAKE_CURRENT_LIST_DIR}/unofficial-aom-targets.cmake)
|