Why buildfarm member anchovy is failing on 8.2 and 8.3 branches
От | Tom Lane |
---|---|
Тема | Why buildfarm member anchovy is failing on 8.2 and 8.3 branches |
Дата | |
Msg-id | 3579.1314562533@sss.pgh.pa.us обсуждение исходный текст |
Ответы |
Re: Why buildfarm member anchovy is failing on 8.2 and
8.3 branches
|
Список | pgsql-hackers |
I spent a bit of time looking into $SUBJECT. The cause of the failure is that configure mistakenly decides that setproctitle and some other functions are available, when they aren't; this eventually leads to link failures of course. Now 8.2 and 8.3 use autoconf 2.59. 8.4 and up, which do not exhibit this failure, use autoconf 2.61 or later. Sure enough, there is a difference in the test program generated by the more recent autoconfs: they actually try to call the function, where the previous ones do something weird involving a function pointer comparison. I dug in the autoconf change log and found this: 2005-10-19 Paul Eggert <eggert@cs.ucla.edu> (AC_LANG_FUNC_LINK_TRY(C)): Call the function rather than simplycomparing its address. Intel's interprocedural optimizationwasoutsmarting the old heuristic. Problem reported byMikulas Patocka. Since anchovy is using the "gold" linker at -O3, it's not exactly surprising that it might be carrying out aggressive interprocedural optimizations that we're not seeing used on other platforms. The bottom line seems to be that autoconf 2.59 is seriously broken on recent toolchains. Should we try to do something about that, like migrate the 8.2 and 8.3 releases to a newer autoconf? 8.2 is close enough to EOL that I don't mind answering "no" for it, but maybe we should do that in 8.3. Comments? regards, tom lane
В списке pgsql-hackers по дате отправления: