Install kadmin and kdb headers
[krb5.git] / src / include / Makefile.in
1 thisconfigdir=..
2 myfulldir=include
3 mydir=include
4 BUILDTOP=$(REL)..
5 KRB5RCTMPDIR= @KRB5_RCTMPDIR@
6 ##DOSBUILDTOP = ..
7 NO_OUTPRE=1
8
9 all-unix:: krb5/krb5.h
10
11 all-unix:: maybe-make-db.h-@DB_HEADER_VERSION@
12
13 generate-files-mac: krb5/krb5.h
14
15 maybe-make-db.h-k5:
16         : db.h will be installed by util/db2
17 maybe-make-db.h-sys:
18         : fall back to system db.h 
19 maybe-make-db.h-redirect:
20         test -r db.h || echo '#include <@DB_HEADER@>' > db.h
21
22 ET_HEADERS = adm_err.h asn1_err.h kdb5_err.h krb5_err.h
23 K5_ET_HEADERS = \
24         ../lib/krb5/error_tables/krb5_err.h \
25         ../lib/krb5/error_tables/kdb5_err.h \
26         ../lib/krb5/error_tables/kv5m_err.h \
27         ../lib/krb5/error_tables/krb524_err.h \
28         ../lib/krb5/error_tables/asn1_err.h
29 BUILT_HEADERS = osconf.h
30
31 all-unix:: autoconf.h $(BUILT_HEADERS)
32 all-windows:: autoconf.h $(BUILT_HEADERS) verify-calling-conventions-krb5
33
34 all-unix:: @MAINT@ verify-calling-conventions-krb5
35
36 $(srcdir)/autoconf.h.in: @MAINT@ $(srcdir)/autoconf.stmp
37 $(srcdir)/autoconf.stmp: $(srcdir)/$(thisconfigdir)/configure.in $(SRCTOP)/aclocal.m4
38         $(RM) -r $(srcdir)/$(thisconfigdir)/autom4te.cache
39         cd $(srcdir)/$(thisconfigdir) && $(AUTOHEADER) --include=$(CONFIG_RELTOPDIR) $(AUTOHEADERFLAGS)
40         touch $(srcdir)/autoconf.stmp
41         $(RM) -r $(srcdir)/$(thisconfigdir)/autom4te.cache
42
43 ##DOS##autoconf.h: win-mac.h
44 ##DOS## $(CP) win-mac.h $@
45 ##DOS##osconf.h: osconf.hin
46 ##DOS## $(CP) osconf.hin $@
47
48 ###############################################################################
49 ##DOS##!if 0
50 # config.status will now update autoconf.stamp itself.
51 autoconf.h: autoconf.stamp
52 autoconf.stamp: $(srcdir)/autoconf.h.in $(thisconfigdir)/config.status
53         (cd $(thisconfigdir) && $(SHELL) config.status $(mydir)/autoconf.h)
54
55 SYSCONFDIR = @sysconfdir@
56 LOCALSTATEDIR = @localstatedir@
57 BINDIR = @bindir@
58 SBINDIR = @sbindir@
59 LIBDIR  = @libdir@
60
61 PROCESS_REPLACE = -e "s+@KRB5RCTMPDIR+$(KRB5RCTMPDIR)+" \
62                   -e "s+@PREFIX+$(INSTALL_PREFIX)+" \
63                   -e "s+@EXEC_PREFIX+$(INSTALL_EXEC_PREFIX)+" \
64                   -e "s+@BINDIR+$(BINDIR)+" \
65                   -e "s+@LIBDIR+$(LIBDIR)+" \
66                   -e "s+@SBINDIR+$(SBINDIR)+" \
67                   -e "s+@MODULEDIR+$(MODULE_DIR)+" \
68                   -e "s+@GSSMODULEDIR+$(GSS_MODULE_DIR)+" \
69         -e 's+@LOCALSTATEDIR+$(LOCALSTATEDIR)+' \
70         -e 's+@SYSCONFDIR+$(SYSCONFDIR)+' 
71
72 OSCONFSRC = $(srcdir)/osconf.hin
73
74 osconf.h: $(OSCONFSRC) Makefile
75         cat $(OSCONFSRC) | sed $(PROCESS_REPLACE) > osconf.new
76         $(MOVEIFCHANGED) osconf.new osconf.h
77 ##DOS##!endif
78 ###############################################################################
79
80 krb5/krb5.h: krb5.stamp; : krb5.h
81 krb5.stamp: $(srcdir)/krb5/krb5.hin $(K5_ET_HEADERS)
82         test -d krb5 || mkdir krb5
83         if test -r krb5.h; then \
84           if cmp -s krb5.h $(srcdir)/krb5.h; then :; else rm -f krb5.h; fi; \
85         else :; fi
86         echo "/* This file is generated, please don't edit it directly.  */" > krb5/krb5.new
87         echo "#ifndef KRB5_KRB5_H_INCLUDED" >> krb5/krb5.new
88         echo "#define KRB5_KRB5_H_INCLUDED" >> krb5/krb5.new
89         cat $(srcdir)/krb5/krb5.hin $(K5_ET_HEADERS) >> krb5/krb5.new
90         echo "#endif /* KRB5_KRB5_H_INCLUDED */" >> krb5/krb5.new
91         $(MOVEIFCHANGED) krb5/krb5.new krb5/krb5.h
92         touch krb5.stamp
93
94 verify-calling-conventions-krb5: private-and-public-decls
95         $(PERL) -w $(SRCTOP)/util/def-check.pl private-and-public-decls $(SRCTOP)/lib/krb5_32.def
96
97 ##DOS##!if 0
98 HEADERS_TO_CHECK = krb5/krb5.h $(srcdir)/k5-int.h $(srcdir)/krb5/preauth_plugin.h
99
100 private-and-public-decls: $(HEADERS_TO_CHECK)
101         cat $(HEADERS_TO_CHECK) > $@
102 ##DOS##!endif
103 ##DOS##private-and-public-decls:
104 ##DOS## copy krb5\krb5.h+k5-int.h+krb5\preauth_plugin.h $@
105
106 #
107 # Build the error table include files:
108 # asn1_err.h kdb5_err.h krb5_err.h kv5m_err.h krb524_err.h
109
110 $(K5_ET_HEADERS): rebuild-error-tables
111         : $@
112 rebuild-error-tables:
113         (cd ../lib/krb5/error_tables && $(MAKE) includes)
114
115 .PHONY: force rebuild-error-tables
116 force:
117
118 clean-unix::
119         $(RM) krb5/krb5.h krb5_err.h kdb5_err.h kv5m_err.h krb524_err.h \
120                 asn1_err.h private-and-public-decls krb5.stamp
121         $(RM) $(ET_HEADERS) autoconf.stamp
122
123 clean-windows::
124         $(RM) com_err.h profile.h
125         $(RM) gssapi\gssapi.h gssapi\gssapi_generic.h gssapi\gssapi_krb5.h gssapi\timestamp
126         if exist gssapi\nul rmdir gssapi
127         $(RM) osconf.h autoconf.h autoconf.stamp
128         @echo Making clean in include
129
130 clean::
131         $(RM) osconf.new $(BUILT_HEADERS)
132
133 install-headers-unix install:: krb5/krb5.h profile.h
134         $(INSTALL_DATA) $(srcdir)/krb5.h $(DESTDIR)$(KRB5_INCDIR)$(S)krb5.h
135         $(INSTALL_DATA) $(srcdir)/kdb.h $(DESTDIR)$(KRB5_INCDIR)$(S)kdb.h
136         $(INSTALL_DATA) krb5/krb5.h $(DESTDIR)$(KRB5_INCDIR)$(S)krb5$(S)krb5.h
137         $(INSTALL_DATA) $(srcdir)/krb5/locate_plugin.h $(DESTDIR)$(KRB5_INCDIR)$(S)krb5$(S)locate_plugin.h
138         $(INSTALL_DATA) profile.h $(DESTDIR)$(KRB5_INCDIR)$(S)profile.h
139         $(INSTALL_DATA) $(srcdir)/gssapi.h $(DESTDIR)$(KRB5_INCDIR)$(S)gssapi.h