From: Ryan Finnie Date: Wed, 19 Oct 2016 23:12:14 +0000 (+0000) Subject: Add ARM64 CMake variable for 64-bit targets X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1250b73f537515f5515d89dcfedf87daf152ab87;p=platform%2Fadaptation%2Fbroadcom%2Flibomxil-vc4.git Add ARM64 CMake variable for 64-bit targets At the moment, much of the codebase compiles on 64-bit targets, but not all (mostly 32-bit assembly). -DARM64=ON allows for skipping directories which currently do not compile correctly. This is backwards compatible with existing behavior (i.e. no -DARM on a 32-bit target compiles everything as before), and hopefully will ultimately become unnecessary as remaining components are fixed for 64-bit use. --- diff --git a/CMakeLists.txt b/CMakeLists.txt index d3159c7..98252c3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,8 +8,13 @@ SET(PROJECT_VER_PATCH 0) SET(PROJECT_VER "${PROJECT_VER_MAJOR}.${PROJECT_VER_MINOR}.${PROJECT_VER_PATCH}") SET(PROJECT_APIVER "${PROJECT_VER}") -set(BUILD_MMAL TRUE) -set(BUILD_MMAL_APPS TRUE) +if(ARM64) + set(BUILD_MMAL FALSE) + set(BUILD_MMAL_APPS FALSE) +else() + set(BUILD_MMAL TRUE) + set(BUILD_MMAL_APPS TRUE) +endif() set(vmcs_root ${PROJECT_SOURCE_DIR}) get_filename_component(VIDEOCORE_ROOT . ABSOLUTE) @@ -61,7 +66,9 @@ endif() add_subdirectory(interface/vcos) add_subdirectory(interface/vmcs_host) add_subdirectory(interface/vchiq_arm) -add_subdirectory(interface/khronos) +if(NOT ARM64) + add_subdirectory(interface/khronos) +endif() #add_subdirectory(opensrc/tools/lua) if(BUILD_MMAL) @@ -75,7 +82,9 @@ if(BUILD_MMAL_APPS) add_subdirectory(host_applications/android/apps/vidtex) endif(BUILD_MMAL_APPS) -add_subdirectory(middleware/openmaxil) +if(NOT ARM64) + add_subdirectory(middleware/openmaxil) +endif() # 3d demo code #if(NOT ANDROID) diff --git a/host_applications/linux/CMakeLists.txt b/host_applications/linux/CMakeLists.txt index 5a648e7..e8615cc 100644 --- a/host_applications/linux/CMakeLists.txt +++ b/host_applications/linux/CMakeLists.txt @@ -1,12 +1,16 @@ # linux apps -add_subdirectory(libs/bcm_host) +if(NOT ARM64) + add_subdirectory(libs/bcm_host) +endif() add_subdirectory(apps/gencmd) add_subdirectory(apps/tvservice) add_subdirectory(apps/vcmailbox) -add_subdirectory(apps/raspicam) -add_subdirectory(libs/sm) -add_subdirectory(apps/smem) +if(NOT ARM64) + add_subdirectory(apps/raspicam) + add_subdirectory(libs/sm) + add_subdirectory(apps/smem) +endif() add_subdirectory(libs/debug_sym) add_subdirectory(apps/dtoverlay) add_subdirectory(apps/dtmerge) diff --git a/makefiles/cmake/vmcs.cmake b/makefiles/cmake/vmcs.cmake index 9a5c711..718cd3b 100644 --- a/makefiles/cmake/vmcs.cmake +++ b/makefiles/cmake/vmcs.cmake @@ -29,6 +29,7 @@ elseif (${WIN32}) else() message(FATAL_ERROR,"Unknown system type") endif() +set (ARM64 OFF CACHE BOOL "Whether target is ARM64") # construct the vmcs config header file add_definitions(-DHAVE_VMCS_CONFIG)