1
0
mirror of https://github.com/postgres/postgres.git synced 2025-10-16 17:07:43 +03:00
Commit Graph

11 Commits

Author SHA1 Message Date
Peter Eisentraut
6ae268cf28 Improve prep_buildtree
When prep_buildtree is used to prepare a build tree when the source
directory already contains another build tree, then it will produce
the directory structure of the first build tree in the second one.
For example, if there is

postgresql/
postgresql/build1/

and a new build tree postgresql/build2/ is prepared, then this will
produce

postgresql/build2/build1/

because it just copies all subdirectories of the source tree.  This is
not harmful, but it's pretty stupid and can be confusing, and it slows
down prep_buildtree when there are many build trees.

When prep_buildtree was first created, it was more common for the
build tree to be outside the source tree, in which case this is not a
problem.  But now with the arrival of meson, it appears to be more
common (and also the way it is documented in the PostgreSQL
documentation) to have the build tree inside the source tree.  (To be
clear: This change does not affect meson at all.  But it would be an
issue for example if you have a meson build tree and a configure build
tree under the same source tree.)

To fix this, change the "find" command to process only those top-level
directories that we know about (namely config, contrib, doc, src).  (I
alternatively looked for ways to ignore directories that looked like
build directories, but that seemed extremely complicated.)  With that,
we can also remove the code that ignores directories related to
source-control management.

In passing, also remove the workaround for handling prebuilt docs,
since that has been obsolete since commit 54fac0e505.

Reviewed-by: Nazir Bilal Yavuz <byavuz81@gmail.com>
Discussion: https://www.postgresql.org/message-id/flat/8b96b07f-1f48-46e9-b26e-01b2c9e4ac8d%40eisentraut.org
2025-08-04 14:06:58 +02:00
Peter Eisentraut
12bb35fc9b Fix vpath build
Skip doc/src/sgml/images/Makefile since the directory is not created.
2019-03-27 23:36:00 +01:00
Alvaro Herrera
9350824e70 find -path is not portable, so use grep -v instead.
Per previous failure of buildfarm member koi (which is no longer
failing, alas).
2010-10-25 10:04:00 -03:00
Alvaro Herrera
fde5ce4fe2 Prevent doc/src/sgml subdirs from being created, instead of deleting
them after the fact.  This is a more elegant fix for bug #5595.
2010-09-24 01:32:52 -04:00
Tom Lane
651377933e Fix remaining stray references to CVS.
These are just cosmetic and don't seem worth back-patching far.
I put them into 9.0 just because it was trivial to do so.
2010-09-22 19:51:39 -04:00
Tom Lane
39ce62b110 Don't auto-create the subdirectories holding built documentation in a VPATH
build tree.  If we actually build the docs in the VPATH tree, those dirs
will get created then; but if they're present and empty, they capture the
vpathsearch searches in "make install", preventing installation of prebuilt
docs that might exist in the source tree.  Per bug #5595 from Dmtiriy Igrishin.
Fix based on idea from Peter Eisentraut.
2010-08-26 18:34:37 +00:00
Peter Eisentraut
7505e5d0cd Make prep_buildtree harmless when run on top of the source tree.
from Ian Lance Taylor
2001-09-10 23:28:59 +00:00
Peter Eisentraut
8f3627d89b Add explicit '-print' to 'find' commands.
(partially) from Ian Lance Taylor
2001-09-10 22:25:48 +00:00
Peter Eisentraut
23e41fb7fb Add configure check for -lunix, for QNX.
Recode test for equality of source and build directory using 'test -ef',
because even using pwd you might not get equal strings.  Thanks, QNX.
2001-03-03 15:53:41 +00:00
Peter Eisentraut
6afd28c8f2 Make more portable. 2001-02-09 20:24:08 +00:00
Peter Eisentraut
805e431a38 Add support for VPATH builds, that is, building somewhere else than in the
source directory.  This involves mostly makefiles using $(srcdir) when they
might have used ".".  (Regression tests don't work with this, yet.)

Sort out usage of CPPFLAGS, CFLAGS (and CXXFLAGS).  Add "override" keyword
in most places, to preserve necessary flags even when the user overrode the
flags.
2000-10-20 21:04:27 +00:00