Changeset View
Changeset View
Standalone View
Standalone View
intern/atomic/CMakeLists.txt
| # SPDX-License-Identifier: GPL-2.0-or-later | # SPDX-License-Identifier: GPL-2.0-or-later | ||||
| # Copyright 2020 Blender Foundation. All rights reserved. | # Copyright 2020 Blender Foundation. All rights reserved. | ||||
| set(INC | set(INC | ||||
| . | . | ||||
| ) | ) | ||||
| set(INC_SYS | set(INC_SYS | ||||
| ) | ) | ||||
| add_library(bf_intern_atomic INTERFACE) | |||||
| target_include_directories(bf_intern_atomic INTERFACE .) | |||||
| # CMake 3.19+ allows one to populate the interface library with | |||||
| # source files to show in the IDE, for people on older CMake versions | |||||
| # these headers will be visible in the bf_intern_guardedalloc project | |||||
| # where they historically have been. | |||||
| if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.19") | |||||
| set(SRC | |||||
| atomic_ops.h | |||||
| intern/atomic_ops_ext.h | |||||
| intern/atomic_ops_msvc.h | |||||
| intern/atomic_ops_unix.h | |||||
| intern/atomic_ops_utils.h | |||||
| ) | |||||
| target_sources(bf_intern_atomic PRIVATE ${SRC}) | |||||
| blender_source_group(bf_intern_atomic ${SRC}) | |||||
| endif() | |||||
| if(WITH_GTESTS) | if(WITH_GTESTS) | ||||
| set(TEST_SRC | set(TEST_SRC | ||||
| tests/atomic_test.cc | tests/atomic_test.cc | ||||
| ) | ) | ||||
| set(TEST_INC | set(TEST_INC | ||||
| ) | ) | ||||
| set(TEST_LIB | set(TEST_LIB | ||||
| PRIVATE bf_intern_atomic | |||||
| ) | ) | ||||
| include(GTestTesting) | include(GTestTesting) | ||||
| blender_add_test_executable(atomic "${TEST_SRC}" "${INC};${TEST_INC}" "${INC_SYS}" "${LIB};${TEST_LIB}") | blender_add_test_executable(atomic "${TEST_SRC}" "${INC};${TEST_INC}" "${INC_SYS}" "${LIB};${TEST_LIB}") | ||||
| endif() | endif() | ||||