[pacman-dev] [PATCH] Add meson.build files to build with meson

Dave Reisner d at falconindy.com
Mon Oct 22 02:11:18 UTC 2018


On Mon, Oct 22, 2018 at 11:16:25AM +1000, Allan McRae wrote:
> On 22/10/18 10:03 am, Dave Reisner wrote:
> > On Mon, Oct 22, 2018 at 09:56:04AM +1000, Allan McRae wrote:
> >> On 22/10/18 8:57 am, Eli Schwartz wrote:
> >>>> Also, most projects ship prebuilt man pages. I think some GNU ones
> >>>> commit the built page to the tree, so that could be an option.
> >>
> >>> Both those things are also true about the configure and Makefile.in files...
> >>
> >> That is another good reason not to use git archive to create release
> >> tarballs.
> >>
> >> A
> > 
> > Consider that the reason we need 'make dist' and can't just use 'git
> > archive' is because autotools *requires* extra tooling around just to
> > generate the build system. This is no longer needed with meson.
> 
> Good point!  I'm not overly familiar with meson, so missed that completely.
> 
> > Pre-generating the manpages means that our substitutions are
> > invalidated. For example, someone building from the tarball with
> > --prefix=/some/where/else or no --prefix at all will have a
> > pacman.conf(5) that still claims the right path is /etc/pacman.conf
> > 
> > I understand your point about python2 vs python3, but I think that's
> > something we can work out based on a python3-based asciidoc in
> > existance.
> 
> Does the meson build script allow us to not create docs if wanted?

Yes, see the meson_options.txt as part of this patch. One can invoke
meson with -Ddoc=disabled to prevent manpages from being built.

> > What problems here would you like to see solved for the inclusion of
> > meson? That will help me focus my time spent on this.
> 
> None need solved for inclusion in the current state.  I'm just trying to
> understand what our future release process will look like.

Great!

> While we have autotools in parallel, if I run "make dist" with this
> patch, do all the needed meson files get included too?   Can we get a
> helper script to run doxygen?

No, meson.build files will not be included with the autotools-built
'make dist' tarball. It feels weird to do this. I suspect that if we
want to switch the Arch build over while this dual build-system world
exists, we should just build from a tag in the git repo.

Yes, I can add a script in build-aux to invoke doxygen. It's also
possible I could create the Doxyfile as a .in file, and generate the
right OUTPUT_DIRECTORY for invocation through the buildsys. There's
actually an upstream example of exactly this:

https://github.com/mesonbuild/meson/blob/master/test%20cases/frameworks/14%20doxygen/doc/meson.build

I'll look into options here.

> Thanks,
> Allan


More information about the pacman-dev mailing list