On 25 September 2011 20:41, Chris Rees <[email protected]> wrote: > On 25 September 2011 19:09, Eygene Ryabinkin <[email protected]> wrote: >> rea 2011-09-25 18:09:06 UTC >> >> FreeBSD ports repository >> >> Modified files: >> databases/postgresql84-server Makefile >> databases/postgresql90-server Makefile >> databases/postgresql91-server Makefile >> Log: >> PostgreSQL: unbreak GSSAPI support >> >> The problem with GSSAPI without Kerberos is that configure.in has >> very funny logics of choosing GSSAPI libraries: >> {{{ >> if test "$with_gssapi" = yes ; then >> if test "$PORTNAME" != "win32"; then >> AC_SEARCH_LIBS(gss_init_sec_context, [gssapi_krb5 gss 'gssapi -lkrb5 >> -lcrypto'], [], >> [AC_MSG_ERROR([could not find function >> 'gss_init_sec_context' required for GSSAPI])]) >> else >> LIBS="$LIBS -lgssapi32" >> fi >> fi >> }}} >> >> This makes configure to happily choose -lgssapi_krb5 when the system >> has Kerberos support (NO_KERBEROS is absent), but ld's '--as-needed' >> will throw this library away when no Kerberos functions are used and >> linker won't produce 'postgres' binary whining about unresolved >> symbols: >> {{{ >> cc -O2 -pipe -fno-strict-aliasing -Wall -Wmissing-prototypes \ >> -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels \ >> -fno-strict-aliasing -fwrapv -L../../src/port -L/usr/local/lib \ >> -rpath=/usr/lib:/usr/local/lib -L/usr/local/lib -L/usr/local/lib \ >> -Wl,--as-needed -Wl,-R'/usr/local/lib' -Wl,-export-dynamic \ >> [... a bunch of *.o files was stripped ...] >> ../../src/timezone/pgtz.o ../../src/port/libpgport_srv.a -lintl -lssl \ >> -lcrypto -lgssapi_krb5 -lcrypt -lm -o postgres >> libpq/auth.o: In function `pg_GSS_error': >> auth.c:(.text+0x6e): undefined reference to `gss_display_status' >> auth.c:(.text+0x8e): undefined reference to `gss_release_buffer' >> auth.c:(.text+0xc5): undefined reference to `gss_display_status' >> auth.c:(.text+0xe5): undefined reference to `gss_release_buffer' >> libpq/auth.o: In function `ClientAuthentication': >> auth.c:(.text+0x82d): undefined reference to `gss_delete_sec_context' >> auth.c:(.text+0x941): undefined reference to `gss_accept_sec_context' >> auth.c:(.text+0x9f1): undefined reference to `gss_release_buffer' >> auth.c:(.text+0xaf3): undefined reference to `gss_release_cred' >> auth.c:(.text+0xb10): undefined reference to `gss_display_name' >> auth.c:(.text+0xbc8): undefined reference to `gss_release_buffer' >> auth.c:(.text+0x10b0): undefined reference to `gss_release_buffer' >> auth.c:(.text+0x111e): undefined reference to `gss_release_buffer' >> libpq/pqcomm.o: In function `pq_close': >> pqcomm.c:(.text+0x105a): undefined reference to `gss_delete_sec_context' >> pqcomm.c:(.text+0x107d): undefined reference to `gss_release_cred' >> gmake: *** [postgres] Error 1 >> }}} >> >> Also, ports for PostgreSQL 8.4 and 9.0 had their <bsd.port.pre.mk> >> misplaced: OPTIONS came after it, so WITH_/WITHOUT_ knobs will not >> be really activated. >> >> PR: 160050 http://www.FreeBSD.org/cgi/query-pr.cgi?pr=160050 >> Feature safe: yes >> Approved by: maintainer timeout (1 month) >> >> Revision Changes Path >> 1.230 +8 -4 ports/databases/postgresql84-server/Makefile >> 1.224 +8 -4 ports/databases/postgresql90-server/Makefile >> 1.226 +7 -0 ports/databases/postgresql91-server/Makefile > > Oops, it looks like this is the INDEX-breaking commit. > > If you've discovered this already, sorry to nag. >
Hah, shocking timing of mine. Never mind. Chris _______________________________________________ [email protected] mailing list http://lists.freebsd.org/mailman/listinfo/cvs-all To unsubscribe, send any mail to "[email protected]"
