Re: configure in snapshout == configure.in

From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Zeugswetter Andreas SB <ZeugswetterA(at)wien(dot)spardat(dot)at>, <pgsql-hackers(at)postgreSQL(dot)org>
Subject: Re: configure in snapshout == configure.in
Date: 2000-12-27 18:44:38
Message-ID: Pine.LNX.4.30.0012271924040.1006-100000@peter.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Tom Lane writes:

> Last week I tried to do a "make clean" in some subdirectory that's
> not cleaned by a toplevel clean -- I think it was doc/src/sgml, but it
> might have been a contrib dir -- and make went absolutely nuts. When
> the dust settled I had a toplevel configure file that was identical to
> configure.in, just like you describe, and I couldn't do anything because
> make kept trying to re-execute configure before it would do anything else.

It's in contrib/rserv/Makefile

%: %.in
sed -e "s:_OBJWD_:$(libdir)/contrib:g" \
-e "s:_DLSUFFIX_:$(DLSUFFIX):g" \
-e "s:@SQLDIR@:$(libdir)/contrib:g" \
-e "s:@BINDIR@:$(bindir):g" \
-e "s:@LIBDIR@:$(libdir)/contrib:g" < $< > $@
chmod 775 $@

which also triggers in src/Makefile.global

$(top_builddir)/config.status: $(top_srcdir)/configure
cd $(top_builddir) && ./config.status --recheck

when configure.in is older than configure, which is not all that unlikely.

I guess the rule in rserv's makefile needs to be qualified better.

> I've seen some other bizarre behavior from make lately, like failing to
> rebuild utils/SUBSYS.o when some of the utils subdirectories contained
> newer SUBSYS.o files. Again, hard to replicate, but I've seen it.
> I'm starting to wonder if our spiffy new makefiles are stressing any
> buggy areas of gmake...

I'm aware of that problem. It's pretty easy to replicate actually, if you
touch a file two or more directories deep under src/backend you will get
an incomplete build. I'm thinking that we should convert the
subdirectories' rules for building their subdirectories back to a straigh
for-loop and not the cuteness that the backend/Makefile tries to do to get
parallel make's working efficiently. Eventually the solution would be to
put all the rules in one makefile and not rely on recursion at all, but
that's for another day's debate.

> FWIW, I'm running GNU Make version 3.79.1, which is the latest release
> last I checked.

... but not necessarily the best. :-(

--
Peter Eisentraut peter_e(at)gmx(dot)net http://yi.org/peter-e/

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Adam Lang 2000-12-27 18:46:44 Re: PHP and PostgreSQL
Previous Message jmoschet 2000-12-27 17:41:01 Re: Permissions on Stored Procedures ==> current_user