diff options
Diffstat (limited to 'cmake/scripts/rbpi/ArchSetup.cmake')
| -rw-r--r-- | cmake/scripts/rbpi/ArchSetup.cmake | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/cmake/scripts/rbpi/ArchSetup.cmake b/cmake/scripts/rbpi/ArchSetup.cmake new file mode 100644 index 0000000..6fc2c21 --- /dev/null +++ b/cmake/scripts/rbpi/ArchSetup.cmake | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | set(ARCH_DEFINES -DTARGET_POSIX -DTARGET_LINUX -D_LINUX -D_ARMEL -DTARGET_RASPBERRY_PI | ||
| 2 | -DHAS_OMXPLAYER -DHAVE_OMXLIB) | ||
| 3 | set(SYSTEM_DEFINES -D__STDC_CONSTANT_MACROS -D_LARGEFILE64_SOURCE | ||
| 4 | -D_FILE_OFFSET_BITS=64) | ||
| 5 | set(PLATFORM_DIR linux) | ||
| 6 | |||
| 7 | string(REGEX REPLACE "[ ]+" ";" SYSTEM_LDFLAGS "$ENV{LDFLAGS}") | ||
| 8 | set(CMAKE_SYSTEM_NAME Linux) | ||
| 9 | |||
| 10 | if(WITH_ARCH) | ||
| 11 | set(ARCH ${WITH_ARCH}) | ||
| 12 | else() | ||
| 13 | if(CPU STREQUAL arm1176jzf-s) | ||
| 14 | set(ARCH arm) | ||
| 15 | set(NEON False) | ||
| 16 | set(NEON_FLAGS "-mcpu=arm1176jzf-s -mtune=arm1176jzf-s -mfloat-abi=hard -mfpu=vfp") | ||
| 17 | elseif(CPU MATCHES "cortex-a7" OR CPU MATCHES "cortex-a53") | ||
| 18 | set(ARCH arm) | ||
| 19 | set(NEON True) | ||
| 20 | set(NEON_FLAGS "-fPIC -mcpu=cortex-a7 -mfloat-abi=hard -mfpu=neon-vfpv4 -mvectorize-with-neon-quad") | ||
| 21 | else() | ||
| 22 | message(SEND_ERROR "Unknown CPU: ${CPU}") | ||
| 23 | endif() | ||
| 24 | endif() | ||
| 25 | |||
| 26 | # Make sure we strip binaries in Release build | ||
| 27 | if(CMAKE_BUILD_TYPE STREQUAL Release AND CMAKE_COMPILER_IS_GNUCXX) | ||
| 28 | set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -s") | ||
| 29 | endif() | ||
| 30 | |||
| 31 | find_package(CXX11 REQUIRED) | ||
| 32 | |||
| 33 | set(MMAL_FOUND 1 CACHE INTERNAL "MMAL") | ||
| 34 | set(OMX_FOUND 1 CACHE INTERNAL "OMX") | ||
| 35 | set(OMXLIB_FOUND 1 CACHE INTERNAL "OMX") | ||
