Fix error in building for iOS #99
authorPhil.Wang <phil.wang@arm.com>
Thu, 18 Dec 2014 11:16:22 +0000 (19:16 +0800)
committerPhil.Wang <phil.wang@arm.com>
Wed, 25 Feb 2015 06:10:26 +0000 (14:10 +0800)
Change-Id: Iec2b8dda82c2a8c3b189988ddef15bcc3df36070

CMakeLists.txt
ios/CMakeLists.txt
ios/ios_config.cmake

index 2ab4b08..ed8b498 100644 (file)
@@ -69,16 +69,25 @@ if(DEFINED NE10_LINUX_TARGET_ARCH)
     endif()
 endif()
 
+if(DEFINED NE10_IOS_TARGET_ARCH)
+    if(${NE10_IOS_TARGET_ARCH} STREQUAL "armv7")
+        set(NE10_TARGE_ARCH "armv7")
+    else()
+        set(NE10_TARGE_ARCH "aarch64")
+    endif()
+endif()
+
 message("-- Target architecture : ${NE10_TARGET_ARCH}")
 
 #select functionalities to be compiled
 if(${NE10_TARGET_ARCH} STREQUAL "armv7")
     # Math module has not been optimized for aarch64.
     option(NE10_ENABLE_MATH "Build math functionalities to NE10" ON)
+    # Physics module has not been optimized for aarch64.
+    option(NE10_ENABLE_PHYSICS "Build physics functionalities to NE10" ON)
 endif()
 option(NE10_ENABLE_DSP "Build dsp functionalities to NE10" ON)
 option(NE10_ENABLE_IMGPROC "Build image processing functionalities to NE10" ON)
-option(NE10_ENABLE_PHYSICS "Build physics functionalities to NE10" ON)
 
 set(NE10_VERSION 10)
 
@@ -131,8 +140,16 @@ elseif(IOS_PLATFORM)
     if(NOT MIN_IOS_VER)
       set(MIN_IOS_VER "5.0")
     endif()
-    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -arch armv7 -arch armv7s -mfpu=vfp3 -miphoneos-version-min=" ${MIN_IOS_VER})
-    set(CMAKE_ASM_FLAGS "${CMAKE_C_FLAGS} -arch armv7 -arch armv7s -mfpu=neon -miphoneos-version-min=" ${MIN_IOS_VER})
+    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -miphoneos-version-min=" ${MIN_IOS_VER})
+    set(CMAKE_ASM_FLAGS "${CMAKE_C_FLAGS} -mfpu=neon -miphoneos-version-min=" ${MIN_IOS_VER})
+
+    if(${NE10_TARGET_ARCH} STREQUAL "armv7")
+        set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mfpu=vfp3 -arch armv7 -arch armv7s")
+        set(CMAKE_ASM_FLAGS "${CMAKE_C_FLAGS} -arch armv7 -arch armv7s")
+    else()
+        set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -arch arm64")
+    endif()
+
     message("-- CFLAGS: ${CMAKE_C_FLAGS}")
 
     string(REPLACE ";" "" CMAKE_C_FLAGS ${CMAKE_C_FLAGS})
index c252896..e9fc7b7 100644 (file)
@@ -48,8 +48,6 @@ set(NE10_TEST_MATH_SRCS
 # Define dsp test files.
 set(NE10_TEST_DSP_SRCS
     ${PROJECT_SOURCE_DIR}/modules/dsp/test/test_main.c
-    ${PROJECT_SOURCE_DIR}/modules/dsp/test/test_suite_cfft.c
-    ${PROJECT_SOURCE_DIR}/modules/dsp/test/test_suite_rfft.c
     ${PROJECT_SOURCE_DIR}/modules/dsp/test/test_suite_fir.c
     ${PROJECT_SOURCE_DIR}/modules/dsp/test/test_suite_fir_decimate.c
     ${PROJECT_SOURCE_DIR}/modules/dsp/test/test_suite_fir_interpolate.c
index 129c49b..4930d12 100644 (file)
@@ -36,6 +36,8 @@
 #       export IOS_DEVELOPER_PATH=/absolute/path/of/ios/developer/path,
 #   IOS_DEVELOPER_PATH is set to /Applications/Xcode.app/Contents/Developer by
 #   default.
+#   you may specify target architecture by setting NE10_IOS_TARGET_ARCH to
+#   aarch64 or armv7. Default is armv7.
 
 set(IOS_PLATFORM ON)
 
@@ -47,6 +49,12 @@ if(IOS_DEMO)
   add_definitions(-DNE10_IOS_DEMO)
 endif()
 
+if(NOT DEFINED ENV{NE10_IOS_TARGET_ARCH})
+    set(NE10_IOS_TARGET_ARCH "armv7")
+else()
+    set(NE10_IOS_TARGET_ARCH $ENV{NE10_IOS_TARGET_ARCH})
+endif()
+
 if(NOT DEFINED ENV{IOS_DEVELOPER_PATH})
     set(ENV{IOS_DEVELOPER_PATH} "/Applications/Xcode.app/Contents/Developer")
 endif()
@@ -70,8 +78,9 @@ set(CMAKE_CXX_COMPILER_WORKS TRUE)
 set(CMAKE_C_COMPILER_WORKS TRUE)
 set(CMAKE_ASM_COMPILER TRUE)
 
+# Require iOS SDK >= 8.1
 set(CMAKE_IOS_SDK_PATH
-  "$ENV{IOS_DEVELOPER_PATH}/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/")
+  "$ENV{IOS_DEVELOPER_PATH}/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/")
 
 set(CMAKE_OSX_SYSROOT ${CMAKE_IOS_SDK_PATH})
 set(CMAKE_FIND_ROOT_PATH ${CMAKE_IOS_SDK_PATH})