Amend HADOOP-8659. Native libraries must build with soft-float ABI for Oracle JVM on ARM. Contributed by Colin Patrick McCabe
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1372584 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
d3427c7d93
commit
c6469150a8
|
@ -18,17 +18,18 @@
|
||||||
|
|
||||||
cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
|
cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
|
||||||
|
|
||||||
find_package(JNI REQUIRED)
|
|
||||||
|
|
||||||
# If JVM_ARCH_DATA_MODEL is 32, compile all binaries as 32-bit.
|
# If JVM_ARCH_DATA_MODEL is 32, compile all binaries as 32-bit.
|
||||||
# This variable is set by maven.
|
# This variable is set by maven.
|
||||||
if (JVM_ARCH_DATA_MODEL EQUAL 32)
|
if (JVM_ARCH_DATA_MODEL EQUAL 32)
|
||||||
# Force 32-bit code generation on amd64/x86_64, ppc64, sparc64
|
# Force 32-bit code generation on amd64/x86_64, ppc64, sparc64
|
||||||
if (CMAKE_COMPILER_IS_GNUCC AND CMAKE_SYSTEM_PROCESSOR MATCHES ".*64")
|
if (CMAKE_COMPILER_IS_GNUCC AND CMAKE_SYSTEM_PROCESSOR MATCHES ".*64")
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32")
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32")
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32")
|
||||||
set(CMAKE_LD_FLAGS "${CMAKE_LD_FLAGS} -m32")
|
set(CMAKE_LD_FLAGS "${CMAKE_LD_FLAGS} -m32")
|
||||||
endif ()
|
endif ()
|
||||||
if (CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "amd64")
|
if (CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "amd64")
|
||||||
|
# Set CMAKE_SYSTEM_PROCESSOR to ensure that find_package(JNI) will use
|
||||||
|
# the 32-bit version of libjvm.so.
|
||||||
set(CMAKE_SYSTEM_PROCESSOR "i686")
|
set(CMAKE_SYSTEM_PROCESSOR "i686")
|
||||||
endif ()
|
endif ()
|
||||||
endif (JVM_ARCH_DATA_MODEL EQUAL 32)
|
endif (JVM_ARCH_DATA_MODEL EQUAL 32)
|
||||||
|
@ -63,3 +64,5 @@ if (CMAKE_SYSTEM_PROCESSOR MATCHES "^arm" AND CMAKE_SYSTEM_NAME STREQUAL "Linux"
|
||||||
endif ()
|
endif ()
|
||||||
endif (READELF MATCHES "NOTFOUND")
|
endif (READELF MATCHES "NOTFOUND")
|
||||||
endif (CMAKE_SYSTEM_PROCESSOR MATCHES "^arm" AND CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
endif (CMAKE_SYSTEM_PROCESSOR MATCHES "^arm" AND CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||||
|
|
||||||
|
find_package(JNI REQUIRED)
|
||||||
|
|
Loading…
Reference in New Issue