Hi,

a quick summary of what's yet to be done in the ports you listed.

Mark Kettenis <mark.kette...@xs4all.nl> writes:

> Hi Folks,
>
> robert@ has been so kind to do a bulk build with binutils 2.17 on
> amd64, sent me a list of ports that failed to build and gave me access
> to the build logs.  I've analyzed most of these now.  I'm looking into
> the harder ones myself, but below is a list of ports with "trivial"
> issues.  These basically fall into two categories:
>
> 1. Ports that link by invoking ld directly:
>
>   lang/tinyscheme
>   net/honeyd

>   security/ADMfzap

I propose to kill it.  Weird use case, clunky licensing and build system,
probably already broken, hardcodes path to libc.so.23.1, etc etc

ok?

>   www/mongrel2

>   x11/pinot

Fixed recently, but depends on graphics/exiv2 which is broken too.  Are you
already looking at it?

>   audio/swh-plugins (-nostartfiles)

I'm not sure how to test the resulting package after such a horrible
diff.

Index: Makefile
===================================================================
RCS file: /cvs/ports/audio/swh-plugins/Makefile,v
retrieving revision 1.9
diff -u -p -r1.9 Makefile
--- Makefile    1 Jun 2013 12:15:48 -0000       1.9
+++ Makefile    21 May 2015 11:05:34 -0000
@@ -37,6 +37,11 @@ CONFIGURE_ARGS +=    --disable-nls
 AUTO_ENV =     AUTOCONF_VERSION=${AUTOCONF_VERSION} \
                AUTOMAKE_VERSION=${AUTOMAKE_VERSION}
 
+post-extract:
+       find ${WRKSRC} -type f -name '*.c' -print -execdir perl -pi \
+           -e 's/^void\s+_init\(\)\s+{/void __init() 
__attribute__((constructor));\nvoid __init() {/;' \
+           -e 's/^void\s+_fini\(\)\s+{/void __fini() 
__attribute__((destructor));\nvoid __fini() {/;' \
+           {} \;
 post-patch:
        rm ${WRKSRC}/acconfig.h ${WRKSRC}/ladspa.h
        cd ${WRKSRC}; ${AUTO_ENV} aclocal -I . -I m4
Index: patches/patch-Makefile_am
===================================================================
RCS file: /cvs/ports/audio/swh-plugins/patches/patch-Makefile_am,v
retrieving revision 1.2
diff -u -p -r1.2 patch-Makefile_am
--- patches/patch-Makefile_am   1 Jun 2013 12:15:48 -0000       1.2
+++ patches/patch-Makefile_am   21 May 2015 11:11:38 -0000
@@ -1,15 +1,16 @@
 $OpenBSD: patch-Makefile_am,v 1.2 2013/06/01 12:15:48 ajacoutot Exp $
 
+- don't use -nostartfiles: relocation R_X86_64_PC32 against `__guard_local' ...
 - use "libtool archives" (PIC) instead of static archives
 
---- Makefile.am.orig   Tue Aug  8 08:56:35 2006
-+++ Makefile.am        Fri Oct 22 11:45:47 2010
+--- Makefile.am.orig   Tue Aug  8 17:56:35 2006
++++ Makefile.am        Thu May 21 13:06:06 2015
 @@ -43,15 +43,15 @@ plugindir = @prefix@/lib/ladspa
  
  # Uncomment below for Darwin support.  Or add a conditional for this.
  #AM_CFLAGS = -fno-common -flat_namespace -bundle -undefined suppress 
-lbundle1.o
 -AM_LDFLAGS = -module -avoid-version -Wc,-nostartfiles
-+AM_LDFLAGS = -module -avoid-version -nostartfiles
++AM_LDFLAGS = -module -avoid-version
  DESTDIR = $(INSTALL_ROOT)
  DISTFN = $(distdir)
  



> These ports dont include /usr/lib/crtbeginS.o and therefore run into
> an issue referencing __guard_local, resulting in messages like:
>
>   ld: foobar.o: relocation R_X86_64_PC32 against `__guard_local' can
>   not be used when making a shared object; recompile with -fPIC
>
> The solution here is to patch the port to link by invoking cc.
>
> 2. Ports that attempt to link code compiled without -fPIC into a
>    shared library:
>
>   devel/valgrind

This one looks complicated. :)

cc'd Masao in case he was not aware.

>   textproc/mupdf
>   www/vteplugin
>   x11/cool-retro-term
>   x11/kmplayer
>
>   ld: foobar.o: relocation R_X86_64_PC32 against `foobar' can not be
>   used when making a shared object; recompile with -fPIC
>
> The solution here is to make sure the relevant code gets compiled with -fPIC.
>
> I've already fixed a couple of important instances of both categories.
> I invite maintainers/porters to fix the others on the list, or declare
> them low-priority.  espie@ already indicated that x11/kmplayer isn't a
> priority.
>
> Thanks,
>
> Mark


-- 
jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF  DDCC 0DFA 74AE 1524 E7EE

Reply via email to