On Mon, Dec 05, 2011 at 12:22:17AM +0100, Lionel Elie Mamane wrote: > About internal PostgreSQL:
> 1) Cygwin has packages (...) that seem rather > unpatched and to be built with a rather plain "./configure && > make". (...) > 2) MacOS X, I dunno. Actually, both MacPorts and fink have new-enough PostgreSQL. So a builder can just install one of those instead of the "on-click installer" if he/she prefers. And building internal looks sane, too, from my (possibly naive) point of view: Fink fiddles a bit with LDFLAGS and CC envvers, but otherwise seems *nearly* rather plain "./configure && make". It forces gcc (rather than clang) up to 10.6 and clang after that. It calls perl -pi -e 's,-arch x86_64,,g; s,-arch i386,,g; s,-arch ppc,,g' src/Makefile.global before calling "make", and that's it. Here are the relevant parts of the fink patch: --- postgresql-9.0.4/src/Makefile.global.in 2011-04-14 23:15:53.000000000 -0400 +++ postgresql-9.0.4-new/src/Makefile.global.in 2011-07-21 11:39:12.000000000 -0400 @@ -196,7 +196,7 @@ # Compilers -CPP = @CPP@ +CPP = $(CC) -E CPPFLAGS = @CPPFLAGS@ ifdef PGXS @@ -243,7 +243,7 @@ ifdef PGXS LDFLAGS = -L$(libdir) else - LDFLAGS = -L$(top_builddir)/src/port + LDFLAGS = -L$(top_builddir)/src/port -L$(top_builddir)/src/interfaces/libpq -L$(top_builddir)/src/interfaces/ecpg/ecpglib -L$(top_builddir)/src/interfaces/ecpg/pgtypeslib -L$(top_builddir)/src/interfaces/ecpg/compatlib endif LDFLAGS += @LDFLAGS@ --- postgresql-9.0.4/src/makefiles/Makefile.darwin 2011-04-14 23:15:53.000000000 -0400 +++ postgresql-9.0.4-new/src/makefiles/Makefile.darwin 2011-07-21 11:38:27.000000000 -0400 @@ -10,4 +10,4 @@ # Rule for building a shared library from a single .o file %.so: %.o - $(CC) $(CFLAGS) $(LDFLAGS) $(LDFLAGS_SL) -bundle $(BE_DLLLIBS) -o $@ $< + $(CC) $(CFLAGS) $(LDFLAGS) $(LDFLAGS_SL) -bundle $(BE_DLLLIBS) -undefined dynamic_lookup -o $@ $< MacPorts is in the same situation. It has an ed-script patch to pg_config.h: https://trac.macports.org/browser/trunk/dports/databases/postgresql91/files/pg_config.h.ed It seems to be used only for universal builds, though. They force use of gcc rather than clang to work around a segfault. Except for that, it is "./configure && make" -- Lionel _______________________________________________ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice