Hi, 

I almost forgot that one, it still builds and works properly on powerpc :)

Charlène.

On Sun, 22 Sep 2019 11:30:49 +0200
Charlene Wendling wrote:

> Hi,
> 
> There have been some out of list discussion about it.
> 
> COMPILER_VERSION is unused in ports and we have PROPERTIES for the
> same purpose. jca@ proposed to remove COMPILER_VERSION from MAKE_ENV
> and test bulk the change. The issue being i can't do a (required) full
> bulk myself.
> 
> Meanwhile mkvtoolnix still doesn't build for a trivial reason, and if
> no one is willing to test bulk the MAKE_ENV change, i think we should
> at least unset COMPILER_VERSION for that port.
> 
> Opinions? 
> 
> Charlène.
> 
> On Wed, 21 Aug 2019 21:09:33 +0200
> Charlene Wendling wrote:
> 
> > Hi,
> > 
> > > http://build-failures.rhaalovely.net/sparc64/2019-08-18/multimedia/mkvtoolnix%2Cno_x11.log
> > (no full macppc bulk report available for now)
> > 
> > What happens behind the scene (--trace didn't help):
> > 
> > - $WRKSRC/rake.d/config.rb loads the 'build-config' file, that says
> > that "COMPILER_VERSION = 8.3.0" (fine)
> > - $WRKSRC/Rakefile does various compiler version checks to determine
> >   proper build flags to use
> > - Compiler versions are checked in $WRKSRC/rake.d/helpers.rb using
> >   Ruby's check_version() function, that seems to not like version
> >   numbers with letters at the start, as we can see in the log.
> >   The compiler version itself comes from the c() function...
> > - ...that is defined in $WRKSRC/rake.d/config.rb, where the line 24
> > is interesting:
> > 
> > var   = (ENV[idx_s].nil? ? $config[idx.to_sym] : ENV[idx_s]).to_s 
> > 
> > It appears that this 'gcc4' is coming from our default MAKE_ENV:
> > 
> > $ make show=MAKE_ENV
> > [...] COMPILER_VERSION="gcc4" [...] 
> > (on amd64, it returns COMPILER_VERSION="clang")
> > 
> > It did not break on amd64, because with clang, upstream uses the
> > same compilation flags for all versions, so there is no version
> > comparison done.
> > 
> > As such, i've overridden bsd.port.mk's COMPILER_VERSION, letting 
> > upstream's build system doing its job. I decided to go for it for
> > all archs, as this may prevent possible future breakage on
> > base-clang archs.
> > 
> > I did not bump REVISION because this version never built on
> > ports-gcc archs and it causes no change on base-clang ones.
> > 
> > This builds, and tests pass with flying colors, on amd64 and macppc
> > [0].
> > 
> > Comments/feedback are welcome :)
> > 
> > Charlène.
> > 
> > 
> > [0] https://bin.charlenew.xyz/mkvtoolnix.log
> > 
> > 

Index: Makefile
===================================================================
RCS file: /cvs/ports/multimedia/mkvtoolnix/Makefile,v
retrieving revision 1.93
diff -u -p -u -p -r1.93 Makefile
--- Makefile    7 Nov 2019 12:57:57 -0000       1.93
+++ Makefile    8 Jan 2020 22:57:38 -0000
@@ -29,6 +29,11 @@ MODRUBY_RUNDEP=      No
 # C++11 / C++14
 COMPILER =     base-clang ports-gcc
 
+# Override bsd.port.mk's COMPILER_VERSION because 'gcc4' is incorrect
+# with ports-gcc and not recognised as a version number by Ruby's
+# check_version(), and is just 'clang' with base-clang.
+COMPILER_VERSION=
+
 BUILD_DEPENDS= devel/gettext,-tools \
                devel/gtest \
                textproc/docbook \

Reply via email to