Robert Haas <robertmh...@gmail.com> writes: > On Sun, Jan 3, 2016 at 5:22 PM, Jim Nasby <jim.na...@bluetreble.com> wrote: >> The rule that gets executed if you do `make installcheck` with something >> using PGXS is >> >> pgxs.mk: $(pg_regress_installcheck) $(REGRESS_OPTS) $(REGRESS) >> >> where $(pg_regress_installcheck) is set in Makefile.global.in to >> > pg_regress_installcheck = $(top_builddir)/src/test/regress/pg_regress > --inputdir=$(srcdir) --bindir='$(bindir)' $(pg_regress_locale_flags) > $(EXTRA_REGRESS_OPTS) >> >> The problem here is that in a PGXS make, srcdir is set to '.'[1], and >> --inputdir is specified a second time in REGRESS_OPTS. Normally that works >> OK (for some reason ignoring what's in ./sql), but if you happen to have a >> file in your test/sql directory that matches a file in ./sql, pg_regress >> runs the first file and not the second.
> Stupid question time: why in the world would you have that? AFAICS, the pieces we supply (Makefile.global and pgxs.mk) would only specify --inputdir once. If there's a second specification being added to REGRESS_OPTS by your own Makefile, that would override the default, which seems like entirely sensible behavior. Maybe I'm misunderstanding something, but it sounds like you're saying "if I write --inputdir=test in REGRESS_OPTS, it runs the tests in test/sql not those in ./sql". Why would you not think that's expected? regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers