[rtems commit] splinkersets01: Test linker sets in library

Sebastian Huber sebh at rtems.org
Thu Jun 10 06:44:44 UTC 2021


Module:    rtems
Branch:    master
Commit:    2769554243c43eee9fd5066a5cd770ab89ec47a3
Changeset: http://git.rtems.org/rtems/commit/?id=2769554243c43eee9fd5066a5cd770ab89ec47a3

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Thu Jun 10 08:41:05 2021 +0200

splinkersets01: Test linker sets in library

Make sure that the linker sets work if placed in a library (this is how
they are used in RTEMS).

---

 spec/build/testsuites/sptests/grp.yml               |  2 ++
 spec/build/testsuites/sptests/libsplinkersets01.yml | 19 +++++++++++++++++++
 spec/build/testsuites/sptests/splinkersets01.yml    |  2 --
 testsuites/sptests/Makefile.am                      |  4 +++-
 .../sptests/splinkersets01/{items.c => content.c}   |  4 ----
 testsuites/sptests/splinkersets01/item-a.c          | 21 +++++++++++++++++++++
 testsuites/sptests/splinkersets01/item-ca.c         | 21 +++++++++++++++++++++
 7 files changed, 66 insertions(+), 7 deletions(-)

diff --git a/spec/build/testsuites/sptests/grp.yml b/spec/build/testsuites/sptests/grp.yml
index 3ceddfa..ac2f662 100644
--- a/spec/build/testsuites/sptests/grp.yml
+++ b/spec/build/testsuites/sptests/grp.yml
@@ -13,6 +13,8 @@ ldflags:
 - -Wl,--wrap=puts
 links:
 - role: build-dependency
+  uid: libsplinkersets01
+- role: build-dependency
   uid: sp01
 - role: build-dependency
   uid: sp02
diff --git a/spec/build/testsuites/sptests/libsplinkersets01.yml b/spec/build/testsuites/sptests/libsplinkersets01.yml
new file mode 100644
index 0000000..fe0bd12
--- /dev/null
+++ b/spec/build/testsuites/sptests/libsplinkersets01.yml
@@ -0,0 +1,19 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+build-type: library
+cflags: []
+copyrights:
+- Copyright (C) 2021 embedded brains GmbH (http://www.embedded-brains.de)
+cppflags: []
+cxxflags: []
+enabled-by: true
+includes: []
+install: []
+install-path: null
+links: []
+source:
+- testsuites/sptests/splinkersets01/content.c
+- testsuites/sptests/splinkersets01/item-a.c
+- testsuites/sptests/splinkersets01/item-ca.c
+- testsuites/sptests/splinkersets01/sets.c
+target: splinkersets01
+type: build
diff --git a/spec/build/testsuites/sptests/splinkersets01.yml b/spec/build/testsuites/sptests/splinkersets01.yml
index 9954655..aac5942 100644
--- a/spec/build/testsuites/sptests/splinkersets01.yml
+++ b/spec/build/testsuites/sptests/splinkersets01.yml
@@ -12,8 +12,6 @@ ldflags: []
 links: []
 source:
 - testsuites/sptests/splinkersets01/init.c
-- testsuites/sptests/splinkersets01/items.c
-- testsuites/sptests/splinkersets01/sets.c
 stlib: []
 target: testsuites/sptests/splinkersets01.exe
 type: build
diff --git a/testsuites/sptests/Makefile.am b/testsuites/sptests/Makefile.am
index 8813d43..8a9d968 100644
--- a/testsuites/sptests/Makefile.am
+++ b/testsuites/sptests/Makefile.am
@@ -1943,7 +1943,9 @@ endif
 if TEST_splinkersets01
 sp_libs += libsplinkersets01.a
 libsplinkersets01_a_SOURCES = splinkersets01/sets.c \
-	splinkersets01/items.c
+	splinkersets01/content.c \
+	splinkersets01/item-a.c \
+	splinkersets01/item-ca.c
 endif
 
 noinst_PROGRAMS = $(sp_tests)
diff --git a/testsuites/sptests/splinkersets01/items.c b/testsuites/sptests/splinkersets01/content.c
similarity index 79%
rename from testsuites/sptests/splinkersets01/items.c
rename to testsuites/sptests/splinkersets01/content.c
index 3072c64..4de2827 100644
--- a/testsuites/sptests/splinkersets01/items.c
+++ b/testsuites/sptests/splinkersets01/content.c
@@ -18,10 +18,6 @@
 
 #include "splinkersets01.h"
 
-RTEMS_LINKER_RWSET_ITEM_ORDERED(test_rw, const int *, a1, 1) = &a[1];
-
-RTEMS_LINKER_ROSET_ITEM_ORDERED(test_ro, const int *, ca2, OC) = &ca[2];
-
 int content_rw_1;
 char content_rw_2;
 char content_rw_3;
diff --git a/testsuites/sptests/splinkersets01/item-a.c b/testsuites/sptests/splinkersets01/item-a.c
new file mode 100644
index 0000000..30f81bf
--- /dev/null
+++ b/testsuites/sptests/splinkersets01/item-a.c
@@ -0,0 +1,21 @@
+/*
+ * Copyright (c) 2015, 2016 embedded brains GmbH.  All rights reserved.
+ *
+ *  embedded brains GmbH
+ *  Dornierstr. 4
+ *  82178 Puchheim
+ *  Germany
+ *  <rtems at embedded-brains.de>
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "splinkersets01.h"
+
+RTEMS_LINKER_RWSET_ITEM_ORDERED(test_rw, const int *, a1, 1) = &a[1];
diff --git a/testsuites/sptests/splinkersets01/item-ca.c b/testsuites/sptests/splinkersets01/item-ca.c
new file mode 100644
index 0000000..23937db
--- /dev/null
+++ b/testsuites/sptests/splinkersets01/item-ca.c
@@ -0,0 +1,21 @@
+/*
+ * Copyright (c) 2015, 2016 embedded brains GmbH.  All rights reserved.
+ *
+ *  embedded brains GmbH
+ *  Dornierstr. 4
+ *  82178 Puchheim
+ *  Germany
+ *  <rtems at embedded-brains.de>
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "splinkersets01.h"
+
+RTEMS_LINKER_ROSET_ITEM_ORDERED(test_ro, const int *, ca2, OC) = &ca[2];



More information about the vc mailing list