From owner-freebsd-ports-bugs@FreeBSD.ORG Fri Apr 3 16:20:05 2009 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2BC401065673 for ; Fri, 3 Apr 2009 16:20:05 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 0421C8FC17 for ; Fri, 3 Apr 2009 16:20:05 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id n33GK46o027366 for ; Fri, 3 Apr 2009 16:20:04 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id n33GK4kU027365; Fri, 3 Apr 2009 16:20:04 GMT (envelope-from gnats) Resent-Date: Fri, 3 Apr 2009 16:20:04 GMT Resent-Message-Id: <200904031620.n33GK4kU027365@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Alex Bakhtin Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CC803106566B for ; Fri, 3 Apr 2009 16:16:33 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (www.freebsd.org [IPv6:2001:4f8:fff6::21]) by mx1.freebsd.org (Postfix) with ESMTP id B83568FC13 for ; Fri, 3 Apr 2009 16:16:33 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (localhost [127.0.0.1]) by www.freebsd.org (8.14.3/8.14.3) with ESMTP id n33GGWNL032062 for ; Fri, 3 Apr 2009 16:16:32 GMT (envelope-from nobody@www.freebsd.org) Received: (from nobody@localhost) by www.freebsd.org (8.14.3/8.14.3/Submit) id n33GGWRK032061; Fri, 3 Apr 2009 16:16:32 GMT (envelope-from nobody) Message-Id: <200904031616.n33GGWRK032061@www.freebsd.org> Date: Fri, 3 Apr 2009 16:16:32 GMT From: Alex Bakhtin To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Cc: Subject: ports/133344: net/nss_ldap fails to compile if world was installed with WITHOUT_KERBEROS=YES in /etc/src.conf X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 03 Apr 2009 16:20:05 -0000 >Number: 133344 >Category: ports >Synopsis: net/nss_ldap fails to compile if world was installed with WITHOUT_KERBEROS=YES in /etc/src.conf >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Apr 03 16:20:04 UTC 2009 >Closed-Date: >Last-Modified: >Originator: Alex Bakhtin >Release: 7.2-PRERELEASE >Organization: AMT Group >Environment: FreeBSD amtkit-CHANGEME.proactive.amt.ru 7.2-PRERELEASE FreeBSD 7.2-PRERELEASE #7: Tue Mar 31 14:52:22 MSD 2009 root@amtkit-CHANGEME.lab.amt.ru:/usr/obj/usr/src/sys/AMTKIT amd64 >Description: net/nss_ldap fails to compile if there is no KERBEROS header files installed (WITHOUT_KERBEROS=YES in /etc/src.conf). > sudo make ===> Extracting for nss_ldap-1.264_1 => MD5 Checksum OK for nss_ldap-264.tar.gz. => SHA256 Checksum OK for nss_ldap-264.tar.gz. /bin/cp /usr/ports/net/nss_ldap/files/bsdnss.c /var/ports/usr/ports/net/nss_ldap/work/nss_ldap-264 ===> Patching for nss_ldap-1.264_1 ===> Applying FreeBSD patches for nss_ldap-1.264_1 ===> nss_ldap-1.264_1 depends on executable: gmake - found ===> nss_ldap-1.264_1 depends on file: /usr/local/bin/automake-1.9 - found ===> nss_ldap-1.264_1 depends on file: /usr/local/bin/autoconf-2.62 - found ===> nss_ldap-1.264_1 depends on shared library: ldap-2.3.2 - found ===> Configuring for nss_ldap-1.264_1 autoheader-2.62: WARNING: Using auxiliary files such as `acconfig.h', `config.h.bot' autoheader-2.62: WARNING: and `config.h.top', to define templates for `config.h.in' autoheader-2.62: WARNING: is deprecated and discouraged. autoheader-2.62: autoheader-2.62: WARNING: Using the third argument of `AC_DEFINE' and autoheader-2.62: WARNING: `AC_DEFINE_UNQUOTED' allows one to define a template without autoheader-2.62: WARNING: `acconfig.h': autoheader-2.62: autoheader-2.62: WARNING: AC_DEFINE([NEED_FUNC_MAIN], 1, autoheader-2.62: [Define if a function `main' is needed.]) autoheader-2.62: autoheader-2.62: WARNING: More sophisticated templates can also be produced, see the autoheader-2.62: WARNING: documentation. checking build system type... amd64-portbld-freebsd7.2 checking host system type... amd64-portbld-freebsd7.2 checking target system type... amd64-portbld-freebsd7.2 checking for a BSD-compatible install... /usr/bin/install -c -o root -g wheel checking whether build environment is sane... yes checking for gawk... no checking for mawk... no checking for nawk... nawk checking whether gmake sets $(MAKE)... yes checking for gcc... cc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether cc accepts -g... yes checking for cc option to accept ISO C89... none needed checking for style of include used by gmake... GNU checking dependency style of cc... gcc3 checking how to run the C preprocessor... cc -E checking for a BSD-compatible install... /usr/bin/install -c -o root -g wheel checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking lber.h usability... yes checking lber.h presence... yes checking for lber.h... yes checking ldap.h usability... yes checking ldap.h presence... yes checking for ldap.h... yes checking ldap_ssl.h usability... no checking ldap_ssl.h presence... no checking for ldap_ssl.h... no checking nss.h usability... yes checking nss.h presence... yes checking for nss.h... yes checking irs.h usability... no checking irs.h presence... no checking for irs.h... no checking thread.h usability... no checking thread.h presence... no checking for thread.h... no checking pthread.h usability... yes checking pthread.h presence... yes checking for pthread.h... yes checking synch.h usability... no checking synch.h presence... no checking for synch.h... no checking malloc.h usability... no checking malloc.h presence... no checking for malloc.h... no checking shadow.h usability... no checking shadow.h presence... no checking for shadow.h... no checking prot.h usability... no checking prot.h presence... no checking for prot.h... no checking port_before.h usability... no checking port_before.h presence... no checking for port_before.h... no checking port_after.h usability... no checking port_after.h presence... no checking for port_after.h... no checking aliases.h usability... no checking aliases.h presence... no checking for aliases.h... no checking net/route.h usability... no checking net/route.h presence... yes configure: WARNING: net/route.h: present but cannot be compiled configure: WARNING: net/route.h: check for missing prerequisite headers? configure: WARNING: net/route.h: see the Autoconf documentation configure: WARNING: net/route.h: section "Present But Cannot Be Compiled" configure: WARNING: net/route.h: proceeding with the preprocessor's result configure: WARNING: net/route.h: in the future, the compiler will take precedence checking for net/route.h... yes checking netinet/if_ether.h usability... no checking netinet/if_ether.h presence... yes configure: WARNING: netinet/if_ether.h: present but cannot be compiled configure: WARNING: netinet/if_ether.h: check for missing prerequisite headers? configure: WARNING: netinet/if_ether.h: see the Autoconf documentation configure: WARNING: netinet/if_ether.h: section "Present But Cannot Be Compiled" configure: WARNING: netinet/if_ether.h: proceeding with the preprocessor's result configure: WARNING: netinet/if_ether.h: in the future, the compiler will take precedence checking for netinet/if_ether.h... yes checking netinet/ether.h usability... no checking netinet/ether.h presence... no checking for netinet/ether.h... no checking ctype.h usability... yes checking ctype.h presence... yes checking for ctype.h... yes checking alignof.h usability... no checking alignof.h presence... no checking for alignof.h... no checking rpc/rpcent.h usability... yes checking rpc/rpcent.h presence... yes checking for rpc/rpcent.h... yes checking sys/byteorder.h usability... no checking sys/byteorder.h presence... no checking for sys/byteorder.h... no checking sys/un.h usability... yes checking sys/un.h presence... yes checking for sys/un.h... yes checking libc-lock.h usability... no checking libc-lock.h presence... no checking for libc-lock.h... no checking bits/libc-lock.h usability... no checking bits/libc-lock.h presence... no checking for bits/libc-lock.h... no checking sasl.h usability... no checking sasl.h presence... no checking for sasl.h... no checking sasl/sasl.h usability... no checking sasl/sasl.h presence... no checking for sasl/sasl.h... no checking for strings.h... (cached) yes checking gssldap.h usability... no checking gssldap.h presence... no checking for gssldap.h... no checking gsssasl.h usability... no checking gsssasl.h presence... no checking for gsssasl.h... no checking gssapi/gssapi_krb5.h usability... no checking gssapi/gssapi_krb5.h presence... no checking for gssapi/gssapi_krb5.h... no checking gssapi.h usability... yes checking gssapi.h presence... yes checking for gssapi.h... yes checking krb5.h usability... no checking krb5.h presence... no checking for krb5.h... no checking for main in -lresolv... no checking for main in -lnsl... no checking for main in -lsocket... no checking for strtok_r... yes checking for sigaction... yes checking for sigset... no checking for res_search... yes checking for dn_expand... yes checking resolv.h usability... no checking resolv.h presence... yes configure: WARNING: resolv.h: present but cannot be compiled configure: WARNING: resolv.h: check for missing prerequisite headers? configure: WARNING: resolv.h: see the Autoconf documentation configure: WARNING: resolv.h: section "Present But Cannot Be Compiled" configure: WARNING: resolv.h: proceeding with the preprocessor's result configure: WARNING: resolv.h: in the future, the compiler will take precedence checking for resolv.h... yes checking for snprintf... yes checking for gethostbyname... yes checking for nsdispatch... yes checking for main in -lpthread_nonshared... no checking for pthread_atfork... yes checking for pthread_once... yes checking for ether_aton... yes checking for ether_ntoa... yes checking for struct ether_addr... yes checking for socklen_t... yes checking for pw_change in struct passwd... yes checking for pw_expire in struct passwd... yes checking size of unsigned int... 4 checking size of unsigned long... 8 checking size of uid_t... 4 checking size of gid_t... 4 checking for dlopen in -ldl... no checking for gss_krb5_ccache_name in -lgssapi... no checking for gss_krb5_ccache_name in -lgssapi_krb5... no checking for main in -lcom_err... yes checking for main in -lkrb5... no checking for sasl_client_init in -lsasl2... no checking for main in -llber... yes checking for main in -lldap... yes checking for ldap_gss_bind in -lgssldap... no checking for sasl_auxprop_request... no checking for ldap_init... yes checking for ldap_get_lderrno... no checking for ldap_parse_result... yes checking for ldap_memfree... yes checking for ldap_controls_free... yes checking for ldap_ld_free... yes checking for ldap_explode_rdn... yes checking for ldap_set_option... yes checking for ldap_get_option... yes checking for ldap_sasl_interactive_bind_s... yes checking for ldap_initialize... yes checking for ldap_search_ext... yes checking for ldap_create_control... yes checking for ldap_create_page_control... no checking for ldap_parse_page_control... no checking for ldapssl_client_init... no checking for ldap_start_tls_s... yes checking for ldap_pvt_tls_set_option... yes checking for ldap_start_tls... yes checking for gethostbyname_r... yes checking whether gethostbyname_r takes 6 arguments... 6 checking for ldap_set_rebind_proc... yes checking whether ldap_set_rebind_proc takes 3 arguments... 3 configure: creating ./config.status config.status: creating Makefile config.status: creating config.h config.status: executing depfiles commands ===> Building for nss_ldap-1.264_1 gmake all-am gmake[1]: Entering directory `/var/ports/usr/ports/net/nss_ldap/work/nss_ldap-264' if cc -DHAVE_CONFIG_H -I. -I. -I. -I/usr/local/include -DLDAP_REFERRALS -DLDAP_DEPRECATED -DPIC -D_REENTRANT -O2 -fno-strict-aliasing -pipe -march=native -DLDAP_DEPRECATED -Wall -fPIC -MT ldap-nss.o -MD -MP -MF ".deps/ldap-nss.Tpo" -c -o ldap-nss.o ldap-nss.c; \ then mv -f ".deps/ldap-nss.Tpo" ".deps/ldap-nss.Po"; else rm -f ".deps/ldap-nss.Tpo"; exit 1; fi In file included from ldap-nss.c:82: /usr/include/gssapi.h:3:2: warning: #warning "this file includes which is deprecated, use instead" ldap-nss.c:88:18: error: krb5.h: No such file or directory gmake[1]: *** [ldap-nss.o] Error 1 gmake[1]: Leaving directory `/var/ports/usr/ports/net/nss_ldap/work/nss_ldap-264' gmake: *** [all] Error 2 *** Error code 1 Stop in /usr/ports/net/nss_ldap. >How-To-Repeat: 1. Insert WITHOUT_KERBEROS=YES into /etc/src.conf 2. Install system (into jail f.e.) via make buildworld/installworld 3. In new system cd /usr/ports/net/nss_ldap && make >Fix: There are two problems: 1. Reference to kerberos turned on by default in Makefile. 2. nss_ldap v 264 doesn't check HAVE_KRB5_H before including krb5.h. Patch attached with submission follows: diff -u -r /usr/ports/net/nss_ldap/Makefile /home/bakhtin/work/nss_ldap/Makefile --- /usr/ports/net/nss_ldap/Makefile 2009-01-05 22:04:27.000000000 +0300 +++ /home/bakhtin/work/nss_ldap/Makefile 2009-04-03 20:01:18.000000000 +0400 @@ -33,8 +33,7 @@ CONFIGURE_ARGS= --with-ldap-conf-file=${PREFIX}/etc/nss_ldap.conf \ --with-ldap-secret-file=${PREFIX}/etc/nss_ldap.secret \ --enable-rfc2307bis \ - --enable-paged-results \ - --enable-configurable-krb5-ccname-env + --enable-paged-results MAN5= nss_ldap.5 diff -u -r /usr/ports/net/nss_ldap/files/patch-ldap-nss.c /home/bakhtin/work/nss_ldap/files/patch-ldap-nss.c --- /usr/ports/net/nss_ldap/files/patch-ldap-nss.c 2006-05-27 20:31:57.000000000 +0400 +++ /home/bakhtin/work/nss_ldap/files/patch-ldap-nss.c 2009-04-03 20:00:30.000000000 +0400 @@ -9,3 +9,11 @@ #include #elif defined(HAVE_SASL_H) #include +@@ -84,7 +84,7 @@ + #include + #include + #endif +-#ifdef CONFIGURE_KRB5_CCNAME ++#if defined(CONFIGURE_KRB5_CCNAME) && defined(HAVE_KRB5_H) + #include + #endif >Release-Note: >Audit-Trail: >Unformatted: