Re: m4-common


On Fri, Feb 20, 2015, at 13:56, Philip Withnall wrote:
That’s excellent. It potentially means we can remove the advice to add
AX_REQUIRE_DEFINED([YELP_HELP_INIT]) (etc.), since that’s now redundant
for tarball builds. For git builds, we could assume JHBuild will handle
this? That pattern is still useful for non-JHBuild git builds though, so
I’m on the fence.

fwiw, I think the checking is still useful.  jhbuild isn't the only
place where people ever try to build our modules from git, nor is it a
flawless system that is always fully in-sync with itself.

AX_REQUIRE_DEFINED, of course is very very simple:

  m4_ifndef([$1], [m4_fatal([macro ]$1[ is not defined; is a m4 file

so we could just write things like:

m4_ifndef([GLIB_GSETTINGS] [m4_fatal([gsettings automake support is
m4_ifndef([PKG_CHECK_MODULES] [m4_fatal([pkg-config automake support is
m4_ifndef([GTK_DOC_CHECK] [m4_fatal([gtk-doc automake support is

Another idea is that we could expand AX_REQUIRE_DEFINED to take multiple
macro names, and then write this:

m4_ifndef([AX_REQUIRE_DEFINED] [m4_fatal([Required m4 macros are

which, at only two lines, manages to be completely foolproof against
missing macros (of any kind).

I guess m4-common should also include a README which documents this,
plus the reason for m4-common existing as a way to centralise
downloading of the autoconf-archive macros we use.

OK.  Will do that.

Would it also be worthwhile adding a dist-hook which causes dist to fail
for m4-common, to make this really obvious?

Sure.  I can do that too.

Super, looking forward to it.

Both of these are done and the result is sitting in:

I think we're probably just about ready to put this in and
add it to jhbuild.

Does anyone have any objections to that?


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]