[vlc-devel] [PATCH v2 09/13] contrib: add an extract phase to extract all the sources that will be built

Alexandre Janniaux ajanni at videolabs.io
Fri Jul 10 09:43:37 CEST 2020


Hi,

On Fri, Jul 10, 2020 at 08:54:48AM +0200, Steve Lhomme wrote:
> On 2020-07-09 18:37, Alexandre Janniaux wrote:
> > Hi,
> >
> > I'm ok with having the new target, since it's not mandatory
> > to use it, but not to have it in the default contrib
> > pipeline too (in later patch).
> >
> > It can indeed be useful in many cases involving PDB
> > debugging of releases.
> >
> > The commit message should probably have the mention that in
> > development scenario, it's expected to have out-of-tree
> > dependency in its own VCS and use PKG_CONFIG_PATH though
> > to not confuse future people.
>
> Indeed, PKG_CONFIG_PATH might influence the packages extracted. In the
> binary builds we distribute (windows, snap, mac) it shouldn't be an issue
> since we build everything from scratch. In the unlikely event the user
> trying to get the sources have some dependency packages in his/her
> environment we can tell them to unset PKG_CONFIG_PATH

I agree, I follow this more conservative approach regarding
PKG_CONFIG_PATH configuration:

The user is responsible for its own environment, we don't want to
write code to handle cases the environment is incorrect (except
maybe checking that tools are present, for example).

If the user has tools in its PATH or libraries in a PKG_CONFIG_PATH
variable, it should, imho, be supposed to be by choice and not
by oversightness, especially given the defaults don't have this.

Otherwise, we would write additional code that match an exact
environment but would break in many other configurations, and
in my experience, especially in cross-compilation scenario. See
the xcode-cross situation for example.

Regards,
--
Alexandre Janniaux
Videolabs

>
> > Regards,
> > --
> > Alexandre Janniaux
> > Videolabs
> >
> > On Tue, Jul 07, 2020 at 08:29:30AM +0200, Steve Lhomme wrote:
> > > This is convenient for Windows builds with PDB. It allows extracting all
> > > the sources to see the debugged sources without having to build them.
> > > ---
> > >   contrib/src/help.txt | 1 +
> > >   contrib/src/main.mak | 3 ++-
> > >   2 files changed, 3 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/contrib/src/help.txt b/contrib/src/help.txt
> > > index d64ca8ef2c8..d2bd17ee5ea 100644
> > > --- a/contrib/src/help.txt
> > > +++ b/contrib/src/help.txt
> > > @@ -4,6 +4,7 @@ Other targets:
> > >    * make install      same as "make"
> > >    * make prebuilt     fetch and install prebuilt binaries
> > >    * make list         list packages
> > > + * make extract      extract required source tarballs
> > >    * make fetch        fetch required source tarballs
> > >    * make fetch-all    fetch all source tarballs
> > >    * make distclean    clean everything and undo bootstrap
> > > diff --git a/contrib/src/main.mak b/contrib/src/main.mak
> > > index 1df4e52bd2f..6cf9037c92d 100644
> > > --- a/contrib/src/main.mak
> > > +++ b/contrib/src/main.mak
> > > @@ -480,6 +480,7 @@ PKGS := $(sort $(PKGS_MANUAL) $(PKGS_DEPS))
> > >
> > >   fetch: $(PKGS:%=.sum-%)
> > >   fetch-all: $(PKGS_ALL:%=.sum-%)
> > > +extract: $(PKGS)
> > >   install: $(PKGS:%=.%)
> > >
> > >   mostlyclean:
> > > @@ -546,7 +547,7 @@ list:
> > >   help:
> > >   	@cat $(SRC)/help.txt
> > >
> > > -.PHONY: all fetch fetch-all install mostlyclean clean distclean package list help prebuilt
> > > +.PHONY: all fetch fetch-all extract install mostlyclean clean distclean package list help prebuilt
> > >
> > >   CMAKE_SYSTEM_NAME =
> > >   ifdef HAVE_WIN32
> > > --
> > > 2.26.2
> > >
> > > _______________________________________________
> > > vlc-devel mailing list
> > > To unsubscribe or modify your subscription options:
> > > https://mailman.videolan.org/listinfo/vlc-devel
> > _______________________________________________
> > vlc-devel mailing list
> > To unsubscribe or modify your subscription options:
> > https://mailman.videolan.org/listinfo/vlc-devel
> >
> _______________________________________________
> 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