Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 25 Sep 2011 20:41:38 +0100
From:      Chris Rees <crees@freebsd.org>
To:        Eygene Ryabinkin <rea@freebsd.org>
Cc:        cvs-ports@freebsd.org, cvs-all@freebsd.org, ports-committers@freebsd.org
Subject:   Re: cvs commit: ports/databases/postgresql84-server Makefile ports/databases/postgresql90-server Makefile ports/databases/postgresql91-server Makefile
Message-ID:  <CADLo83-=-nY0bY3xTAnZNKkKpLLLxRUdKa3Sr32rFR7ktYOH0g@mail.gmail.com>
In-Reply-To: <201109251809.p8PI97cd014112@repoman.freebsd.org>
References:  <201109251809.p8PI97cd014112@repoman.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 25 September 2011 19:09, Eygene Ryabinkin <rea@freebsd.org> wrote:
> rea =A0 =A0 =A0 =A0 2011-09-25 18:09:06 UTC
>
> =A0FreeBSD ports repository
>
> =A0Modified files:
> =A0 =A0databases/postgresql84-server Makefile
> =A0 =A0databases/postgresql90-server Makefile
> =A0 =A0databases/postgresql91-server Makefile
> =A0Log:
> =A0PostgreSQL: unbreak GSSAPI support
>
> =A0The problem with GSSAPI without Kerberos is that configure.in has
> =A0very funny logics of choosing GSSAPI libraries:
> =A0{{{
> =A0if test "$with_gssapi" =3D yes ; then
> =A0 =A0if test "$PORTNAME" !=3D "win32"; then
> =A0 =A0 =A0AC_SEARCH_LIBS(gss_init_sec_context, [gssapi_krb5 gss 'gssapi =
-lkrb5 -lcrypto'], [],
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0[A=
C_MSG_ERROR([could not find function 'gss_init_sec_context' required for GS=
SAPI])])
> =A0 =A0else
> =A0 =A0 =A0LIBS=3D"$LIBS -lgssapi32"
> =A0 =A0fi
> =A0fi
> =A0}}}
>
> =A0This makes configure to happily choose -lgssapi_krb5 when the system
> =A0has Kerberos support (NO_KERBEROS is absent), but ld's '--as-needed'
> =A0will throw this library away when no Kerberos functions are used and
> =A0linker won't produce 'postgres' binary whining about unresolved
> =A0symbols:
> =A0{{{
> =A0cc -O2 -pipe -fno-strict-aliasing -Wall -Wmissing-prototypes \
> =A0-Wpointer-arith -Wdeclaration-after-statement -Wendif-labels \
> =A0-fno-strict-aliasing -fwrapv -L../../src/port -L/usr/local/lib \
> =A0-rpath=3D/usr/lib:/usr/local/lib -L/usr/local/lib =A0-L/usr/local/lib =
\
> =A0-Wl,--as-needed -Wl,-R'/usr/local/lib' -Wl,-export-dynamic \
> =A0[... a bunch of *.o files was stripped ...]
> =A0../../src/timezone/pgtz.o ../../src/port/libpgport_srv.a -lintl -lssl =
\
> =A0-lcrypto -lgssapi_krb5 -lcrypt -lm -o postgres
> =A0libpq/auth.o: In function `pg_GSS_error':
> =A0auth.c:(.text+0x6e): undefined reference to `gss_display_status'
> =A0auth.c:(.text+0x8e): undefined reference to `gss_release_buffer'
> =A0auth.c:(.text+0xc5): undefined reference to `gss_display_status'
> =A0auth.c:(.text+0xe5): undefined reference to `gss_release_buffer'
> =A0libpq/auth.o: In function `ClientAuthentication':
> =A0auth.c:(.text+0x82d): undefined reference to `gss_delete_sec_context'
> =A0auth.c:(.text+0x941): undefined reference to `gss_accept_sec_context'
> =A0auth.c:(.text+0x9f1): undefined reference to `gss_release_buffer'
> =A0auth.c:(.text+0xaf3): undefined reference to `gss_release_cred'
> =A0auth.c:(.text+0xb10): undefined reference to `gss_display_name'
> =A0auth.c:(.text+0xbc8): undefined reference to `gss_release_buffer'
> =A0auth.c:(.text+0x10b0): undefined reference to `gss_release_buffer'
> =A0auth.c:(.text+0x111e): undefined reference to `gss_release_buffer'
> =A0libpq/pqcomm.o: In function `pq_close':
> =A0pqcomm.c:(.text+0x105a): undefined reference to `gss_delete_sec_contex=
t'
> =A0pqcomm.c:(.text+0x107d): undefined reference to `gss_release_cred'
> =A0gmake: *** [postgres] Error 1
> =A0}}}
>
> =A0Also, ports for PostgreSQL 8.4 and 9.0 had their <bsd.port.pre.mk>
> =A0misplaced: OPTIONS came after it, so WITH_/WITHOUT_ knobs will not
> =A0be really activated.
>
> =A0PR: 160050 =A0http://www.FreeBSD.org/cgi/query-pr.cgi?pr=3D160050
> =A0Feature safe: yes
> =A0Approved by: maintainer timeout (1 month)
>
> =A0Revision =A0Changes =A0 =A0Path
> =A01.230 =A0 =A0 +8 -4 =A0 =A0 =A0ports/databases/postgresql84-server/Mak=
efile
> =A01.224 =A0 =A0 +8 -4 =A0 =A0 =A0ports/databases/postgresql90-server/Mak=
efile
> =A01.226 =A0 =A0 +7 -0 =A0 =A0 =A0ports/databases/postgresql91-server/Mak=
efile

Oops, it looks like this is the INDEX-breaking commit.

If you've discovered this already, sorry to nag.

Chris



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CADLo83-=-nY0bY3xTAnZNKkKpLLLxRUdKa3Sr32rFR7ktYOH0g>