Lists: | pgsql-committerspgsql-hackers |
---|
From: | petere(at)postgresql(dot)org (Peter Eisentraut) |
---|---|
To: | pgsql-committers(at)postgresql(dot)org |
Subject: | pgsql: Link postgres from all object files at once, to avoid the |
Date: | 2008-02-25 17:55:42 |
Message-ID: | 20080225175542.9FF5A754108@cvs.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-committers pgsql-hackers |
Log Message:
-----------
Link postgres from all object files at once, to avoid the error-prone
SUBSYS.o step and allow for better optimization by the linker.
Instead of partial linking into SUBSYS.o, the list of object files is
assembled in objfiles.txt files that are expanded when the final
linking is done.
Because we are not yet sure how long command lines different platforms
can handle, the old way of linking is still available, by defining the
make variable PARTIAL_LINKING (e.g., make all PARTIAL_LINKING=1). If
we determine that this is necessary for some platforms, then we will
document this in a more prominent place.
Modified Files:
--------------
pgsql/src/backend:
Makefile (r1.125 -> r1.126)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/Makefile?r1=1.125&r2=1.126)
common.mk (r1.1 -> r1.2)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/common.mk?r1=1.1&r2=1.2)
From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Peter Eisentraut <peter_e(at)gmx(dot)net> |
Cc: | pgsql-committers(at)postgresql(dot)org |
Subject: | Re: pgsql: Link postgres from all object files at once, to avoid the |
Date: | 2008-02-26 02:21:34 |
Message-ID: | 20705.1203992494@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-committers pgsql-hackers |
petere(at)postgresql(dot)org (Peter Eisentraut) writes:
> Instead of partial linking into SUBSYS.o, the list of object files is
> assembled in objfiles.txt files that are expanded when the final
> linking is done.
BTW, why does this patch force objfiles.txt to be regenerated every time
any individual .o file is rebuilt? Surely it need only depend on the
specific Makefile (and maybe Makefile.global).
I find the current behavior kind of annoying because the echo command
occupies more than a full window in some subdirectories (eg utils/adt),
making it necessary to scroll back to see whether one's recompile of a
couple of modified files generated any warnings. If the dependencies
need to stay as they are, maybe we could avoid the annoyance by having
make not print the echo command.
regards, tom lane
From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Peter Eisentraut <peter_e(at)gmx(dot)net> |
Cc: | pgsql-committers(at)postgresql(dot)org |
Subject: | Re: pgsql: Link postgres from all object files at once, to avoid the |
Date: | 2008-02-26 02:39:27 |
Message-ID: | 21523.1203993567@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-committers pgsql-hackers |
Hm, just noticed another little annoyance: CVS is going to complain about
the objfiles.txt files unless we add a .cvsignore entry to every last
subdirectory of the backend. That seems like a lot of maintenance
tedium. I wonder if there's another way, such as using a file name that
CVS is already programmed to ignore.
regards, tom lane
From: | "D'Arcy J(dot)M(dot) Cain" <darcy(at)druid(dot)net> |
---|---|
To: | pgsql-hackers(at)postgresql(dot)org |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Subject: | Re: [COMMITTERS] pgsql: Link postgres from all object files at once, to avoid the |
Date: | 2008-02-26 02:42:44 |
Message-ID: | 20080225214244.3010cd6f.darcy@druid.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-committers pgsql-hackers |
On Mon, 25 Feb 2008 21:39:27 -0500
Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> Hm, just noticed another little annoyance: CVS is going to complain about
> the objfiles.txt files unless we add a .cvsignore entry to every last
> subdirectory of the backend. That seems like a lot of maintenance
> tedium. I wonder if there's another way, such as using a file name that
> CVS is already programmed to ignore.
Why not just add it to CVSROOT/cvsignore?
--
D'Arcy J.M. Cain <darcy(at)druid(dot)net> | Democracy is three wolves
http://www.druid.net/darcy/ | and a sheep voting on
+1 416 425 1212 (DoD#0082) (eNTP) | what's for dinner.
From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | "D'Arcy J(dot)M(dot) Cain" <darcy(at)druid(dot)net> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: [COMMITTERS] pgsql: Link postgres from all object files at once, to avoid the |
Date: | 2008-02-26 02:59:48 |
Message-ID: | 22419.1203994788@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-committers pgsql-hackers |
"D'Arcy J.M. Cain" <darcy(at)druid(dot)net> writes:
> On Mon, 25 Feb 2008 21:39:27 -0500
> Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> Hm, just noticed another little annoyance: CVS is going to complain about
>> the objfiles.txt files unless we add a .cvsignore entry to every last
>> subdirectory of the backend. That seems like a lot of maintenance
>> tedium. I wonder if there's another way, such as using a file name that
>> CVS is already programmed to ignore.
> Why not just add it to CVSROOT/cvsignore?
Shows you how little I know about CVS repository administration ;-)
Yeah, that sounds like a simple fix.
regards, tom lane
From: | Peter Eisentraut <peter_e(at)gmx(dot)net> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: [COMMITTERS] pgsql: Link postgres from all object files at once, to avoid the |
Date: | 2008-02-26 06:36:35 |
Message-ID: | 200802260736.36406.peter_e@gmx.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-committers pgsql-hackers |
Tom Lane wrote:
> Hm, just noticed another little annoyance: CVS is going to complain about
> the objfiles.txt files unless we add a .cvsignore entry to every last
> subdirectory of the backend.
Complain how? Why should it complain more or less than about the SUBSYS.o
files?
--
Peter Eisentraut
http://developer.postgresql.org/~petere/
From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Peter Eisentraut <peter_e(at)gmx(dot)net> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: [COMMITTERS] pgsql: Link postgres from all object files at once, to avoid the |
Date: | 2008-02-26 06:38:45 |
Message-ID: | 25900.1204007925@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-committers pgsql-hackers |
Peter Eisentraut <peter_e(at)gmx(dot)net> writes:
> Tom Lane wrote:
>> Hm, just noticed another little annoyance: CVS is going to complain about
>> the objfiles.txt files unless we add a .cvsignore entry to every last
>> subdirectory of the backend.
> Complain how?
Try a "cvs diff" or "cvs update" while these files are present.
> Why should it complain more or less than about the SUBSYS.o
> files?
It has a hard-wired rule not to complain about files named *.o.
regards, tom lane
From: | Peter Eisentraut <peter_e(at)gmx(dot)net> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: [COMMITTERS] pgsql: Link postgres from all object files at once, to avoid the |
Date: | 2008-02-26 10:22:58 |
Message-ID: | 200802261122.59012.peter_e@gmx.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-committers pgsql-hackers |
Am Dienstag, 26. Februar 2008 schrieb Tom Lane:
> > Why should it complain more or less than about the SUBSYS.o
> > files?
>
> It has a hard-wired rule not to complain about files named *.o.
Well, we could name the output file SUBSYS.o if that is not too confusing. :)
--
Peter Eisentraut
http://developer.postgresql.org/~petere/
From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Peter Eisentraut <peter_e(at)gmx(dot)net> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: [COMMITTERS] pgsql: Link postgres from all object files at once, to avoid the |
Date: | 2008-02-26 15:12:04 |
Message-ID: | 2402.1204038724@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-committers pgsql-hackers |
Peter Eisentraut <peter_e(at)gmx(dot)net> writes:
> Am Dienstag, 26. Februar 2008 schrieb Tom Lane:
>>> Why should it complain more or less than about the SUBSYS.o
>>> files?
>>
>> It has a hard-wired rule not to complain about files named *.o.
> Well, we could name the output file SUBSYS.o if that is not too confusing. :)
Yeah, it probably is. D'Arcy's suggestion of modifying our
CVSROOT/cvsignore file seems better.
regards, tom lane
From: | Andrew Dunstan <andrew(at)dunslane(dot)net> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Peter Eisentraut <peter_e(at)gmx(dot)net>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: [COMMITTERS] pgsql: Link postgres from all object files at once, to avoid the |
Date: | 2008-02-26 15:31:40 |
Message-ID: | 47C430DC.3090403@dunslane.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-committers pgsql-hackers |
Tom Lane wrote:
> Peter Eisentraut <peter_e(at)gmx(dot)net> writes:
>
>> Am Dienstag, 26. Februar 2008 schrieb Tom Lane:
>>
>>>> Why should it complain more or less than about the SUBSYS.o
>>>> files?
>>>>
>>> It has a hard-wired rule not to complain about files named *.o.
>>>
>
>
>> Well, we could name the output file SUBSYS.o if that is not too confusing. :)
>>
>
> Yeah, it probably is. D'Arcy's suggestion of modifying our
> CVSROOT/cvsignore file seems better.
>
>
+1. Calling it something like foo.o when it isn't an object file would
be horrible. This should be a simple one-off operation.
cheers
andrew