diff --git a/meta-sysmocom-bsp/classes/sysmocom-archiver.bbclass b/meta-sysmocom-bsp/classes/sysmocom-archiver.bbclass index 98eb0b966e..38713c6400 100644 --- a/meta-sysmocom-bsp/classes/sysmocom-archiver.bbclass +++ b/meta-sysmocom-bsp/classes/sysmocom-archiver.bbclass @@ -133,7 +133,7 @@ def not_tarball(d): workdir = d.getVar('WORKDIR',True) s = d.getVar('S',True) if 'work-shared' in s or 'task-' in workdir or 'native' in workdir: - pn = bb.data.getVar('PN', d , True) + pn = d.getVar('PN', True) if pn == 'gcc-cross': return False return True @@ -360,8 +360,8 @@ def archive_scripts_logs(d): def dumpdata(d): '''dump environment to "${P}-${PR}.showdata.dump" including all kinds of variables and functions when running a task''' - workdir = bb.data.getVar('WORKDIR', d, 1) - distro = bb.data.getVar('DISTRO', d, 1) + workdir = d.getVar('WORKDIR', 1) + distro = d.getVar('DISTRO', 1) s = d.getVar('S', True) pf = d.getVar('PF', True) target_sys = d.getVar('TARGET_SYS', True) @@ -381,8 +381,8 @@ def dumpdata(d): bb.data.emit_env(f, d, True) # emit the metadata which isnt valid shell for e in d.keys(): - if bb.data.getVarFlag(e, 'python', d): - f.write("\npython %s () {\n%s}\n" % (e, bb.data.getVar(e, d, 1))) + if d.getVarFlag(e, 'python'): + f.write("\npython %s () {\n%s}\n" % (e, d.getVar(e, 1))) f.close() def create_diff_gz(d): diff --git a/meta-sysmocom-bsp/conf/distro/include/sysmocom-defaults.conf b/meta-sysmocom-bsp/conf/distro/include/sysmocom-defaults.conf index 5d5d2d4dc4..da87fd2654 100644 --- a/meta-sysmocom-bsp/conf/distro/include/sysmocom-defaults.conf +++ b/meta-sysmocom-bsp/conf/distro/include/sysmocom-defaults.conf @@ -35,3 +35,7 @@ PACKAGECONFIG_pn-systemd = "compat ldconfig binfmt sysusers randomseed myhostnam # From fido on.. build curl with libssl to avoid gnutls PACKAGECONFIG_pn-curl="ipv6 ssl zlib" + +# disable libsolv as it is broken Yocto Bug #11427 +PACKAGECONFIG_pn-opkg = "" +PACKAGECONFIG_pn-opkg-native = "" diff --git a/meta-sysmocom-bsp/conf/machine/include/sysmobts.inc b/meta-sysmocom-bsp/conf/machine/include/sysmobts.inc index 1beba7f3d5..de327c4e68 100644 --- a/meta-sysmocom-bsp/conf/machine/include/sysmobts.inc +++ b/meta-sysmocom-bsp/conf/machine/include/sysmobts.inc @@ -1,7 +1,7 @@ TARGET_ARCH = "arm" PREFERRED_PROVIDER_virtual/kernel = "linux-sysmocom" -PREFERRED_VERSION_linux-sysmocom = "3.10.84+git%" +PREFERRED_VERSION_linux-sysmocom = "${@dict([('1.5', '3.10.84+git%')]).get(d.getVar('DISTRO_VERSION', True)[0:3],'4.9.14+git%')}" PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}depmod:module-init-tools-cross" PREFERRED_VERSION_u-boot = "git" @@ -41,3 +41,6 @@ MACHINE_EXTRA_RDEPENDS = "\ require conf/machine/include/tune-arm926ejs.inc require conf/machine/include/dm6446.inc + +# we tune for armv5te but it ends up as armv5e on pyro and probably earlier. Help it. +ARMPKGSFX_THUMB="t" diff --git a/meta-sysmocom-bsp/conf/machine/sysmocom-bsc-v2.conf b/meta-sysmocom-bsp/conf/machine/sysmocom-bsc-v2.conf new file mode 100644 index 0000000000..c1a8891664 --- /dev/null +++ b/meta-sysmocom-bsp/conf/machine/sysmocom-bsc-v2.conf @@ -0,0 +1,43 @@ +#@TYPE: Machine +#@NAME: common_pc +#@DESCRIPTION: Machine configuration for running a common x86 + +require conf/machine/include/tune-core2.inc +require conf/machine/include/genericx86-common.inc + + +PREFERRED_PROVIDER_virtual/libgl = "mesa-dri" +PREFERRED_PROVIDER_virtual/libx11 ?= "libx11-diet" +PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xf86-dri-lite" +PREFERRED_PROVIDER_virtual/xserver-xf86 ?= "xserver-xf86-dri-lite" +PREFERRED_PROVIDER_virtual/kernel = "linux-sysmocom" +PREFERRED_VERSION_linux-sysmocom = "${@dict([('1.5', '3.10.84+git%')]).get(d.getVar('DISTRO_VERSION', True)[0:3],'4.9.14+git%')}" + +MACHINE_FEATURES += "kernel26 x86 usbhost pci acpi" + +KERNEL_IMAGETYPE = "bzImage" + +IMAGE_FSTYPES = "ext4" + +# After dora core2 got renamed to core2-32 +# After dora core2 got renamed to core2-32 +DEFAULTTUNE := "${@['core2', 'core2-32']['core2-32' in d.getVar('AVAILTUNES', True)]}" + +SERIAL_CONSOLE = "115200 ttyS0" +MACHINE_CONSOLE = "console=ttyS0,115200n8" + +# We bypass swrast but we need it to be present for X to load correctly +XSERVER ?= "xserver-xf86-dri-lite \ + mesa-dri-driver-swrast \ + xf86-input-vmmouse \ + xf86-input-keyboard \ + xf86-input-evdev \ + xf86-video-vmware" + +GLIBC_ADDONS = "nptl" +GLIBC_EXTRA_OECONF = "--with-tls" + +#MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "v86d" +MACHINE_ESSENTIAL_EXTRA_RDEPENDS = "linux-firmware-rtl-nic" + +MACHINEOVERRIDES = "${MACHINE}:sysmocom-bsc" diff --git a/meta-sysmocom-bsp/conf/machine/sysmocom-bsc.conf b/meta-sysmocom-bsp/conf/machine/sysmocom-bsc.conf index 7d5601a27a..8476894679 100644 --- a/meta-sysmocom-bsp/conf/machine/sysmocom-bsc.conf +++ b/meta-sysmocom-bsp/conf/machine/sysmocom-bsc.conf @@ -8,7 +8,8 @@ PREFERRED_PROVIDER_virtual/libgl = "mesa-dri" PREFERRED_PROVIDER_virtual/libx11 ?= "libx11-diet" PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xf86-dri-lite" PREFERRED_PROVIDER_virtual/xserver-xf86 ?= "xserver-xf86-dri-lite" -PREFERRED_PROVIDER_virtual/kernel = "${@['linux-sysmocom', 'linux']['1.1' in d.getVar('DISTRO_VERSION', True)]}" +PREFERRED_PROVIDER_virtual/kernel = "linux-sysmocom" +PREFERRED_VERSION_linux-sysmocom = "${@dict([('1.5', '3.10.84+git%')]).get(d.getVar('DISTRO_VERSION', True)[0:3],'4.9.14+git%')}" require conf/machine/include/tune-geode.inc diff --git a/meta-sysmocom-bsp/conf/machine/sysmocom-idu.conf b/meta-sysmocom-bsp/conf/machine/sysmocom-idu.conf index 5827bc7484..c1a8891664 100644 --- a/meta-sysmocom-bsp/conf/machine/sysmocom-idu.conf +++ b/meta-sysmocom-bsp/conf/machine/sysmocom-idu.conf @@ -10,7 +10,8 @@ PREFERRED_PROVIDER_virtual/libgl = "mesa-dri" PREFERRED_PROVIDER_virtual/libx11 ?= "libx11-diet" PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xf86-dri-lite" PREFERRED_PROVIDER_virtual/xserver-xf86 ?= "xserver-xf86-dri-lite" -PREFERRED_PROVIDER_virtual/kernel = "${@['linux-sysmocom', 'linux']['1.1' in d.getVar('DISTRO_VERSION', True)]}" +PREFERRED_PROVIDER_virtual/kernel = "linux-sysmocom" +PREFERRED_VERSION_linux-sysmocom = "${@dict([('1.5', '3.10.84+git%')]).get(d.getVar('DISTRO_VERSION', True)[0:3],'4.9.14+git%')}" MACHINE_FEATURES += "kernel26 x86 usbhost pci acpi" diff --git a/meta-sysmocom-bsp/recipes-bsp/barebox/barebox-sysmobts_git.bb b/meta-sysmocom-bsp/recipes-bsp/barebox/barebox-sysmobts_git.bb index e9ac5b4493..5320a60eb4 100644 --- a/meta-sysmocom-bsp/recipes-bsp/barebox/barebox-sysmobts_git.bb +++ b/meta-sysmocom-bsp/recipes-bsp/barebox/barebox-sysmobts_git.bb @@ -1,6 +1,6 @@ require barebox.inc -SRCREV = "f2b03e21a869b8df30e428ac9408d7988d55279a" +SRCREV = "1d8bdd6f226df2ecbde3776b52fbc228158293fd" SRC_URI = " \ git://git.sysmocom.de/barebox.git;branch=v2015.06 \ file://defconfig \ @@ -17,6 +17,9 @@ BAREBOX_BIN_SYMLINK ?= "barebox-${MACHINE}.bin" # generated using echo -n 'bts-stop' | sha1sum BAREBOX_PASSWORD = "5a7ef8875df28cb95a0f833906f94df8573bcc5d" +# Provide a replacement for calling whoami +export KBUILD_BUILD_USER="poky" + do_configure_append () { mkdir -p ${WORKDIR}/env/nv echo 5 > ${WORKDIR}/env/nv/login.timeout diff --git a/meta-sysmocom-bsp/recipes-bsp/base-files/base-files_sysmocom.inc b/meta-sysmocom-bsp/recipes-bsp/base-files/base-files_sysmocom.inc index 0dea48ba1f..40f47844f2 100644 --- a/meta-sysmocom-bsp/recipes-bsp/base-files/base-files_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-bsp/base-files/base-files_sysmocom.inc @@ -1,4 +1,4 @@ -THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}" FILESPATH =. "${@base_set_filespath(["${THISDIR}/files"], d)}:" PRINC="3" diff --git a/meta-sysmocom-bsp/recipes-bsp/init-ifupdown/init-ifupdown_sysmocom-master.inc b/meta-sysmocom-bsp/recipes-bsp/init-ifupdown/init-ifupdown_sysmocom-master.inc index f9c58ed7b3..f7de30245c 100644 --- a/meta-sysmocom-bsp/recipes-bsp/init-ifupdown/init-ifupdown_sysmocom-master.inc +++ b/meta-sysmocom-bsp/recipes-bsp/init-ifupdown/init-ifupdown_sysmocom-master.inc @@ -1,2 +1,2 @@ -SYSMOCOM := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +SYSMOCOM := "${@os.path.dirname(d.getVar('FILE', True))}" FILESEXTRAPATHS_prepend := "${SYSMOCOM}/init-ifupdown-${PV}:${SYSMOCOM}/init-ifupdown-master:" diff --git a/meta-sysmocom-bsp/recipes-bsp/init-ifupdown/init-ifupdown_sysmocom.inc b/meta-sysmocom-bsp/recipes-bsp/init-ifupdown/init-ifupdown_sysmocom.inc index a36a3e819e..1daf5662ec 100644 --- a/meta-sysmocom-bsp/recipes-bsp/init-ifupdown/init-ifupdown_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-bsp/init-ifupdown/init-ifupdown_sysmocom.inc @@ -1,4 +1,4 @@ -SYSMOCOM := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +SYSMOCOM := "${@os.path.dirname(d.getVar('FILE', True))}" FILESEXTRAPATHS_prepend := "${SYSMOCOM}/init-ifupdown-${PV}:${SYSMOCOM}/init-ifupdown:" PRINC = "13" diff --git a/meta-sysmocom-bsp/recipes-bsp/linux/linux-sysmocom_4.9.bb b/meta-sysmocom-bsp/recipes-bsp/linux/linux-sysmocom_4.9.bb new file mode 100644 index 0000000000..df2faca09e --- /dev/null +++ b/meta-sysmocom-bsp/recipes-bsp/linux/linux-sysmocom_4.9.bb @@ -0,0 +1,59 @@ +inherit kernel +require linux-sysmocom.inc + +DEPENDS += "bc-native" + +# ATTENTION: Update linux-backports PR on version change. In Dora the +# reverse dependency tracking for the kernel doesn't appear to work. So +# please bump the PR on version changes! +# at versions changes do not forget to update conf/machine/include/sysmobts.inc too +LINUX_VERSION ?= "4.9.14" +LINUX_VERSION_EXTENSION ?= "-sysmocom-${LINUX_KERNEL_TYPE}" + +# Overrides for the sysmocom bts v2 +BTS_FIRMWARE_NAME_sysmobts-v2 = "sysmobts-v2" + +SRCREV = "8d5d275254642b70b3ecf18a5b9b9fe9d5777230" + +PR = "r1" +PV = "${LINUX_VERSION}+git${SRCPV}" + +SRC_URI = "git://git.sysmocom.de/sysmo-bts/linux.git;protocol=git;branch=lynxis/v4.9 \ + file://defconfig" + +S = "${WORKDIR}/git" + +COMPATIBLE_MACHINE = "(sysmobts-v2|sysmocom-bsc)" +EXTRA_OEMAKE += "KALLSYMS_EXTRA_PASS=1" + +require linux-tools.inc + +do_configure() { + install -m 0644 ${WORKDIR}/defconfig ${B}/.config + oe_runmake -C ${S} O=${B} oldconfig +} + +# autoload defaults (alphabetically sorted) +module_autoload_davinci_mmc = "davinci_mmc" +module_autoload_dspdl_dm644x = "dspdl_dm644x" +module_autoload_fpgadl_par = "fpgadl_par" +module_autoload_leds-gpio = "leds-gpio" +module_autoload_mmc_block = "mmc_block" +module_autoload_msgqueue = "msgqueue" +module_autoload_rtfifo = "rtfifo" + +KERNEL_MODULE_PROBECONF_append = "davinci_mmc dspdl_dm644x fpgadl_par leds-gpio mmc_block msgqueue rtfifo" +KERNEL_MODULE_AUTOLOAD_append = "davinci_mmc dspdl_dm644x fpgadl_par leds-gpio mmc_block msgqueue rtfifo" + +# module configs (alphabetically sorted) +module_conf_dspdl_dm644x = "options dspdl_dm644x fw_name=${BTS_FIRMWARE_NAME}.out debug=0" +module_conf_fpgadl_par = "options fpgadl_par fw_name=${BTS_FIRMWARE_NAME}.bit" +module_conf_msgqueue = "options msgqueue fw_name=${BTS_FIRMWARE_NAME}.out" +module_conf_rtfifo = "options rtfifo fw_name=${BTS_FIRMWARE_NAME}.out" + +RDEPENDS_kernel-module-dspdl-dm644x += "sysmobts-firmware" +RDEPENDS_kernel-module-fpgadl-par += "sysmobts-firmware" +RDEPENDS_kernel-module-msgqueue += "sysmobts-firmware" +RDEPENDS_kernel-module-rtfifo += "sysmobts-firmware" + +DEFAULT_PREFERENCE = "-1" diff --git a/meta-sysmocom-bsp/recipes-bsp/netbase/netbase_sysmocom.inc b/meta-sysmocom-bsp/recipes-bsp/netbase/netbase_sysmocom.inc index 2bdc67be9d..ba9c69bdd8 100644 --- a/meta-sysmocom-bsp/recipes-bsp/netbase/netbase_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-bsp/netbase/netbase_sysmocom.inc @@ -1,4 +1,4 @@ -SYSMOCOM := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +SYSMOCOM := "${@os.path.dirname(d.getVar('FILE', True))}" FILESEXTRAPATHS_prepend := "${SYSMOCOM}/${PN}-${PV}:${SYSMOCOM}/${PN}:" PRINC = "21" diff --git a/meta-sysmocom-bsp/recipes-bsp/rtl8169-eeprom/rtl8169-eeprom_git.bb b/meta-sysmocom-bsp/recipes-bsp/rtl8169-eeprom/rtl8169-eeprom_git.bb index a6a6feb81a..bdf20a7ca4 100644 --- a/meta-sysmocom-bsp/recipes-bsp/rtl8169-eeprom/rtl8169-eeprom_git.bb +++ b/meta-sysmocom-bsp/recipes-bsp/rtl8169-eeprom/rtl8169-eeprom_git.bb @@ -4,7 +4,7 @@ LICENSE = "GPLv2+" LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" DEPENDS = "pciutils" -SRCREV = "e62e515ce314599e48b268dac69d2f16a504264c" +SRCREV = "47e0b24d7a86acf429991ac155a51c78f1be341e" SRC_URI = "git://git.sysmocom.de/rtl8168-eeprom;protocol=git;branch=master" PV = "v0.0.1+git${SRCPV}" PR = "r0" diff --git a/meta-sysmocom-bsp/recipes-bsp/watchdog/watchdog_sysmocom.inc b/meta-sysmocom-bsp/recipes-bsp/watchdog/watchdog_sysmocom.inc index b2e512c12c..0e68062b07 100644 --- a/meta-sysmocom-bsp/recipes-bsp/watchdog/watchdog_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-bsp/watchdog/watchdog_sysmocom.inc @@ -1,4 +1,4 @@ -SYSMOCOM := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +SYSMOCOM := "${@os.path.dirname(d.getVar('FILE', True))}" FILESEXTRAPATHS_prepend := "${SYSMOCOM}/${PN}-${PV}:${SYSMOCOM}/${PN}:" PRINC = "9" diff --git a/meta-sysmocom-bsp/recipes-core/busybox/busybox_sysmocom.inc b/meta-sysmocom-bsp/recipes-core/busybox/busybox_sysmocom.inc index 90f3e13b48..6050c3dfd6 100644 --- a/meta-sysmocom-bsp/recipes-core/busybox/busybox_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-core/busybox/busybox_sysmocom.inc @@ -1,4 +1,4 @@ -SYSMOCOM := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +SYSMOCOM := "${@os.path.dirname(d.getVar('FILE', True))}" FILESEXTRAPATHS_prepend := "${SYSMOCOM}/busybox-${SYSMOCOM_ORIG_PV}:${SYSMOCOM}/files:" PRINC = "30" diff --git a/meta-sysmocom-bsp/recipes-core/busybox/busybox_sysmocom_systemd.inc b/meta-sysmocom-bsp/recipes-core/busybox/busybox_sysmocom_systemd.inc index 58b268226b..a61540d0bc 100644 --- a/meta-sysmocom-bsp/recipes-core/busybox/busybox_sysmocom_systemd.inc +++ b/meta-sysmocom-bsp/recipes-core/busybox/busybox_sysmocom_systemd.inc @@ -1,4 +1,4 @@ # Make busybox work nicely with systemd -SYSMOCOM_D := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +SYSMOCOM_D := "${@os.path.dirname(d.getVar('FILE', True))}" FILESEXTRAPATHS_prepend := "${SYSMOCOM}/${PN}-systemd:${SYSMOCOM_D}/${PN}:" PRINC := "${@int(PRINC) + 3}" diff --git a/meta-sysmocom-bsp/recipes-core/initrdscripts/initramfs-framework_sysmocom.inc b/meta-sysmocom-bsp/recipes-core/initrdscripts/initramfs-framework_sysmocom.inc index 2d0b9ee2f0..3cbf83ff05 100644 --- a/meta-sysmocom-bsp/recipes-core/initrdscripts/initramfs-framework_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-core/initrdscripts/initramfs-framework_sysmocom.inc @@ -1,4 +1,4 @@ -THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}" FILESPATH =. "${@base_set_filespath(["${THISDIR}/${PN}"], d)}:" PRINC="4" diff --git a/meta-sysmocom-bsp/recipes-core/initrdscripts/initramfs-live-install_sysmocom.inc b/meta-sysmocom-bsp/recipes-core/initrdscripts/initramfs-live-install_sysmocom.inc index d507aa3fc4..7e3d1f6885 100644 --- a/meta-sysmocom-bsp/recipes-core/initrdscripts/initramfs-live-install_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-core/initrdscripts/initramfs-live-install_sysmocom.inc @@ -1,4 +1,4 @@ -SYSMOCOM := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +SYSMOCOM := "${@os.path.dirname(d.getVar('FILE', True))}" FILESEXTRAPATHS_prepend := "${SYSMOCOM}/files:" PRINC = "2" diff --git a/meta-sysmocom-bsp/recipes-extra/gpsd/gpsd/gpsd-3.3-ldflags.patch b/meta-sysmocom-bsp/recipes-extra/gpsd/gpsd/gpsd-3.3-ldflags.patch new file mode 100644 index 0000000000..0c37cd3b10 --- /dev/null +++ b/meta-sysmocom-bsp/recipes-extra/gpsd/gpsd/gpsd-3.3-ldflags.patch @@ -0,0 +1,17 @@ +https://bugs.gentoo.org/391299 + +split up linking flags into multiple arguments + +Index: gpsd-3.10/SConstruct +=================================================================== +--- gpsd-3.10.orig/SConstruct 2017-03-28 23:47:02.815665786 +0200 ++++ gpsd-3.10/SConstruct 2017-03-28 23:47:40.463666285 +0200 +@@ -250,7 +250,7 @@ + env.Replace(**{j: os.getenv(i)}) + for flag in ["LDFLAGS", "LINKFLAGS", "SHLINKFLAGS", "CPPFLAGS"]: + if os.environ.has_key(flag): +- env.MergeFlags({flag : [os.getenv(flag)]}) ++ env.MergeFlags({flag : Split(os.getenv(flag))}) + + + # Keep scan-build options in the environment diff --git a/meta-sysmocom-bsp/recipes-extra/gpsd/gpsd_3.10.bb b/meta-sysmocom-bsp/recipes-extra/gpsd/gpsd_3.10.bb index 4e215acf5d..3996ed6667 100644 --- a/meta-sysmocom-bsp/recipes-extra/gpsd/gpsd_3.10.bb +++ b/meta-sysmocom-bsp/recipes-extra/gpsd/gpsd_3.10.bb @@ -11,6 +11,7 @@ PR = "r3.19" SRC_URI = "http://download.savannah.gnu.org/releases/${PN}/${P}.tar.gz \ file://0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch \ file://0001-SConstruct-disable-html-and-man-docs-building-becaus.patch \ + file://gpsd-3.3-ldflags.patch \ file://no-rpath-please.patch \ file://gpsd-tsip-pps.patch \ file://leave-argv-untouched.patch \ @@ -33,6 +34,8 @@ INITSCRIPT_PARAMS = "defaults 35" export STAGING_INCDIR export STAGING_LIBDIR +export LINKFLAGS="${TARGET_LDFLAGS}" +export SHLINKFLAGS="${TARGET_LDFLAGS}" EXTRA_OESCONS = " \ sysroot=${STAGING_DIR_TARGET} \ diff --git a/meta-sysmocom-bsp/recipes-extra/ifupdown/files/defn2-c-man-don-t-rely-on-dpkg-architecture-to-set-a.patch b/meta-sysmocom-bsp/recipes-extra/ifupdown/files/defn2-c-man-don-t-rely-on-dpkg-architecture-to-set-a.patch new file mode 100644 index 0000000000..8c4d953a28 --- /dev/null +++ b/meta-sysmocom-bsp/recipes-extra/ifupdown/files/defn2-c-man-don-t-rely-on-dpkg-architecture-to-set-a.patch @@ -0,0 +1,56 @@ +From 7af9db748974cb3a2c6ef8f9e03d7db1f9f8ee16 Mon Sep 17 00:00:00 2001 +From: Paul Gortmaker +Date: Wed, 6 Aug 2014 14:54:12 -0400 +Subject: [PATCH 1/2] defn2[c|man]: don't rely on dpkg-architecture to set arch + +In yocto we'll always be cross compiling, and we'll always +be building on linux for linux (vs. *BSD, hurd, etc.) + +Without this the arch is not detected, but it doesn't error +out, and hence you get useless binaries that don't know any +arch specific methods, and the end result will be strangeness +like the loopback device not being configured/enabled. + +Signed-off-by: Paul Gortmaker +--- + defn2c.pl | 6 +++--- + defn2man.pl | 6 +++--- + 2 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/defn2c.pl b/defn2c.pl +index c449de2f3d1c..38845e374c76 100755 +--- a/defn2c.pl ++++ b/defn2c.pl +@@ -2,9 +2,9 @@ + + use strict; + +-my $DEB_HOST_ARCH_OS = `dpkg-architecture -qDEB_HOST_ARCH_OS`; +- +-$DEB_HOST_ARCH_OS =~ s/\n//; ++#my $DEB_HOST_ARCH_OS = `dpkg-architecture -qDEB_HOST_ARCH_OS`; ++#$DEB_HOST_ARCH_OS =~ s/\n//; ++my $DEB_HOST_ARCH_OS ="linux"; + + # declarations + my $address_family = ""; +diff --git a/defn2man.pl b/defn2man.pl +index 6ddcfdd4fe68..c9c4dd046597 100755 +--- a/defn2man.pl ++++ b/defn2man.pl +@@ -2,9 +2,9 @@ + + use strict; + +-my $DEB_HOST_ARCH_OS = `dpkg-architecture -qDEB_HOST_ARCH_OS`; +- +-$DEB_HOST_ARCH_OS =~ s/\n//; ++#my $DEB_HOST_ARCH_OS = `dpkg-architecture -qDEB_HOST_ARCH_OS`; ++#$DEB_HOST_ARCH_OS =~ s/\n//; ++my $DEB_HOST_ARCH_OS = "linux"; + + # declarations + my $line; +-- +1.9.1 + diff --git a/meta-sysmocom-bsp/recipes-extra/ifupdown/ifupdown_0.7.52.bb b/meta-sysmocom-bsp/recipes-extra/ifupdown/ifupdown_0.7.52.bb index 9114c8d662..ab32483f35 100644 --- a/meta-sysmocom-bsp/recipes-extra/ifupdown/ifupdown_0.7.52.bb +++ b/meta-sysmocom-bsp/recipes-extra/ifupdown/ifupdown_0.7.52.bb @@ -7,7 +7,8 @@ LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://debian/copyright;md5=7adfbe801102d1e7e6bfdd3f03754efa" SRC_URI = "https://launchpadlibrarian.net/194033720/ifupdown_${PV}.tar.xz \ - file://busybox-yocto-compat.patch " + file://busybox-yocto-compat.patch \ + file://defn2-c-man-don-t-rely-on-dpkg-architecture-to-set-a.patch " SRC_URI[md5sum] = "bb204ae2fa4171d6f1de4097f4570a7d" SRC_URI[sha256sum] = "8a0647c59ee0606f5da9205c5b3c5b000fea98fe39348f6bb2cba5fecfc51090" diff --git a/meta-sysmocom-bsp/recipes-extra/iperf/iperf-2.0.5/iperf-2.0.5_ManPage.patch b/meta-sysmocom-bsp/recipes-extra/iperf/iperf-2.0.5/iperf-2.0.5_ManPage.patch deleted file mode 100644 index 12e8f46311..0000000000 --- a/meta-sysmocom-bsp/recipes-extra/iperf/iperf-2.0.5/iperf-2.0.5_ManPage.patch +++ /dev/null @@ -1,8 +0,0 @@ -diff --git iperf-2.0.5/man/Makefile.am iperf-2.0.5/man/Makefile.am - index ed97bc6..728873f 100644 ---- iperf-2.0.5/man/Makefile.am -+++ iperf-2.0.5/man/Makefile.am -@@ -1,2 +1 @@ --man_MANS = iperf.1 --dist_man_MANS = $(man_MANS) -+dist_man_MANS = iperf.1 diff --git a/meta-sysmocom-bsp/recipes-extra/iperf/iperf-2.0.9/stdbool-compilation.patch b/meta-sysmocom-bsp/recipes-extra/iperf/iperf-2.0.9/stdbool-compilation.patch new file mode 100644 index 0000000000..0aea6770c3 --- /dev/null +++ b/meta-sysmocom-bsp/recipes-extra/iperf/iperf-2.0.9/stdbool-compilation.patch @@ -0,0 +1,13 @@ +Index: iperf-2.0.9/include/util.h +=================================================================== +--- iperf-2.0.9.orig/include/util.h ++++ iperf-2.0.9/include/util.h +@@ -57,6 +57,8 @@ + #include "config.h" + #endif + ++#include ++ + #ifdef __cplusplus + extern "C" { + #endif diff --git a/meta-sysmocom-bsp/recipes-extra/iperf/iperf_2.0.5.bb b/meta-sysmocom-bsp/recipes-extra/iperf/iperf_2.0.9.bb similarity index 62% rename from meta-sysmocom-bsp/recipes-extra/iperf/iperf_2.0.5.bb rename to meta-sysmocom-bsp/recipes-extra/iperf/iperf_2.0.9.bb index a2077162d0..08292a02a5 100644 --- a/meta-sysmocom-bsp/recipes-extra/iperf/iperf_2.0.5.bb +++ b/meta-sysmocom-bsp/recipes-extra/iperf/iperf_2.0.9.bb @@ -4,12 +4,12 @@ SECTION = "console/network" LICENSE = "BSD-2-Clause" LIC_FILES_CHKSUM = "file://COPYING;md5=e8478eae9f479e39bc34975193360298" -SRC_URI = " ${SOURCEFORGE_MIRROR}/iperf/${PN}-${PV}.tar.gz \ - file://iperf-2.0.5_ManPage.patch \ - " +SRC_URI = "${SOURCEFORGE_MIRROR}/iperf2/${PN}-${PV}.tar.gz \ + file://stdbool-compilation.patch \ +" -SRC_URI[md5sum] = "44b5536b67719f4250faed632a3cd016" -SRC_URI[sha256sum] = "636b4eff0431cea80667ea85a67ce4c68698760a9837e1e9d13096d20362265b" +SRC_URI[md5sum] = "351b018b71176b8cb25f20eef6a9e37c" +SRC_URI[sha256sum] = "db02911f35686e808ed247160dfa766e08ae3f59d1e7dcedef0ffb2a6643f0bf" S = "${WORKDIR}/${PN}-${PV}" diff --git a/meta-sysmocom-bsp/recipes-extra/rauc/rauc.bb b/meta-sysmocom-bsp/recipes-extra/rauc/rauc.bb index f96da09106..c6e488fe39 100644 --- a/meta-sysmocom-bsp/recipes-extra/rauc/rauc.bb +++ b/meta-sysmocom-bsp/recipes-extra/rauc/rauc.bb @@ -15,7 +15,7 @@ S = "${WORKDIR}/git" SRCREV = "011953fa6c824ca518cf0ea074ddeede3726bdcd" -DEPENDS = "curl openssl glib-2.0" +DEPENDS = "curl openssl glib-2.0 glib-2.0-native" # rauc is invoking these depending the machine RDEPENDS_${PN}_append_sysmobts-v2 = " barebox-state" diff --git a/meta-sysmocom-bsp/recipes-fixes/cronie/cronie_sysmocom.inc b/meta-sysmocom-bsp/recipes-fixes/cronie/cronie_sysmocom.inc index 2fa6e19f04..aa9d92fe2d 100644 --- a/meta-sysmocom-bsp/recipes-fixes/cronie/cronie_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-fixes/cronie/cronie_sysmocom.inc @@ -1,4 +1,4 @@ -THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}" FILESPATH =. "${@base_set_filespath(["${THISDIR}/files"], d)}:" PRINC="1" diff --git a/meta-sysmocom-bsp/recipes-fixes/dropbear/dropbear_sysmocom.inc b/meta-sysmocom-bsp/recipes-fixes/dropbear/dropbear_sysmocom.inc index a23e4990c1..6b6fef4ee5 100644 --- a/meta-sysmocom-bsp/recipes-fixes/dropbear/dropbear_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-fixes/dropbear/dropbear_sysmocom.inc @@ -1,4 +1,4 @@ -THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}" FILESPATH =. "${@base_set_filespath(["${THISDIR}/files"], d)}:" PRINC="4" diff --git a/meta-sysmocom-bsp/recipes-fixes/initscripts/initscripts_dora.inc b/meta-sysmocom-bsp/recipes-fixes/initscripts/initscripts_dora.inc index 5e69ea209a..edb32b72fa 100644 --- a/meta-sysmocom-bsp/recipes-fixes/initscripts/initscripts_dora.inc +++ b/meta-sysmocom-bsp/recipes-fixes/initscripts/initscripts_dora.inc @@ -1,4 +1,4 @@ -THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}" FILESPATH =. "${@base_set_filespath(["${THISDIR}/files-dora"], d)}:" PRINC="4" diff --git a/meta-sysmocom-bsp/recipes-fixes/initscripts/initscripts_master.inc b/meta-sysmocom-bsp/recipes-fixes/initscripts/initscripts_master.inc index 2a4815be07..26e33471df 100644 --- a/meta-sysmocom-bsp/recipes-fixes/initscripts/initscripts_master.inc +++ b/meta-sysmocom-bsp/recipes-fixes/initscripts/initscripts_master.inc @@ -1,4 +1,4 @@ -THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}" FILESPATH =. "${@base_set_filespath(["${THISDIR}/files-master"], d)}:" PRINC="4" diff --git a/meta-sysmocom-bsp/recipes-fixes/iproute2/iproute2_sysmocom.inc b/meta-sysmocom-bsp/recipes-fixes/iproute2/iproute2_sysmocom.inc index a5b3531472..3c0855da94 100644 --- a/meta-sysmocom-bsp/recipes-fixes/iproute2/iproute2_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-fixes/iproute2/iproute2_sysmocom.inc @@ -1,4 +1,4 @@ -THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}" FILESPATH =. "${@base_set_filespath(["${THISDIR}/files/${PN}-${PV}"], d)}:${@base_set_filespath(["${THISDIR}/files"], d)}:" PRINC="2" diff --git a/meta-sysmocom-bsp/recipes-fixes/opkg/opkg_sysmocom.inc b/meta-sysmocom-bsp/recipes-fixes/opkg/opkg_sysmocom.inc index 82cd23f2f5..053de179cc 100644 --- a/meta-sysmocom-bsp/recipes-fixes/opkg/opkg_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-fixes/opkg/opkg_sysmocom.inc @@ -1,4 +1,4 @@ -THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}" FILESPATH =. "${@base_set_filespath(["${THISDIR}/${PN}-${PV}"], d)}:" PRINC = "2" diff --git a/meta-sysmocom-bsp/recipes-fixes/pkgconfig/pkgconfig_sysmocom.inc b/meta-sysmocom-bsp/recipes-fixes/pkgconfig/pkgconfig_sysmocom.inc index afb832858e..dc8d381504 100644 --- a/meta-sysmocom-bsp/recipes-fixes/pkgconfig/pkgconfig_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-fixes/pkgconfig/pkgconfig_sysmocom.inc @@ -1,4 +1,4 @@ -THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}" FILESPATH =. "${@base_set_filespath(["${THISDIR}/${PN}-${PV}"], d)}:" PRINC="2" diff --git a/meta-sysmocom-bsp/recipes-fixes/systemd/systemd-compat-units_sysmocom.inc b/meta-sysmocom-bsp/recipes-fixes/systemd/systemd-compat-units_sysmocom.inc index e7aad924ba..5b97761c3e 100644 --- a/meta-sysmocom-bsp/recipes-fixes/systemd/systemd-compat-units_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-fixes/systemd/systemd-compat-units_sysmocom.inc @@ -3,10 +3,11 @@ PRINC="3" # We need networking to run as we have no native services yet SYSTEMD_DISABLED_SYSV_SERVICES_remove = "networking dnsmasq" -S_THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +S_THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}" FILESPATH =. "${@base_set_filespath(["${S_THISDIR}/${PN}"], d)}:" SRC_URI += "file://alignment.service" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" do_install_append() { install -d ${D}${systemd_unitdir}/system/basic.target.wants diff --git a/meta-sysmocom-bsp/recipes-fixes/systemd/systemd_sysmocom.inc b/meta-sysmocom-bsp/recipes-fixes/systemd/systemd_sysmocom.inc index f1a8a3bfcf..39b063441b 100644 --- a/meta-sysmocom-bsp/recipes-fixes/systemd/systemd_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-fixes/systemd/systemd_sysmocom.inc @@ -1,4 +1,4 @@ -S_THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +S_THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}" FILESPATH =. "${@base_set_filespath(["${S_THISDIR}/${PN}"], d)}:" PRINC="25" diff --git a/meta-sysmocom-bsp/recipes-fixes/udev/udev_sysmocom.inc b/meta-sysmocom-bsp/recipes-fixes/udev/udev_sysmocom.inc index 57e5285480..52c54b3f12 100644 --- a/meta-sysmocom-bsp/recipes-fixes/udev/udev_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-fixes/udev/udev_sysmocom.inc @@ -1,4 +1,4 @@ -THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}" FILESPATH =. "${@base_set_filespath(["${THISDIR}/${PN}-${PV}"], d)}:" PRINC="9" diff --git a/meta-sysmocom-bsp/recipes-support/netcat-openbsd/netcat-openbsd_1.105.bb b/meta-sysmocom-bsp/recipes-support/netcat-openbsd/netcat-openbsd_1.105.bb index 12409d4b19..e27720ee9f 100644 --- a/meta-sysmocom-bsp/recipes-support/netcat-openbsd/netcat-openbsd_1.105.bb +++ b/meta-sysmocom-bsp/recipes-support/netcat-openbsd/netcat-openbsd_1.105.bb @@ -6,6 +6,8 @@ LIC_FILES_CHKSUM = "file://../debian/copyright;md5=ee6bbaacb5db5f2973818f0902c3a DEPENDS += "glib-2.0 libbsd" +inherit pkgconfig + SRC_URI = "${DEBIAN_MIRROR}/main/n/netcat-openbsd/netcat-openbsd_${PV}.orig.tar.gz;name=netcat \ ${DEBIAN_MIRROR}/main/n/netcat-openbsd/netcat-openbsd_${PV}-7.debian.tar.gz;name=netcat-patch" @@ -31,7 +33,7 @@ python do_patch() { do_compile() { cd ${S} pkgrel=4 - oe_runmake CFLAGS="$CFLAGS -DDEBIAN_VERSION=\"\\\"${pkgrel}\\\"\"" + oe_runmake LDFLAGS="$LDFLAGS" CFLAGS="$CFLAGS -DDEBIAN_VERSION=\"\\\"${pkgrel}\\\"\"" } do_install() { diff --git a/meta-sysmocom-bsp/recipes-sysmobts/dvnixload/dvnixload_0.2.6.bb b/meta-sysmocom-bsp/recipes-sysmobts/dvnixload/dvnixload_0.2.6.bb index d8865daf7e..24ae551a4d 100644 --- a/meta-sysmocom-bsp/recipes-sysmobts/dvnixload/dvnixload_0.2.6.bb +++ b/meta-sysmocom-bsp/recipes-sysmobts/dvnixload/dvnixload_0.2.6.bb @@ -19,7 +19,7 @@ SRC_URI[sha256sum] = "5b76e9cb0ee843208c17053315926e0e168db8a89fe960655a0d0f4871 do_deploy() { install -d ${DEPLOY_DIR_TOOLS} - install -m 0755 src/dvnixload ${DEPLOY_DIR_TOOLS}/dvnixload-${PV} + install -m 0755 ${B}/src/dvnixload ${DEPLOY_DIR_TOOLS}/dvnixload-${PV} rm -f ${DEPLOY_DIR_TOOLS}/dvnixload ln -sf ./dvnixload-${PV} ${DEPLOY_DIR_TOOLS}/dvnixload diff --git a/meta-sysmocom-bsp/recipes-sysmobts/osmo-bts/files/gcc6-linking-fix.patch b/meta-sysmocom-bsp/recipes-sysmobts/osmo-bts/files/gcc6-linking-fix.patch new file mode 100644 index 0000000000..c97839fcb7 --- /dev/null +++ b/meta-sysmocom-bsp/recipes-sysmobts/osmo-bts/files/gcc6-linking-fix.patch @@ -0,0 +1,12 @@ +Index: git/src/osmo-bts-sysmo/l1_if.h +=================================================================== +--- git.orig/src/osmo-bts-sysmo/l1_if.h ++++ git/src/osmo-bts-sysmo/l1_if.h +@@ -132,6 +132,6 @@ int bts_check_for_ciph_cmd(struct femtol + void bts_check_for_first_ciphrd(struct femtol1_hdl *fl1h, + GsmL1_MsgUnitParam_t *msgUnitParam, + struct gsm_lchan *lchan); +-inline int l1if_ms_pwr_ctrl(struct gsm_lchan *lchan, const int uplink_target, ++int l1if_ms_pwr_ctrl(struct gsm_lchan *lchan, const int uplink_target, + const uint8_t ms_power, const float rxLevel); + #endif /* _FEMTO_L1_H */ diff --git a/meta-sysmocom-bsp/recipes-sysmobts/osmo-bts/osmo-bts_git.bb b/meta-sysmocom-bsp/recipes-sysmobts/osmo-bts/osmo-bts_git.bb index 814b2164c6..94eda1dc46 100644 --- a/meta-sysmocom-bsp/recipes-sysmobts/osmo-bts/osmo-bts_git.bb +++ b/meta-sysmocom-bsp/recipes-sysmobts/osmo-bts/osmo-bts_git.bb @@ -3,8 +3,9 @@ LICENSE = "AGPLv3" LIC_FILES_CHKSUM="file://COPYING;md5=73f1eb20517c55bf9493b7dd6e480788" SRC_URI = "git://git.osmocom.org/osmo-bts.git;protocol=git;branch=sysmocom/0.3.5-stable;name=osmobts;destsuffix=git \ - git://git.osmocom.org/openbsc;protocol=git;branch=master;name=openbsc;destsuffix=openbsc" -SRCREV_osmobts = "1a2ff06d206fc4ff3cb8170ebe2b5570addc5be3" + git://git.osmocom.org/openbsc;protocol=git;branch=master;name=openbsc;destsuffix=openbsc \ + file://gcc6-linking-fix.patch" +SRCREV_osmobts = "a4bd813081e788012c72f34d31150cdf02db307f" SRCREV_openbsc = "57ee78078905c7499bd4e6857f8981d22badfcac" PV = "0.4.3+git${SRCPV}" PR = "r18.${META_TELEPHONY_OSMO_INC}" diff --git a/meta-sysmocom-bsp/recipes-sysmobts/uboot/u-boot_sysmocom.inc b/meta-sysmocom-bsp/recipes-sysmobts/uboot/u-boot_sysmocom.inc index 5a162f8ad6..c2cef7ea52 100644 --- a/meta-sysmocom-bsp/recipes-sysmobts/uboot/u-boot_sysmocom.inc +++ b/meta-sysmocom-bsp/recipes-sysmobts/uboot/u-boot_sysmocom.inc @@ -1,11 +1,11 @@ -SRC_URI = "git://git.sysmocom.de/sysmo-bts/u-boot;branch=v2011.12;protocol=git" -SRCREV = "ab8a84d9ac4c9d938ec6fa85e3f4f640d883c774" -PV = "v2011.12+git${SRCPV}" +SRC_URI = "git://git.sysmocom.de/sysmo-bts/u-boot;branch=tracking/upstream-next;protocol=git" +SRCREV = "64b07727fbb268bd19bacfed6711bdb060effcfa" +PV = "v2017.03+git${SRCPV}" S = "${WORKDIR}/git" PRINC = "13" -LIC_FILES_CHKSUM = "file://README;beginline=1;endline=22;md5=5ba4218ac89af7846802d0348df3fb90" +LIC_FILES_CHKSUM = "file://README;beginline=1;endline=22;md5=2687c5ebfd9cb284491c3204b726ea29" UBOOT_MACHINE_sysmobts-v2 = "davinci_sysmobts_v2_config" COMPATIBLE_MACHINE = "(sysmobts-v2)" @@ -13,14 +13,16 @@ COMPATIBLE_MACHINE = "(sysmobts-v2)" UBOOT_IMAGE = "u-boot-${MACHINE}-${PV}-${PR}" UBOOT_SYMLINK = "u-boot-${MACHINE}" +DEPENDS += " bc-native " + do_install_append() { rm ${D}/boot/* } do_deploy_prepend () { install -d ${DEPLOYDIR} - install ${S}/u-boot.bin ${DEPLOYDIR}/${UBOOT_IMAGE}.bin - install ${S}/u-boot ${DEPLOYDIR}/${UBOOT_IMAGE}.elf + install ${B}/u-boot.bin ${DEPLOYDIR}/${UBOOT_IMAGE}.bin + install ${B}/u-boot ${DEPLOYDIR}/${UBOOT_IMAGE}.elf cd ${DEPLOYDIR} rm -f ${UBOOT_SYMLINK}.bin diff --git a/meta-sysmocom-bsp/recipes-core/images/image-rauc-ubi.bb b/meta-sysmocom-bsp/yocto-dora/images/image-rauc-ubi.bb similarity index 100% rename from meta-sysmocom-bsp/recipes-core/images/image-rauc-ubi.bb rename to meta-sysmocom-bsp/yocto-dora/images/image-rauc-ubi.bb diff --git a/meta-sysmocom-bsp/yocto-master/images/image-rauc-ubi.bb b/meta-sysmocom-bsp/yocto-master/images/image-rauc-ubi.bb new file mode 100644 index 0000000000..c9b9c05956 --- /dev/null +++ b/meta-sysmocom-bsp/yocto-master/images/image-rauc-ubi.bb @@ -0,0 +1,78 @@ +DESCRIPTION = "ubi with rescue slot" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690 \ + file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" + +PACKAGES = "" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +do_fetch[cleandirs] = "${S}" +do_unpack[noexec] = "1" +do_patch[noexec] = "1" +do_configure[noexec] = "1" +do_compile[noexec] = "1" +do_install[noexec] = "1" +do_populate_sysroot[noexec] = "1" +do_package[noexec] = "1" +do_packagedata[noexec] = "1" +do_package_write_ipk[noexec] = "1" +do_package_write_deb[noexec] = "1" +do_package_write_rpm[noexec] = "1" + +do_fetch[depends] += "virtual/kernel:do_deploy image-rauc-rescue-initramfs:do_image_complete" +do_deploy[depends] += "mtd-utils-native:do_populate_sysroot" + +S = "${WORKDIR}" + +do_fetch() { + mkdir -p "${S}/fs" + + cp "${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${MACHINE}.bin" "${S}/fs/kernel" + cp "${DEPLOY_DIR_IMAGE}/image-rauc-rescue-initramfs-${MACHINE}.cpio.xz" "${S}/fs/initramfs" +} + +do_fetch_append_gsmk-owhw() { + cp "${DEPLOY_DIR_IMAGE}/uImage-am335x-gsmk-owhw.dtb" "${S}/fs/devicetree" +} + +IMAGE_ROOTFS = "${S}/fs" +IMAGE_NAME = "${PN}-${MACHINE}-${DATETIME}" +# Don't include the DATETIME variable in the sstate package sigantures +IMAGE_NAME[vardepsexclude] = "DATETIME" +IMAGE_LINK_NAME = "${PN}-${MACHINE}" + +do_deploy() { + echo \[rescue\] > ubinize.cfg + echo mode=ubi >> ubinize.cfg + echo image=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rescue.ubifs >> ubinize.cfg + echo vol_id=0 >> ubinize.cfg + echo vol_size=14MiB >> ubinize.cfg + echo vol_type=dynamic >> ubinize.cfg + echo vol_name=rescue >> ubinize.cfg + echo \[system0\] >> ubinize.cfg + echo mode=ubi >> ubinize.cfg + echo vol_id=1 >> ubinize.cfg + echo vol_size=35MiB >> ubinize.cfg + echo vol_type=dynamic >> ubinize.cfg + echo vol_name=system0 >> ubinize.cfg + echo \[system1\] >> ubinize.cfg + echo mode=ubi >> ubinize.cfg + echo vol_id=2 >> ubinize.cfg + echo vol_size=35MiB >> ubinize.cfg + echo vol_type=dynamic >> ubinize.cfg + echo vol_name=system1 >> ubinize.cfg + echo \[data\] >> ubinize.cfg + echo mode=ubi >> ubinize.cfg + echo vol_id=3 >> ubinize.cfg + echo vol_size=16MiB >> ubinize.cfg + echo vol_type=dynamic >> ubinize.cfg + echo vol_name=data >> ubinize.cfg + echo vol_flags=autoresize >> ubinize.cfg + + mkfs.ubifs --squash-uids -r ${IMAGE_ROOTFS} -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rescue.ubifs ${MKUBIFS_ARGS} + ubinize -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.ubi ${UBINIZE_ARGS} ubinize.cfg + ln -sf ${IMAGE_NAME}.ubi ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.ubi +} + +addtask deploy after do_fetch before do_build