Re: more dirmod CYGWIN - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: more dirmod CYGWIN
Date
Msg-id 200409102054.i8AKsHW20565@candle.pha.pa.us
Whole thread Raw
In response to Re: more dirmod CYGWIN  (Reini Urban <rurban@x-ray.at>)
Responses Re: [pgsql-hackers-win32] more dirmod CYGWIN  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: more dirmod CYGWIN  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-hackers
Well, glad we are on to real Cygwin issues at least.  I know I had
probably broken Cygwin with all the Win32 changes.  I actually thought
it would be worse.  Glad you were able to help us.

On the /contrib issue, I am not sure we even have Mingw compiling contrib.
What error are you seeing?  If I try to compile /contrib/dbsize under
Unix I don't see any -lpgport line in the compile:

    $  cd /pgtop/contrib/dbsize/
    $ gmake
    sed 's,MODULE_PATHNAME,$libdir/dbsize,g' dbsize.sql.in >dbsize.sql
    gcc -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes
    -Wmissing-declarations -O1 -Wall -Wmissing-prototypes
    -Wmissing-declarations -Wpointer-arith -Wcast-align -fpic -I.
    -I../../src/include -I/usr/local/include/readline -I/usr/contrib/include
     -c -o dbsize.o dbsize.c
    gcc -shared -o dbsize.so dbsize.o
    rm dbsize.o

Let me add that I think the whole FRONTEND flags for /port are a hack
and might need to be change before we hit 8.0 final.  They are _very_
fragile but I have not thought of a good solution yet.  It is actually
on the open items list.

---------------------------------------------------------------------------

Reini Urban wrote:
> Bruce Momjian schrieb:
> > I have applied all parts of your patch now.
>
> Thanks. Core builds and works fine now. (plperl IPC problems aside)
>
> But there's are still some more minor SHLIB glitches,
> which only affects contrib, because -lpgport is missing for various dll's.
>
> SHLIB_LINK doesn't contain the libs only the paths, because they are
> filtered out somewhere.
> But first I want to find the real cause of the problem.
> Maybe LIB is just missing a -lpgport.
>
>
> $ diff -bu src/Makefile.shlib.orig  src/Makefile.shlib
> --- src/Makefile.shlib.orig     2004-09-03 00:06:43.000000000 +0100
> +++ src/Makefile.shlib  2004-09-10 17:12:18.528655500 +0100
> @@ -216,6 +216,7 @@
>
>   ifeq ($(PORTNAME), cygwin)
>     shlib                        = $(NAME)$(DLSUFFIX)
> +  SHLIB_LINK           += -lpgport
>   endif
>
>   ifeq ($(PORTNAME), win32)
>
> $ diff -bu src/makefiles/pgxs.mk.orig src/makefiles/pgxs.mk
> --- src/makefiles/pgxs.mk.orig  2004-07-30 13:26:40.000000000 +0100
> +++ src/makefiles/pgxs.mk       2004-09-10 17:09:15.499748300 +0100
> @@ -63,7 +63,11 @@
>
>   ifdef MODULES
>   override CFLAGS += $(CFLAGS_SL)
> -SHLIB_LINK += $(BE_DLLLIBS)
> +ifeq ($(PORTNAME), cygwin)
> +  SHLIB_LINK += $(BE_DLLLIBS) $(LDFLAGS) $(LIBS) -lpgport
> +else
> +  SHLIB_LINK += $(BE_DLLLIBS)
> +endif
>   endif
>
>   ifdef PG_CPPFLAGS
>
> --
> Reini Urban
> http://xarch.tu-graz.ac.at/home/rurban/
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: you can get off all lists at once with the unregister command
>     (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)
>

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: APR 1.0 released
Next
From: Tom Lane
Date:
Subject: Re: [pgsql-hackers-win32] more dirmod CYGWIN