diff --git a/CMakeLists.txt b/CMakeLists.txt index ced1060..ba2fdb0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -89,8 +89,22 @@ if (BUILDDOC) endif () if (IPK) + # Get target package arch from Yocto ADT sysroot if set or host OS, mapping to Ubuntu name if necessary + if (DEFINED ENV{OECORE_TARGET_SYSROOT}) + GET_FILENAME_COMPONENT (DETECTED_SYSROOT $ENV{OECORE_TARGET_SYSROOT} NAME) + string (REGEX REPLACE "-poky-linux" "" TARGET_ARCH "${DETECTED_SYSROOT}") + else () + # debian uses amd64 to denote x86_64 + if (DETECTED_ARCH STREQUAL "x86_64") + set (TARGET_ARCH "amd64") + else () + set (TARGET_ARCH ${DETECTED_ARCH}) + endif () + endif () + message (INFO " - Package arch is ${TARGET_ARCH}") + set(CPACK_GENERATOR "DEB" "TGZ") - set(OPKG_ARCH ${DETECTED_ARCH}) + set(OPKG_ARCH ${TARGET_ARCH}) set(CPACK_BINARY_DIR ${CMAKE_BINARY_DIR}) set(CPACK_DEBIAN_PACKAGE_MAINTAINER "Intel IoT-Devkit") #required set(mraa_PACKAGE_ON_TAG ".") @@ -101,8 +115,8 @@ if (IPK) "${mraa_VERSION_MAJOR}.${mraa_VERSION_MINOR}.${mraa_VERSION_PATCH}${mraa_PACKAGE_ON_TAG}${VERSION_COMMIT}") set(CPACK_PACKAGE_NAME "libmraa${mraa_VERSION_MAJOR}") set(CPACK_DEBIAN_PACKAGE_SECTION "libs") - set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE ${DETECTED_ARCH}) - set(CPACK_SYSTEM_NAME ${DETECTED_ARCH}) + set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE ${TARGET_ARCH}) + set(CPACK_SYSTEM_NAME ${TARGET_ARCH}) set(CPACK_DEBIAN_PACKAGE_PROVIDES "libmraa-dev, libmraa-dbg, libmraa-doc") set(CPACK_DEBIAN_PACKAGE_REPLACES ${CPACK_DEBIAN_PACKAGE_PROVIDES}) set(CPACK_DEBIAN_PACKAGE_CONFLICTS ${CPACK_DEBIAN_PACKAGE_PROVIDES})