Re: Help needed to complile postgresql on Mac.

Lists: pgsql-hackerspgsql-ports
From: "Brian A(dot) Seklecki" <lavalamp(at)spiritual-machines(dot)org>
To: FC <qqa-1a89(at)myamail(dot)com>
Cc: netbsd-help(at)netbsd(dot)org, pgsql-ports(at)postgresql(dot)org
Subject: Re: Help needed to complile postgresql on Mac.
Date: 2005-10-09 14:57:49
Message-ID: 1128869869.3294.53.camel@compulsion
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers pgsql-ports

On Sun, 2005-10-09 at 10:36, Brian A. Seklecki wrote:
> Is libpq.dylib getting built? Is it there and just not being found? If
> so, you may need the LDFLAGS/CFLAGS settings from:
>
> http://darwinports.opendarwin.org/darwinports/dports/databases/postgresql8/Portfile
>
> If it's not being built, capture a log with 'script' and submit a
> send-pr(1)
>

Also some interesting things at:

http://cvs.sourceforge.net/viewcvs.py/fink/dists/10.4-transitional/unstable/main/finkinfo/database/postgresql80-unified.patch?rev=1.1&view=auto

Whatever happens, make sure the fix gets fed back upstream to the
PostgreSQL source tree. Effectively, pkgsrc, fink, and darwinports are
overlapping in efforts here..

~BAS

--- postgresql-8.0.2/src/Makefile.shlib Sat Nov 20 16:13:04 2004+++
postgresql-8.0.2-new/src/Makefile.shlib Mon Apr 11 21:18:41 2005@@
-101,11 +101,11 @@ ifeq ($(DLTYPE), library)
# linkable library
DLSUFFIX := .dylib
- LINK.shared = $(COMPILER) -dynamiclib -install_name $(libdir)/lib$(NAME).$(SO_MAJOR_VERSION)$(DLSUFFIX) $(version_link) -multiply_defined suppress+ LINK.shared = $(CXX) $(CFLAGS) -dynamiclib -install_name $(libdir)/lib$(NAME).$(SO_MAJOR_VERSION)$(DLSUFFIX) $(version_link) -multiply_defined suppress else
# loadable module (default case)
DLSUFFIX := .so
- LINK.shared = $(COMPILER) -bundle+ LINK.shared = $(CXX) $(CFLAGS) -bundle endif
shlib = lib$(NAME).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)$(DLSUFFIX)
shlib_major = lib$(NAME).$(SO_MAJOR_VERSION)$(DLSUFFIX)


From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: "Brian A(dot) Seklecki" <lavalamp(at)spiritual-machines(dot)org>
Cc: FC <qqa-1a89(at)myamail(dot)com>, netbsd-help(at)netbsd(dot)org, pgsql-ports(at)postgresql(dot)org, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Darwin compile fixes
Date: 2005-10-13 04:02:56
Message-ID: 200510130402.j9D42uc14608@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers pgsql-ports

Brian A. Seklecki wrote:
> On Sun, 2005-10-09 at 10:36, Brian A. Seklecki wrote:
> > Is libpq.dylib getting built? Is it there and just not being found? If
> > so, you may need the LDFLAGS/CFLAGS settings from:
> >
> > http://darwinports.opendarwin.org/darwinports/dports/databases/postgresql8/Portfile
> >
> > If it's not being built, capture a log with 'script' and submit a
> > send-pr(1)
> >
>
>
> Also some interesting things at:

Attached is a cleaned up version of the patch (without wrapping). The
change is to use "$(CXX) $(CFLAGS)" instead of $(COMPILER). Does this
change break OS/X?

Also, we use some weird code in main.c:

/*
* Now dispatch to one of PostmasterMain, PostgresMain, GucInfoMain,
* SubPostmasterMain, or BootstrapMain depending on the program name
* (and possibly first argument) we were called with. The lack of
* consistency here is historical.
*/
len = strlen(argv[0]);

if ((len >= 10 && strcmp(argv[0] + len - 10, "postmaster") == 0)
#ifdef WIN32
|| (len >= 14 && strcmp(argv[0] + len - 14, "postmaster.exe") ==
0)
#endif

I think we should be using get_progname() here.

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

Attachment Content-Type Size
unknown_filename text/plain 1.7 KB

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
Cc: "Brian A(dot) Seklecki" <lavalamp(at)spiritual-machines(dot)org>, FC <qqa-1a89(at)myamail(dot)com>, netbsd-help(at)netbsd(dot)org, pgsql-ports(at)postgresql(dot)org, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [HACKERS] Darwin compile fixes
Date: 2005-10-13 04:28:56
Message-ID: 17543.1129177736@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers pgsql-ports

Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> writes:
> Attached is a cleaned up version of the patch (without wrapping). The
> change is to use "$(CXX) $(CFLAGS)" instead of $(COMPILER). Does this
> change break OS/X?

Since our configure doesn't define CXX, I'm having a hard time imagining
how it could fail to break it.

If we *did* define CXX, it would presumably point to g++, which would
also break things since our source code is not C++ clean.

Even more to the point, Darwin isn't broken now --- at least it works
fine on the powerbook I'm typing this on, and on the several OSX
machines in the buildfarm.

I would like to know what this patch is alleged to fix before even
considering applying it.

regards, tom lane


From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: "Brian A(dot) Seklecki" <lavalamp(at)spiritual-machines(dot)org>, FC <qqa-1a89(at)myamail(dot)com>, netbsd-help(at)netbsd(dot)org, pgsql-ports(at)postgresql(dot)org, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [HACKERS] Darwin compile fixes
Date: 2005-10-13 15:50:22
Message-ID: 200510131550.j9DFoMl02732@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers pgsql-ports

Tom Lane wrote:
> Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> writes:
> > Attached is a cleaned up version of the patch (without wrapping). The
> > change is to use "$(CXX) $(CFLAGS)" instead of $(COMPILER). Does this
> > change break OS/X?
>
> Since our configure doesn't define CXX, I'm having a hard time imagining
> how it could fail to break it.
>
> If we *did* define CXX, it would presumably point to g++, which would
> also break things since our source code is not C++ clean.
>
> Even more to the point, Darwin isn't broken now --- at least it works
> fine on the powerbook I'm typing this on, and on the several OSX
> machines in the buildfarm.
>
> I would like to know what this patch is alleged to fix before even
> considering applying it.

Yea, I see in Makefile.shlib:

COMPILER = $(CC) $(CFLAGS)

so the code is really changing $CC to $CXX. The big question is why
that change is required.

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