From: "Yann E. MORIN" <yann.morin.1998@free.fr>
To: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Cc: thomas.petazzoni@bootlin.com, buildroot@buildroot.org
Subject: Re: [Buildroot] [RESEND PATCH v2 1/1] package/sscep: fix linking error
Date: Mon, 16 Jan 2023 21:20:30 +0100 [thread overview]
Message-ID: <20230116202030.GC2770@scaer> (raw)
In-Reply-To: <20230116180550.3144425-1-dario.binacchi@amarulasolutions.com>
Dario, All,
On 2023-01-16 19:05 +0100, Dario Binacchi spake thusly:
> Apply the patch to fix the following build failure raised since the
> addition of the package in commit
> 72fa60dc102679f51b228336ec38f5af78ff7646:
>
> uclibc/sysroot/usr/lib/libc.a(getopt.os): in function `__GI_getopt':
> getopt.c:(.text+0x598): multiple definition of `getopt'; src/getopt.o:getopt.c:(.text+0x0): first defined here
>
> The patch has been submitted and accepted upstream to address this issue.
>
> Fixes:
> - http://autobuild.buildroot.net/results/844c7dd79f69ef2ea8f293bb73a2d4b7533aa97c
>
> Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Now that it is applied upstream, I made that an actual backport (to have
the proper sha1).
Applied to master, thanks.
Regards,
Yann E. MORIN.
> ---
> Changes in v2:
> - Add autobuild reference to commit message.
> - The applied patch has ben accepted, so update the commit message.
>
> .../sscep/0001-Fix-getopt-linking-error.patch | 55 +++++++++++++++++++
> 1 file changed, 55 insertions(+)
> create mode 100644 package/sscep/0001-Fix-getopt-linking-error.patch
>
> diff --git a/package/sscep/0001-Fix-getopt-linking-error.patch b/package/sscep/0001-Fix-getopt-linking-error.patch
> new file mode 100644
> index 000000000000..b32613b3cc18
> --- /dev/null
> +++ b/package/sscep/0001-Fix-getopt-linking-error.patch
> @@ -0,0 +1,55 @@
> +From c4fc8d9e282e05fcfa0cee9362c60742b26f4b33 Mon Sep 17 00:00:00 2001
> +From: Dario Binacchi <dario.binacchi@amarulasolutions.com>
> +Date: Fri, 9 Dec 2022 18:18:27 +0100
> +Subject: [PATCH] Fix getopt linking error
> +
> +The buildroot project, to which the sscep application was added, has
> +configurations that raise the following linking error:
> +buildroot/output/host/lib/gcc/arc-buildroot-linux-uclibc/11.3.0/../../../../arc-buildroot-linux-uclibc/bin/ld: buildroot/output/host/bin/../arc-buildroot-linux-uclibc/sysroot/usr/lib/libc.a(getopt.os):(.data+0x8): multiple definition of `optind'; src/getopt.o:(.data+0x0): first defined here
> +buildroot/output/host/lib/gcc/arc-buildroot-linux-uclibc/11.3.0/../../../../arc-buildroot-linux-uclibc/bin/ld: buildroot/output/host/bin/../arc-buildroot-linux-uclibc/sysroot/usr/lib/libc.a(getopt.os): in function `__GI_getopt':
> +getopt.c:(.text+0x5a4): multiple definition of `getopt'; src/getopt.o:getopt.c:(.text+0x0): first defined here
> +buildroot/output/host/lib/gcc/arc-buildroot-linux-uclibc/11.3.0/../../../../arc-buildroot-linux-uclibc/bin/ld: buildroot/output/host/bin/../arc-buildroot-linux-uclibc/sysroot/usr/lib/libc.a(getopt.os): in function `getopt_long':
> +getopt.c:(.text+0x5b0): multiple definition of `getopt_long'; src/getopt.o:getopt.c:(.text+0x128): first defined here
> +collect2: error: ld returned 1 exit status
> +make[2]: *** [Makefile:507: sscep] Error 1
> +make[1]: *** [package/pkg-generic.mk:293: buildroot/output/build/sscep-0.10.0/.stamp_built] Error 2
> +
> +The patch re-added a check that commit
> +81f56f635259b9 ("Replaced GNU getopt by a BSD licensed alternative")
> +removed.
> +
> +Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
> +---
> + src/getopt.c | 12 ++++++++++++
> + 1 file changed, 12 insertions(+)
> +
> +diff --git a/src/getopt.c b/src/getopt.c
> +index eae36a64afff..0109406ba4ac 100644
> +--- a/src/getopt.c
> ++++ b/src/getopt.c
> +@@ -31,6 +31,16 @@
> + #include <stddef.h>
> + #include <string.h>
> +
> ++#define GETOPT_INTERFACE_VERSION 2
> ++#if !defined _LIBC && defined __GLIBC__ && __GLIBC__ >= 2
> ++# include <gnu-versions.h>
> ++# if _GNU_GETOPT_INTERFACE_VERSION == GETOPT_INTERFACE_VERSION
> ++# define ELIDE_CODE
> ++# endif
> ++#endif
> ++
> ++#ifndef ELIDE_CODE
> ++
> + char* optarg;
> + int optopt;
> + /* The variable optind [...] shall be initialized to 1 by the system. */
> +@@ -226,3 +236,5 @@ int getopt_long(int argc, char* const argv[], const char* optstring,
> + ++optind;
> + return retval;
> + }
> ++
> ++#endif /* Not ELIDE_CODE. */
> +--
> +2.32.0
> +
> --
> 2.32.0
>
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
prev parent reply other threads:[~2023-01-16 20:20 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-16 18:05 [Buildroot] [RESEND PATCH v2 1/1] package/sscep: fix linking error Dario Binacchi
2023-01-16 20:20 ` Yann E. MORIN [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230116202030.GC2770@scaer \
--to=yann.morin.1998@free.fr \
--cc=buildroot@buildroot.org \
--cc=dario.binacchi@amarulasolutions.com \
--cc=thomas.petazzoni@bootlin.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox