File: CheckCPUArch.cmake

package info (click to toggle)
libsndfile 1.2.2-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 5,108 kB
  • sloc: ansic: 55,350; cpp: 1,108; python: 791; makefile: 545; sh: 539; cs: 122
file content (23 lines) | stat: -rw-r--r-- 1,180 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
macro (_CHECK_CPU_ARCH ARCH ARCH_DEFINES VARIABLE)
	if (NOT DEFINED HAVE_${VARIABLE})
		message (STATUS "Check CPU architecture is ${ARCH}")
		set (CHECK_CPU_ARCH_DEFINES ${ARCH_DEFINES})
		configure_file (${PROJECT_SOURCE_DIR}/cmake/CheckCPUArch.c.in ${PROJECT_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckCPUArch.c @ONLY)
		try_compile (HAVE_${VARIABLE} "${PROJECT_BINARY_DIR}"
			"${PROJECT_BINARY_DIR}/CMakeFiles/CMakeTmp/CheckCPUArch.c")
		if(HAVE_${VARIABLE})
			message (STATUS "Check CPU architecture is ${ARCH} - yes")
			set (${VARIABLE} 1 CACHE INTERNAL "Result of CHECK_CPU_ARCH_X64" FORCE)
		else ()
			message (STATUS "Check CPU architecture is ${ARCH} - no")
        endif ()
    endif ()
endmacro (_CHECK_CPU_ARCH)

macro (CHECK_CPU_ARCH_X64 VARIABLE)
    _CHECK_CPU_ARCH (x64 "defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__x86_64) || defined(_M_X64) || defined(_M_AMD64)" ${VARIABLE})
endmacro (CHECK_CPU_ARCH_X64)

macro (CHECK_CPU_ARCH_X86 VARIABLE)
    _CHECK_CPU_ARCH (x86 "defined(__i386__) || defined(__i486__) || defined(__i586__) || defined(__i686__) ||defined( __i386) || defined(_M_IX86)" ${VARIABLE})
endmacro (CHECK_CPU_ARCH_X86)