Re: Re: [PATCHES] patch for minor Win32 makefile bug

Поиск
Список
Период
Сортировка
От Jason Tishler
Тема Re: Re: [PATCHES] patch for minor Win32 makefile bug
Дата
Msg-id 20010404142809.U63@dothill.com
обсуждение исходный текст
Ответ на Re: Re: [PATCHES] patch for minor Win32 makefile bug  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: Re: [PATCHES] patch for minor Win32 makefile bug  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-ports
Tom,

On Wed, Apr 04, 2001 at 12:44:08AM -0400, Tom Lane wrote:
> Jason Tishler <Jason.Tishler@dothill.com> writes:
> > On Tue, Apr 03, 2001 at 06:03:45PM -0400, Tom Lane wrote:
> >> Hmm.  It seems a little bit weird (no, a lot weird) to be referencing
> >> -lpostgres for the client-side interface library builds.  I can see that
> >> the PL-language DLLs might need to reference -lpostgres during their
> >> links, but I've got severe doubts that this is a good idea anyplace
> >> else.
>
> > You are correct.  I just verified by using MS's dumpbin that none
> > of the above DLLs except for plpgsql.dll actually import any symbols
> > from libpostgres.a.  Hence, linking the client-side interface libraries
> > with libpostgres.a is superfluous.
> > However, you missed a few regression test related DLLs.  See below for
> > details.
>
> Good point; those DLLs link into the backend.
>
> Maybe Makefile.win should define FE_DLLLIBS (for frontend libraries)
> and BE_DLLLIBS (for backend libraries).  That would require any
> particular Makefile that's building a DLL to select one or the other
> to define DLLLIBS as, before it could include Makefile.shlib.  Is that
> approach good for clarity, or too much of a pain-in-the-neck?

I'm not sure that I like the above proposal, because:

    1. I'm not crazy about the name FE_DLLLIBS -- I don't think that it
       accurately represents its semantics.  (I presume that you meant
       that FE_DLLLIBS = -lcygipc -lcrypt; otherwise, I'm not grokking
       your proposal.)
    2. Then all DLL makefiles would have to define DLLLIBS, instead of
       just the exceptions.

But, to be fair, I also don't completely like my current solution because
of the

    -L$(top_builddir)/src/backend -lpostgres

littered in more that one makefile.

What about leaving DLLLIBS as defined (in Makefile.win) in my patch, but
also defining BE_DLLLIBS as follows:

    BE_DLLLIBS = -L$(top_builddir)/src/backend -lpostgres

Then one can use this definition is in src/pl/plpgsql/src/Makefile as
follows:

    DLLLIBS:= $(BE_DLLLIBS) $(DLLLIBS)

The above would also be used where ever else was necessary (e.g.,
regress.dll).

How does this proposal sound?

Thanks,
Jason
--
Jason Tishler
Director, Software Engineering       Phone: +1 (732) 264-8770 x235
Dot Hill Systems Corp.               Fax:   +1 (732) 264-8798
82 Bethany Road, Suite 7             Email: Jason.Tishler@dothill.com
Hazlet, NJ 07730 USA                 WWW:   http://www.dothill.com

В списке pgsql-ports по дате отправления:

Предыдущее
От: Jason Tishler
Дата:
Сообщение: Re: FAQ_MSWIN patch for PostgreSQL
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Re: [PATCHES] patch for minor Win32 makefile bug