summaryrefslogtreecommitdiffstats
path: root/src/lib/gssapi/Makefile.in
diff options
context:
space:
mode:
authorKen Raeburn <raeburn@mit.edu>2006-06-29 01:42:42 +0000
committerKen Raeburn <raeburn@mit.edu>2006-06-29 01:42:42 +0000
commit4cd0909789898719321ab281da9321533d739408 (patch)
tree5918ac42a783cf6fbcb5a8b250cd7544417bc903 /src/lib/gssapi/Makefile.in
parentb2652ea2c3929a002bcce433de87b2c7599abb8a (diff)
downloadkrb5-4cd0909789898719321ab281da9321533d739408.tar.gz
krb5-4cd0909789898719321ab281da9321533d739408.tar.xz
krb5-4cd0909789898719321ab281da9321533d739408.zip
check calling conventions specified for Windows
When we're making changes on UNIX, sometimes we update the Windows export list but forget to make sure we've annotated the function declaration in the header file with a calling convention specification. This patch checks the krb5 and gssapi public headers against the Windows export lists (which are annotated with calling-convention and other info in comments), and flags any inconsistencies in public interfaces. * util/def-check.pl: Be quiet about normal stuff by default; accept a "-v" option to be verbose. Exit with non-zero status if something wrong is detected. Fix some problems in parsing gssapi header files. Handle DECSCRIPTION and HEAPSIZE directives in .def files, and DATA annotation in comments. * include/Makefile.in (verify-calling-conventions-krb5): New target. (all-unix): Depend on it in maintainer mode. * lib/gssapi/Makefile.in (verify-calling-conventions-gssapi): New target. (all-unix): Depend on it in maintainer mode. (merged-gssapi-header.h): New target; assemble public headers into one input file. (clean-misc-unix): New target; delete merged-gssapi-header.h. (clean-unix): Depend on it. ticket: new git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@18258 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/gssapi/Makefile.in')
-rw-r--r--src/lib/gssapi/Makefile.in19
1 files changed, 17 insertions, 2 deletions
diff --git a/src/lib/gssapi/Makefile.in b/src/lib/gssapi/Makefile.in
index b8568c7d52..20012fe630 100644
--- a/src/lib/gssapi/Makefile.in
+++ b/src/lib/gssapi/Makefile.in
@@ -38,15 +38,30 @@ SHLIB_DIRS=-L$(TOPLIBD)
SHLIB_RDIRS=$(KRB5_LIBDIR)
RELDIR=gssapi
-all-unix:: all-liblinks
+all-unix:: all-liblinks @MAINT@ verify-calling-conventions-gssapi
install-unix:: install-libs
-clean-unix:: clean-liblinks clean-libs clean-libobjs
+clean-unix:: clean-liblinks clean-libs clean-libobjs clean-misc-unix
clean-windows::
$(RM) gssapi.lib gssapi.bak
+clean-misc-unix:
+ $(RM) merged-gssapi-header.h
+
+EHDRDIR=$(BUILDTOP)$(S)include$(S)gssapi
+EXPORTED_HEADERS= \
+ $(EHDRDIR)$(S)gssapi_krb5.h \
+ $(EHDRDIR)$(S)gssapi_generic.h \
+ $(EHDRDIR)$(S)gssapi.h
+$(EXPORTED_HEADERS): all-recurse
+merged-gssapi-header.h: $(EXPORTED_HEADERS)
+ cat $(EXPORTED_HEADERS) > merged.tmp
+ $(MV) merged.tmp merged-gssapi-header.h
+verify-calling-conventions-gssapi: merged-gssapi-header.h
+ $(PERL) -w $(SRCTOP)/util/def-check.pl merged-gssapi-header.h $(srcdir)/../gssapi32.def
+
all-windows::
cd generic
@echo Making in gssapi\generic