Re: pgsql: Replace our hacked version of ax_pthread.m4 with latest upstream

From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, hlinnaka(at)iki(dot)fi
Cc: pgsql-committers(at)postgresql(dot)org
Subject: Re: pgsql: Replace our hacked version of ax_pthread.m4 with latest upstream
Date: 2015-07-09 18:32:39
Message-ID: 559EBE47.9070607@gmx.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

On 7/8/15 4:39 PM, Tom Lane wrote:
> Heikki Linnakangas <hlinnaka(at)iki(dot)fi> writes:
>> I'm debugging this ATM. You're probably seeing a failure similar to
>> shearwater. The problem seems to be that the earlier autoconf tests add
>> "-lrt" to LIBS, and that somehow pulls in pthread_join() and other
>> functions, but not pthread_sigmask(), even when not compiling with -pthread.
>
>> I'll dig a bit deeper, but I think that could be fixed by moving the
>> AX_PTHREAD call in the configure script earlier, or by temporarily
>> clearing LIBS before calling it.
>
> Ah. The former sounds sensible from here.
>
> This kind of points up that I've always thought the advice at the top of
> configure.in is a tad broken:
>
> dnl 0. Initialization and options processing
> dnl 1. Programs
> dnl 2. Libraries
> dnl 3. Header files
> dnl 4. Types
> dnl 5. Structures
> dnl 6. Compiler characteristics
> dnl 7. Functions, global variables
> dnl 8. System services
>
> Why isn't "Compiler characteristics" a lot earlier in the list, certainly
> before "Libraries"?

Compiler characteristics are things like sizeof and alignof, for which
you need header files and types, for which you might need libraries.

There will surely be some complicated cases, but I think as a guideline
the order is sound.

In response to

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2015-07-09 22:50:48 pgsql: Improve documentation about array concat operator vs. underlying
Previous Message Tom Lane 2015-07-09 17:22:50 pgsql: Fix postmaster's handling of a startup-process crash.