From 3a811924d0565b20d16f51ca8c6f8814685b6e93 Mon Sep 17 00:00:00 2001 From: Ralph Lange Date: Mon, 25 Nov 2019 10:37:28 +0100 Subject: [PATCH] travis: fix RTEMS builds (needs Base >= 3.16.2) --- .travis.yml | 5 +- travis/Add-RTEMS-pc368-qemu-target.patch | 77 ++++++++++++++++++++++++ 2 files changed, 80 insertions(+), 2 deletions(-) create mode 100644 travis/Add-RTEMS-pc368-qemu-target.patch diff --git a/.travis.yml b/.travis.yml index 611df54..711d940 100644 --- a/.travis.yml +++ b/.travis.yml @@ -96,11 +96,12 @@ matrix: compiler: mingw # Cross-compilation to RTEMS +# (needs EPICS Base >= 3.16.2) - - env: SET=test01 RTEMS=4.10 TEST=NO + - env: BASE=R3.16.2 SET=test01 RTEMS=4.10 TEST=NO dist: trusty - - env: SET=test01 RTEMS=4.9 TEST=NO + - env: BASE=R3.16.2 SET=test01 RTEMS=4.9 TEST=NO dist: trusty # Other gcc versions (adding as an extra package) diff --git a/travis/Add-RTEMS-pc368-qemu-target.patch b/travis/Add-RTEMS-pc368-qemu-target.patch new file mode 100644 index 0000000..de38660 --- /dev/null +++ b/travis/Add-RTEMS-pc368-qemu-target.patch @@ -0,0 +1,77 @@ +From 00ee7bf7d3618c748491c88742c011a8353abeba Mon Sep 17 00:00:00 2001 +From: Andrew Johnson +Date: Wed, 24 Oct 2018 14:27:15 -0500 +Subject: [PATCH] Add RTEMS-pc368-qemu target, use in Travis-CI builds + +--- + configure/os/CONFIG.Common.RTEMS-pc386-qemu | 11 +++++++++++ + configure/os/CONFIG_SITE.Common.RTEMS-pc386 | 5 ----- + configure/os/CONFIG_SITE.Common.RTEMS-pc386-qemu | 9 +++++++++ + src/libCom/RTEMS/Makefile | 2 +- + src/tools/makeTestfile.pl | 2 +- + 6 files changed, 24 insertions(+), 10 deletions(-) + create mode 100644 configure/os/CONFIG.Common.RTEMS-pc386-qemu + delete mode 100644 configure/os/CONFIG_SITE.Common.RTEMS-pc386 + create mode 100644 configure/os/CONFIG_SITE.Common.RTEMS-pc386-qemu + +diff --git a/configure/os/CONFIG.Common.RTEMS-pc386-qemu b/configure/os/CONFIG.Common.RTEMS-pc386-qemu +new file mode 100644 +index 000000000..684f01a19 +--- /dev/null ++++ b/configure/os/CONFIG.Common.RTEMS-pc386-qemu +@@ -0,0 +1,11 @@ ++# CONFIG.Common.RTEMS-pc386-qemu ++# ++# Definitions for the RTEMS-pc386-qemu target ++# Site-specific overrides go in CONFIG_SITE.Common.RTEMS-pc386-qemu ++# ++#------------------------------------------------------- ++ ++# Include definitions from RTEMS-pc386 ++include $(CONFIG)/os/CONFIG.Common.RTEMS-pc386 ++ ++RTEMS_QEMU_FIXUPS = YES +diff --git a/configure/os/CONFIG_SITE.Common.RTEMS-pc386-qemu b/configure/os/CONFIG_SITE.Common.RTEMS-pc386-qemu +new file mode 100644 +index 000000000..027dcf4ab +--- /dev/null ++++ b/configure/os/CONFIG_SITE.Common.RTEMS-pc386-qemu +@@ -0,0 +1,9 @@ ++# CONFIG_SITE.Common.RTEMS-pc386-qemu ++# ++# Site-specific overrides for the RTEMS-pc386-qemu target ++# ++ ++# If you're building this architecture you _probably_ want to ++# run the tests for it under QEMU, but if not you can turn ++# them off here by commenting out this line: ++CROSS_COMPILER_RUNTEST_ARCHS += RTEMS-pc386-qemu +diff --git a/src/libCom/RTEMS/Makefile b/src/libCom/RTEMS/Makefile +index 2f12b7bf0..22a92733c 100644 +--- a/src/libCom/RTEMS/Makefile ++++ b/src/libCom/RTEMS/Makefile +@@ -24,7 +24,7 @@ rtemsCom_SRCS += epicsRtemsInitHookPre.c + rtemsCom_SRCS += epicsRtemsInitHookPost.c + rtemsCom_SRCS += epicsMemFs.c + +-ifeq ($(T_A),RTEMS-pc386) ++ifeq ($(RTEMS_BSP),pc386) + rtemsCom_SRCS += ne2kpci.c + endif + +diff --git a/src/tools/makeTestfile.pl b/src/tools/makeTestfile.pl +index 73f522034..fb431fe7a 100644 +--- a/src/tools/makeTestfile.pl ++++ b/src/tools/makeTestfile.pl +@@ -37,7 +37,7 @@ if( $TA =~ /^win32-x86/ && $HA !~ /^win/ ) { + $exec = "wine64 $exe"; + + # Run pc386 test harness w/ QEMU +-} elsif( $TA =~ /^RTEMS-pc386$/ ) { ++} elsif( $TA =~ /^RTEMS-pc386-qemu$/ ) { + $exec = "qemu-system-i386 -m 64 -no-reboot -serial stdio -display none -net nic,model=ne2k_pci -net user,restrict=yes -kernel $exe"; + + # Explicitly fail for other RTEMS targets +-- +2.21.0.windows.1 +