RC1
[metze/heimdal/wip.git] / configure.in
1 dnl Process this file with autoconf to produce a configure script.
2 AC_REVISION($Revision$)
3 AC_PREREQ([2.59])
4 test -z "$CFLAGS" && CFLAGS="-g"
5 AC_INIT([Heimdal],[0.8-RC1],[heimdal-bugs@pdc.kth.se])
6 AC_CONFIG_SRCDIR([kuser/kinit.c])
7 AC_CONFIG_HEADERS(include/config.h)
8
9 AM_INIT_AUTOMAKE([foreign no-dependencies 1.8])
10 AM_MAINTAINER_MODE
11
12 dnl Checks for programs.
13 AC_PROG_CC
14 AM_PROG_CC_C_O
15 AC_PROG_CPP
16
17 AC_PREFIX_DEFAULT(/usr/heimdal)
18
19 test "$sysconfdir" = '${prefix}/etc' && sysconfdir='/etc'
20 test "$localstatedir" = '${prefix}/var' && localstatedir='/var/heimdal'
21
22 AC_CANONICAL_HOST
23 CANONICAL_HOST=$host
24 AC_SUBST(CANONICAL_HOST)
25
26 dnl Hints for autobuild
27 AB_INIT
28
29 rk_SYS_LARGEFILE
30
31 dnl
32 dnl this is needed to run the configure tests against glibc
33 dnl
34 AC_DEFINE([_GNU_SOURCE], 1,
35         [Define to enable extensions on glibc-based systems such as Linux.])
36
37 AC_OBJEXT
38 AC_EXEEXT
39
40 dnl AC_KRB_PROG_YACC
41 AC_PROG_YACC
42 AM_PROG_LEX
43 dnl AC_PROG_RANLIB
44 AC_PROG_AWK
45 AC_KRB_PROG_LN_S
46
47 AC_MIPS_ABI
48 CC="$CC $abi"
49 libdir="$libdir$abilibdirext"
50
51 AC_C___ATTRIBUTE__
52
53 AC_PROG_LIBTOOL
54
55 rk_WFLAGS(-Wall -Wmissing-prototypes -Wpointer-arith -Wbad-function-cast -Wmissing-declarations -Wnested-externs)
56
57 rk_TEST_PACKAGE(openldap,
58 [#include <lber.h>
59 #include <ldap.h>],
60 [-lldap -llber],,,OPENLDAP)
61
62 AC_ARG_ENABLE(hdb-openldap-module, 
63         AS_HELP_STRING([--enable-hdb-openldap-module],
64                 [if you want support to build openldap hdb as shared object]))
65 if test "$enable_hdb_openldap_module" = yes -a "$with_openldap" = yes; then
66     AC_DEFINE(OPENLDAP_MODULE, 1, [Define if you want support for hdb ldap module])
67 fi
68 AM_CONDITIONAL(OPENLDAP_MODULE, test "$enable_hdb_openldap_module" = yes -a "$with_openldap" = yes)
69
70 AC_ARG_ENABLE(pk-init, 
71         AS_HELP_STRING([--disable-pk-init],
72                 [if you want disable to PK-INIT support]))
73 if test "$enable_pk_init" != no ;then
74         AC_DEFINE([PKINIT], 1, [Define to enable PKINIT.])
75 fi
76 AM_CONDITIONAL(PKINIT, test "$enable_pk_init" != no)
77
78
79 rk_TEST_PACKAGE(krb4,[#include <krb.h>],-lkrb,-ldes,/usr/athena, KRB4, krb4-config)
80
81 LIB_kdb=
82 if test "$with_krb4" != "no"; then
83         save_CFLAGS="$CFLAGS"
84         CFLAGS="$CFLAGS $INCLUDE_krb4"
85         save_LIBS="$LIBS"
86         LIBS="$LIB_krb4 $LIBS"
87         EXTRA_LIB45=lib45.a
88         AC_SUBST(EXTRA_LIB45)
89         AC_CACHE_CHECK(for four valued krb_put_int, ac_cv_func_krb_put_int_four,
90                 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <krb.h>]], [[
91                 char tmp[4];
92                 krb_put_int(17, tmp, 4, sizeof(tmp));]])],
93                 [ac_cv_func_krb_put_int_four=yes],
94                 [ac_cv_func_krb_put_int_four=no])
95         ])
96         if test "$ac_cv_func_krb_put_int_four" = yes; then
97                 AC_DEFINE(HAVE_FOUR_VALUED_KRB_PUT_INT, 1,
98                         [define if krb_put_int takes four arguments.])
99         fi
100         AH_BOTTOM([#if defined(HAVE_FOUR_VALUED_KRB_PUT_INT) || !defined(KRB4)
101 #define KRB_PUT_INT(F, T, L, S) krb_put_int((F), (T), (L), (S))
102 #else
103 #define KRB_PUT_INT(F, T, L, S) krb_put_int((F), (T), (S))
104 #endif
105 ])
106         AC_CACHE_CHECK(for KRB_VERIFY_SECURE, ac_cv_func_krb_verify_secure,
107                 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <krb.h>]], [[
108                 int x = KRB_VERIFY_SECURE]])],
109                 [ac_cv_func_krb_verify_secure=yes],
110                 [ac_cv_func_krb_verify_secure=no])
111         ])
112         if test "$ac_cv_func_krb_verify_secure" != yes; then
113                 AC_DEFINE(KRB_VERIFY_SECURE, 1,
114                         [Define to one if your krb.h doesn't])
115                 AC_DEFINE(KRB_VERIFY_SECURE_FAIL, 2,
116                         [Define to two if your krb.h doesn't])
117         fi
118         AC_CACHE_CHECK(for KRB_VERIFY_NOT_SECURE,
119                 ac_cv_func_krb_verify_not_secure,
120                 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <krb.h>]], [[
121                 int x = KRB_VERIFY_NOT_SECURE]])],
122                 [ac_cv_func_krb_verify_not_secure=yes],
123                 [ac_cv_func_krb_verify_not_secure=no])
124         ])
125         if test "$ac_cv_func_krb_verify_not_secure" != yes; then
126                 AC_DEFINE(KRB_VERIFY_NOT_SECURE, 0,
127                         [Define to zero if your krb.h doesn't])
128         fi
129         AC_FIND_FUNC(krb_enable_debug)
130         AC_FIND_FUNC(krb_disable_debug)
131         AC_FIND_FUNC(krb_get_our_ip_for_realm)
132         AC_FIND_FUNC(krb_kdctimeofday)
133         AH_BOTTOM(
134         [#ifndef HAVE_KRB_KDCTIMEOFDAY
135 #define krb_kdctimeofday(X) gettimeofday((X), NULL)
136 #endif])
137         AC_FIND_FUNC(krb_get_kdc_time_diff)
138         AH_BOTTOM(
139         [#ifndef HAVE_KRB_GET_KDC_TIME_DIFF
140 #define krb_get_kdc_time_diff() (0)
141 #endif])
142         AC_CACHE_CHECK([for KRB_SENDAUTH_VERS],
143                 ac_cv_func_krb_sendauth_vers,
144                 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <krb.h>
145                         #include <prot.h>]], [[
146                 char *x = KRB_SENDAUTH_VERS]])],
147                 [ac_cv_func_krb_sendauth_vers=yes],
148                 [ac_cv_func_krb_sendauth_vers=no])
149         ])
150         if test "$ac_cv_func_krb_sendauth_vers" != yes; then
151                 AC_DEFINE(KRB_SENDAUTH_VERS, ["AUTHV0.1"],
152                         [This is the krb4 sendauth version.])
153         fi
154         AC_CACHE_CHECK(for krb_mk_req with const arguments,
155                 ac_cv_func_krb_mk_req_const,
156                 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <krb.h>
157                 int krb_mk_req(KTEXT a, const char *s, const char *i,
158                                const char *r, int32_t checksum)
159                 { return 17; }]], [[]])],
160                 [ac_cv_func_krb_mk_req_const=yes],
161                 [ac_cv_func_krb_mk_req_const=no])
162         ])
163         if test "$ac_cv_func_krb_mk_req_const" = "yes"; then
164                 AC_DEFINE(KRB_MK_REQ_CONST, 1,
165                         [Define if krb_mk_req takes const char *])
166         fi
167
168         LIBS="$save_LIBS"
169         CFLAGS="$save_CFLAGS"
170         LIB_kdb="-lkdb -lkrb"
171 fi
172 AM_CONDITIONAL(KRB4, test "$with_krb4" != "no")
173 AM_CONDITIONAL(KRB5, true)
174 AM_CONDITIONAL(do_roken_rename, true)
175
176 AC_DEFINE(KRB5, 1, [Enable Kerberos 5 support in applications.])dnl
177 AC_SUBST(LIB_kdb)dnl
178
179 KRB_CRYPTO
180
181 KRB_PTHREADS
182
183 AC_ARG_ENABLE(dce, 
184         AS_HELP_STRING([--enable-dce],[if you want support for DCE/DFS PAG's]))
185 if test "$enable_dce" = yes; then
186     AC_DEFINE(DCE, 1, [Define if you want support for DCE/DFS PAG's.])
187 fi
188 AM_CONDITIONAL(DCE, test "$enable_dce" = yes)
189
190 ## XXX quite horrible:
191 if test -f /etc/ibmcxx.cfg; then
192         dpagaix_ldadd=`sed -n '/^xlc_r4/,/^$/p' /etc/ibmcxx.cfg | sed -n -e '/libraries/{;s/^[[^=]]*=\(.*\)/\1/;s/,/ /gp;}'`
193         dpagaix_cflags=`sed -n '/^xlc_r4/,/^$/p' /etc/ibmcxx.cfg | sed -n -e '/options/{;s/^[[^=]]*=\(.*\)/\1/;s/-q[^,]*//;s/,/ /gp;}'`
194         dpagaix_ldflags=
195 else
196         dpagaix_cflags="-D_THREAD_SAFE -D_AIX_PTHREADS_D7 -D_AIX32_THREADS=1 -D_AES_SOURCE -D_AIX41 -I/usr/include/dce"
197         dpagaix_ldadd="-L/usr/lib/threads -ldcelibc_r -ldcepthreads -lpthreads_compat lpthreads -lc_r"
198         dpagaix_ldflags="-Wl,-bI:dfspag.exp"
199 fi
200 AC_SUBST(dpagaix_cflags)
201 AC_SUBST(dpagaix_ldadd)
202 AC_SUBST(dpagaix_ldflags)
203
204 AC_ARG_ENABLE([afs-support],
205         AC_HELP_STRING([--disable-afs-support],
206                 [if you don't want support for AFS]))
207 if test "$enable_afs_support" = no; then
208         AC_DEFINE(NO_AFS, 1, [Define if you don't wan't support for AFS.])
209 fi
210
211 rk_DB
212
213 dnl AC_ROKEN(10,[/usr/heimdal /usr/athena],[lib/roken],[$(top_builddir)/lib/roken/libroken.la],[-I$(top_builddir)/lib/roken -I$(top_srcdir)/lib/roken])
214
215 rk_ROKEN(lib/roken)
216 LIB_roken="\$(top_builddir)/lib/vers/libvers.la $LIB_roken"
217
218 rk_OTP
219
220 AC_CHECK_OSFC2
221
222 AC_ARG_ENABLE(mmap,
223         AS_HELP_STRING([--disable-mmap],[disable use of mmap]))
224 if test "$enable_mmap" = "no"; then
225         AC_DEFINE(NO_MMAP, 1, [Define if you don't want to use mmap.])
226 fi
227
228 AC_ARG_ENABLE(afs-string-to-key,
229         AS_HELP_STRING([--disable-afs-string-to-key],
230         [disable use of weak AFS string-to-key functions]),
231         [], [enable_afs_string_to_key=yes])
232
233 if test "$enable_afs_string_to_key" = "yes"; then
234         AC_DEFINE(ENABLE_AFS_STRING_TO_KEY, 1, [Define if want to use the weak AFS string to key functions.])
235 fi
236
237
238 rk_CHECK_MAN
239
240 rk_TEST_PACKAGE(readline,
241 [#include <stdio.h>
242  #include <readline.h>],-lreadline,,, READLINE)
243
244 rk_TEST_PACKAGE(hesiod,[#include <hesiod.h>],-lhesiod,,, HESIOD)
245
246 KRB_C_BIGENDIAN
247 AC_C_INLINE
248
249 rk_AIX
250 rk_IRIX
251 rk_SUNOS
252
253 KRB_CHECK_X
254
255 AM_CONDITIONAL(HAVE_X, test "$no_x" != yes)
256
257 AC_CHECK_XAU
258
259 dnl AM_C_PROTOTYPES
260
261 dnl Checks for typedefs, structures, and compiler characteristics.
262 AC_C_CONST
263 AC_TYPE_OFF_T
264 AC_CHECK_TYPE_EXTRA(mode_t, unsigned short, [])
265 AC_CHECK_TYPE_EXTRA(sig_atomic_t, int, [#include <signal.h>])
266 AC_HAVE_TYPE([long long])
267 AC_HEADER_TIME
268 AC_STRUCT_TM
269
270 dnl Checks for header files.
271 AC_HEADER_STDC
272
273 AC_CHECK_HEADERS([\
274         arpa/ftp.h                              \
275         arpa/telnet.h                           \
276         bind/bitypes.h                          \
277         bsdsetjmp.h                             \
278         curses.h                                \
279         dlfcn.h                                 \
280         fnmatch.h                               \
281         inttypes.h                              \
282         io.h                                    \
283         libutil.h                               \
284         limits.h                                \
285         maillock.h                              \
286         netgroup.h                              \
287         netinet/in6_machtypes.h                 \
288         netinfo/ni.h                            \
289         pthread.h                               \
290         pty.h                                   \
291         sac.h                                   \
292         sgtty.h                                 \
293         siad.h                                  \
294         signal.h                                \
295         strings.h                               \
296         stropts.h                               \
297         sys/bitypes.h                           \
298         sys/category.h                          \
299         sys/file.h                              \
300         sys/filio.h                             \
301         sys/ioccom.h                            \
302         sys/mman.h                              \
303         sys/param.h                             \
304         sys/pty.h                               \
305         sys/ptyio.h                             \
306         sys/select.h                            \
307         sys/socket.h                            \
308         sys/str_tty.h                           \
309         sys/stream.h                            \
310         sys/stropts.h                           \
311         sys/syscall.h                           \
312         sys/termio.h                            \
313         sys/timeb.h                             \
314         sys/times.h                             \
315         sys/types.h                             \
316         sys/un.h                                \
317         termcap.h                               \
318         termio.h                                \
319         termios.h                               \
320         time.h                                  \
321         tmpdir.h                                \
322         udb.h                                   \
323         util.h                                  \
324         utmp.h                                  \
325         utmpx.h                                 \
326 ])
327
328 dnl On Solaris 8 there's a compilation warning for term.h because
329 dnl it doesn't define `bool'.
330 AC_CHECK_HEADERS(term.h, , , -)
331
332 AC_CHECK_HEADERS(net/if.h, , , [AC_INCLUDES_DEFAULT
333 #if HAVE_SYS_SOCKET_H
334 #include <sys/socket.h>
335 #endif])
336
337 AC_CHECK_HEADERS(sys/ptyvar.h, , , [AC_INCLUDES_DEFAULT
338 #if HAVE_SYS_TTY_H
339 #include <sys/tty.h>
340 #endif])
341
342 AC_CHECK_HEADERS(sys/strtty.h, , , [AC_INCLUDES_DEFAULT
343 #if HAVE_TERMIOS_H
344 #include <termios.h>
345 #endif
346 #if HAVE_SYS_STREAM_H
347 #include <sys/stream.h>
348 #endif])
349
350 AC_CHECK_HEADERS(sys/ucred.h, , , [AC_INCLUDES_DEFAULT
351 #if HAVE_SYS_TYPES_H
352 #include <sys/types.h>
353 #endif
354 #if HAVE_SYS_PARAM_H
355 #include <sys/param.h>
356 #endif])
357
358 AC_CHECK_HEADERS(security/pam_modules.h, , , [AC_INCLUDES_DEFAULT
359 #include <security/pam_appl.h>
360 ])
361
362 AC_ARG_ENABLE(netinfo,
363         AS_HELP_STRING([--enable-netinfo],[enable netinfo for configuration lookup]))
364
365 if test "$ac_cv_header_netinfo_ni_h" = yes -a "$enable_netinfo" = yes; then
366        AC_DEFINE(HAVE_NETINFO, 1,
367                [Define if you want to use Netinfo instead of krb5.conf.])
368 fi
369
370 dnl export symbols
371 rk_WIN32_EXPORT(BUILD_KRB5_LIB, KRB5_LIB_FUNCTION)
372 rk_WIN32_EXPORT(BUILD_ROKEN_LIB, ROKEN_LIB_FUNCTION)
373
374 dnl Checks for libraries.
375
376 AC_FIND_FUNC_NO_LIBS(logwtmp, util,[
377 #ifdef HAVE_UTIL_H
378 #include <util.h>
379 #endif
380 ],[0,0,0])
381 AC_FIND_FUNC_NO_LIBS(logout, util,[
382 #ifdef HAVE_UTIL_H
383 #include <util.h>
384 #endif
385 ],[0])
386 AC_FIND_FUNC_NO_LIBS(openpty, util,[
387 #ifdef HAVE_UTIL_H
388 #include <util.h>
389 #endif
390 ],[0,0,0,0,0])
391
392 AC_FIND_FUNC_NO_LIBS(tgetent, termcap ncurses curses,[
393 #ifdef HAVE_TERMCAP_H
394 #include <termcap.h>
395 #endif
396 #ifdef HAVE_CURSES_H
397 #include <curses.h>
398 #endif
399 ],[0,0])
400
401 dnl Checks for library functions.
402
403 AC_CHECK_FUNCS([                                \
404         _getpty                                 \
405         _scrsize                                \
406         fcntl                                   \
407         getpeereid                              \
408         getpeerucred                            \
409         grantpt                                 \
410         mktime                                  \
411         ptsname                                 \
412         rand                                    \
413         revoke                                  \
414         select                                  \
415         setitimer                               \
416         setpcred                                \
417         setpgid                                 \
418         setproctitle                            \
419         setregid                                \
420         setresgid                               \
421         setresuid                               \
422         setreuid                                \
423         setsid                                  \
424         setutent                                \
425         sigaction                               \
426         strstr                                  \
427         ttyname                                 \
428         ttyslot                                 \
429         umask                                   \
430         unlockpt                                \
431         vhangup                                 \
432         yp_get_default_domain                   \
433 ])
434
435 AC_FUNC_MMAP
436
437 KRB_CAPABILITIES
438
439 AC_CHECK_GETPWNAM_R_POSIX
440
441 dnl detect doors on solaris
442 if test "$enable_pthread_support" != no; then
443    saved_LIBS="$LIBS"
444    LIBS="$LIBS $PTHREADS_LIBS"
445    AC_FIND_FUNC_NO_LIBS(door_create, door)
446    LIBS="$saved_LIBS"
447 fi
448
449 AC_ARG_ENABLE(kcm,
450         AS_HELP_STRING([--enable-kcm],[enable Kerberos Credentials Manager]),
451 ,[enable_kcm=yes])
452
453 if test "$enable_kcm" = yes ; then
454    if test  "$ac_cv_header_sys_un_h" != yes -a "$ac_cv_funclib_door_create" != yes ; then
455         enable_kcm=no
456    fi
457 fi
458 if test "$enable_kcm" = yes; then
459        AC_DEFINE(HAVE_KCM, 1,
460                [Define if you want to use the Kerberos Credentials Manager.])
461 fi
462 AM_CONDITIONAL(KCM, test "$enable_kcm" = yes)
463
464
465
466 dnl Cray stuff
467 AC_CHECK_FUNCS(getudbnam setlim)
468
469 dnl AC_KRB_FUNC_GETCWD_BROKEN
470
471 dnl
472 dnl Check for fields in struct utmp
473 dnl
474
475 AC_HAVE_STRUCT_FIELD(struct utmp, ut_addr, [#include <utmp.h>])
476 AC_HAVE_STRUCT_FIELD(struct utmp, ut_host, [#include <utmp.h>])
477 AC_HAVE_STRUCT_FIELD(struct utmp, ut_id, [#include <utmp.h>])
478 AC_HAVE_STRUCT_FIELD(struct utmp, ut_pid, [#include <utmp.h>])
479 AC_HAVE_STRUCT_FIELD(struct utmp, ut_type, [#include <utmp.h>])
480 AC_HAVE_STRUCT_FIELD(struct utmp, ut_user, [#include <utmp.h>])
481 AC_HAVE_STRUCT_FIELD(struct utmpx, ut_exit, [#include <utmpx.h>])
482 AC_HAVE_STRUCT_FIELD(struct utmpx, ut_syslen, [#include <utmpx.h>])
483
484 AC_CHECK_TYPES([int8_t, int16_t, int32_t, int64_t, 
485         u_int8_t, u_int16_t, u_int32_t, u_int64_t,
486         uint8_t, uint16_t, uint32_t, uint64_t],,,[
487 #ifdef HAVE_INTTYPES_H
488 #include <inttypes.h>
489 #endif
490 #ifdef HAVE_SYS_TYPES_H
491 #include <sys/types.h>
492 #endif
493 #ifdef HAVE_SYS_BITYPES_H
494 #include <sys/bitypes.h>
495 #endif
496 #ifdef HAVE_BIND_BITYPES_H
497 #include <bind/bitypes.h>
498 #endif
499 #ifdef HAVE_NETINET_IN6_MACHTYPES_H
500 #include <netinet/in6_machtypes.h>
501 #endif
502 ])
503
504 KRB_READLINE
505
506 rk_TELNET
507
508 dnl Some operating systems already have com_err and compile_et
509 CHECK_COMPILE_ET
510
511 rk_AUTH_MODULES([sia afskauthlib])
512
513 rk_DESTDIRS
514
515 AH_BOTTOM([#ifdef ROKEN_RENAME
516 #include "roken_rename.h"
517 #endif])
518
519 AC_CONFIG_FILES(Makefile                \
520         include/Makefile                \
521         include/gssapi/Makefile         \
522         include/hcrypto/Makefile        \
523         include/kadm5/Makefile          \
524         lib/Makefile                    \
525         lib/45/Makefile                 \
526         lib/auth/Makefile               \
527         lib/auth/afskauthlib/Makefile   \
528         lib/auth/pam/Makefile           \
529         lib/auth/sia/Makefile           \
530         lib/asn1/Makefile               \
531         lib/com_err/Makefile            \
532         lib/des/Makefile                \
533         lib/editline/Makefile           \
534         lib/hx509/Makefile              \
535         lib/gssapi/Makefile             \
536         lib/hdb/Makefile                \
537         lib/kadm5/Makefile              \
538         lib/kafs/Makefile               \
539         lib/kdfs/Makefile               \
540         lib/krb5/Makefile               \
541         lib/otp/Makefile                \
542         lib/roken/Makefile              \
543         lib/sl/Makefile                 \
544         lib/vers/Makefile               \
545         kuser/Makefile                  \
546         kpasswd/Makefile                \
547         kadmin/Makefile                 \
548         admin/Makefile                  \
549         kcm/Makefile                    \
550         kdc/Makefile                    \
551         appl/Makefile                   \
552         appl/afsutil/Makefile           \
553         appl/ftp/Makefile               \
554         appl/ftp/common/Makefile        \
555         appl/ftp/ftp/Makefile           \
556         appl/ftp/ftpd/Makefile          \
557         appl/gssmask/Makefile           \
558         appl/kx/Makefile                \
559         appl/login/Makefile             \
560         appl/otp/Makefile               \
561         appl/popper/Makefile            \
562         appl/push/Makefile              \
563         appl/rsh/Makefile               \
564         appl/rcp/Makefile               \
565         appl/su/Makefile                \
566         appl/xnlock/Makefile            \
567         appl/telnet/Makefile            \
568         appl/telnet/libtelnet/Makefile  \
569         appl/telnet/telnet/Makefile     \
570         appl/telnet/telnetd/Makefile    \
571         appl/test/Makefile              \
572         appl/kf/Makefile                \
573         appl/dceutils/Makefile          \
574         tests/Makefile                  \
575         tests/db/Makefile               \
576         tests/kdc/Makefile              \
577         tests/gss/Makefile              \
578         doc/Makefile                    \
579         tools/Makefile                  \
580 )
581
582 AC_OUTPUT
583
584 dnl
585 dnl This is the release version name-number[beta]
586 dnl
587
588 cat > include/newversion.h.in <<EOF
589 const char *heimdal_long_version = "@([#])\$Version: $PACKAGE_STRING by @USER@ on @HOST@ ($host) @DATE@ \$";
590 const char *heimdal_version = "AC_PACKAGE_STRING";
591 EOF
592
593 if test -f include/version.h && cmp -s include/newversion.h.in include/version.h.in; then
594         echo "include/version.h is unchanged"
595         rm -f include/newversion.h.in
596 else
597         echo "creating include/version.h"
598         User=${USER-${LOGNAME}}
599         Host=`(hostname || uname -n || echo unknown) 2>/dev/null | sed 1q`
600         Date=`date`
601         mv -f include/newversion.h.in include/version.h.in
602         sed -e "s/@USER@/$User/" -e "s/@HOST@/$Host/" -e "s/@DATE@/$Date/" include/version.h.in > include/version.h
603 fi