Source: keyutils
Version: 1.5.5-1
Severity: important
Tags: patch

Hello:

The last release enabled hardening but caused the following errors in amd64:
 /usr/bin/ld: keyctl.o: relocation R_X86_64_32S against `commands' can
not be used when making a shared object; recompile with -fPIC
 /usr/bin/ld: request-key.o: relocation R_X86_64_32 against `.rodata'
can not be used when making a shared object; recompile with -fPIC
 /usr/bin/ld: key.dns_resolver.o: relocation R_X86_64_32 against
`.rodata' can not be used when making a shared object; recompile with
-fPIC

If hardening is disabled the errors go away but I doubt that is
desired. As an attachment I included a patch for a possible way to fix
the FTBFS.

The log of the errors can be found:
https://buildd.debian.org/status/fetch.php?pkg=keyutils&arch=amd64&ver=1.5.5-1&stamp=1327720867

The 2nd and 3rd -fPIC error messages appear when you add -fPIC flag to
the object file of the previous line.

Hope this helps,
Miguel
Description: Use -fPIC for the generated *.o.
 Errors caused by enabling hardening in amd64:
 /usr/bin/ld: keyctl.o: relocation R_X86_64_32S against `commands' can not be used when making a shared object; recompile with -fPIC
 /usr/bin/ld: request-key.o: relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
 /usr/bin/ld: key.dns_resolver.o: relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
Forwarded: no
Author: Miguel Colon <debian.mic...@gmail.com>
Last-Update: 2012-02-26

--- keyutils-1.5.5.orig/Makefile
+++ keyutils-1.5.5/Makefile
@@ -127,7 +127,7 @@ keyutils.os: keyutils.c keyutils.h Makef
 #
 ###############################################################################
 %.o: %.c keyutils.h Makefile
-	$(CC) $(CPPFLAGS) $(CFLAGS) -o $@ -c $<
+	$(CC) $(CPPFLAGS) $(CFLAGS) -fPIC -o $@ -c $<
 
 keyctl: keyctl.o $(DEVELLIB)
 	$(CC) -L. $(CFLAGS) $(LDFLAGS) $(RPATH) -o $@ $< -lkeyutils

Reply via email to