Skip to content

Commit

Permalink
Merge pull request #12984 from kaiomatico/rpi64bit
Browse files Browse the repository at this point in the history
add raspberry pi 64 bit build files
  • Loading branch information
hrydgard authored May 30, 2020
2 parents 6f07e2b + 6848a3d commit 2f7a456
Show file tree
Hide file tree
Showing 2 changed files with 45 additions and 0 deletions.
3 changes: 3 additions & 0 deletions b.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ do
--rpi)
CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=cmake/Toolchains/raspberry.armv7.cmake ${CMAKE_ARGS}"
;;
--rpi64)
CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=cmake/Toolchains/raspberry.armv8.cmake ${CMAKE_ARGS}"
;;
--android) CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=android/android.toolchain.cmake ${CMAKE_ARGS}"
TARGET_OS=Android
PACKAGE=1
Expand Down
42 changes: 42 additions & 0 deletions cmake/Toolchains/raspberry.armv8.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
file(READ "/sys/firmware/devicetree/base/compatible" PPSSPP_PI_MODEL)

if(PPSSPP_PI_MODEL MATCHES "raspberrypi,4")
set(PPSSPP_PI_MODEL4 ON)
endif()

if(NOT PPSSPP_PI_MODEL4 AND NOT EXISTS "/opt/vc/include/bcm_host.h")
message(FATAL_ERROR "RaspberryPI platform not recognized")
endif()

include_directories(SYSTEM
/opt/vc/include
/opt/vc/include/interface/vcos/pthreads
/opt/vc/include/interface/vmcx_host/linux
)

if(NOT PPSSPP_PI_MODEL4)
add_definitions(
-DPPSSPP_PLATFORM_RPI=1
-U__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2
)
endif()

if(PPSSPP_PI_MODEL4)
set(ARCH_FLAGS "-march=armv8-a+crc -mtune=cortex-a72 -funsafe-math-optimizations")
else()
set(ARCH_FLAGS "-mcpu=cortex-a7 -mfpu=neon -mfloat-abi=hard")
endif()
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${ARCH_FLAGS}" CACHE STRING "" FORCE)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${ARCH_FLAGS}" CACHE STRING "" FORCE)
set(CMAKE_ASM_FLAGS "${CMAKE_ASM_FLAGS} ${ARCH_FLAGS}" CACHE STRING "" FORCE)

set(CMAKE_EXE_LINKER_FLAGS "-L/opt/vc/lib" CACHE STRING "" FORCE)

if(NOT PPSSPP_PI_MODEL4)
set(OPENGL_LIBRARIES brcmGLESv2 bcm_host)
set(EGL_LIBRARIES brcmEGL)
set(USING_FBDEV ON)
endif()
set(USING_GLES2 ON)
set(ARMV7 ON)
set(USE_WAYLAND_WSI OFF)

0 comments on commit 2f7a456

Please sign in to comment.