mirror of
https://github.com/LIV2/amiberry.git
synced 2025-12-06 06:32:45 +00:00
43 lines
1.9 KiB
CMake
43 lines
1.9 KiB
CMake
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pipe")
|
|
set(CMAKE_C_FLAGS_RELEASE "-O3")
|
|
set(CMAKE_C_FLAGS_DEBUG "-Og -g -funwind-tables -DDEBUG")
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS}")
|
|
set(CMAKE_CXX_FLAGS_RELEASE ${CMAKE_C_FLAGS_RELEASE})
|
|
set(CMAKE_CXX_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG})
|
|
if (NOT CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
|
set(CMAKE_EXE_LINKER_FLAGS "-Wl,--no-undefined -Wl,-z,combreloc")
|
|
set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS} -Wl,--as-needed -Wl,--gc-sections -Wl,--strip-all")
|
|
set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS} -g")
|
|
set(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS} -Wl,--as-needed -Wl,--gc-sections -Wl,--strip-all")
|
|
set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS} -g")
|
|
else ()
|
|
set(CMAKE_EXE_LINKER_FLAGS_RELEASE "-Wl,-dead_strip")
|
|
endif()
|
|
|
|
# Set build type to "Release" if user did not specify any build type yet
|
|
# Other possible values: Debug, Release, RelWithDebInfo and MinSizeRel
|
|
if (NOT CMAKE_BUILD_TYPE)
|
|
set(CMAKE_BUILD_TYPE Release)
|
|
endif (NOT CMAKE_BUILD_TYPE)
|
|
|
|
if (WITH_LTO)
|
|
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE)
|
|
endif ()
|
|
|
|
if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
|
if (CMAKE_SYSTEM_PROCESSOR MATCHES "arm64")
|
|
include_directories("/opt/homebrew/include")
|
|
set(CMAKE_EXE_LINKER_FLAGS "-L/opt/homebrew/lib -framework IOKit -framework Foundation -liconv")
|
|
else ()
|
|
include_directories("/usr/local/include")
|
|
set(CMAKE_EXE_LINKER_FLAGS "-L/usr/local/lib -framework IOKit -framework Foundation -liconv")
|
|
endif ()
|
|
if (CMAKE_BUILD_TYPE MATCHES "Debug")
|
|
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer")
|
|
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer")
|
|
endif ()
|
|
endif ()
|