On 2017/05/25 13:58, Ricardo Mestre wrote: > Hi ports@ > > This is a simple diff to allow net/trickle to be compiled by clang.
Might be better to remove their copy of an old version of OpenBSD's getopt and just use the libc one instead? > Regards, > mestre > Index: patches/patch-getopt_c > =================================================================== > RCS file: patches/patch-getopt_c > diff -N patches/patch-getopt_c > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-getopt_c 25 May 2017 12:52:06 -0000 > @@ -0,0 +1,15 @@ > +$OpenBSD$ > + > +Index: getopt.c > +--- getopt.c.orig > ++++ getopt.c > +@@ -41,8 +41,8 @@ static char *rcsid = "$OpenBSD: getopt.c,v 1.2 1996/08 > + > + int opterr = 1, /* if error message should be printed */ > + optind = 1, /* index into parent argv vector */ > +- optopt, /* character checked for validity */ > + optreset; /* reset getopt */ > ++extern int optopt; /* character checked for validity */ > + char *optarg; /* argument associated with option */ > + > + #define BADCH (int)'?' Index: Makefile =================================================================== RCS file: /cvs/ports/net/trickle/Makefile,v retrieving revision 1.21 diff -u -p -r1.21 Makefile --- Makefile 3 Feb 2017 16:21:10 -0000 1.21 +++ Makefile 25 May 2017 14:08:32 -0000 @@ -2,6 +2,8 @@ COMMENT= lightweight userspace bandwidth shaper DISTNAME= trickle-1.07 +REVISION= 0 + CATEGORIES= net HOMEPAGE= http://monkey.org/~marius/trickle/ Index: patches/patch-Makefile_in =================================================================== RCS file: /cvs/ports/net/trickle/patches/patch-Makefile_in,v retrieving revision 1.1 diff -u -p -r1.1 patch-Makefile_in --- patches/patch-Makefile_in 22 Jan 2015 00:02:41 -0000 1.1 +++ patches/patch-Makefile_in 25 May 2017 14:08:32 -0000 @@ -1,9 +1,38 @@ $OpenBSD: patch-Makefile_in,v 1.1 2015/01/22 00:02:41 jca Exp $ -undefined symbol '__guard_local' +-nostdlib: undefined symbol '__guard_local' +remove getopt.c: fix with clang ---- Makefile.in.orig Sat Jan 8 21:20:08 2005 -+++ Makefile.in Wed Jan 21 20:01:48 2015 +Index: Makefile.in +--- Makefile.in.orig ++++ Makefile.in +@@ -107,10 +107,10 @@ man_MANS = trickle.1 trickled.8 trickled.conf.5 + bin_PROGRAMS = trickle trickled tricklectl + + trickle_DEPENDENCIES = @ERRO@ @LIBOBJS@ +-trickle_SOURCES = trickle.c util.c getopt.c ++trickle_SOURCES = trickle.c util.c + trickle_LDADD = @ERRO@ @LIBOBJS@ + +-trickled_SOURCES = trickled.c atomicio.c print.c bwstat.c client.c conf.c util.c cleanup.c getopt.c xdr.c ++trickled_SOURCES = trickled.c atomicio.c print.c bwstat.c client.c conf.c util.c cleanup.c xdr.c + + trickled_LDADD = @EVENTLIB@ @LIBOBJS@ + +@@ -138,11 +138,11 @@ DEFS = @DEFS@ -I. -I$(srcdir) -I. + CPPFLAGS = @CPPFLAGS@ + LDFLAGS = @LDFLAGS@ + LIBS = @LIBS@ +-trickle_OBJECTS = trickle.$(OBJEXT) util.$(OBJEXT) getopt.$(OBJEXT) ++trickle_OBJECTS = trickle.$(OBJEXT) util.$(OBJEXT) + trickle_LDFLAGS = + trickled_OBJECTS = trickled.$(OBJEXT) atomicio.$(OBJEXT) \ + print.$(OBJEXT) bwstat.$(OBJEXT) client.$(OBJEXT) conf.$(OBJEXT) \ +-util.$(OBJEXT) cleanup.$(OBJEXT) getopt.$(OBJEXT) xdr.$(OBJEXT) ++util.$(OBJEXT) cleanup.$(OBJEXT) xdr.$(OBJEXT) + trickled_DEPENDENCIES = @LIBOBJS@ + trickled_LDFLAGS = + tricklectl_OBJECTS = tricklectl.$(OBJEXT) trickledu.$(OBJEXT) \ @@ -618,7 +618,7 @@ mostlyclean distclean maintainer-clean trickle-overload.so: $(TRICKLEOVERLOADFILES) $(LIBTOOL) --mode=link $(CC) $(CFLAGS) -o [email protected] \
