Neelkamal Semwal | 21da565 | 2022-02-10 16:06:28 +0530 | [diff] [blame] | 1 | cmake_minimum_required(VERSION 3.9.1) |
| 2 | project(libhevc C CXX) |
| 3 | enable_language(ASM) |
Harish Mahendrakar | 7508e0f | 2019-08-15 17:33:18 -0700 | [diff] [blame] | 4 | |
| 5 | set(HEVC_ROOT "${CMAKE_CURRENT_SOURCE_DIR}") |
| 6 | set(HEVC_CONFIG_DIR "${CMAKE_CURRENT_BINARY_DIR}") |
| 7 | |
| 8 | if("${HEVC_ROOT}" STREQUAL "${HEVC_CONFIG_DIR}") |
Harish Mahendrakar | 7483c9c | 2019-08-20 15:18:27 -0700 | [diff] [blame] | 9 | message( |
| 10 | FATAL_ERROR |
| 11 | "Building from within the libhevc source tree is not supported.\n" |
| 12 | "Hint: Run these commands\n" |
| 13 | "$ rm -rf CMakeCache.txt CMakeFiles\n" |
| 14 | "$ mkdir -p ./build\n" |
| 15 | "$ cd ./build\n" |
| 16 | "And re-run CMake from the build directory.") |
Harish Mahendrakar | 7508e0f | 2019-08-15 17:33:18 -0700 | [diff] [blame] | 17 | endif() |
| 18 | |
Neelkamal Semwal | 21da565 | 2022-02-10 16:06:28 +0530 | [diff] [blame] | 19 | set(THREADS_PREFER_PTHREAD_FLAG TRUE) |
Harish Mahendrakar | 7508e0f | 2019-08-15 17:33:18 -0700 | [diff] [blame] | 20 | find_package(Threads REQUIRED) |
Neelkamal Semwal | 21da565 | 2022-02-10 16:06:28 +0530 | [diff] [blame] | 21 | |
Harish Mahendrakar | 7508e0f | 2019-08-15 17:33:18 -0700 | [diff] [blame] | 22 | set(CMAKE_STATIC_LIBRARY_PREFIX "") |
| 23 | |
Neelkamal Semwal | 21da565 | 2022-02-10 16:06:28 +0530 | [diff] [blame] | 24 | if(${CMAKE_CROSSCOMPILING}) |
| 25 | set(THREADS_PTHREAD_ARG |
| 26 | "2" |
| 27 | CACHE STRING |
| 28 | "Refer https://gitlab.kitware.com/cmake/cmake/-/issues/16920" FORCE) |
Harish Mahendrakar | 7508e0f | 2019-08-15 17:33:18 -0700 | [diff] [blame] | 29 | endif() |
| 30 | |
Neelkamal Semwal | 21da565 | 2022-02-10 16:06:28 +0530 | [diff] [blame] | 31 | include("${HEVC_ROOT}/cmake/utils.cmake") |
Harish Mahendrakar | 7508e0f | 2019-08-15 17:33:18 -0700 | [diff] [blame] | 32 | |
Neelkamal Semwal | 21da565 | 2022-02-10 16:06:28 +0530 | [diff] [blame] | 33 | libhevc_add_compile_options() |
| 34 | libhevc_add_definitions() |
| 35 | libhevc_set_link_libraries() |
Harish Mahendrakar | 7508e0f | 2019-08-15 17:33:18 -0700 | [diff] [blame] | 36 | |
Neelkamal Semwal | 21da565 | 2022-02-10 16:06:28 +0530 | [diff] [blame] | 37 | include("${HEVC_ROOT}/common/common.cmake") |
| 38 | include("${HEVC_ROOT}/decoder/libhevcdec.cmake") |
| 39 | include("${HEVC_ROOT}/encoder/libhevcenc.cmake") |
Harish Mahendrakar | 7508e0f | 2019-08-15 17:33:18 -0700 | [diff] [blame] | 40 | |
Neelkamal Semwal | 21da565 | 2022-02-10 16:06:28 +0530 | [diff] [blame] | 41 | include("${HEVC_ROOT}/test/decoder/hevcdec.cmake") |
| 42 | include("${HEVC_ROOT}/test/encoder/hevcenc.cmake") |
Harish Mahendrakar | 7508e0f | 2019-08-15 17:33:18 -0700 | [diff] [blame] | 43 | |
Neelkamal Semwal | 21da565 | 2022-02-10 16:06:28 +0530 | [diff] [blame] | 44 | include("${HEVC_ROOT}/fuzzer/hevc_dec_fuzzer.cmake") |
| 45 | include("${HEVC_ROOT}/fuzzer/hevc_enc_fuzzer.cmake") |