summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChad Versace <chad.versace@linux.intel.com>2013-08-19 22:37:17 -0700
committerChad Versace <chad.versace@linux.intel.com>2013-08-19 23:46:53 -0700
commit77db72ffa75f0ba5ac798982e993dd86488bf824 (patch)
treebe9620f4ca44df868214db056c96e3f38c546e44
parentdf776dc9673ad4f95a40e411623947a911e56751 (diff)
cmake: Refactor the search for library deps
Move the search for library dependencies into a new module WaffleFindDependencies. This change belongs to a series that cleans up the toplevel CMakeLists by decompositing it into modules. Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
-rw-r--r--CMakeLists.txt33
-rw-r--r--cmake/Modules/WaffleFindDependencies.cmake54
2 files changed, 55 insertions, 32 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4d94054..f6816c9 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -37,43 +37,12 @@ include(WaffleDefineInternalOptions)
include(WaffleValidateOptions)
include(WaffleDefineVersion)
include(WaffleDefineCompilerFlags)
+include(WaffleFindDependencies)
include(GNUInstallDirs)
find_package(PkgConfig)
# ------------------------------------------------------------------------------
-# Find Libraries
-# ------------------------------------------------------------------------------
-
-if("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
- find_package(OpenGL REQUIRED)
- find_library(COCOA_FRAMEWORK Cocoa REQUIRED)
- find_library(CORE_FOUNDATION_FRAMEWORK CoreFoundation REQUIRED)
-endif()
-
-if(waffle_has_egl)
- pkg_check_modules(egl REQUIRED egl)
-endif()
-
-if(waffle_has_glx)
- pkg_check_modules(gl REQUIRED gl)
-endif()
-
-if(waffle_has_wayland)
- pkg_check_modules(wayland-client REQUIRED wayland-client>=1)
- pkg_check_modules(wayland-egl REQUIRED wayland-egl>=9.1)
-endif()
-
-if(waffle_has_x11)
- pkg_check_modules(x11-xcb REQUIRED x11-xcb)
-endif()
-
-if(waffle_has_gbm)
- pkg_check_modules(gbm REQUIRED gbm)
- pkg_check_modules(libudev REQUIRED libudev)
-endif()
-
-# ------------------------------------------------------------------------------
# Add subdirectories
# ------------------------------------------------------------------------------
diff --git a/cmake/Modules/WaffleFindDependencies.cmake b/cmake/Modules/WaffleFindDependencies.cmake
new file mode 100644
index 0000000..498d775
--- /dev/null
+++ b/cmake/Modules/WaffleFindDependencies.cmake
@@ -0,0 +1,54 @@
+# Copyright 2013 Intel Corporation
+#
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are met:
+#
+# - Redistributions of source code must retain the above copyright notice, this
+# list of conditions and the following disclaimer.
+#
+# - Redistributions in binary form must reproduce the above copyright notice,
+# this list of conditions and the following disclaimer in the documentation
+# and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+find_package(PkgConfig)
+
+if("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
+ find_package(OpenGL REQUIRED)
+ find_library(COCOA_FRAMEWORK Cocoa REQUIRED)
+ find_library(CORE_FOUNDATION_FRAMEWORK CoreFoundation REQUIRED)
+endif()
+
+if(waffle_has_egl)
+ pkg_check_modules(egl REQUIRED egl)
+endif()
+
+if(waffle_has_glx)
+ pkg_check_modules(gl REQUIRED gl)
+endif()
+
+if(waffle_has_wayland)
+ pkg_check_modules(wayland-client REQUIRED wayland-client>=1)
+ pkg_check_modules(wayland-egl REQUIRED wayland-egl>=9.1)
+endif()
+
+if(waffle_has_x11)
+ pkg_check_modules(x11-xcb REQUIRED x11-xcb)
+endif()
+
+if(waffle_has_gbm)
+ pkg_check_modules(gbm REQUIRED gbm)
+ pkg_check_modules(libudev REQUIRED libudev)
+endif()