summaryrefslogtreecommitdiff
path: root/source4/heimdal/include/NTMakefile
blob: 284ceba7ebb0b027d4a3f804a0eb0f3cc64ad37a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
# 
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 
# - Redistributions of source code must retain the above copyright
#   notice, this list of conditions and the following disclaimer.
# 
# - Redistributions in binary form must reproduce the above copyright
#   notice, this list of conditions and the following disclaimer in
#   the documentation and/or other materials provided with the
#   distribution.
# 
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
# 

RELDIR=include

SUBDIRS=kadm5 hcrypto gssapi

!include ../windows/NTMakefile.w32
!include ../windows/NTMakefile.version
!include ../windows/NTMakefile.config

INCFILES=			\
	$(INCDIR)\config.h	\
	$(INCDIR)\crypto-headers.h	\
	$(INCDIR)\heimqueue.h	\
	$(INCDIR)\heim_threads.h	\
	$(INCDIR)\krb5-types.h	\
	$(INCDIR)\version.h

$(INCDIR)\krb5-types.h: $(OBJ)\bits.exe
	$(OBJ)\bits.exe $(INCDIR)\krb5-types.h

$(OBJ)\bits.exe: $(OBJ)\bits.obj
	$(EXECONLINK)
	$(EXEPREP_NODIST)

$(INCDIR)\config.h: config.h.w32 ..\windows\NTMakefile.config ..\windows\NTMakefile.version NTMakefile
	$(PERL) << < config.h.w32 > $@

while(<>) {

  if (m/\@FEATURE_DEFS\@/) {

    if ("$(KRB5)") { print "#define KRB5 1\n"; }
    if ("$(KRB4)") { print "#define KRB4 1\n"; }
    if ("$(WEAK_CRYPTO)") { print "#define HEIM_WEAK_CRYPTO 1\n"; }
    if ("$(HCRYPTO_FALLBACK)") { print "#define HCRYPTO_FALLBACK 1\n"; } else { print "#define HCRYPTO_FALLBACK 0\n"; }
    if ("$(PKINIT)") { print "#define PKINIT 1\n"; }
    if ("$(NO_AFS)") { print "#define NO_AFS 1\n"; }
    if ("$(OPENLDAP)") { print "#define OPENLDAP 1\n"; }
    if ("$(OPENLDAP_MODULE)") { print "#define OPENLDAP_MODULE 1\n"; }
    if ("$(OTP)") { print "#define OTP 1 \n"; }
    if ("$(AUTHENTICATION)") { print "#define AUTHENTICATION 1\n"; }
    if ("$(DIAGNOSTICS)") { print "#define DIAGNOSTICS 1\n"; }
    if ("$(ENCRYPTION)") { print "#define ENCRYPTION 1\n"; }
    if ("$(ENABLE_AFS_STRING_TO_KEY)") { print "#define ENABLE_AFS_STRING_TO_KEY 1\n"; }
    if ("$(ENABLE_PTHREAD_SUPPORT)") { print "#define ENABLE_PTHREAD_SUPPORT 1\n"; }
    if ("$(HAVE_PTHREAD_H)") { print "#define HAVE_PTHREAD_H 1\n"; }
    if ("$(ENV_HACK)") { print "#define ENV_HACK 1\n"; }
    if ("$(HAVE_KCM)") { print "#define HAVE_KCM 1\n"; }
    if ("$(HAVE_SCC)") { print "#define HAVE_SCC 1\n"; }
    if ("$(HAVE_STDINT_H)") { print "#define HAVE_STDINT_H 1\n"; }
    if ("$(DIR_hdbdir)") { print "#define HDB_DB_DIR \"".'$(DIR_hdbdir)'."\"\n"; }
    if ("$(HAVE_MSLSA_CACHE)") { print "#define HAVE_MSLSA_CACHE 1\n"; }
    if ("$(NO_LOCALNAME)") { print "#define NO_LOCALNAME 1\n"; }

  } elsif (m/\@VERSION_OPTDEFS\@/) {

    if ("$(VER_PRERELEASE)") { print "#define VER_PRERELEASE 1\n"; }
    if ("$(VER_PRIVATE)") { print "#define VER_PRIVATE \"$(VER_PRIVATE)\"\n"; }
    if ("$(VER_SPECIAL)") { print "#define VER_SPECIAL \"$(VER_SPECIAL)\"\n"; }
    if ("$(BUILD)" eq "dbg") { print "#define VER_DEBUG 1\n"; }
    print "#define HOST \"$(COMPUTERNAME)\"\n";

  } else {

    s/\@PACKAGE\@/$(VER_PACKAGE)/;
    s/\@PACKAGE_NAME\@/$(VER_PACKAGE_NAME)/;
    s{\@PACKAGE_BUGREPORT\@}{$(VER_PACKAGE_BUGREPORT:@=\@)};
    s/\@PACKAGE_VERSION\@/$(VER_PACKAGE_VERSION)/;
    s/\@PACKAGE_COPYRIGHT\@/$(VER_PACKAGE_COPYRIGHT)/;
    s/\@PACKAGE_COMPANY\@/$(VER_PACKAGE_COMPANY)/;
    s/\@MAJOR\@/$(VER_PRODUCT_MAJOR)/;
    s/\@MINOR\@/$(VER_PRODUCT_MINOR)/;
    s/\@AUX\@/$(VER_PRODUCT_AUX)/;
    s/\@PATCH\@/$(VER_PRODUCT_PATCH)/;

    print $_;
  }
}

<<

$(INCDIR)\version.h: ..\windows\NTMakefile.version NTMakefile
	$(CP) << $@
const char *heimdal_long_version = "@(#)$$Version: $(VER_PACKAGE_NAME) $(VER_PACKAGE_VERSION) by $(USERNAME) on $(COMPUTERNAME) ($(CPU)-pc-windows) $$";
const char *heimdal_version = "$(VER_PACKAGE_NAME) $(VER_PACKAGE_VERSION)";
<<

all:: $(INCFILES)

clean::
	-$(RM) $(INCFILES)