pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: libvpx and gcc 4.4 dependency



On Fri, Sep 05, 2014 at 03:00:01PM +0100, Patrick Welche wrote:
> On Fri, Sep 05, 2014 at 11:51:32AM +0100, Patrick Welche wrote:
> > On Fri, Sep 05, 2014 at 11:29:50AM +0100, Jonathan Perkin wrote:
> > > It is expected:
> > > 
> > >  - libvpx sets USE_LANGUAGES= c c++, which means that
> > >    mk/compiler/gcc.mk sets _USE_GCC_SHLIB due to requiring C++
> > >    support.
> > > 
> > >  - lang/gcc47/buildlink.mk adds a full dependency if _USE_GCC_SHLIB is
> > >    set.
> > > 
> > > Whether this is correct, I'm not sure - if libvpx really does use C++
> > > but doesn't have any dependency on the runtime libraries then there's
> > > room for some optimisation on NetBSD at least (other platforms
> > > explicitly require _USE_GCC_SHLIB regardless).
> > 
> > Thank you for the explanation! It looks as though libvpx's tests are
> > written in C++, and as we configure with --disable-unit-tests, I will
> > see if we can get away without the c++...
> 
> Sure enough, without the c++, I get a successful build without a dependency
> on gcc47 - only
> 
> @blddep gcc47-4.7.3nb5
> @blddep binutils-2.24nb3
> 
> no more pkgdep.
> 
> It seems that removing c++ from USE_LANGUAGES is correct. OK to commit?
> 
> (then begs the question for clang users if the CXXFLAGS are ncessary)
> 
> Next is to see how far back gcc removes its gcc_s dependency - given that
> NetBSD 6 has gcc 4.5. (So far, 4.7 good, 4.4 bad) - or do you already know
> the answer to that Richard?

and gcc 4.5 is sufficient to avoid a runtime dependency on gcc (so happy
NetBSD 6).

Commit the attached?

Cheers,

Patrick
Index: Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/multimedia/libvpx/Makefile,v
retrieving revision 1.49
diff -u -u -r1.49 Makefile
--- Makefile	30 Aug 2014 11:14:52 -0000	1.49
+++ Makefile	7 Oct 2014 11:45:34 -0000
@@ -14,7 +14,7 @@
 
 WRKSRC=		${WRKDIR}/${PKGNAME_NOREV}
 
-USE_LANGUAGES=		c c++
+USE_LANGUAGES=		c
 USE_LIBTOOL=		yes
 USE_TOOLS+=		gmake bash:build perl:build
 HAS_CONFIGURE=		yes
@@ -31,7 +31,8 @@
 	${MACHINE_ARCH} == "amd64"
 . if ${PKGSRC_COMPILER} == "gcc" && (${OPSYS} == "NetBSD" || ${OPSYS} == "SunOS")
 # PR pkg/48508: GCC 4.4 or later is required to compile ssse3 code on NetBSD & Solaris.
-GCC_REQD+=	4.4
+# GCC 4.5 avoids a libgcc_s runtime dependency.
+GCC_REQD+=	4.5
 . endif
 
 BUILD_DEPENDS+=		yasm-[0-9]*:../../devel/yasm


Home | Main Index | Thread Index | Old Index