chromium 15 not building with heimdal 1.4.1

Graham Todd gtodd at bellanet.org
Thu Oct 27 15:25:34 UTC 2011


(I will file a PR as well so this is not lost)

This is the first time I have seen this error. I always have a local
heimdal port (1.4) or a more up to date local build from source (e.g.
1.5.1) installed, and have regularly built chromium without any problems,
so I'm thinking this must be a new issue. Upstream support for GSSAPI on
Linux and BSD (OS/X) is only about a year old - which would equate to the
older releases that were in ports until recently.

Manually editing WRKDIR/net/http/http_auth_gssapi_posix.h
(included from line 5 of net/http/http_auth_gssapi_posix.cc) so that it
grabs BASE heimdal from /usr/include/gssapi/gssapi.h allows the port to
build, but I'm not sure this is the best solution. The BASE version of
heimdal is quite old and there are a number of ports that depend on the
security/heimdal port (which is at version 1.4) so it would be best if
www/chromium built properly against these newer versions.

cheers,



****

The latest chromium port (15.*) won't build with a locally installed
heimdal, failing with these errors (clang):

++++

/usr/local/include/gssapi/gssapi.h:351:30: note: instantiated from:
#define GSS_C_NT_ANONYMOUS (&__gss_c_nt_anonymous_oid_desc)

net/http/http_auth_gssapi_posix.cc:58:9: error: redefinition of
'__gss_c_nt_user_name_oid_desc'
      with a different type
gss_OID GSS_C_NT_USER_NAME = &GSS_C_NT_USER_NAME_VAL;
        ^
In file included from net/http/http_auth_gssapi_posix.cc:5:
In file included from ./net/http/http_auth_gssapi_posix.h:9:
In file included from /usr/local/include/gssapi.h:39:
/usr/local/include/gssapi/gssapi.h:276:30: note: instantiated from:
#define GSS_C_NT_USER_NAME (&__gss_c_nt_user_name_oid_desc)
                             ^
/usr/local/include/gssapi/gssapi.h:275:41: note: previous definition is here
extern GSSAPI_LIB_VARIABLE gss_OID_desc __gss_c_nt_user_name_oid_desc;
                                        ^
net/http/http_auth_gssapi_posix.cc:59:9: error: redefinition of
      '__gss_c_nt_machine_uid_name_oid_desc' with a different type
gss_OID GSS_C_NT_MACHINE_UID_NAME = &GSS_C_NT_MACHINE_UID_NAME_VAL;
        ^
In file included from net/http/http_auth_gssapi_posix.cc:5:
In file included from ./net/http/http_auth_gssapi_posix.h:9:
In file included from /usr/local/include/gssapi.h:39:
/usr/local/include/gssapi/gssapi.h:290:37: note: instantiated from:
#define GSS_C_NT_MACHINE_UID_NAME (&__gss_c_nt_machine_uid_name_oid_desc)
                                    ^
/usr/local/include/gssapi/gssapi.h:289:41: note: previous definition is here
extern GSSAPI_LIB_VARIABLE gss_OID_desc __gss_c_nt_machine_uid_name_oid_desc;
                                        ^
net/http/http_auth_gssapi_posix.cc:60:9: error: redefinition of
      '__gss_c_nt_string_uid_name_oid_desc' with a different type
gss_OID GSS_C_NT_STRING_UID_NAME = &GSS_C_NT_STRING_UID_NAME_VAL;
        ^
In file included from net/http/http_auth_gssapi_posix.cc:5:
In file included from ./net/http/http_auth_gssapi_posix.h:9:
In file included from /usr/local/include/gssapi.h:39:
/usr/local/include/gssapi/gssapi.h:304:36: note: instantiated from:
#define GSS_C_NT_STRING_UID_NAME (&__gss_c_nt_string_uid_name_oid_desc)
                                   ^
/usr/local/include/gssapi/gssapi.h:303:41: note: previous definition is here

      '__gss_c_nt_hostbased_service_x_oid_desc' with a different type
