Review at  https://gerrit.osmocom.org/2727

Introduce build script for arm-none-eabi cross-compilations

This is a necessary step to use libosmocore-arm dep in OsmocomBB.

After this patch is submitted the "./contrib/jenkins.sh" line in
libosmocore jenkins jobs [1][2] needs to be replaced with:

  if [[ "$JOB_NAME" == *"arch=arm-none-eabi,label=linux_amd64_debian8"* ]]
  then
    ./contrib/jenkins-arm.sh
  else
    # (FreeBSD && debian8)_amd64 builds
    ./contrib/jenkins.sh
  fi

Furthermore, the "arch" matrix-build axis has to be created,
holding "arm-none-eabi". Following combination filter is
necessary to skip cross-compilations on FreeBSD buildslave:

  !(arch=="arm-none-eabi" && label=="FreeBSD_amd64")

[1] https://jenkins.osmocom.org/jenkins/job/libosmocore/
[2] https://jenkins.osmocom.org/jenkins/job/libosmocore-gerrit/

Change-Id: I9e07fb9e60830dbd585f22d9c658c46252ce399f
---
A contrib/jenkins-arm.sh
1 file changed, 33 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/27/2727/1

diff --git a/contrib/jenkins-arm.sh b/contrib/jenkins-arm.sh
new file mode 100755
index 0000000..0731d44
--- /dev/null
+++ b/contrib/jenkins-arm.sh
@@ -0,0 +1,33 @@
+#!/usr/bin/env bash
+
+set -ex
+
+./contrib/verify_value_string_arrays_are_terminated.py $(find . -name "*.[hc]")
+
+autoreconf --install --force
+./configure --enable-static --enable-sanitize \
+       --prefix=/usr/local/arm-none-eabi \
+        --host=arm-none-eabi \
+        --enable-embedded \
+        --disable-shared \
+        CFLAGS="-Os -ffunction-sections -fdata-sections -nostartfiles 
-nodefaultlibs"
+
+$MAKE $PARALLEL_MAKE \
+  || cat-testlogs.sh
+
+# verify build in dir other than source tree
+rm -rf *
+git checkout .
+autoreconf --install --force
+mkdir builddir
+cd builddir
+
+../configure --enable-static \
+       --prefix=/usr/local/arm-none-eabi \
+        --host=arm-none-eabi \
+        --enable-embedded \
+        --disable-shared \
+        CFLAGS="-Os -ffunction-sections -fdata-sections -nostartfiles 
-nodefaultlibs"
+
+$MAKE $PARALLEL_MAKE \
+  || cat-testlogs.sh

-- 
To view, visit https://gerrit.osmocom.org/2727
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I9e07fb9e60830dbd585f22d9c658c46252ce399f
Gerrit-PatchSet: 1
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Owner: blobb <dr.bl...@gmail.com>

Reply via email to