Author: eli Date: Sun Jul 1 22:47:48 2012 New Revision: 1356041 URL: http://svn.apache.org/viewvc?rev=1356041&view=rev Log: HADOOP-8538. CMake builds fail on ARM. Contributed by Trevor Robinson Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt hadoop/common/trunk/hadoop-common-project/hadoop-common/src/CMakeLists.txt Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt?rev=1356041&r1=1356040&r2=1356041&view=diff ============================================================================== --- hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt (original) +++ hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt Sun Jul 1 22:47:48 2012 @@ -286,6 +286,8 @@ Branch-2 ( Unreleased changes ) HADOOP-8438. hadoop-validate-setup.sh refers to examples jar file which doesn't exist (Devaraj K via umamahesh) + HADOOP-8538. CMake builds fail on ARM. (Trevor Robinson via eli) + BREAKDOWN OF HDFS-3042 SUBTASKS HADOOP-8220. ZKFailoverController doesn't handle failure to become active Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/src/CMakeLists.txt URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-common-project/hadoop-common/src/CMakeLists.txt?rev=1356041&r1=1356040&r2=1356041&view=diff ============================================================================== --- hadoop/common/trunk/hadoop-common-project/hadoop-common/src/CMakeLists.txt (original) +++ hadoop/common/trunk/hadoop-common-project/hadoop-common/src/CMakeLists.txt Sun Jul 1 22:47:48 2012 @@ -24,8 +24,11 @@ set(CMAKE_BUILD_TYPE, Release) # If JVM_ARCH_DATA_MODEL is 32, compile all binaries as 32-bit. # This variable is set by maven. if (JVM_ARCH_DATA_MODEL EQUAL 32) - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32") - set(CMAKE_LD_FLAGS "${CMAKE_LD_FLAGS} -m32") + # force 32-bit code generation on amd64/x86_64, ppc64, sparc64 + if (CMAKE_COMPILER_IS_GNUCC AND CMAKE_SYSTEM_PROCESSOR MATCHES ".*64") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32") + set(CMAKE_LD_FLAGS "${CMAKE_LD_FLAGS} -m32") + endif () if (CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "amd64") set(CMAKE_SYSTEM_PROCESSOR "i686") endif ()