gss_OID GSS_C_NT_HOSTBASED_SERVICE_X = &GSS_C_NT_HOSTBASED_SERVICE_X_VAL;
        ^
In file included from net/http/http_auth_gssapi_posix.cc:5:
In file included from ./net/http/http_auth_gssapi_posix.h:9:
In file included from /usr/local/include/gssapi.h:39:
/usr/local/include/gssapi/gssapi.h:324:40: note: instantiated from:
#define GSS_C_NT_HOSTBASED_SERVICE_X
(&__gss_c_nt_hostbased_service_x_oid_desc)
                                       ^
/usr/local/include/gssapi/gssapi.h:323:41: note: previous definition is here
extern GSSAPI_LIB_VARIABLE gss_OID_desc
__gss_c_nt_hostbased_service_x_oid_desc;
                                        ^
net/http/http_auth_gssapi_posix.cc:62:9: error: redefinition of
      '__gss_c_nt_hostbased_service_oid_desc' with a different type
gss_OID GSS_C_NT_HOSTBASED_SERVICE = &GSS_C_NT_HOSTBASED_SERVICE_VAL;
        ^
In file included from net/http/http_auth_gssapi_posix.cc:5:
In file included from ./net/http/http_auth_gssapi_posix.h:9:
In file included from /usr/local/include/gssapi.h:39:
/usr/local/include/gssapi/gssapi.h:338:38: note: instantiated from:
#define GSS_C_NT_HOSTBASED_SERVICE (&__gss_c_nt_hostbased_service_oid_desc)
                                     ^
/usr/local/include/gssapi/gssapi.h:337:41: note: previous definition is here
extern GSSAPI_LIB_VARIABLE gss_OID_desc __gss_c_nt_hostbased_service_oid_desc;
                                        ^
net/http/http_auth_gssapi_posix.cc:63:9: error: redefinition of
'__gss_c_nt_anonymous_oid_desc'
      with a different type
gss_OID GSS_C_NT_ANONYMOUS = &GSS_C_NT_ANONYMOUS_VAL;
        ^
In file included from net/http/http_auth_gssapi_posix.cc:5:
In file included from ./net/http/http_auth_gssapi_posix.h:9:
In file included from /usr/local/include/gssapi.h:39:
/usr/local/include/gssapi/gssapi.h:351:30: note: instantiated from:
#define GSS_C_NT_ANONYMOUS (&__gss_c_nt_anonymous_oid_desc)
                             ^
/usr/local/include/gssapi/gssapi.h:350:41: note: previous definition is here
extern GSSAPI_LIB_VARIABLE gss_OID_desc __gss_c_nt_anonymous_oid_desc;

                                        ^
net/http/http_auth_gssapi_posix.cc:64:9: error: redefinition of
'__gss_c_nt_export_name_oid_desc'
      with a different type
gss_OID GSS_C_NT_EXPORT_NAME = &GSS_C_NT_EXPORT_NAME_VAL;
        ^
In file included from net/http/http_auth_gssapi_posix.cc:5:
In file included from ./net/http/http_auth_gssapi_posix.h:9:
In file included from /usr/local/include/gssapi.h:39:
/usr/local/include/gssapi/gssapi.h:364:32: note: instantiated from:
#define GSS_C_NT_EXPORT_NAME (&__gss_c_nt_export_name_oid_desc)
                               ^
/usr/local/include/gssapi/gssapi.h:363:41: note: previous definition is here
extern GSSAPI_LIB_VARIABLE gss_OID_desc __gss_c_nt_export_name_oid_desc;
                                        ^
1 warning and 7 errors generated.
gmake: *** [out/Release/obj.target/net/net/http/http_auth_gssapi_posix.o]
Error 1
gmake: *** Waiting for unfinished jobs....
1 warning generated.
*** Error code 1

Stop in /usr/ports/www/chromium.
*** Error code 1

Stop in /usr/ports/www/chromium.




I think this is a new issue since previous ports




More information about the freebsd-ports mailing list