Обсуждение: plpgsql is not ready for prime time
... it does not build on HPUX, nor on any other platform that requires
specialized switches to build shared libraries. I recommend the author
consult the makefile for libpq, and transpose the necessary fooling
around into plpgsql. (On HPUX it fails for lack of -fPIC in the compile
commands for the pl/plpgsql/src subdirectory; there might also be
problems in the link command, but the compile commands are certainly
wrong.)
We have enough different shared libraries now that it'd be a good idea
to try to eliminate most of that cruft from the individual module
makefiles, replacing it with definitions made in the port makefiles.
But it's a bit too late in the 6.4 beta cycle to try to do that for 6.4,
I think --- the testing problem looms too large. Something for next time.
BTW there is also a configuration check that needs to be applied: the
pl/tcl subdirectory should be built only if a *shared library* version
of Tcl is available. I happen to have only a static version of libtcl.a
installed, which is fine for pgtclsh, but pl/tcl tries to link with it
and falls over...
If this stuff can't be fixed properly before 6.4 release, I suggest
making plpgsql an optional component that is only built if suitable
switches are provided to configure.
regards, tom lane
> We have enough different shared libraries now that it'd be a good idea > to try to eliminate most of that cruft from the individual module > makefiles, replacing it with definitions made in the port makefiles. > But it's a bit too late in the 6.4 beta cycle to try to do that for 6.4, > I think --- the testing problem looms too large. Something for next time. I had a patch to do just this earlier this year for 6.4, but I changed jobs before I could submit it, then other patches were applied that made my patch fail. I just finally got access to a machine to redo my patch, but it wasn't in time for 6.4 beta. I will have it in the first month or so after 6.4 is released... darrenk
Tom Lane <tgl@sss.pgh.pa.us> wrote: > ... it does not build on HPUX, nor on any other platform that requires > specialized switches to build shared libraries. I recommend the author > consult the makefile for libpq, and transpose the necessary fooling > around into plpgsql. (On HPUX it fails for lack of -fPIC in the compile > commands for the pl/plpgsql/src subdirectory; there might also be > problems in the link command, but the compile commands are certainly > wrong.) I have made change to configure/configure.in and added a Makefile.in to help with the problem (I had problems compiling for UnixWare). I will be testing [the UnixWare part of] the patches over the new few days. I will submit the after I complete prlimiary testing. I will also mail the patch to anyone else who would like to test for a specific port. > We have enough different shared libraries now that it'd be a good idea > to try to eliminate most of that cruft from the individual module > makefiles, replacing it with definitions made in the port makefiles. > But it's a bit too late in the 6.4 beta cycle to try to do that for 6.4, > I think --- the testing problem looms too large. Something for next time. I aggree that the shared library handling needs to be standardized and the port specific information moved to the port specific Makefile. > > BTW there is also a configuration check that needs to be applied: the > pl/tcl subdirectory should be built only if a *shared library* version > of Tcl is available. I happen to have only a static version of libtcl.a > installed, which is fine for pgtclsh, but pl/tcl tries to link with it > and falls over... Hmmmm.... I don't now autoconf well enough (yet) to handle this change. > [...] > regards, tom lane > -- ____ | Billy G. Allie | Domain....: Bill.Allie@mug.org | /| | 7436 Hartwell | Compuserve: 76337,2061 |-/-|----- | Dearborn, MI 48126| MSN.......: B_G_Allie@email.msn.com |/ |LLIE | (313) 582-1540 |
Billy G. Allie wrote:
>
> Tom Lane <tgl@sss.pgh.pa.us> wrote:
> > ... it does not build on HPUX, nor on any other platform that requires
> > specialized switches to build shared libraries. I recommend the author
> > consult the makefile for libpq, and transpose the necessary fooling
> > around into plpgsql. (On HPUX it fails for lack of -fPIC in the compile
> > commands for the pl/plpgsql/src subdirectory; there might also be
> > problems in the link command, but the compile commands are certainly
> > wrong.)
>
> I have made change to configure/configure.in and added a Makefile.in to help
> with the problem (I had problems compiling for UnixWare). I will be testing
> [the UnixWare part of] the patches over the new few days. I will submit the
> after I complete prlimiary testing. I will also mail the patch to anyone else
> who would like to test for a specific port.
>
> > We have enough different shared libraries now that it'd be a good idea
> > to try to eliminate most of that cruft from the individual module
> > makefiles, replacing it with definitions made in the port makefiles.
> > But it's a bit too late in the 6.4 beta cycle to try to do that for 6.4,
> > I think --- the testing problem looms too large. Something for next time.
>
> I aggree that the shared library handling needs to be standardized and the
> port specific information moved to the port specific Makefile.
>
> >
> > BTW there is also a configuration check that needs to be applied: the
> > pl/tcl subdirectory should be built only if a *shared library* version
> > of Tcl is available. I happen to have only a static version of libtcl.a
> > installed, which is fine for pgtclsh, but pl/tcl tries to link with it
> > and falls over...
>
> Hmmmm.... I don't now autoconf well enough (yet) to handle this change.
>
I'd really appreciated to have PL/pgSQL installed in
template1 with the 6.4 release. But I see that the problems
we have with the make process of shared libraries is too much
trouble that close to release.
Since PL/Tcl also causes trouble let's put both into 6.5 and
don't delay 6.4 longer than required for the other fixes.
Jan
--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#======================================== jwieck@debis.com (Jan Wieck) #