mirror of
https://github.com/glest/glest-source.git
synced 2025-02-24 19:52:25 +01:00
- added missing file for cmake builds (corrected wrong file from last checking)
This commit is contained in:
parent
05e1cf7c96
commit
39bbc6c665
@ -1,43 +0,0 @@
|
||||
#
|
||||
#
|
||||
# Try to find the FTGL libraries
|
||||
# Once done this will define
|
||||
#
|
||||
# FTGL_FOUND - system has ftgl
|
||||
# FTGL_INCLUDE_DIR - path to FTGL/FTGL.h
|
||||
# FTGL_LIBRARY - the library that must be included
|
||||
#
|
||||
#
|
||||
|
||||
OPTION(WANT_STATIC_LIBS "builds as many static libs as possible" OFF)
|
||||
IF(WANT_STATIC_LIBS)
|
||||
OPTION(FTGL_STATIC "Set to ON to link your project with static library (instead of DLL)." ON)
|
||||
ENDIF()
|
||||
|
||||
IF (FTGL_LIBRARY AND FTGL_INCLUDE_DIR)
|
||||
SET(FTGL_FOUND "YES")
|
||||
ELSE (FTGL_LIBRARY AND FTGL_INCLUDE_DIR)
|
||||
|
||||
FIND_PATH(FTGL_INCLUDE_DIR FTGL/ftgl.h PATHS /usr/local/include /usr/include)
|
||||
|
||||
IF (FTGL_STATIC AND NOT FTGL_LIBRARY)
|
||||
FIND_LIBRARY(FTGL_LIBRARY NAMES libftgl.a ftgl PATHS /usr/local/lib /usr/lib)
|
||||
ELSE()
|
||||
FIND_LIBRARY(FTGL_LIBRARY NAMES ftgl PATHS /usr/local/lib /usr/lib)
|
||||
ENDIF()
|
||||
|
||||
IF (FTGL_INCLUDE_DIR AND FTGL_LIBRARY)
|
||||
SET(FTGL_FOUND "YES")
|
||||
ELSE (FTGL_INCLUDE_DIR AND FTGL_LIBRARY)
|
||||
SET(FTGL_FOUND "NO")
|
||||
ENDIF (FTGL_INCLUDE_DIR AND FTGL_LIBRARY)
|
||||
ENDIF (FTGL_LIBRARY AND FTGL_INCLUDE_DIR)
|
||||
|
||||
IF (FTGL_FOUND)
|
||||
MESSAGE(STATUS "Found FTGL libraries at ${FTGL_LIBRARY} and includes at ${FTGL_INCLUDE_DIR}")
|
||||
ELSE (FTGL_FOUND)
|
||||
IF (FTGL_FIND_REQUIRED)
|
||||
MESSAGE(FATAL_ERROR "Could not find FTGL libraries")
|
||||
ENDIF (FTGL_FIND_REQUIRED)
|
||||
ENDIF (FTGL_FOUND)
|
||||
|
182
mk/cmake/Modules/SpecialMacros.cmake
Normal file
182
mk/cmake/Modules/SpecialMacros.cmake
Normal file
@ -0,0 +1,182 @@
|
||||
# special macros SpecialMacros.cmake
|
||||
|
||||
include(CheckFunctionExists)
|
||||
include(AddFileDependencies)
|
||||
|
||||
#macro(special_add_library lib)
|
||||
# if (WIN32)
|
||||
# add_library(${lib} STATIC ${ARGN})
|
||||
# else (WIN32)
|
||||
# add_library(${lib} SHARED ${ARGN})
|
||||
# endif (WIN32)
|
||||
#endmacro(special_add_library)
|
||||
|
||||
macro(special_check_for_sse _max_sse_level_desired)
|
||||
set(${_max_sse_level_desired})
|
||||
|
||||
message(STATUS "Max SSE desired: [${_max_sse_level_desired}]")
|
||||
|
||||
# check for SSE extensions
|
||||
include(CheckCXXSourceRuns)
|
||||
include(CheckCSourceRuns)
|
||||
|
||||
if( CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX )
|
||||
set(SSE_FLAGS)
|
||||
|
||||
set(CMAKE_REQUIRED_FLAGS "-msse3")
|
||||
check_cxx_source_runs("
|
||||
#include <pmmintrin.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
__m128d a, b;
|
||||
double vals[2] = {0};
|
||||
a = _mm_loadu_pd(vals);
|
||||
b = _mm_hadd_pd(a,a);
|
||||
_mm_storeu_pd(vals, b);
|
||||
return 0;
|
||||
}"
|
||||
HAS_SSE3_EXTENSIONS)
|
||||
|
||||
set(CMAKE_REQUIRED_FLAGS "-msse2")
|
||||
check_cxx_source_runs("
|
||||
#include <emmintrin.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
__m128d a, b;
|
||||
double vals[2] = {0};
|
||||
a = _mm_loadu_pd(vals);
|
||||
b = _mm_add_pd(a,a);
|
||||
_mm_storeu_pd(vals,b);
|
||||
return 0;
|
||||
}"
|
||||
HAS_SSE2_EXTENSIONS)
|
||||
|
||||
set(CMAKE_REQUIRED_FLAGS "-msse")
|
||||
check_cxx_source_runs("
|
||||
#include <xmmintrin.h>
|
||||
int main()
|
||||
{
|
||||
__m128 a, b;
|
||||
float vals[4] = {0};
|
||||
a = _mm_loadu_ps(vals);
|
||||
b = a;
|
||||
b = _mm_add_ps(a,b);
|
||||
_mm_storeu_ps(vals,b);
|
||||
return 0;
|
||||
}"
|
||||
HAS_SSE_EXTENSIONS)
|
||||
|
||||
set(CMAKE_REQUIRED_FLAGS)
|
||||
|
||||
if(HAS_SSE3_EXTENSIONS AND (NOT ${_max_sse_level_desired} OR ${_max_sse_level_desired} MATCHES "3"))
|
||||
set(SSE_FLAGS "-msse3 -mfpmath=sse")
|
||||
message(STATUS "Found SSE3 extensions, using flags: ${SSE_FLAGS}")
|
||||
elseif(HAS_SSE2_EXTENSIONS AND (NOT ${_max_sse_level_desired} OR ${_max_sse_level_desired} MATCHES "2" OR ${_max_sse_level_desired} MATCHES "3"))
|
||||
set(SSE_FLAGS "-msse2 -mfpmath=sse")
|
||||
message(STATUS "Found SSE2 extensions, using flags: ${SSE_FLAGS}")
|
||||
elseif(HAS_SSE_EXTENSIONS AND (NOT ${_max_sse_level_desired} OR ${_max_sse_level_desired} MATCHES "1" OR ${_max_sse_level_desired} MATCHES "2" OR ${_max_sse_level_desired} MATCHES "3"))
|
||||
set(SSE_FLAGS "-msse -mfpmath=sse")
|
||||
message(STATUS "Found SSE extensions, using flags: ${SSE_FLAGS}")
|
||||
endif()
|
||||
|
||||
add_definitions(${SSE_FLAGS})
|
||||
|
||||
elseif(MSVC)
|
||||
check_cxx_source_runs("
|
||||
#include <emmintrin.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
__m128d a, b;
|
||||
double vals[2] = {0};
|
||||
a = _mm_loadu_pd(vals);
|
||||
b = _mm_add_pd(a,a);
|
||||
_mm_storeu_pd(vals,b);
|
||||
return 0;
|
||||
}"
|
||||
HAS_SSE2_EXTENSIONS)
|
||||
if( HAS_SSE2_EXTENSIONS AND (NOT ${_max_sse_level_desired} OR ${_max_sse_level_desired} MATCHES "2"))
|
||||
message(STATUS "Found SSE2 extensions")
|
||||
set(SSE_FLAGS "/arch:SSE2 /fp:fast -D__SSE__ -D__SSE2__" )
|
||||
endif()
|
||||
|
||||
add_definitions(${SSE_FLAGS})
|
||||
endif()
|
||||
endmacro(special_check_for_sse)
|
||||
|
||||
macro(special_check_for_x87)
|
||||
# check for X87 support
|
||||
include(CheckCXXSourceRuns)
|
||||
include(CheckCSourceRuns)
|
||||
|
||||
if( CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX )
|
||||
|
||||
check_cxx_source_runs("
|
||||
int main()
|
||||
{
|
||||
unsigned short fpu_mode;
|
||||
do { asm volatile (\"fstcw %0\" : \"=m\" (fpu_mode) : ); } while (0);
|
||||
fpu_mode &= 0xFCFF;
|
||||
do { asm volatile (\"fclex \\\\n fldcw %0\" : : \"m\" (fpu_mode)); } while (0);
|
||||
|
||||
return 0;
|
||||
}"
|
||||
HAS_X87_SUPPORT)
|
||||
|
||||
if(HAS_X87_SUPPORT)
|
||||
message(STATUS "Found X87 support.")
|
||||
endif()
|
||||
|
||||
elseif(MSVC)
|
||||
|
||||
set(HAS_X87_SUPPORT On)
|
||||
|
||||
endif()
|
||||
endmacro(special_check_for_x87)
|
||||
|
||||
macro(special_add_compile_flags target)
|
||||
set(args ${ARGN})
|
||||
separate_arguments(args)
|
||||
get_target_property(_flags ${target} COMPILE_FLAGS)
|
||||
if(NOT _flags)
|
||||
set(_flags ${ARGN})
|
||||
else(NOT _flags)
|
||||
separate_arguments(_flags)
|
||||
list(APPEND _flags "${args}")
|
||||
endif(NOT _flags)
|
||||
|
||||
_special_list_to_string(_flags_str "${_flags}")
|
||||
set_target_properties(${target} PROPERTIES
|
||||
COMPILE_FLAGS "${_flags_str}")
|
||||
endmacro(special_add_compile_flags)
|
||||
|
||||
macro(special_add_link_flags target)
|
||||
set(args ${ARGN})
|
||||
separate_arguments(args)
|
||||
get_target_property(_flags ${target} LINK_FLAGS)
|
||||
if(NOT _flags)
|
||||
set(_flags ${ARGN})
|
||||
else(NOT _flags)
|
||||
separate_arguments(_flags)
|
||||
list(APPEND _flags "${args}")
|
||||
endif(NOT _flags)
|
||||
|
||||
_special_list_to_string(_flags_str "${_flags}")
|
||||
set_target_properties(${target} PROPERTIES
|
||||
LINK_FLAGS "${_flags_str}")
|
||||
endmacro(special_add_link_flags)
|
||||
|
||||
macro(_special_list_to_string _string _list)
|
||||
set(${_string})
|
||||
foreach(_item ${_list})
|
||||
string(LENGTH "${${_string}}" _len)
|
||||
if(${_len} GREATER 0)
|
||||
set(${_string} "${${_string}} ${_item}")
|
||||
else(${_len} GREATER 0)
|
||||
set(${_string} "${_item}")
|
||||
endif(${_len} GREATER 0)
|
||||
endforeach(_item)
|
||||
endmacro(_special_list_to_string)
|
||||
|
Loading…
x
Reference in New Issue
Block a user