diff --git a/CMakeLists.txt b/CMakeLists.txt index c9a72f4..5f1c22f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -14,7 +14,8 @@ cmake_policy(SET CMP0015 NEW) project(TestSDL2) set(EXECUTABLE_OUTPUT_PATH bin/${CMAKE_BUILD_TYPE}) - +#Inclusion de Module CMake +set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake_module/") #Inclusion de Boost @@ -32,6 +33,7 @@ ELSE() find_package(GLU REQUIRED) find_package(GLUT REQUIRED) find_package(OpenAL REQUIRED) + find_package(ALUT REQUIRED) include_directories(/usr/include) link_directories(/usr/lib) ENDIF() @@ -87,4 +89,4 @@ ELSE() GL GLU ) -ENDIF() \ No newline at end of file +ENDIF() diff --git a/clean.sh b/clean.sh old mode 100644 new mode 100755 diff --git a/cmake_module/FindALUT.cmake b/cmake_module/FindALUT.cmake new file mode 100644 index 0000000..48d062d --- /dev/null +++ b/cmake_module/FindALUT.cmake @@ -0,0 +1,136 @@ +# - try to find the OpenAL ALUT library +# +# Users may optionally supply: +# ALUT_ROOT_DIR - a prefix to start searching. +# +# Cache Variables: (probably not for direct use in your scripts) +# ALUT_INCLUDE_DIR +# ALUT_LIBRARY +# +# Non-cache variables you might use in your CMakeLists.txt: +# ALUT_FOUND +# ALUT_INCLUDE_DIRS +# ALUT_LIBRARIES +# ALUT_WORKAROUND_INCLUDE_DIRS - add these to your include path with +# include_directories(${ALUT_WORKAROUND_INCLUDE_DIRS} ${ALUT_INCLUDE_DIRS}) +# so you can always #include and #include even on +# Mac where the paths might differ. +# +# Requires these CMake modules: +# FindPackageHandleStandardArgs (known included with CMake >=2.6.2) +# +# Original Author: +# 2009-2010 Ryan Pavlik +# http://academic.cleardefinition.com +# Iowa State University HCI Graduate Program/VRAC +# +# Copyright Iowa State University 2009-2010. +# Distributed under the Boost Software License, Version 1.0. +# (See accompanying file LICENSE_1_0.txt or copy at +# http://www.boost.org/LICENSE_1_0.txt) + +set(ALUT_ROOT_DIR + "${ALUT_ROOT_DIR}" + CACHE + PATH + "Path to search for ALUT library") + +# Share search paths with OpenAL +if(NOT "$ENV{OPENALDIR}" STREQUAL "") + if(NOT ALUT_ROOT_DIR) + set(ALUT_ROOT_DIR "$ENV{OPENALDIR}") + endif() +else() + if(ALUT_ROOT_DIR) + set(ENV{OPENALDIR} "${ALUT_ROOT_DIR}") + endif() +endif() + + + +### +# Configure ALUT +### +find_path(ALUT_INCLUDE_DIR + NAMES + alut.h + HINTS + "${ALUT_ROOT_DIR}" + PATH_SUFFIXES + AL + alut + OpenAL + include + include/alut + include/freealut + include/AL + include/OpenAL + PATHS + /usr/local + /opt/local + /sw) +mark_as_advanced(ALUT_INCLUDE_DIR) + +find_library(ALUT_LIBRARY + NAMES + alut + HINTS + "${ALUT_ROOT_DIR}" + PATH_SUFFIXES + lib + lib64 + PATHS + /usr/local + /opt/local + /sw) +mark_as_advanced(ALUT_LIBRARY) + +### +# Prereq: OpenAL +### + +# On Mac OS X, the ALUT headers were in the OpenAL framework until 10.4.7 +# If we found ALUT headers elsewhere, it's probably freealut which may +# define the same symbols as the library in the framework (?) +# so we might want to save/restore the CMake variable that controls searching +# in frameworks +find_package(OpenAL QUIET) + +# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if +# all listed variables are TRUE +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(ALUT + DEFAULT_MSG + ALUT_LIBRARY + ALUT_INCLUDE_DIR + OPENAL_FOUND) + +if(ALUT_FOUND) + set(ALUT_INCLUDE_DIRS "${OPENAL_INCLUDE_DIR}" "${ALUT_INCLUDE_DIR}") + set(ALUT_LIBRARIES "${OPENAL_LIBRARY}" ${ALUT_LIBRARY}) + if(APPLE) + get_filename_component(_moddir ${CMAKE_CURRENT_LIST_FILE} PATH) + if("${OPENAL_INCLUDE_DIR}" MATCHES "\\.framework$") + # OpenAL is in a framework - need a workaround + set(OPENAL_WORKAROUND_INCLUDE_DIR + "${_moddir}/workarounds/mac-openal") + list(APPEND + ALUT_WORKAROUND_INCLUDE_DIRS + "${OPENAL_WORKAROUND_INCLUDE_DIR}") + endif() + if("${ALUT_INCLUDE_DIR}" MATCHES "\\.framework$") + # ALUT is in the OpenAL framework - need a workaround + set(ALUT_WORKAROUND_INCLUDE_DIR + "${_moddir}/workarounds/mac-alut-framework") + list(APPEND + ALUT_WORKAROUND_INCLUDE_DIRS + "${ALUT_WORKAROUND_INCLUDE_DIR}") + endif() + endif() + + if("${ALUT_INCLUDE_DIR}" MATCHES "AL$") + get_filename_component(_parent "${ALUT_INCLUDE_DIR}/.." ABSOLUTE) + list(APPEND ALUT_INCLUDE_DIRS "${_parent}") + endif() + mark_as_advanced(ALUT_ROOT_DIR) +endif()