[vlc-devel] [PATCH v2 06/17] contrib: main: ensure NM is defined in makefile

Alexandre Janniaux ajanni at videolabs.io
Thu Apr 30 11:07:38 CEST 2020


Hi,

This is right indeed for binutils, but I also have

x86_64-apple-darwin-ar / nm / ranlib... without the -gcc
suffix (since, maybe, it is coming with clang and not gcc).

Likewise, another flaw of this patch is that macosx doesn't
have prefixed tools so you should actually use ar/nm directly
when cross compiling to apple devices.

I was wondering if we should add the `xcrun --find` here as
it is still needed in the buildscript to run the configure
step, and we would probably want to use =? syntax which
disallow the same hack as I wrote for symbols.mk.

In the mean time, passing --nm=$(NM) for ffmpeg is needed but
currently not really correct since NM is not even defined by
the default makefile rules (make -p), even if it doesn't
really have any consequences for our builds.

I wanted to have fallback first, but I didn't know how to
write the detection in a valid way for all platforms,
especially Windows ones. This would probably allow fixing
those issues in a smarter way.

Regards,
--
Alexandre Janniaux
Videolabs

On Thu, Apr 30, 2020 at 11:44:26AM +0300, Rémi Denis-Courmont wrote:
> Ok but correct value for GCC is gcc-nm (also gcc-ranlib and gcc-ar so you could argue that it's a preexisting condition).
>
> Le 29 avril 2020 23:40:49 GMT+03:00, Alexandre Janniaux <ajanni at videolabs.io> a écrit :
> >ffmpeg rules.make is passing the variable to configure, and nm can be
> >present in different flavour, for example in linux/macosx
> >cross-compilation environments.
> >---
> > contrib/src/main.mak | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> >diff --git a/contrib/src/main.mak b/contrib/src/main.mak
> >index 0a731f11dcc..534f1d11349 100644
> >--- a/contrib/src/main.mak
> >+++ b/contrib/src/main.mak
> >@@ -70,6 +70,7 @@ endif
> > ifneq ($(findstring $(origin AR),undefined default),)
> > AR := ar
> > endif
> >+NM ?= nm
> > RANLIB ?= ranlib
> > STRIP ?= strip
> > WIDL ?= widl
> >@@ -88,6 +89,7 @@ endif
> > ifneq ($(findstring $(origin AR),undefined default),)
> > AR := $(HOST)-ar
> > endif
> >+NM ?= $(HOST)-nm
> > RANLIB ?= $(HOST)-ranlib
> > STRIP ?= $(HOST)-strip
> > WIDL ?= $(HOST)-widl
> >--
> >2.26.2
> >
> >_______________________________________________
> >vlc-devel mailing list
> >To unsubscribe or modify your subscription options:
> >https://mailman.videolan.org/listinfo/vlc-devel
>
> --
> Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté.

> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel


More information about the vlc-devel mailing list