/[MITgcm]/MITgcm_contrib/mpack_src/mpack-1.6-4/cmulocal/kerberos_v4.m4
ViewVC logotype

Contents of /MITgcm_contrib/mpack_src/mpack-1.6-4/cmulocal/kerberos_v4.m4

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (show annotations) (download)
Sat Feb 23 20:13:31 2008 UTC (17 years, 4 months ago) by jmc
Branch: MAIN
CVS Tags: HEAD
- get new version from: http://packages.qa.debian.org/m/mpack.html
  (files: mpack_1.6.orig.tar.gz, mpack_1.6-4.diff.gz, mpack_1.6-4.dsc)
  and apply patch 'mpack_1.6-4.diff' to original dir: mpack_1.6/
- this fix the MD5 coding on 64.bit platforms (well, seems to).
- added in Contrib to allow separate test (since building mpack seems fishy)

1 dnl kerberos_v4.m4--Kerberos 4 libraries and includes
2 dnl Derrick Brashear
3 dnl from KTH krb and Arla
4 dnl $Id: kerberos_v4.m4,v 1.25 2002/12/29 05:13:02 cg2v Exp $
5
6 AC_DEFUN(CMU_KRB_SENDAUTH_PROTO, [
7 AC_MSG_CHECKING(for krb_sendauth prototype)
8 AC_TRY_COMPILE(
9 [#include <krb.h>
10 int krb_sendauth (long options, int fd, KTEXT ktext, char *service,
11 char *inst, char *realm, u_long checksum,
12 MSG_DAT *msg_data, CREDENTIALS *cred,
13 Key_schedule schedule, struct sockaddr_in *laddr,
14 struct sockaddr_in *faddr, char *version);],
15 [int foo = krb_sendauth(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); ],
16 ac_cv_krb_sendauth_proto=no,
17 ac_cv_krb_sendauth_proto=yes)
18 AC_MSG_RESULT($ac_cv_krb_sendauth_proto)
19 if test "$ac_cv_krb_sendauth_proto" = yes; then
20 AC_DEFINE(HAVE_KRB_SENDAUTH_PROTO)dnl
21 fi
22 AC_MSG_RESULT($ac_cv_krb_sendauth_proto)
23 ])
24
25 AC_DEFUN(CMU_KRB_SET_KEY_PROTO, [
26 AC_MSG_CHECKING(for krb_set_key prototype)
27 AC_CACHE_VAL(ac_cv_krb_set_key_proto, [
28 cmu_save_CPPFLAGS="$CPPFLAGS"
29 CPPFLAGS="${CPPFLAGS} ${KRB_INC_FLAGS}"
30 AC_TRY_COMPILE(
31 [#include <krb.h>
32 int krb_set_key(char *key, int cvt);],
33 [int foo = krb_set_key(0, 0);],
34 ac_cv_krb_set_key_proto=no,
35 ac_cv_krb_set_key_proto=yes)
36 ])
37 CPPFLAGS="${cmu_save_CPPFLAGS}"
38 if test "$ac_cv_krb_set_key_proto" = yes; then
39 AC_DEFINE(HAVE_KRB_SET_KEY_PROTO)dnl
40 fi
41 AC_MSG_RESULT($ac_cv_krb_set_key_proto)
42 ])
43
44 AC_DEFUN(CMU_KRB4_32_DEFN, [
45 AC_MSG_CHECKING(for KRB4_32 definition)
46 AC_CACHE_VAL(ac_cv_krb4_32_defn, [
47 cmu_save_CPPFLAGS="$CPPFLAGS"
48 CPPFLAGS="${CPPFLAGS} ${KRB_INC_FLAGS}"
49 AC_TRY_COMPILE(
50 [#include <krb.h>
51 ],
52 [KRB4_32 foo = 1;],
53 ac_cv_krb4_32_defn=yes,
54 ac_cv_krb4_32_defn=no)
55 ])
56 CPPFLAGS="${cmu_save_CPPFLAGS}"
57 if test "$ac_cv_krb4_32_defn" = yes; then
58 AC_DEFINE(HAVE_KRB4_32_DEFINE)dnl
59 fi
60 AC_MSG_RESULT($ac_cv_krb4_32_defn)
61 ])
62
63 AC_DEFUN(CMU_KRB_RD_REQ_PROTO, [
64 AC_MSG_CHECKING(for krb_rd_req prototype)
65 AC_CACHE_VAL(ac_cv_krb_rd_req_proto, [
66 cmu_save_CPPFLAGS="$CPPFLAGS"
67 CPPFLAGS="${CPPFLAGS} ${KRB_INC_FLAGS}"
68 AC_TRY_COMPILE(
69 [#include <krb.h>
70 int krb_rd_req(KTEXT authent, char *service, char *instance,
71 unsigned KRB_INT32 from_addr, AUTH_DAT *ad, char *fn);],
72 [int foo = krb_rd_req(0,0,0,0,0,0);],
73 ac_cv_krb_rd_req_proto=no,
74 ac_cv_krb_rd_req_proto=yes)
75 ])
76 CPPFLAGS="${cmu_save_CPPFLAGS}"
77 if test "$ac_cv_krb_rd_req_proto" = yes; then
78 AC_DEFINE(HAVE_KRB_RD_REQ_PROTO)dnl
79 fi
80 AC_MSG_RESULT($ac_cv_krb_rd_req_proto)
81 ])
82
83 AC_DEFUN(CMU_KRB_INC_WHERE1, [
84 saved_CPPFLAGS=$CPPFLAGS
85 CPPFLAGS="$saved_CPPFLAGS -I$1"
86 AC_TRY_COMPILE([#include <krb.h>],
87 [struct ktext foo;],
88 ac_cv_found_krb_inc=yes,
89 ac_cv_found_krb_inc=no)
90 if test "$ac_cv_found_krb_inc" = "no"; then
91 CPPFLAGS="$saved_CPPFLAGS -I$1 -I$1/kerberosIV"
92 AC_TRY_COMPILE([#include <krb.h>],
93 [struct ktext foo;],
94 [ac_cv_found_krb_inc=yes],
95 ac_cv_found_krb_inc=no)
96 fi
97 CPPFLAGS=$saved_CPPFLAGS
98 ])
99
100 AC_DEFUN(CMU_KRB_INC_WHERE, [
101 for i in $1; do
102 AC_MSG_CHECKING(for kerberos headers in $i)
103 CMU_KRB_INC_WHERE1($i)
104 CMU_TEST_INCPATH($i, krb)
105 if test "$ac_cv_found_krb_inc" = "yes"; then
106 ac_cv_krb_where_inc=$i
107 AC_MSG_RESULT(found)
108 break
109 else
110 AC_MSG_RESULT(not found)
111 fi
112 done
113 ])
114
115 #
116 # Test for kerberos lib files
117 #
118
119 AC_DEFUN(CMU_KRB_LIB_WHERE1, [
120 saved_LIBS=$LIBS
121 LIBS="$saved_LIBS -L$1 -lkrb $KRB_LIBDES"
122 AC_TRY_LINK(,
123 [dest_tkt();],
124 [ac_cv_found_krb_lib=yes],
125 ac_cv_found_krb_lib=no)
126 LIBS=$saved_LIBS
127 ])
128
129 AC_DEFUN(CMU_KRB_LIB_WHERE, [
130 for i in $1; do
131 AC_MSG_CHECKING(for kerberos libraries in $i)
132 CMU_KRB_LIB_WHERE1($i)
133 dnl deal with false positives from implicit link paths
134 CMU_TEST_LIBPATH($i, krb)
135 if test "$ac_cv_found_krb_lib" = "yes" ; then
136 ac_cv_krb_where_lib=$i
137 AC_MSG_RESULT(found)
138 break
139 else
140 AC_MSG_RESULT(not found)
141 fi
142 done
143 ])
144
145 AC_DEFUN(CMU_KRB4, [
146 AC_REQUIRE([CMU_SOCKETS])
147 AC_REQUIRE([CMU_LIBSSL])
148 AC_ARG_WITH(krb4,
149 [ --with-krb4=PREFIX Compile with Kerberos 4 support],
150 [if test "X$with_krb4" = "X"; then
151 with_krb4=yes
152 fi])
153 AC_ARG_WITH(krb4-lib,
154 [ --with-krb4-lib=dir use kerberos 4 libraries in dir],
155 [if test "$withval" = "yes" -o "$withval" = "no"; then
156 AC_MSG_ERROR([No argument for --with-krb4-lib])
157 fi])
158 AC_ARG_WITH(krb4-include,
159 [ --with-krb4-include=dir use kerberos 4 headers in dir],
160 [if test "$withval" = "yes" -o "$withval" = "no"; then
161 AC_MSG_ERROR([No argument for --with-krb4-include])
162 fi])
163
164 if test "X$with_krb4" != "X"; then
165 if test "$with_krb4" != "yes" -a "$with_krb4" != "no"; then
166 ac_cv_krb_where_lib=$with_krb4/lib
167 ac_cv_krb_where_inc=$with_krb4/include
168 fi
169 fi
170
171 if test "$with_krb4" != "no"; then
172 if test "X$with_krb4_lib" != "X"; then
173 ac_cv_krb_where_lib=$with_krb4_lib
174 fi
175 if test "X$with_krb4_include" != "X"; then
176 ac_cv_krb_where_inc=$with_krb4_include
177 fi
178 if test "X$ac_cv_krb_where_inc" = "X"; then
179 CMU_KRB_INC_WHERE(/usr/athena/include /usr/include/kerberosIV /usr/local/include /usr/include/kerberos)
180 fi
181 fi
182
183 AC_MSG_CHECKING([if libdes is needed])
184 AC_TRY_LINK([],[des_quad_cksum();],KRB_DES_LIB="",KRB_DES_LIB="maybe")
185 if test "X$KRB_DES_LIB" != "X"; then
186 LIBS="$cmu_save_LIBS -ldes"
187 AC_TRY_LINK([], [des_quad_cksum();],KRB_DES_LIB="yes")
188 if test "X$KRB_DES_LIB" = "Xyes"; then
189 AC_MSG_RESULT([yes])
190 KRB_LIBDES="-ldes"
191 KRB_LIBDESA="${KRB_LIB_DIR}/libdes.a"
192 else
193 LIBS="$cmu_save_LIBS $LIBSSL_LIB_FLAGS"
194 AC_TRY_LINK([],
195 [des_quad_cksum();],KRB_DES_LIB="libcrypto")
196 if test "X$KRB_DES_LIB" = "Xlibcrypto"; then
197 AC_MSG_RESULT([libcrypto])
198 KRB_LIBDES="$LIBSSL_LIB_FLAGS"
199 KRB_LIBDESA="$LIBSSL_LIB_FLAGS"
200 else
201 AC_MSG_RESULT([unknown])
202 AC_MSG_ERROR([Could not use -ldes])
203 fi
204 fi
205 else
206 AC_MSG_RESULT([no])
207 fi
208 LIBS="${cmu_save_LIBS}"
209
210 if test "X$ac_cv_krb_where_lib" = "X"; then
211 CMU_KRB_LIB_WHERE(/usr/athena/lib /usr/local/lib /usr/lib)
212 fi
213
214 AC_MSG_CHECKING(whether to include kerberos 4)
215 if test "X$ac_cv_krb_where_lib" = "X" -o "X$ac_cv_krb_where_inc" = "X"; then
216 ac_cv_found_krb=no
217 AC_MSG_RESULT(no)
218 else
219 ac_cv_found_krb=yes
220 AC_MSG_RESULT(yes)
221 KRB_INC_DIR=$ac_cv_krb_where_inc
222 KRB_LIB_DIR=$ac_cv_krb_where_lib
223 KRB_INC_FLAGS="-I${KRB_INC_DIR}"
224 KRB_LIB_FLAGS="-L${KRB_LIB_DIR} -lkrb ${KRB_LIBDES}"
225 LIBS="${cmu_save_LIBS} ${KRB_LIB_FLAGS}"
226 AC_CHECK_LIB(resolv, dns_lookup, KRB_LIB_FLAGS="${KRB_LIB_FLAGS} -lresolv",,"${KRB_LIB_FLAGS}")
227 AC_CHECK_LIB(crypt, crypt, KRB_LIB_FLAGS="${KRB_LIB_FLAGS} -lcrypt",,"${KRB_LIB_FLAGS}")
228 AC_CHECK_FUNCS(krb_get_int krb_life_to_time)
229 AC_SUBST(KRB_INC_FLAGS)
230 AC_SUBST(KRB_LIB_FLAGS)
231 LIBS="${cmu_save_LIBS}"
232 AC_DEFINE(KERBEROS,,[Use kerberos 4. find out what needs this symbol])
233 if test "X$RPATH" = "X"; then
234 RPATH=""
235 fi
236 case "${host}" in
237 *-*-linux*)
238 if test "X$RPATH" = "X"; then
239 RPATH="-Wl,-rpath,${KRB_LIB_DIR}"
240 else
241 RPATH="${RPATH}:${KRB_LIB_DIR}"
242 fi
243 ;;
244 *-*-hpux*)
245 if test "X$RPATH" = "X"; then
246 RPATH="-Wl,+b${KRB_LIB_DIR}"
247 else
248 RPATH="${RPATH}:${KRB_LIB_DIR}"
249 fi
250 ;;
251 *-*-irix*)
252 if test "X$RPATH" = "X"; then
253 RPATH="-Wl,-rpath,${KRB_LIB_DIR}"
254 else
255 RPATH="${RPATH}:${KRB_LIB_DIR}"
256 fi
257 ;;
258 *-*-solaris2*)
259 if test "$ac_cv_prog_gcc" = yes; then
260 if test "X$RPATH" = "X"; then
261 RPATH="-Wl,-R${KRB_LIB_DIR}"
262 else
263 RPATH="${RPATH}:${KRB_LIB_DIR}"
264 fi
265 else
266 RPATH="${RPATH} -R${KRB_LIB_DIR}"
267 fi
268 ;;
269 esac
270 AC_SUBST(RPATH)
271 fi
272 ])

  ViewVC Help
Powered by ViewVC 1.1.22