[Buildroot] [PATCH] wvstreams: Build bundled argp library with -fPIC
Peter Korsgaard
jacmet at uclibc.org
Thu Jun 20 08:00:34 UTC 2013
>>>>> "Markos" == Markos Chandras <markos.chandras at gmail.com> writes:
Markos> From: Markos Chandras <markos.chandras at imgtec.com>
Markos> Fixes linking problems on MIPS.
Markos> Signed-off-by: Markos Chandras <markos.chandras at imgtec.com>
Markos> ---
Markos> package/wvstreams/wvstreams-0006-argp-fpic.patch | 28 ++++++++++++++++++++++++
Markos> 1 file changed, 28 insertions(+)
Markos> create mode 100644 package/wvstreams/wvstreams-0006-argp-fpic.patch
Markos> diff --git a/package/wvstreams/wvstreams-0006-argp-fpic.patch b/package/wvstreams/wvstreams-0006-argp-fpic.patch
Markos> new file mode 100644
Markos> index 0000000..b4cf1d2
Markos> --- /dev/null
Markos> +++ b/package/wvstreams/wvstreams-0006-argp-fpic.patch
Markos> @@ -0,0 +1,28 @@
Markos> +Build argp object files with -fPIC.
Markos> +
Markos> +The argp bundled dependency is linked to the libwvutils.so shared library.
Markos> +MIPS will refuce to link a non-PIC library with a shared one.
Markos> +
Markos> +We fix this problem by building the argp source files using -fPIC since
Markos> +the libargp static library will only be used to link to libwvutils.so
Markos> +as instructed by the following rule in the root Makefile:
Markos> +
Markos> +ifeq ($(USE_WVSTREAMS_ARGP),1)
Markos> + utils/wvargs.o-CPPFLAGS += -Iargp
Markos> + libwvutils.so-LIBS += -Largp -largp
Markos> +
Markos> +Signed-off-by: Markos Chandras <markos.chandras at imgtec.com>
Markos> +
Markos> +Index: wvstreams-4.6.1/argp/Makefile.in
Markos> +===================================================================
Markos> +--- wvstreams-4.6.1.orig/argp/Makefile.in
Markos> ++++ wvstreams-4.6.1/argp/Makefile.in
Markos> +@@ -137,7 +137,7 @@ AUTOMAKE = @AUTOMAKE@
Markos> + AWK = @AWK@
Markos> + CC = @CC@
Markos> + CCDEPMODE = @CCDEPMODE@
Markos> +-CFLAGS = @CFLAGS@
Markos> ++CFLAGS = @CFLAGS@ -fPIC
How about when wvstreams is built as a static library
(BR2_PREFER_STATIC_LIB)?
Makefile.in is a generated file, so you should rather fix Makefile.am
and set WVSTREAMS_AUTORECONF = YES, but wouldn't it just be simpler to
just add CFLAGS="$(TARGET_CFLAGS) -fPIC" to WVSTREAMS_CONF_ENV when
building in the !BR2_PREFER_STATIC_LIB case?
--
Bye, Peter Korsgaard
More information about the buildroot
mailing list