[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Builds with 'configure' not at the top of srcdir
From: |
Zack Weinberg |
Subject: |
Re: Builds with 'configure' not at the top of srcdir |
Date: |
Fri, 13 Jan 2023 11:19:29 -0500 |
User-agent: |
Cyrus-JMAP/3.7.0-alpha0-1187-g678636ba0d-fm-20230113.001-g678636ba |
On Thu, Jan 12, 2023, at 9:24 PM, Eduardo Hernández wrote:
> I've been trying to separate the build system and source directory
> completely. Part of that would be to have the 'configure' script in the
> 'build' directory, away from the 'src' directory
This goes against a basic design assumption in both Automake and Autoconf: you
are expected to be making tarball releases that include the configure script
and a bunch of other generated files (aclocal.m4, config.h.in, Makefile.in if
Automake is used, etc.) That assumption goes back to an era when most software
distribution did _not_ involve direct access to the core developers' version
control system (if there even _was_ one) and when asking people to install
Automake and Autoconf (and all the stuff _they_ depend on, notably M4 and
Perl), before they could install any _other_ GNU software, would've been a
non-starter.
So, all the generated code assumes that the location of the configure script
*defines* the top level of the source tree. The `--srcdir` option is only
intended for use as a manual override when the automatic probe for the location
of the configure script doesn't work.
This design arguably could stand to be reconsidered, but it'll be a lot of work
to get to a place where you can do the thing you would like to do. Are you up
for that work?
zw