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
8b5b6fb0
Commit
8b5b6fb0
authored
Feb 11, 2013
by
Davis King
Browse files
All I did was put an "if (NOT TARGET dlib)" around the main body of the CMakeLists.txt
so that we avoid a common cmake warning.
parent
e20926e8
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
197 additions
and
186 deletions
+197
-186
dlib/CMakeLists.txt
dlib/CMakeLists.txt
+197
-186
No files found.
dlib/CMakeLists.txt
View file @
8b5b6fb0
...
@@ -41,230 +41,241 @@ if (NOT CMAKE_CXX_FLAGS_DEBUG MATCHES "-DENABLE_ASSERTS")
...
@@ -41,230 +41,241 @@ if (NOT CMAKE_CXX_FLAGS_DEBUG MATCHES "-DENABLE_ASSERTS")
FORCE
)
FORCE
)
endif
()
endif
()
set
(
DLIB_ISO_CPP_ONLY_STR
"Enable this if you don't want to compile any non-ISO C++ code (i.e. you don't use any of the API Wrappers)"
)
# Don't try to call add_library(dlib) and setup dlib's stuff if it has already
set
(
DLIB_NO_GUI_SUPPORT_STR
# been done by some other part of the current cmake project. We do this
"Enable this if you don't want to compile any of the dlib GUI code"
)
# because it avoids getting warnings/errors about cmake policy CMP0002. This
set
(
DLIB_ENABLE_STACK_TRACE_STR
# happens when a project tries to call add_subdirectory() on dlib more than
"Enable this if you want to turn on the DLIB_STACK_TRACE macros"
)
# once. This most often happens when the top level of a project depends on two
set
(
DLIB_ENABLE_ASSERTS_STR
# or more other things which both depend on dlib.
"Enable this if you want to turn on the DLIB_ASSERT macro"
)
if
(
NOT TARGET dlib
)
set
(
DLIB_USE_BLAS_STR
"Disable this if you don't want to use a BLAS library"
)
set
(
DLIB_ISO_CPP_ONLY_STR
set
(
DLIB_USE_LAPACK_STR
"Enable this if you don't want to compile any non-ISO C++ code (i.e. you don't use any of the API Wrappers)"
)
"Disable this if you don't want to use a LAPACK library"
)
set
(
DLIB_NO_GUI_SUPPORT_STR
set
(
DLIB_LINK_WITH_LIBPNG_STR
"Enable this if you don't want to compile any of the dlib GUI code"
)
"Disable this if you don't want to link against libpng"
)
set
(
DLIB_ENABLE_STACK_TRACE_STR
set
(
DLIB_LINK_WITH_LIBJPEG_STR
"Enable this if you want to turn on the DLIB_STACK_TRACE macros"
)
"Disable this if you don't want to link against libjpeg"
)
set
(
DLIB_ENABLE_ASSERTS_STR
set
(
DLIB_LINK_WITH_SQLITE3_STR
"Enable this if you want to turn on the DLIB_ASSERT macro"
)
"Disable this if you don't want to link against sqlite3"
)
set
(
DLIB_USE_BLAS_STR
"Disable this if you don't want to use a BLAS library"
)
option
(
DLIB_ISO_CPP_ONLY
${
DLIB_ISO_CPP_ONLY_STR
}
OFF
)
set
(
DLIB_USE_LAPACK_STR
option
(
DLIB_NO_GUI_SUPPORT
${
DLIB_NO_GUI_SUPPORT_STR
}
OFF
)
"Disable this if you don't want to use a LAPACK library"
)
option
(
DLIB_ENABLE_STACK_TRACE
${
DLIB_ENABLE_STACK_TRACE_STR
}
OFF
)
set
(
DLIB_LINK_WITH_LIBPNG_STR
option
(
DLIB_ENABLE_ASSERTS
${
DLIB_ENABLE_ASSERTS_STR
}
OFF
)
"Disable this if you don't want to link against libpng"
)
option
(
DLIB_USE_BLAS
${
DLIB_USE_BLAS_STR
}
ON
)
set
(
DLIB_LINK_WITH_LIBJPEG_STR
option
(
DLIB_USE_LAPACK
${
DLIB_USE_LAPACK_STR
}
ON
)
"Disable this if you don't want to link against libjpeg"
)
option
(
DLIB_LINK_WITH_LIBPNG
${
DLIB_LINK_WITH_LIBPNG_STR
}
ON
)
set
(
DLIB_LINK_WITH_SQLITE3_STR
option
(
DLIB_LINK_WITH_LIBJPEG
${
DLIB_LINK_WITH_LIBJPEG_STR
}
ON
)
"Disable this if you don't want to link against sqlite3"
)
option
(
DLIB_LINK_WITH_SQLITE3
${
DLIB_LINK_WITH_SQLITE3_STR
}
ON
)
option
(
DLIB_ISO_CPP_ONLY
${
DLIB_ISO_CPP_ONLY_STR
}
OFF
)
option
(
DLIB_NO_GUI_SUPPORT
${
DLIB_NO_GUI_SUPPORT_STR
}
OFF
)
add_library
(
dlib STATIC all/source.cpp
)
option
(
DLIB_ENABLE_STACK_TRACE
${
DLIB_ENABLE_STACK_TRACE_STR
}
OFF
)
option
(
DLIB_ENABLE_ASSERTS
${
DLIB_ENABLE_ASSERTS_STR
}
OFF
)
option
(
DLIB_USE_BLAS
${
DLIB_USE_BLAS_STR
}
ON
)
if
(
NOT DLIB_ISO_CPP_ONLY
)
option
(
DLIB_USE_LAPACK
${
DLIB_USE_LAPACK_STR
}
ON
)
# we want to link to the right stuff depending on our platform.
option
(
DLIB_LINK_WITH_LIBPNG
${
DLIB_LINK_WITH_LIBPNG_STR
}
ON
)
if
(
WIN32 AND NOT CYGWIN
)
###############################################################################
option
(
DLIB_LINK_WITH_LIBJPEG
${
DLIB_LINK_WITH_LIBJPEG_STR
}
ON
)
if
(
DLIB_NO_GUI_SUPPORT
)
option
(
DLIB_LINK_WITH_SQLITE3
${
DLIB_LINK_WITH_SQLITE3_STR
}
ON
)
set
(
dlib_needed_libraries ws2_32
)
else
()
set
(
dlib_needed_libraries ws2_32 comctl32 gdi32 imm32
)
add_library
(
dlib STATIC all/source.cpp
)
endif
()
elseif
(
APPLE
)
############################################################################
find_library
(
pthreadlib pthread
)
if
(
NOT DLIB_ISO_CPP_ONLY
)
set
(
dlib_needed_libraries
${
pthreadlib
}
)
# we want to link to the right stuff depending on our platform.
if
(
WIN32 AND NOT CYGWIN
)
###############################################################################
if
(
NOT DLIB_NO_GUI_SUPPORT
)
if
(
DLIB_NO_GUI_SUPPORT
)
find_library
(
xlib X11
)
set
(
dlib_needed_libraries ws2_32
)
# make sure X11 is in the include path
find_path
(
xlib_path Xlib.h
PATHS
/Developer/SDKs/MacOSX10.4u.sdk/usr/X11R6/include
PATH_SUFFIXES X11
)
if
(
xlib AND xlib_path
)
get_filename_component
(
x11_path
${
xlib_path
}
PATH CACHE
)
include_directories
(
${
x11_path
}
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
xlib
}
)
else
()
else
()
message
(
" ***********************************************************************************"
)
set
(
dlib_needed_libraries ws2_32 comctl32 gdi32 imm32
)
message
(
" ****** DLIB GUI SUPPORT DISABLED BECAUSE X11 DEVELOPMENT LIBRARIES NOT FOUND ******"
)
endif
()
message
(
" ****** Make sure libx11-dev is installed if you want GUI support ******"
)
elseif
(
APPLE
)
############################################################################
message
(
" ***********************************************************************************"
)
find_library
(
pthreadlib pthread
)
set
(
DLIB_NO_GUI_SUPPORT ON CACHE STRING
${
DLIB_NO_GUI_SUPPORT_STR
}
FORCE
)
set
(
dlib_needed_libraries
${
pthreadlib
}
)
if
(
NOT DLIB_NO_GUI_SUPPORT
)
find_library
(
xlib X11
)
# make sure X11 is in the include path
find_path
(
xlib_path Xlib.h
PATHS
/Developer/SDKs/MacOSX10.4u.sdk/usr/X11R6/include
PATH_SUFFIXES X11
)
if
(
xlib AND xlib_path
)
get_filename_component
(
x11_path
${
xlib_path
}
PATH CACHE
)
include_directories
(
${
x11_path
}
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
xlib
}
)
else
()
message
(
" ***********************************************************************************"
)
message
(
" ****** DLIB GUI SUPPORT DISABLED BECAUSE X11 DEVELOPMENT LIBRARIES NOT FOUND ******"
)
message
(
" ****** Make sure libx11-dev is installed if you want GUI support ******"
)
message
(
" ***********************************************************************************"
)
set
(
DLIB_NO_GUI_SUPPORT ON CACHE STRING
${
DLIB_NO_GUI_SUPPORT_STR
}
FORCE
)
endif
()
endif
()
endif
()
endif
()
mark_as_advanced
(
pthreadlib xlib xlib_path x11_path
)
mark_as_advanced
(
pthreadlib xlib xlib_path x11_path
)
else
()
##################################################################################
else
()
##################################################################################
find_library
(
pthreadlib pthread
)
find_library
(
pthreadlib pthread
)
set
(
dlib_needed_libraries
${
pthreadlib
}
)
set
(
dlib_needed_libraries
${
pthreadlib
}
)
# link to the nsl library if it exists. this is something you need sometimes
# link to the nsl library if it exists. this is something you need sometimes
find_library
(
nsllib nsl
)
find_library
(
nsllib nsl
)
if
(
nsllib
)
if
(
nsllib
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
nsllib
}
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
nsllib
}
)
endif
()
endif
()
# link to the socket library if it exists. this is something you need on solaris
# link to the socket library if it exists. this is something you need on solaris
find_library
(
socketlib socket
)
find_library
(
socketlib socket
)
if
(
socketlib
)
if
(
socketlib
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
socketlib
}
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
socketlib
}
)
endif
()
endif
()
if
(
NOT DLIB_NO_GUI_SUPPORT
)
if
(
NOT DLIB_NO_GUI_SUPPORT
)
include
(
FindX11
)
include
(
FindX11
)
if
(
X11_FOUND
)
if
(
X11_FOUND
)
include_directories
(
${
X11_INCLUDE_DIR
}
)
include_directories
(
${
X11_INCLUDE_DIR
}
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
X11_LIBRARIES
}
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
X11_LIBRARIES
}
)
else
()
else
()
message
(
" ***********************************************************************************"
)
message
(
" ***********************************************************************************"
)
message
(
" ****** DLIB GUI SUPPORT DISABLED BECAUSE X11 DEVELOPMENT LIBRARIES NOT FOUND ******"
)
message
(
" ****** DLIB GUI SUPPORT DISABLED BECAUSE X11 DEVELOPMENT LIBRARIES NOT FOUND ******"
)
message
(
" ****** Make sure libx11-dev is installed if you want GUI support ******"
)
message
(
" ****** Make sure libx11-dev is installed if you want GUI support ******"
)
message
(
" ***********************************************************************************"
)
message
(
" ***********************************************************************************"
)
set
(
DLIB_NO_GUI_SUPPORT ON CACHE STRING
${
DLIB_NO_GUI_SUPPORT_STR
}
FORCE
)
set
(
DLIB_NO_GUI_SUPPORT ON CACHE STRING
${
DLIB_NO_GUI_SUPPORT_STR
}
FORCE
)
endif
()
endif
()
endif
()
endif
()
mark_as_advanced
(
nsllib pthreadlib socketlib
)
mark_as_advanced
(
nsllib pthreadlib socketlib
)
endif
()
##################################################################################
endif
()
##################################################################################
if
(
DLIB_LINK_WITH_LIBPNG
)
if
(
DLIB_LINK_WITH_LIBPNG
)
# try to find libpng
# try to find libpng
set
(
ZLIB_FIND_QUIETLY ON
)
set
(
ZLIB_FIND_QUIETLY ON
)
set
(
PNG_FIND_QUIETLY ON
)
set
(
PNG_FIND_QUIETLY ON
)
include
(
FindPNG
)
include
(
FindPNG
)
if
(
PNG_FOUND
)
if
(
PNG_FOUND
)
include_directories
(
${
PNG_INCLUDE_DIR
}
)
include_directories
(
${
PNG_INCLUDE_DIR
}
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
PNG_LIBRARY
}
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
PNG_LIBRARY
}
)
else
()
else
()
set
(
DLIB_LINK_WITH_LIBPNG OFF CACHE STRING
${
DLIB_LINK_WITH_LIBPNG_STR
}
FORCE
)
set
(
DLIB_LINK_WITH_LIBPNG OFF CACHE STRING
${
DLIB_LINK_WITH_LIBPNG_STR
}
FORCE
)
endif
()
endif
()
endif
()
endif
()
if
(
DLIB_LINK_WITH_LIBJPEG
)
if
(
DLIB_LINK_WITH_LIBJPEG
)
# try to find libjpeg
# try to find libjpeg
include
(
FindJPEG
)
include
(
FindJPEG
)
if
(
JPEG_FOUND
)
if
(
JPEG_FOUND
)
include_directories
(
${
JPEG_INCLUDE_DIR
}
)
include_directories
(
${
JPEG_INCLUDE_DIR
}
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
JPEG_LIBRARY
}
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
JPEG_LIBRARY
}
)
else
()
else
()
set
(
DLIB_LINK_WITH_LIBJPEG OFF CACHE STRING
${
DLIB_LINK_WITH_LIBJPEG_STR
}
FORCE
)
set
(
DLIB_LINK_WITH_LIBJPEG OFF CACHE STRING
${
DLIB_LINK_WITH_LIBJPEG_STR
}
FORCE
)
endif
()
endif
()
endif
()
endif
()
if
(
DLIB_USE_BLAS OR DLIB_USE_LAPACK
)
if
(
DLIB_USE_BLAS OR DLIB_USE_LAPACK
)
# Try to find BLAS and LAPACK
# Try to find BLAS and LAPACK
include
(
cmake_find_blas.txt
)
include
(
cmake_find_blas.txt
)
if
(
DLIB_USE_BLAS
)
if
(
DLIB_USE_BLAS
)
if
(
blas_found
)
if
(
blas_found
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
blas_libraries
}
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
blas_libraries
}
)
else
()
else
()
set
(
DLIB_USE_BLAS OFF CACHE STRING
${
DLIB_USE_BLAS_STR
}
FORCE
)
set
(
DLIB_USE_BLAS OFF CACHE STRING
${
DLIB_USE_BLAS_STR
}
FORCE
)
endif
()
endif
()
endif
()
endif
()
if
(
DLIB_USE_LAPACK
)
if
(
DLIB_USE_LAPACK
)
if
(
lapack_found
)
if
(
lapack_found
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
lapack_libraries
}
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
lapack_libraries
}
)
else
()
else
()
set
(
DLIB_USE_LAPACK OFF CACHE STRING
${
DLIB_USE_LAPACK_STR
}
FORCE
)
set
(
DLIB_USE_LAPACK OFF CACHE STRING
${
DLIB_USE_LAPACK_STR
}
FORCE
)
endif
()
endif
()
endif
()
endif
()
endif
()
endif
()
if
(
DLIB_LINK_WITH_SQLITE3
)
if
(
DLIB_LINK_WITH_SQLITE3
)
find_library
(
sqlite sqlite3
)
find_library
(
sqlite sqlite3
)
# make sure sqlite3.h is in the include path
# make sure sqlite3.h is in the include path
find_path
(
sqlite_path sqlite3.h
)
find_path
(
sqlite_path sqlite3.h
)
if
(
sqlite AND sqlite_path
)
if
(
sqlite AND sqlite_path
)
get_filename_component
(
sqlite_path2
${
sqlite_path
}
PATH CACHE
)
get_filename_component
(
sqlite_path2
${
sqlite_path
}
PATH CACHE
)
include_directories
(
${
sqlite_path2
}
)
include_directories
(
${
sqlite_path2
}
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
sqlite
}
)
set
(
dlib_needed_libraries
${
dlib_needed_libraries
}
${
sqlite
}
)
else
()
else
()
set
(
DLIB_LINK_WITH_SQLITE3 OFF CACHE STRING
${
DLIB_LINK_WITH_SQLITE3_STR
}
FORCE
)
set
(
DLIB_LINK_WITH_SQLITE3 OFF CACHE STRING
${
DLIB_LINK_WITH_SQLITE3_STR
}
FORCE
)
endif
()
mark_as_advanced
(
sqlite sqlite_path sqlite_path2
)
endif
()
endif
()
mark_as_advanced
(
sqlite sqlite_path sqlite_path2
)
endif
()
target_link_libraries
(
dlib
${
dlib_needed_libraries
}
)
target_link_libraries
(
dlib
${
dlib_needed_libraries
}
)
endif
()
##### end of if NOT DLIB_ISO_CPP_ONLY ##########################################################
endif
()
##### end of if NOT DLIB_ISO_CPP_ONLY ##########################################################
#test for some things that really should be true about the compiler
#test for some things that really should be true about the compiler
include
(
TestForSTDNamespace
)
include
(
TestForSTDNamespace
)
include
(
TestForANSIStreamHeaders
)
include
(
TestForANSIStreamHeaders
)
if
(
DLIB_LINK_WITH_LIBPNG AND NOT DLIB_ISO_CPP_ONLY
)
if
(
DLIB_LINK_WITH_LIBPNG AND NOT DLIB_ISO_CPP_ONLY
)
add_global_define
(
DLIB_PNG_SUPPORT
)
add_global_define
(
DLIB_PNG_SUPPORT
)
else
()
else
()
remove_global_define
(
DLIB_PNG_SUPPORT
)
remove_global_define
(
DLIB_PNG_SUPPORT
)
endif
()
endif
()
if
(
DLIB_LINK_WITH_LIBJPEG AND NOT DLIB_ISO_CPP_ONLY
)
if
(
DLIB_LINK_WITH_LIBJPEG AND NOT DLIB_ISO_CPP_ONLY
)
add_global_define
(
DLIB_JPEG_SUPPORT
)
add_global_define
(
DLIB_JPEG_SUPPORT
)
else
()
else
()
remove_global_define
(
DLIB_JPEG_SUPPORT
)
remove_global_define
(
DLIB_JPEG_SUPPORT
)
endif
()
endif
()
if
(
DLIB_USE_BLAS AND blas_found
)
if
(
DLIB_USE_BLAS AND blas_found
)
add_global_define
(
DLIB_USE_BLAS
)
add_global_define
(
DLIB_USE_BLAS
)
else
()
else
()
remove_global_define
(
DLIB_USE_BLAS
)
remove_global_define
(
DLIB_USE_BLAS
)
endif
()
endif
()
if
(
DLIB_USE_LAPACK AND lapack_found
)
if
(
DLIB_USE_LAPACK AND lapack_found
)
add_global_define
(
DLIB_USE_LAPACK
)
add_global_define
(
DLIB_USE_LAPACK
)
else
()
else
()
remove_global_define
(
DLIB_USE_LAPACK
)
remove_global_define
(
DLIB_USE_LAPACK
)
endif
()
endif
()
if
(
DLIB_ISO_CPP_ONLY
)
if
(
DLIB_ISO_CPP_ONLY
)
add_global_define
(
DLIB_ISO_CPP_ONLY
)
add_global_define
(
DLIB_ISO_CPP_ONLY
)
else
()
else
()
remove_global_define
(
DLIB_ISO_CPP_ONLY
)
remove_global_define
(
DLIB_ISO_CPP_ONLY
)
endif
()
endif
()
if
(
DLIB_NO_GUI_SUPPORT
)
if
(
DLIB_NO_GUI_SUPPORT
)
add_global_define
(
DLIB_NO_GUI_SUPPORT
)
add_global_define
(
DLIB_NO_GUI_SUPPORT
)
else
()
else
()
remove_global_define
(
DLIB_NO_GUI_SUPPORT
)
remove_global_define
(
DLIB_NO_GUI_SUPPORT
)
endif
()
endif
()
if
(
DLIB_ENABLE_STACK_TRACE
)
if
(
DLIB_ENABLE_STACK_TRACE
)
add_global_define
(
DLIB_ENABLE_STACK_TRACE
)
add_global_define
(
DLIB_ENABLE_STACK_TRACE
)
else
()
else
()
remove_global_define
(
DLIB_ENABLE_STACK_TRACE
)
remove_global_define
(
DLIB_ENABLE_STACK_TRACE
)
endif
()
endif
()
if
(
DLIB_ENABLE_ASSERTS
)
if
(
DLIB_ENABLE_ASSERTS
)
add_global_define
(
ENABLE_ASSERTS
)
add_global_define
(
ENABLE_ASSERTS
)
else
()
else
()
remove_global_define
(
ENABLE_ASSERTS
)
remove_global_define
(
ENABLE_ASSERTS
)
endif
()
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