cmake: Simplify PROJECT_IS_TOP_LEVEL emulation
Detecting whether it is the top level by comparing the value of `CMAKE_SOURCE_DIR` with `CMAKE_CURRENT_SOURCE_DIR` is supported by all versions of CMake and is a very common pattern.
This commit is contained in:
@@ -19,15 +19,13 @@ project(libsecp256k1
|
|||||||
|
|
||||||
if(CMAKE_VERSION VERSION_LESS 3.21)
|
if(CMAKE_VERSION VERSION_LESS 3.21)
|
||||||
# Emulates CMake 3.21+ behavior.
|
# Emulates CMake 3.21+ behavior.
|
||||||
get_directory_property(parent_directory PARENT_DIRECTORY)
|
if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
|
||||||
if(parent_directory)
|
|
||||||
set(PROJECT_IS_TOP_LEVEL OFF)
|
|
||||||
set(${PROJECT_NAME}_IS_TOP_LEVEL OFF)
|
|
||||||
else()
|
|
||||||
set(PROJECT_IS_TOP_LEVEL ON)
|
set(PROJECT_IS_TOP_LEVEL ON)
|
||||||
set(${PROJECT_NAME}_IS_TOP_LEVEL ON)
|
set(${PROJECT_NAME}_IS_TOP_LEVEL ON)
|
||||||
|
else()
|
||||||
|
set(PROJECT_IS_TOP_LEVEL OFF)
|
||||||
|
set(${PROJECT_NAME}_IS_TOP_LEVEL OFF)
|
||||||
endif()
|
endif()
|
||||||
unset(parent_directory)
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# The library version is based on libtool versioning of the ABI. The set of
|
# The library version is based on libtool versioning of the ABI. The set of
|
||||||
|
|||||||
Reference in New Issue
Block a user