Re: contrib Makefile's and OS X

From: Adam Witney <awitney(at)sghms(dot)ac(dot)uk>
To: Joe Conway <mail(at)joeconway(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: contrib Makefile's and OS X
Date: 2003-02-21 13:50:59
Message-ID: BA7BDF43.1277C%a.witney@sghms.ac.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

PL/R compiles and installs ok on my OS X 10.2.4, the corresponding line is

gcc -traditional-cpp -g -O2 -Wall -Wmissing-prototypes
-Wmissing-declarations -flat_namespace -bundle -undefined suppress plr.o
pg_conversion.o pg_backend_support.o pg_userfuncs.o pg_rsupport.o -L/sw/lib
-L/sw/lib/R/bin -lR -o libplr.so.0.0

adam

> I've written PL/R to make use of the contrib build system, and modelled
> its Makefile after other contrib modules. One user who tried installing
> PL/R under OS X sent me this:
>
> The makefile does
>
> gcc -traditional-cpp -g -O2 -Wall -Wmissing-prototypes
> -Wmissing-declarations -fno-common -install_name
> /usr/local/pgsql/lib/libplr.0.dylib -dynamiclib plr.o
> pg_conversion.o pg_backend_support.o pg_userfuncs.o pg_rsupport.o
> -L../../src/interfaces/libpq -L/usr/local/lib/R/bin -lR -o
> libplr.0.0.dylib
>
> In OS X this should be
>
> gcc -traditional-cpp -g -O2 -Wall -Wmissing-prototypes
> -Wmissing-declarations -fno-common -bundle -flat_namespace -undefined
> suppress plr.o pg_conversion.o pg_backend_support.o pg_userfuncs.o
> pg_rsupport.o -L../../src/interfaces/libpq -L/usr/local/lib/R/bin -lR
> -o plr.so
>
> Below is the Makefile. The key problem is that I need to get a "bundle"
> built instead of a "dynamiclib", or so I am told.
>
> Any idea what I'm doing wrong?
>
> Thanks,
>
> Joe
>
>
> 8<-------------------------------------
> r_libdir = ${R_HOME}/bin
> r_includespec = ${R_HOME}/include
>
> subdir = contrib/plr
> top_builddir = ../..
> include $(top_builddir)/src/Makefile.global
>
> override CPPFLAGS := -I$(srcdir) -I$(r_includespec) $(CPPFLAGS)
> override CPPFLAGS += -DPKGLIBDIR=\"$(pkglibdir)\" -DDLSUFFIX=\"$(DLSUFFIX)\"
> rpath :=
>
> MODULE_big := plr
> PG_CPPFLAGS := -I$(r_includespec)
> SRCS += plr.c pg_conversion.c pg_backend_support.c
> pg_userfuncs.c pg_rsupport.c
> OBJS := $(SRCS:.c=.o)
> SHLIB_LINK := -L$(r_libdir) -lR
>
> DATA_built := plr.sql
> DOCS := README.plr
> REGRESS := plr
> EXTRA_CLEAN := doc/HTML.index
>
> include $(top_srcdir)/contrib/contrib-global.mk
> 8<-------------------------------------
>
>
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: you can get off all lists at once with the unregister command
> (send "unregister YourEmailAddressHere" to majordomo(at)postgresql(dot)org)

--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Joe Conway 2003-02-21 14:56:15 Re: contrib Makefile's and OS X
Previous Message Christoph Haller 2003-02-21 12:05:30 ecpg vs. libpq