diff --git a/CMakeLists.txt b/CMakeLists.txt
index d79b3f4d468aff982c059bda31357322a59e7a05..630685287dab154eaf1879762588fa3bd102200e 100644 (file)
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
cmake_minimum_required(VERSION 2.8)
project(kms++)
+include(LTO.cmake)
+
+set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
+set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
+set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
+
include(CheckCXXCompilerFlag)
IF(NOT CMAKE_BUILD_TYPE)
# static link libc
# set(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static-libstdc++")
-if (NOT ${U_CMAKE_BUILD_TYPE} MATCHES DEBUG)
- CHECK_CXX_COMPILER_FLAG("-flto" HAS_LTO_FLAG)
+check_lto()
- if (HAS_LTO_FLAG)
+if (NOT ${U_CMAKE_BUILD_TYPE} MATCHES DEBUG)
+ if (LTO_WORKS)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -flto")
- set(CMAKE_AR gcc-ar)
- set(CMAKE_RANLIB gcc-ranlib)
+ set(CMAKE_AR "${LTO_AR}")
+ set(CMAKE_RANLIB "${LTO_RANLIB}")
endif()
endif()