Re: PGXS "check" target forcing an install ?

From: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
To: PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: PGXS "check" target forcing an install ?
Date: 2015-06-23 05:31:03
Message-ID: CAB7nPqTsR5o3g-fBi6jbsVdhfPiLFWQ_0cGU5=94Rv_8W3qvFA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Jun 23, 2015 at 12:11 AM, Sandro Santilli <strk(at)keybit(dot)net> wrote:
> I've noted that upgrading from PostgreSQL 9.3 to 9.5 I'm suddenly
> unable to specify a "check" rule in the Makefile that includes the
> PGXS one. The error is:
>
> $ make check
> rm -rf ''/tmp_install
> make -C '/home/postgresql-9.5/lib/pgxs/src/makefiles/../..' DESTDIR=''/tmp_install install
> make[1]: Entering directory `/home/postgresql-9.5/lib/pgxs'
> make[1]: *** No rule to make target `install'. Stop.
> make[1]: Leaving directory `/home/postgresql-9.5/lib/pgxs'
> make: *** [temp-install] Error 2
>
> I tracked the dangerous -rf to come from Makefile.global and it's empty
> string being due to abs_top_builddir not being define in my own Makefile.
> But beside that, which I can probably fix, it doesn't sound correct
> that a "check" rule insists in finding an "install" rule.

Oops, this is a regression, and a dangerous one indeed. This is caused
by dcae5fac.

One fix is to use NO_TEMP_INSTALL=yes in Makefile.global in the
context of PGXS, like in the patch attached, this variable needing to
be set before Makefile.global is loaded. We could as well use directly
PGXS in the section "Testing", but that does not sound appealing for
Makefile.global's readability.

> I'm also
> surprised that there's no warning coming out from the "make" invocation
> given I'm defining a "check" rule myself (after inclusion).

Why? It looks perfectly normal to me to be able to define your own
check rule. That's more flexible this way.

Thoughts?
--
Michael

Attachment Content-Type Size
20150623_pgxs_check_fix.patch application/x-patch 444 bytes

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Glen Knowles 2015-06-23 06:06:56 Re: NULL passed as an argument to memcmp() in parse_func.c
Previous Message Fabien COELHO 2015-06-23 05:17:13 Re: 9.5 make world failing due to sgml tools missing