Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
OpenDAS
dlib
Commits
cd64c518
Commit
cd64c518
authored
Feb 16, 2015
by
Davis King
Browse files
Made cmake script work a little better in projects that involve a lot of
subdirectories and create a lot of executables.
parent
1f7bec6e
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
59 additions
and
57 deletions
+59
-57
dlib/cmake
dlib/cmake
+59
-57
No files found.
dlib/cmake
View file @
cd64c518
# This is a CMake file meant to be included via include()
cmake_minimum_required(VERSION 2.6.4)
cmake_minimum_required(VERSION 2.6.4)
...
@@ -7,21 +8,19 @@ if (POLICY CMP0054)
...
@@ -7,21 +8,19 @@ if (POLICY CMP0054)
cmake_policy(SET CMP0054 NEW)
cmake_policy(SET CMP0054 NEW)
endif()
endif()
# Don't add dlib if it's already been added to the cmake project
if (NOT TARGET dlib)
# Determine the path to dlib.
# Determine the path to dlib.
string(REGEX REPLACE "cmake$" "" dlib_path ${CMAKE_CURRENT_LIST_FILE})
string(REGEX REPLACE "cmake$" "" dlib_path ${CMAKE_CURRENT_LIST_FILE})
if (CMAKE_COMPILER_IS_GNUCXX)
if (CMAKE_COMPILER_IS_GNUCXX)
# By default, g++ won't warn or error if you forget to return a value in a
# By default, g++ won't warn or error if you forget to return a value in a
# function which requires you to do so. This option makes it give a warning
# function which requires you to do so. This option makes it give a warning
# for doing this.
# for doing this.
add_definitions("-Wreturn-type")
add_definitions("-Wreturn-type")
endif()
endif()
# Setup some options to allow a user to enable SSE and AVX instruction use.
# Setup some options to allow a user to enable SSE and AVX instruction use.
if (CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang"
if (CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang"
OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU"
OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU"
OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel")
OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel")
option(USE_SSE2_INSTRUCTIONS "Compile your program with SSE2 instructions" OFF)
option(USE_SSE2_INSTRUCTIONS "Compile your program with SSE2 instructions" OFF)
...
@@ -34,7 +33,7 @@ if (NOT TARGET dlib)
...
@@ -34,7 +33,7 @@ if (NOT TARGET dlib)
elseif(USE_SSE2_INSTRUCTIONS)
elseif(USE_SSE2_INSTRUCTIONS)
add_definitions(-msse2)
add_definitions(-msse2)
endif()
endif()
elseif (MSVC OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") # else if using Visual Studio
elseif (MSVC OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") # else if using Visual Studio
# Use SSE2 by default when using Visual Studio.
# Use SSE2 by default when using Visual Studio.
option(USE_SSE2_INSTRUCTIONS "Compile your program with SSE2 instructions" ON)
option(USE_SSE2_INSTRUCTIONS "Compile your program with SSE2 instructions" ON)
# Visual Studio 2005 didn't support SSE4
# Visual Studio 2005 didn't support SSE4
...
@@ -66,16 +65,19 @@ if (NOT TARGET dlib)
...
@@ -66,16 +65,19 @@ if (NOT TARGET dlib)
endif()
endif()
add_definitions(-DDLIB_HAVE_SSE2)
add_definitions(-DDLIB_HAVE_SSE2)
endif()
endif()
endif()
endif()
# Add folder containing dlib to the include search path.
INCLUDE_DIRECTORIES(${dlib_path}/..)
# Add folder containing dlib to the include search path.
# This is really optional, but nice. It will make sure the build mode
INCLUDE_DIRECTORIES(${dlib_path}/..)
# created by cmake is always release by default.
include(${dlib_path}/release_build_by_default)
# This is really optional, but nice. It will make sure the build mode
# created by cmake is always release by default.
include(${dlib_path}/release_build_by_default)
# Don't add dlib if it's already been added to the cmake project
if (NOT TARGET dlib)
add_subdirectory(${dlib_path} dlib_build)
add_subdirectory(${dlib_path} dlib_build)
endif()
endif()
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment