From 1ce8f6879a3a2f5b819c67796fcb131ad57fe3f0 Mon Sep 17 00:00:00 2001 From: strawmanbobi Date: Tue, 27 Aug 2019 16:15:54 +0800 Subject: [PATCH] added ARM/AARCH64 Linux cross-compile reference --- src/ir_decoder/CMakeLists.txt | 199 ++++++++++++++++++---------------- 1 file changed, 105 insertions(+), 94 deletions(-) diff --git a/src/ir_decoder/CMakeLists.txt b/src/ir_decoder/CMakeLists.txt index 1d05cc1..a587b4d 100644 --- a/src/ir_decoder/CMakeLists.txt +++ b/src/ir_decoder/CMakeLists.txt @@ -1,94 +1,105 @@ -cmake_minimum_required(VERSION 3.2) - -######################################################## -project(irda_decoder) -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") -add_definitions(-DBOARD_PC -DDEBUG) -# add_definitions(-DBOARD_PC -DBOARD_PC_JNI -DDEBUG) - -IF (CMAKE_SYSTEM_NAME MATCHES "Linux") - MESSAGE("compile platform : Linux") - add_definitions(-DPLATFORM_LINUX) -ELSEIF (CMAKE_SYSTEM_NAME MATCHES "Windows") - MESSAGE("compile platform : win32") - add_definitions(-DPLATFORM_WIN32) -ELSE () - MESSAGE("invalid compile platform") - add_definitions(-DPLATFORM_WIN32) -ENDIF () - -set(SOURCE_FILES_EXECUTABLE - include/ir_defs.h - src/ir_utils.c - include/ir_utils.h - src/ir_tv_control.c - include/ir_tv_control.h - src/ir_ac_apply.c - include/ir_ac_apply.h - src/ir_ac_build_frame.c - include/ir_ac_build_frame.h - src/ir_ac_parse_parameter.c - include/ir_ac_parse_parameter.h - src/ir_ac_parse_forbidden_info.c - include/ir_ac_parse_forbidden_info.h - src/ir_ac_parse_frame_info.c - include/ir_ac_parse_frame_info.h - src/ir_ac_control.c - include/ir_ac_control.h - src/ir_ac_binary_parse.c - include/ir_ac_binary_parse.h - src/ir_decode.c - include/ir_decode.h - src/ir_test_main.c) - -set(SOURCE_FILES_SHARED_LIB - include/ir_defs.h - src/ir_utils.c - include/ir_utils.h - src/ir_tv_control.c - include/ir_tv_control.h - src/ir_ac_apply.c - include/ir_ac_apply.h - src/ir_ac_build_frame.c - include/ir_ac_build_frame.h - src/ir_ac_parse_parameter.c - include/ir_ac_parse_parameter.h - src/ir_ac_parse_forbidden_info.c - include/ir_ac_parse_forbidden_info.h - src/ir_ac_parse_frame_info.c - include/ir_ac_parse_frame_info.h - src/ir_ac_control.c - include/ir_ac_control.h - src/ir_ac_binary_parse.c - include/ir_ac_binary_parse.h - src/ir_decode.c - include/ir_decode.h) - -set(SOURCE_FILES_JNI_SHARED_LIB - jni/src/ir_decode_jni.h - jni/src/ir_decode_jni.c - include/ir_defs.h - src/ir_utils.c - include/ir_utils.h - src/ir_tv_control.c - include/ir_tv_control.h - src/ir_ac_apply.c - include/ir_ac_apply.h - src/ir_ac_build_frame.c - include/ir_ac_build_frame.h - src/ir_ac_parse_parameter.c - include/ir_ac_parse_parameter.h - src/ir_ac_parse_forbidden_info.c - include/ir_ac_parse_forbidden_info.h - src/ir_ac_parse_frame_info.c - include/ir_ac_parse_frame_info.h - src/ir_ac_control.c - include/ir_ac_control.h - src/ir_ac_binary_parse.c - include/ir_ac_binary_parse.h - src/ir_decode.c - include/ir_decode.h) - -# add_library(irda_decoder SHARED ${SOURCE_FILES_SHARED_LIB}) -add_executable(irda_decoder ${SOURCE_FILES_EXECUTABLE}) -# add_library(irda_decoder SHARED ${SOURCE_FILES_JNI_SHARED_LIB}) +cmake_minimum_required(VERSION 3.2) + +######################################################## +project(irda_decoder) +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") +add_definitions(-DBOARD_PC -DDEBUG) +# add_definitions(-DBOARD_PC -DBOARD_PC_JNI -DDEBUG) + +IF (CMAKE_SYSTEM_NAME MATCHES "Linux") + MESSAGE("compile platform : Linux") + add_definitions(-DPLATFORM_LINUX) +ELSEIF (CMAKE_SYSTEM_NAME MATCHES "Windows") + MESSAGE("compile platform : win32") + add_definitions(-DPLATFORM_WIN32) +ELSE () + MESSAGE("invalid compile platform") + add_definitions(-DPLATFORM_WIN32) +ENDIF () + +set(SOURCE_FILES_EXECUTABLE + include/ir_defs.h + src/ir_utils.c + include/ir_utils.h + src/ir_tv_control.c + include/ir_tv_control.h + src/ir_ac_apply.c + include/ir_ac_apply.h + src/ir_ac_build_frame.c + include/ir_ac_build_frame.h + src/ir_ac_parse_parameter.c + include/ir_ac_parse_parameter.h + src/ir_ac_parse_forbidden_info.c + include/ir_ac_parse_forbidden_info.h + src/ir_ac_parse_frame_info.c + include/ir_ac_parse_frame_info.h + src/ir_ac_control.c + include/ir_ac_control.h + src/ir_ac_binary_parse.c + include/ir_ac_binary_parse.h + src/ir_decode.c + include/ir_decode.h + src/ir_test_main.c) + +set(SOURCE_FILES_SHARED_LIB + include/ir_defs.h + src/ir_utils.c + include/ir_utils.h + src/ir_tv_control.c + include/ir_tv_control.h + src/ir_ac_apply.c + include/ir_ac_apply.h + src/ir_ac_build_frame.c + include/ir_ac_build_frame.h + src/ir_ac_parse_parameter.c + include/ir_ac_parse_parameter.h + src/ir_ac_parse_forbidden_info.c + include/ir_ac_parse_forbidden_info.h + src/ir_ac_parse_frame_info.c + include/ir_ac_parse_frame_info.h + src/ir_ac_control.c + include/ir_ac_control.h + src/ir_ac_binary_parse.c + include/ir_ac_binary_parse.h + src/ir_decode.c + include/ir_decode.h) + +set(SOURCE_FILES_JNI_SHARED_LIB + jni/src/ir_decode_jni.h + jni/src/ir_decode_jni.c + include/ir_defs.h + src/ir_utils.c + include/ir_utils.h + src/ir_tv_control.c + include/ir_tv_control.h + src/ir_ac_apply.c + include/ir_ac_apply.h + src/ir_ac_build_frame.c + include/ir_ac_build_frame.h + src/ir_ac_parse_parameter.c + include/ir_ac_parse_parameter.h + src/ir_ac_parse_forbidden_info.c + include/ir_ac_parse_forbidden_info.h + src/ir_ac_parse_frame_info.c + include/ir_ac_parse_frame_info.h + src/ir_ac_control.c + include/ir_ac_control.h + src/ir_ac_binary_parse.c + include/ir_ac_binary_parse.h + src/ir_decode.c + include/ir_decode.h) + +# SET(CMAKE_SYSTEM_NAME Linux) +## ARM32 cross compile +# SET(CMAKE_C_COMPILER "/usr/bin/arm-linux-gnueabi-gcc") +# SET(CMAKE_CXX_COMPILER "/usr/bin/arm-linux-gnueabi-g++") +# SET(CMAKE_FIND_ROOT_PATH "/usr/bin") + +## ARM64 cross compile +# SET(CMAKE_C_COMPILER "/usr/x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc") +# SET(CMAKE_C_COMPILER "/usr/x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-g++") +# SET(CMAKE_FIND_ROOT_PATH "/x86_64_aarch64-linux-gnu") + +add_library(irda_decoder SHARED ${SOURCE_FILES_SHARED_LIB}) +# add_executable(irda_decoder ${SOURCE_FILES_EXECUTABLE}) +# add_library(irda_decoder SHARED ${SOURCE_FILES_JNI_SHARED_LIB})