[Buildroot] [PATCH] package/buysbox: fix build with individual binaries

Yann E. MORIN yann.morin.1998 at free.fr
Sat Mar 30 08:46:41 UTC 2019


Fixes:
    http://autobuild.buildroot.org/results/053/0539b3765eaa99029c4185ae89db6adb9e867078/

Kudos to Thomas for pinpointing the actual issue.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998 at free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
Cc: Peter Korsgaard <peter at korsgaard.com>

---
Peter, this is a candidate for 2019.02.x.
---
 ...-mark-scripted_main-as-externally-visible.patch | 53 ++++++++++++++++++++++
 1 file changed, 53 insertions(+)
 create mode 100644 package/busybox/0003-libbb-mark-scripted_main-as-externally-visible.patch

diff --git a/package/busybox/0003-libbb-mark-scripted_main-as-externally-visible.patch b/package/busybox/0003-libbb-mark-scripted_main-as-externally-visible.patch
new file mode 100644
index 0000000000..d3b174dd4a
--- /dev/null
+++ b/package/busybox/0003-libbb-mark-scripted_main-as-externally-visible.patch
@@ -0,0 +1,53 @@
+From eb5830223d452944b96e526b2f44158bda5c5c56 Mon Sep 17 00:00:00 2001
+From: Ron Yorston <rmy at pobox.com>
+Date: Sat, 30 Mar 2019 07:47:12 +0000
+Subject: [PATCH] libbb: mark scripted_main() as externally visible
+
+Building with individual binaries enabled fails when embedded
+script applets are included:
+
+   /tmp/ccIvMFZg.o: In function `main':
+   applet.c:(.text.main+0x20): undefined reference to `scripted_main'
+
+Mark scripted_main() as externally visible.
+
+Reported-by: Yann E. MORIN <yann.morin.1998 at free.fr>
+Signed-off-by: Ron Yorston <rmy at pobox.com>
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998 at free.fr>
+---
+Upstream status: reported, patch pending;
+    http://lists.busybox.net/pipermail/busybox/2019-March/087148.html
+    http://lists.busybox.net/pipermail/busybox/2019-March/087149.html
+---
+ include/libbb.h   | 2 +-
+ libbb/appletlib.c | 1 +
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/include/libbb.h b/include/libbb.h
+index e0d5521e4..a20d5e403 100644
+--- a/include/libbb.h
++++ b/include/libbb.h
+@@ -1347,7 +1347,7 @@ void bb_logenv_override(void) FAST_FUNC;
+ 
+ /* Embedded script support */
+ char *get_script_content(unsigned n) FAST_FUNC;
+-int scripted_main(int argc, char** argv);
++int scripted_main(int argc, char** argv) MAIN_EXTERNALLY_VISIBLE;
+ 
+ /* Applets which are useful from another applets */
+ int bb_cat(char** argv) FAST_FUNC;
+diff --git a/libbb/appletlib.c b/libbb/appletlib.c
+index c15014a34..fa19e8488 100644
+--- a/libbb/appletlib.c
++++ b/libbb/appletlib.c
+@@ -770,6 +770,7 @@ static int find_script_by_name(const char *name)
+ 	return -1;
+ }
+ 
++int scripted_main(int argc UNUSED_PARAM, char **argv) MAIN_EXTERNALLY_VISIBLE;
+ int scripted_main(int argc UNUSED_PARAM, char **argv)
+ {
+ 	int script = find_script_by_name(applet_name);
+-- 
+2.14.1
+
-- 
2.14.1



More information about the buildroot mailing list