aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlbrecht Lohofener <albrechtloh@gmx.de>2015-12-26 11:22:19 +0100
committerAlbrecht Lohofener <albrechtloh@gmx.de>2015-12-26 11:22:19 +0100
commitb2239996a2f2a3925fca11bfdf5e284f6a2cdac1 (patch)
tree4fbeb3962b3ae15ae2040c6b047de080b085afe1
parenta1489efb0dfebac4173081733dbefc35fc0bc895 (diff)
downloadka9q-fec-b2239996a2f2a3925fca11bfdf5e284f6a2cdac1.tar.gz
ka9q-fec-b2239996a2f2a3925fca11bfdf5e284f6a2cdac1.tar.bz2
ka9q-fec-b2239996a2f2a3925fca11bfdf5e284f6a2cdac1.zip
Add option "BUILD_32BIT_ON_64BIT" for 32-bit library building on a 64-bit system
-rw-r--r--CMakeLists.txt10
1 files changed, 10 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a515303..285ac4d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -4,6 +4,8 @@
cmake_minimum_required(VERSION 2.8)
project(libfec ASM C)
+option(BUILD_32BIT_ON_64BIT "Build a 32-bit library on a 64-bit system" OFF)
+
# Select the release build type by default to get optimization flags
if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE "Release")
@@ -39,6 +41,14 @@ endif()
########################################################################
# Compiler specific setup
########################################################################
+if(BUILD_32BIT_ON_64BIT)
+ set(CMAKE_SYSTEM_PROCESSOR "i386")
+ set(CMAKE_SIZEOF_VOID_P 4)
+ set(CMAKE_C_FLAGS -m32)
+ set(CMAKE_CXX_FLAGS -m32)
+ add_definitions(-m32)
+endif()
+
if((CMAKE_SYSTEM_PROCESSOR MATCHES "i386|i686|x86|AMD64") AND (CMAKE_SIZEOF_VOID_P EQUAL 4))
set(TARGET_ARCH "x86")
elseif((CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|AMD64") AND (CMAKE_SIZEOF_VOID_P EQUAL 8))