[OE-core] [PATCH 2/2] libical: Fix x32 ABI build

Maxin B. John maxin.john at intel.com
Mon Dec 7 16:43:50 UTC 2015


Fix x32 ABI build failure by using GNUInstallDirs in CMakeLists.txt

Signed-off-by: Maxin B. John <maxin.john at intel.com>
---
 .../libical/libical/Fix-x32-ABI-build.patch        | 38 ++++++++++++++++++++++
 meta/recipes-support/libical/libical_1.0.1.bb      |  1 +
 2 files changed, 39 insertions(+)
 create mode 100644 meta/recipes-support/libical/libical/Fix-x32-ABI-build.patch

diff --git a/meta/recipes-support/libical/libical/Fix-x32-ABI-build.patch b/meta/recipes-support/libical/libical/Fix-x32-ABI-build.patch
new file mode 100644
index 0000000..12186e2
--- /dev/null
+++ b/meta/recipes-support/libical/libical/Fix-x32-ABI-build.patch
@@ -0,0 +1,38 @@
+Subject: [PATCH] Use GNUInstallDirs.
+
+x32 ABI build fails because of improper library path. Use
+GNUInstallDirs to fix it.
+
+Upstream-Status: Backport
+
+Signed-off-by: Maxin B. John <maxin.john at intel.com>
+---
+diff -Naur libical-1.0.1-orig/CMakeLists.txt libical-1.0.1/CMakeLists.txt
+--- libical-1.0.1-orig/CMakeLists.txt	2015-12-07 18:13:58.311503974 +0200
++++ libical-1.0.1/CMakeLists.txt	2015-12-07 18:17:18.362002998 +0200
+@@ -92,6 +92,10 @@
+ endif()
+ 
+ set(PERL_EXECUTABLE perl)
++# Ensure finding 64bit libs when using 64-bit compilers
++if(CMAKE_CL_64)
++  set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS True)
++endif()
+ 
+ # MSVC specific definitions
+ if(WIN32)
+@@ -104,10 +108,10 @@
+   add_definitions(-DBIG_ENDIAN=0 -DLITTLE_ENDIAN=1 -DBYTE_ORDER=BIG_ENDIAN)
+ endif()
+ 
+-set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)")
+-set(LIB_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}" CACHE STRING "Library directory name" FORCE)
+-set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE STRING "Include directory name" FORCE)
+-set(SHARE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/share" CACHE STRING "Share directory name" FORCE)
++include(GNUInstallDirs)
++set(LIB_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR} CACHE STRING "Library directory name" FORCE)
++set(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_INCLUDEDIR} CACHE STRING "Include directory name" FORCE)
++set(SHARE_INSTALL_DIR ${CMAKE_INSTALL_DATAROOTDIR} CACHE STRING "Share directory name")
+ 
+ # set the output paths
+ set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin)
diff --git a/meta/recipes-support/libical/libical_1.0.1.bb b/meta/recipes-support/libical/libical_1.0.1.bb
index 7dcb9eb..0dcee46 100644
--- a/meta/recipes-support/libical/libical_1.0.1.bb
+++ b/meta/recipes-support/libical/libical_1.0.1.bb
@@ -8,6 +8,7 @@ SECTION = "libs"
 
 SRC_URI = "https://github.com/${BPN}/${BPN}/archive/v${PV}.tar.gz \
            file://Remove-cmake-check-for-Perl.patch \
+           file://Fix-x32-ABI-build.patch \
            "
 SRC_URI[md5sum] = "af91db06b22559f863869c5a382ad08a"
 SRC_URI[sha256sum] = "7d5f613454ec6c7d1bcfb441c919215be53292aa15cd1cb14249d1413d6c610c"
-- 
2.4.0




More information about the Openembedded-core mailing list