mirror of
https://github.com/recp/cglm.git
synced 2026-02-17 03:39:05 +00:00
CMake: Added LDFlags Configuration
This commit is contained in:
@@ -3,11 +3,11 @@ project(cglm LANGUAGES C)
|
|||||||
|
|
||||||
set(C_STANDARD 99)
|
set(C_STANDARD 99)
|
||||||
set(C_STANDARD_REQUIRED YES)
|
set(C_STANDARD_REQUIRED YES)
|
||||||
set(C_EXTENSIONS NO)
|
|
||||||
|
|
||||||
set(CGLM_BUILD)
|
set(CGLM_BUILD)
|
||||||
option(CGLM_STATIC "Static build" ON)
|
option(CGLM_STATIC "Static build" ON)
|
||||||
option(CGLM_SHARED "Shared build" OFF)
|
option(CGLM_SHARED "Shared build" OFF)
|
||||||
|
option(CGLM_USE_C11 "" OFF)
|
||||||
|
|
||||||
if(CGLM_STATIC AND NOT CGLM_SHARED)
|
if(CGLM_STATIC AND NOT CGLM_SHARED)
|
||||||
set(CGLM_BUILD STATIC)
|
set(CGLM_BUILD STATIC)
|
||||||
@@ -15,6 +15,20 @@ else(CGLM_SHARED)
|
|||||||
set(CGLM_BUILD SHARED)
|
set(CGLM_BUILD SHARED)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(CGLM_USE_C11)
|
||||||
|
set(C_STANDARD 99)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if("${CMAKE_C_COMPILER_ID}" STREQUAL "MSVC")
|
||||||
|
list(APPEND LDFLAGS "/W4")
|
||||||
|
elseif("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU")
|
||||||
|
set(C_EXTENSIONS YES)
|
||||||
|
list(APPEND LDFLAGS "-Wall" "-Wpedantic" "-Wstrict-aliasing=2")
|
||||||
|
list(APPEND LDFLAGS "-Werror=strict-prototypes" "-fstrict-aliasing" "-O3")
|
||||||
|
elseif("${CMAKE_C_COMPILER_ID}" STREQUAL "CLANG")
|
||||||
|
list(APPEND LDFLAGS "-Wall" "-Weverything" "-Wpedantic")
|
||||||
|
endif()
|
||||||
|
|
||||||
set(HEADERS
|
set(HEADERS
|
||||||
include/cglm/simd/arm.h
|
include/cglm/simd/arm.h
|
||||||
include/cglm/simd/x86.h
|
include/cglm/simd/x86.h
|
||||||
@@ -131,6 +145,10 @@ target_include_directories(cglm PUBLIC
|
|||||||
$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/${CMAKE_INSTALL_PREFIX}>
|
$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/${CMAKE_INSTALL_PREFIX}>
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if(LDFLAGS)
|
||||||
|
target_compile_options(cglm PRIVATE ${LDFLAGS})
|
||||||
|
endif()
|
||||||
|
|
||||||
install(
|
install(
|
||||||
TARGETS cglm
|
TARGETS cglm
|
||||||
EXPORT cglm
|
EXPORT cglm
|
||||||
@@ -147,5 +165,4 @@ if(CGLM_SHARED)
|
|||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
install(FILES ${HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/include/cglm COMPONENT development)
|
install(FILES ${HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/include/cglm COMPONENT development)
|
||||||
|
|||||||
Reference in New Issue
Block a user