Lines 2-8
Link Here
|
2 |
# |
2 |
# |
3 |
# Feature: gssapi |
3 |
# Feature: gssapi |
4 |
# Usage: USES=gssapi or USES=gssapi:ARGS |
4 |
# Usage: USES=gssapi or USES=gssapi:ARGS |
5 |
# Valid ARGS: base (default, implicit), heimdal, mit. |
5 |
# Valid ARGS: base (default, implicit), heimdal, heimdal-devel, mit, mit-devel |
6 |
# "bootstrap" is a special prefix only for krb5 or heimdal ports. |
6 |
# "bootstrap" is a special prefix only for krb5 or heimdal ports. |
7 |
# ("bootstrap,mit") |
7 |
# ("bootstrap,mit") |
8 |
# flags is a special suffix to define CFLAGS, LDFLAGS, and LDADD. |
8 |
# flags is a special suffix to define CFLAGS, LDFLAGS, and LDADD. |
Lines 22-27
Link Here
|
22 |
# GSSAPILIBDIR |
22 |
# GSSAPILIBDIR |
23 |
# GSSAPILIBS |
23 |
# GSSAPILIBS |
24 |
# GSSAPI_CONFIGURE_ARGS |
24 |
# GSSAPI_CONFIGURE_ARGS |
|
|
25 |
# GSSAPI_VENDOR |
26 |
# GSSAPI_PROVIDER |
25 |
# KRB5CONFIG |
27 |
# KRB5CONFIG |
26 |
# |
28 |
# |
27 |
# Affected variables: |
29 |
# Affected variables: |
Lines 36-59
Link Here
|
36 |
# |
38 |
# |
37 |
# Usage: |
39 |
# Usage: |
38 |
# |
40 |
# |
39 |
# A typical example: |
41 |
# A typical example, where the port supports all GSSAPI providers and |
|
|
42 |
# end-users can use DEFAULT_VERSIONS to decide which one they want. |
40 |
# |
43 |
# |
41 |
# OPTIONS_SINGLE= GSSAPI |
44 |
# OPTIONS_DEFINE= GSSAPI |
42 |
# OPTIONS_SINGLE_GSSAPI= GSSAPI_BASE GSSAPI_HEIMDAL GSSAPI_MIT GSSAPI_NONE |
|
|
43 |
# |
45 |
# |
44 |
# GSSAPI_BASE_USES= gssapi |
46 |
# GSSAPI_USES= gssapi |
45 |
# GSSAPI_BASE_CONFIGURE_ON= \ |
47 |
# GSSAPI_CONFIGURE_ON= --with-gssapi=${GSSAPIBASEDIR} ${GSSAPI_CONFIGURE_ARGS} |
46 |
# --with-gssapi=${GSSAPIBASEDIR} ${GSSAPI_CONFIGURE_ARGS} |
48 |
# GSSAPI_CONFIGURE_OFF= --without-gssapi |
47 |
# |
49 |
# |
48 |
# GSSAPI_HEIMDAL_USES=gssapi:heimdal |
50 |
# An example of restricting the list of supported gssapi providers. |
49 |
# GSSAPI_HEIMDAL_CONFIGURE_ON= \ |
51 |
# The end user cannot use DEFAULT_VERSIONS, but can choose between the various |
50 |
# --with-gssapi=${GSSAPIBASEDIR} ${GSSAPI_CONFIGURE_ARGS} |
52 |
# port OPTIONS to choose between the supported providers. |
|
|
53 |
# This example port chooses to only support Heimdal based providers from |
54 |
# the ports collection. |
51 |
# |
55 |
# |
52 |
# GSSAPI_MIT_USES= gssapi:mit |
56 |
# OPTIONS_SINGLE= GSSAPI |
53 |
# GSSAPI_MIT_CONFIGURE_ON= \ |
57 |
# OPTIONS_SINGLE_GSSAPI= GSSAPI_NONE GSSAPI_HEIMDAL GSSAPI_HEIMDAL_DEVEL |
54 |
# --with-gssapi=${GSSAPIBASEDIR} ${GSSAPI_CONFIGURE_ARGS} |
58 |
# OPTIONS_DEFAULT= GSSAPI_NONE |
55 |
# |
59 |
# |
56 |
# GSSAPI_NONE_CONFIGURE_ON= --without-gssapi |
60 |
# GSSAPI_NONE_CONFIGURE_ON= --without-gssapi |
|
|
61 |
# |
62 |
# GSSAPI_HEIMDAL_USES= gssapi:heimdal |
63 |
# GSSAPI_HEIMDAL_CONFIGURE_ON= --with-gssapi=${GSSAPIBASEDIR} ${GSSAPI_CONFIGURE_ARGS} |
64 |
# |
65 |
# GSSAPI_HEIMDAL_DEVEL_USES= gssapi:heimdal-devel |
66 |
# GSSAPI_HEIMDAL_DEVEL_CONFIGURE_ON= --with-gssapi=${GSSAPIBASEDIR} ${GSSAPI_CONFIGURE_ARGS} |
57 |
# |
67 |
# |
58 |
# If pathname is required for Kerberos implementation, use ${GSSAPIBASEDIR}. |
68 |
# If pathname is required for Kerberos implementation, use ${GSSAPIBASEDIR}. |
59 |
# |
69 |
# |
Lines 73-91
Link Here
|
73 |
.if !defined(_INCLUDE_USES_GSSAPI_MK) |
83 |
.if !defined(_INCLUDE_USES_GSSAPI_MK) |
74 |
_INCLUDE_USES_GSSAPI_MK= yes |
84 |
_INCLUDE_USES_GSSAPI_MK= yes |
75 |
|
85 |
|
76 |
_HEIMDAL_DEPENDS=${GSSAPILIBDIR}/libgssapi.so:security/heimdal |
|
|
77 |
_MITKRB5_DEPENDS=${GSSAPILIBDIR}/libkrb5support.so:security/krb5 |
78 |
_HEADERS= sys/types.h sys/stat.h stdint.h |
86 |
_HEADERS= sys/types.h sys/stat.h stdint.h |
79 |
|
87 |
|
80 |
. if empty(gssapi_ARGS) |
88 |
GSSAPI_PROVIDER= ${GSSAPI_DEFAULT} |
81 |
gssapi_ARGS= base |
89 |
|
82 |
. endif |
|
|
83 |
. for _A in ${gssapi_ARGS} |
90 |
. for _A in ${gssapi_ARGS} |
84 |
_local:= ${_A} |
91 |
. if ${_A} == "base" || \ |
85 |
. if ${_local} == "base" |
92 |
${_A} == "heimdal" || \ |
86 |
. if ${SSL_DEFAULT} != base |
93 |
${_A} == "heimdal-devel" || \ |
87 |
IGNORE= You are using OpenSSL from ports and have selected GSSAPI from base, please select another GSSAPI value |
94 |
${_A} == "mit" || \ |
88 |
. endif |
95 |
${_A} == "mit-devel" |
|
|
96 |
GSSAPI_PROVIDER= ${_A} |
97 |
. elif ${_A} == "bootstrap" |
98 |
_KRB_BOOTSTRAP= 1 |
99 |
. elif ${_A} == "flags" |
100 |
_KRB_USEFLAGS= 1 |
101 |
. else |
102 |
BROKEN= USES=gssapi - invalid args: [${_A}] specified |
103 |
. endif |
104 |
. endfor |
105 |
|
106 |
. if ${GSSAPI_PROVIDER} == "base" || ${GSSAPI_PROVIDER:Mheimdal*} |
107 |
GSSAPI_VENDOR=heimdal |
108 |
. elif ${GSSAPI_PROVIDER:Mmit*} |
109 |
GSSAPI_VENDOR=mit |
110 |
. else |
111 |
BROKEN= USES=gssapi - could not determine vendor: invalid GSSAPI provider '${GSSAPI_PROVIDER}' |
112 |
. endif |
113 |
|
114 |
. if ${GSSAPI_PROVIDER} == "base" |
115 |
. if ${SSL_DEFAULT} != "base" |
116 |
BROKEN= You are using OpenSSL from ports and have selected GSSAPI from base, please select another GSSAPI value |
117 |
. endif |
89 |
HEIMDAL_HOME= /usr |
118 |
HEIMDAL_HOME= /usr |
90 |
GSSAPIBASEDIR= ${HEIMDAL_HOME} |
119 |
GSSAPIBASEDIR= ${HEIMDAL_HOME} |
91 |
GSSAPILIBDIR= ${GSSAPIBASEDIR}/lib |
120 |
GSSAPILIBDIR= ${GSSAPIBASEDIR}/lib |
Lines 94-139
_HEADERS+= gssapi/gssapi.h gssapi/gssapi_krb5.h krb5.h
Link Here
|
94 |
GSSAPICPPFLAGS= -I"${GSSAPIINCDIR}" |
123 |
GSSAPICPPFLAGS= -I"${GSSAPIINCDIR}" |
95 |
GSSAPILIBS= -lkrb5 -lgssapi -lgssapi_krb5 |
124 |
GSSAPILIBS= -lkrb5 -lgssapi -lgssapi_krb5 |
96 |
GSSAPILDFLAGS= |
125 |
GSSAPILDFLAGS= |
97 |
. elif ${_local} == "heimdal" |
126 |
. elif ${GSSAPI_PROVIDER:Mheimdal*} |
98 |
HEIMDAL_HOME?= ${LOCALBASE} |
127 |
HEIMDAL_HOME?= ${LOCALBASE} |
99 |
GSSAPIBASEDIR= ${HEIMDAL_HOME} |
128 |
GSSAPIBASEDIR= ${HEIMDAL_HOME} |
100 |
GSSAPILIBDIR= ${GSSAPIBASEDIR}/lib/heimdal |
129 |
GSSAPILIBDIR= ${GSSAPIBASEDIR}/lib/heimdal |
101 |
GSSAPIINCDIR= ${GSSAPIBASEDIR}/include/heimdal |
130 |
GSSAPIINCDIR= ${GSSAPIBASEDIR}/include/heimdal |
102 |
_HEADERS+= gssapi/gssapi.h gssapi/gssapi_krb5.h krb5.h |
131 |
_HEADERS+= gssapi/gssapi.h gssapi/gssapi_krb5.h krb5.h |
103 |
. if !defined(_KRB_BOOTSTRAP) |
132 |
. if !defined(_KRB_BOOTSTRAP) |
104 |
BUILD_DEPENDS+= ${_HEIMDAL_DEPENDS} |
133 |
_GSSAPI_DEPENDS= ${GSSAPILIBDIR}/libgssapi.so:security/${GSSAPI_PROVIDER} |
105 |
RUN_DEPENDS+= ${_HEIMDAL_DEPENDS} |
134 |
BUILD_DEPENDS+= ${_GSSAPI_DEPENDS} |
106 |
. else |
135 |
RUN_DEPENDS+= ${_GSSAPI_DEPENDS} |
107 |
PREFIX= ${HEIMDAL_HOME} |
136 |
. else |
108 |
. endif |
137 |
PREFIX= ${HEIMDAL_HOME} |
|
|
138 |
. endif |
109 |
GSSAPICPPFLAGS= -I"${GSSAPIINCDIR}" |
139 |
GSSAPICPPFLAGS= -I"${GSSAPIINCDIR}" |
110 |
GSSAPILIBS= -lkrb5 -lgssapi |
140 |
GSSAPILIBS= -lkrb5 -lgssapi |
111 |
GSSAPILDFLAGS= -L"${GSSAPILIBDIR}" |
141 |
GSSAPILDFLAGS= -L"${GSSAPILIBDIR}" |
112 |
_RPATH= ${GSSAPILIBDIR} |
142 |
_RPATH= ${GSSAPILIBDIR} |
113 |
. elif ${_local} == "mit" |
143 |
. elif ${GSSAPI_PROVIDER:Mmit*} |
114 |
KRB5_HOME?= ${LOCALBASE} |
144 |
KRB5_HOME?= ${LOCALBASE} |
115 |
GSSAPIBASEDIR= ${KRB5_HOME} |
145 |
GSSAPIBASEDIR= ${KRB5_HOME} |
116 |
GSSAPILIBDIR= ${GSSAPIBASEDIR}/lib |
146 |
GSSAPILIBDIR= ${GSSAPIBASEDIR}/lib |
117 |
GSSAPIINCDIR= ${GSSAPIBASEDIR}/include |
147 |
GSSAPIINCDIR= ${GSSAPIBASEDIR}/include |
118 |
_HEADERS+= gssapi/gssapi.h gssapi/gssapi_krb5.h krb5.h |
148 |
_HEADERS+= gssapi/gssapi.h gssapi/gssapi_krb5.h krb5.h |
119 |
. if !defined(_KRB_BOOTSTRAP) |
149 |
. if !defined(_KRB_BOOTSTRAP) |
120 |
BUILD_DEPENDS+= ${_MITKRB5_DEPENDS} |
150 |
_GSSAPI_DEPENDS= ${GSSAPILIBDIR}/libkrb5support.so:security/krb5${GSSAPI_PROVIDER:S/mit//} |
121 |
RUN_DEPENDS+= ${_MITKRB5_DEPENDS} |
151 |
BUILD_DEPENDS+= ${_GSSAPI_DEPENDS} |
122 |
. else |
152 |
RUN_DEPENDS+= ${_GSSAPI_DEPENDS} |
123 |
PREFIX= ${KRB5_HOME} |
153 |
. else |
124 |
. endif |
154 |
PREFIX= ${KRB5_HOME} |
|
|
155 |
. endif |
125 |
GSSAPILIBS= -lkrb5 -lgssapi_krb5 |
156 |
GSSAPILIBS= -lkrb5 -lgssapi_krb5 |
126 |
GSSAPICPPFLAGS= -I"${GSSAPIINCDIR}" |
157 |
GSSAPICPPFLAGS= -I"${GSSAPIINCDIR}" |
127 |
GSSAPILDFLAGS= -L"${GSSAPILIBDIR}" |
158 |
GSSAPILDFLAGS= -L"${GSSAPILIBDIR}" |
128 |
_RPATH= ${GSSAPILIBDIR} |
159 |
_RPATH= ${GSSAPILIBDIR} |
129 |
. elif ${_local} == "bootstrap" |
160 |
. endif |
130 |
_KRB_BOOTSTRAP= 1 |
|
|
131 |
. elif ${_local} == "flags" |
132 |
_KRB_USEFLAGS= 1 |
133 |
. else |
134 |
IGNORE= USES=gssapi - invalid args: [${_local}] specified |
135 |
. endif |
136 |
. endfor |
137 |
|
161 |
|
138 |
KRB5CONFIG=${GSSAPIBASEDIR}/bin/krb5-config |
162 |
KRB5CONFIG=${GSSAPIBASEDIR}/bin/krb5-config |
139 |
|
163 |
|
Lines 178-183
debug-krb:
Link Here
|
178 |
@echo "GSSAPILIBS: ${GSSAPILIBS}" |
202 |
@echo "GSSAPILIBS: ${GSSAPILIBS}" |
179 |
@echo "GSSAPICPPFLAGS: ${GSSAPICPPFLAGS}" |
203 |
@echo "GSSAPICPPFLAGS: ${GSSAPICPPFLAGS}" |
180 |
@echo "GSSAPILDFLAGS: ${GSSAPILDFLAGS}" |
204 |
@echo "GSSAPILDFLAGS: ${GSSAPILDFLAGS}" |
|
|
205 |
@echo "GSSAPI_VENDOR: ${GSSAPI_VENDOR}" |
206 |
@echo "GSSAPI_PROVIDER: ${GSSAPI_PROVIDER}" |
181 |
@echo "GSSAPI_CONFIGURE_ARGS: ${GSSAPI_CONFIGURE_ARGS}" |
207 |
@echo "GSSAPI_CONFIGURE_ARGS: ${GSSAPI_CONFIGURE_ARGS}" |
182 |
@echo "KRB5CONFIG: ${KRB5CONFIG}" |
208 |
@echo "KRB5CONFIG: ${KRB5CONFIG}" |
183 |
@echo "CFLAGS: ${CFLAGS}" |
209 |
@echo "CFLAGS: ${CFLAGS}" |