cmake_minimum_required (VERSION 2.8)
+
+# Use clang on MacOSX. gcc doesn't support __thread key, and Apple has
+# abandoned it for clang. This must be done before the project is defined.
+if (APPLE)
+ set (CMAKE_C_COMPILER "clang")
+ set (CMAKE_CXX_COMPILER "clang++")
+endif ()
+
+
project (apitrace-tests)
+find_path (APITRACE_SOURCE_DIR NAMES cmake/FindDirectX.cmake PATHS .. ../.. DOC "apitrace source tree" NO_DEFAULT_PATH)
+if (NOT EXISTS ${APITRACE_SOURCE_DIR})
+ message (WARNING "Please specify path to apitrace source tree via APITRACE_SOURCE_DIR")
+endif ()
+
+find_program (APITRACE_EXECUTABLE NAMES apitrace PATHS ${APITRACE_SOURCE_DIR} DOC "apitrace executable")
+if (NOT EXISTS ${APITRACE_EXECUTABLE})
+ message (WARNING "Please specify path to apitrace executable via APITRACE_EXECUTABLE")
+endif ()
+
include (FindPkgConfig)
+set (CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
+
# Set default built type
if (NOT CMAKE_BUILD_TYPE)
set (CMAKE_BUILD_TYPE Debug
include (CMakeParseArguments)
-find_package (OpenGL REQUIRED)
+find_package (OpenGL)
find_package (GLUT)
+find_package (GLEW)
-find_path (GLEW_INCLUDE_DIR GL/glew.h /usr/include/GL)
-find_library (GLEW_glew_LIBRARY GLEW /usr/lib)
-
-if (NOT WIN32)
+if (WIN32)
+ find_package (DirectX)
+elseif (PKG_CONFIG_FOUND)
pkg_check_modules (EGL egl)
pkg_check_modules (GLESV1 glesv1_cm)
pkg_check_modules (GLESV2 glesv2)
add_definitions (-wd4244) # conversion' conversion from 'type1' to 'type2', possible loss of data
endif ()
-find_program (APITRACE_EXECUTABLE apitrace DOC "apitrace executable")
-
enable_testing()
add_subdirectory (apps)