prosody: build with -fPIC
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Mon, 6 Nov 2017 20:04:14 +0000 (21:04 +0100)
committerPeter Korsgaard <peter@korsgaard.com>
Mon, 6 Nov 2017 20:30:37 +0000 (21:30 +0100)
The prosody configure script defines CFLAGS as -fPIC -Wall, but
because we pass our own CFLAGS, the -fPIC goes away, causing a build
failure when building shared libraries on x86-64:

/home/test/autobuild/run/instance-0/output/host/opt/ext-toolchain/bin/../lib/gcc/x86_64-amd-linux-gnu/6.2.0/../../../../x86_64-amd-linux-gnu/bin/ld: encodings.o: relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC

So let's pass this -fPIC flag explicitly in CFLAGS. We don't bother
passing it conditionally !BR2_STATIC_LIBS because other packages (e.g
lua) also pass -fPIC unconditionally.

Fixes:

  http://autobuild.buildroot.net/results/7f0eb285b75cdeacb21a1f9a9f64d2f0cbbf1d59/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/prosody/prosody.mk

index b98748e3b64956e57346b2d1e2b5e562d6115549..d19653503d2e2be7beedb7ae3236318df0526a8d 100644 (file)
@@ -21,7 +21,7 @@ endif
 PROSODY_CONF_OPTS = \
        --with-lua=$(STAGING_DIR)/usr \
        --c-compiler=$(TARGET_CC) \
-       --cflags="$(TARGET_CFLAGS)" \
+       --cflags="$(TARGET_CFLAGS) -fPIC" \
        --linker=$(TARGET_CC) \
        --ldflags="$(TARGET_LDFLAGS) -shared" \
        --sysconfdir=/etc/prosody \