[oe] [PATCH] linuxptp: fix cross compilation not using host headers

Marcel Ziswiler marcel at ziswiler.com
Fri Dec 23 22:15:14 UTC 2016


From: Marcel Ziswiler <marcel.ziswiler at toradex.com>

Previously my morty build failed as follows:

| arm-angstrom-linux-gnueabi-gcc  -march=armv7-a -mthumb -mfpu=neon  -mfloat-abi
=hard --sysroot=/data/build/oe_core-V2.7/build/tmp-glibc/sysroots/apalis-tk1-mai
nline -Wall -DVER=1.6  -D_GNU_SOURCE -DHAVE_CLOCK_ADJTIME -DHAVE_POSIX_SPAWN -I/
lib/modules/4.8.13/build/usr/include -DHAVE_ONESTEP_SYNC  -D_GNU_SOURCE -DHAVE_C
LOCK_ADJTIME -DHAVE_ONESTEP_SYNC -O2 -pipe -g -feliminate-unused-debug-types -fd
ebug-prefix-map=/data/build/oe_core-V2.7/build/tmp-glibc/work/armv7at2hf-neon-an
gstrom-linux-gnueabi/linuxptp/1.6-r0=/usr/src/debug/linuxptp/1.6-r0 -fdebug-pref
ix-map=/data/build/oe_core-V2.7/build/tmp-glibc/sysroots/x86_64-linux= -fdebug-p
refix-map=/data/build/oe_core-V2.7/build/tmp-glibc/sysroots/apalis-tk1-mainline=
   -c -o msg.o msg.c
| {standard input}: Assembler messages:
| {standard input}:39: Error: bad instruction `bswapq r0'
| <builtin>: recipe for target 'msg.o' failed
| make: *** [msg.o] Error 1

As it tried using the kernel headers from my Fedora 23 build server
located at /lib/modules/4.8.13/build/usr/include.

Fix this by no longer calling the incdefs.sh shell script from the
makefile.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler at toradex.com>

---

 .../linuxptp/no-incdefs-using-host-headers.patch   | 29 ++++++++++++++++++++++
 .../recipes-connectivity/linuxptp/linuxptp_1.6.bb  |  5 ++--
 2 files changed, 32 insertions(+), 2 deletions(-)
 create mode 100644 meta-oe/recipes-connectivity/linuxptp/linuxptp/no-incdefs-using-host-headers.patch

diff --git a/meta-oe/recipes-connectivity/linuxptp/linuxptp/no-incdefs-using-host-headers.patch b/meta-oe/recipes-connectivity/linuxptp/linuxptp/no-incdefs-using-host-headers.patch
new file mode 100644
index 0000000..02dbb23
--- /dev/null
+++ b/meta-oe/recipes-connectivity/linuxptp/linuxptp/no-incdefs-using-host-headers.patch
@@ -0,0 +1,29 @@
+From 8a4cad5e2f2cbb6a34bdc6e877fe499502b8c4c8 Mon Sep 17 00:00:00 2001
+From: Marcel Ziswiler <marcel.ziswiler at toradex.com>
+Date: Fri, 23 Dec 2016 18:12:29 +0100
+Subject: [PATCH] linuxptp: no incdefs using host headers
+
+Avoid using host headers via incdefs.sh shell script.
+
+Signed-off-by: Marcel Ziswiler <marcel.ziswiler at toradex.com>
+---
+
+ makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/makefile b/makefile
+index 8cdbd15..85174b8 100644
+--- a/makefile
++++ b/makefile
+@@ -33,7 +33,7 @@ OBJECTS	= $(OBJ) hwstamp_ctl.o phc2sys.o phc_ctl.o pmc.o pmc_common.o \
+ SRC	= $(OBJECTS:.o=.c)
+ DEPEND	= $(OBJECTS:.o=.d)
+ srcdir	:= $(dir $(lastword $(MAKEFILE_LIST)))
+-incdefs := $(shell $(srcdir)/incdefs.sh)
++#incdefs := $(shell $(srcdir)/incdefs.sh)
+ version := $(shell $(srcdir)/version.sh $(srcdir))
+ VPATH	= $(srcdir)
+ 
+-- 
+2.9.3
+
diff --git a/meta-oe/recipes-connectivity/linuxptp/linuxptp_1.6.bb b/meta-oe/recipes-connectivity/linuxptp/linuxptp_1.6.bb
index 0939d17..2e28644 100644
--- a/meta-oe/recipes-connectivity/linuxptp/linuxptp_1.6.bb
+++ b/meta-oe/recipes-connectivity/linuxptp/linuxptp_1.6.bb
@@ -3,13 +3,14 @@ LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
 
 SRC_URI = "http://sourceforge.net/projects/linuxptp/files/v${PV}/linuxptp-${PV}.tgz \
-           file://build-Allow-CC-and-prefix-to-be-overriden.patch"
+           file://build-Allow-CC-and-prefix-to-be-overriden.patch \
+           file://no-incdefs-using-host-headers.patch"
 
 SRC_URI[md5sum] = "6aa15d83f5a35f1fd076ba9adc4e7285"
 SRC_URI[sha256sum] = "e7fd16a9f235b059be527bd512e86f0c1d9f2e7c36736e6d6d9727a4427ac14c"
 
 EXTRA_OEMAKE = "ARCH=${TARGET_ARCH} \
-    EXTRA_CFLAGS='-D_GNU_SOURCE -DHAVE_CLOCK_ADJTIME -DHAVE_ONESTEP_SYNC ${CFLAGS}'"
+    EXTRA_CFLAGS='-D_GNU_SOURCE -DHAVE_CLOCK_ADJTIME -DHAVE_POSIX_SPAWN -DHAVE_ONESTEP_SYNC ${CFLAGS}'"
 
 do_install () {
     install -d ${D}/${bindir}
-- 
2.9.3




More information about the Openembedded-devel mailing list