Windows: Use 32-bit time_t on 32-bit builds
[heimdal.git] / include / NTMakefile
blobc4aa663e70cca23b197f7f1162530615a3bc2b30
1 ########################################################################
3 # Copyright (c) 2009, Secure Endpoints Inc.
4 # All rights reserved.
5
6 # Redistribution and use in source and binary forms, with or without
7 # modification, are permitted provided that the following conditions
8 # are met:
9
10 # - Redistributions of source code must retain the above copyright
11 #   notice, this list of conditions and the following disclaimer.
12
13 # - Redistributions in binary form must reproduce the above copyright
14 #   notice, this list of conditions and the following disclaimer in
15 #   the documentation and/or other materials provided with the
16 #   distribution.
17
18 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
21 # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
22 # COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
23 # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
24 # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
26 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
28 # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29 # POSSIBILITY OF SUCH DAMAGE.
30
32 RELDIR=include
34 SUBDIRS=kadm5 hcrypto gssapi
36 !include ../windows/NTMakefile.w32
37 !include ../windows/NTMakefile.config
39 INCFILES=                       \
40         $(INCDIR)\config.h      \
41         $(INCDIR)\crypto-headers.h      \
42         $(INCDIR)\heim_threads.h        \
43         $(INCDIR)\krb5-types.h  \
44         $(INCDIR)\version.h
46 $(INCDIR)\krb5-types.h: $(OBJ)\bits.exe
47         $(OBJ)\bits.exe $(INCDIR)\krb5-types.h
49 $(OBJ)\bits.exe: $(OBJ)\bits.obj
50         $(EXECONLINK)
51         $(EXEPREP_NODIST)
53 $(INCDIR)\config.h: config.h.w32 ..\windows\NTMakefile.config NTMakefile
54         $(PERL) << < config.h.w32 > $@
56 while(<>) {
58   if (m/\@FEATURE_DEFS\@/) {
60     if ("$(KRB5)") { print "#define KRB5 1\n"; }
61     if ("$(KRB4)") { print "#define KRB4 1\n"; }
62     if ("$(PKINIT)") { print "#define PKINIT 1\n"; }
63     if ("$(NO_AFS)") { print "#define NO_AFS 1\n"; }
64     if ("$(OPENLDAP)") { print "#define OPENLDAP 1\n"; }
65     if ("$(OPENLDAP_MODULE)") { print "#define OPENLDAP_MODULE 1\n"; }
66     if ("$(OTP)") { print "#define OTP 1 \n"; }
67     if ("$(AUTHENTICATION)") { print "#define AUTHENTICATION 1\n"; }
68     if ("$(DIAGNOSTICS)") { print "#define DIAGNOSTICS 1\n"; }
69     if ("$(ENCRYPTION)") { print "#define ENCRYPTION 1\n"; }
70     if ("$(ENABLE_AFS_STRING_TO_KEY)") { print "#define ENABLE_AFS_STRING_TO_KEY 1\n"; }
71     if ("$(ENABLE_PTHREAD_SUPPORT)") { print "#define ENABLE_PTHREAD_SUPPORT 1\n"; }
72     if ("$(HAVE_PTHREAD_H)") { print "#define HAVE_PTHREAD_H 1\n"; }
73     if ("$(ENV_HACK)") { print "#define ENV_HACK 1\n"; }
74     if ("$(HAVE_KCM)") { print "#define HAVE_KCM 1\n"; }
75     if ("$(HAVE_SCC)") { print "#define HAVE_SCC 1\n"; }
76     if ("$(DIR_hdbdir)") { print "#define HDB_DB_DIR \"".'$(DIR_hdbdir)'."\"\n"; }
78   } elsif (m/\@VERSION_OPTDEFS\@/) {
80     if ("$(VER_PRERELEASE)") { print "#define VER_PRERELEASE 1\n"; }
81     if ("$(VER_PRIVATE)") { print "#define VER_PRIVATE \"$(VER_PRIVATE)\"\n"; }
82     if ("$(VER_SPECIAL)") { print "#define VER_SPECIAL \"$(VER_SPECIAL)\"\n"; }
83     if ("$(BUILD)" =~ "dbg") { print "#define VER_DEBUG 1\n"; }
84     print "#define HOST \"$(COMPUTERNAME)\"\n";
86   } else {
88     s/\@PACKAGE\@/$(VER_PACKAGE)/;
89     s/\@PACKAGE_NAME\@/$(VER_PACKAGE_NAME)/;
90     s/\@PACKAGE_BUGREPORT\@/$(VER_PACKAGE_BUGREPORT:@=\@)/;
91     s/\@PACKAGE_VERSION\@/$(VER_PACKAGE_VERSION)/;
92     s/\@PACKAGE_COPYRIGHT\@/$(VER_PACKAGE_COPYRIGHT)/;
93     s/\@PACKAGE_COMPANY\@/$(VER_PACKAGE_COMPANY)/;
94     s/\@MAJOR\@/$(VER_PRODUCT_MAJOR)/;
95     s/\@MINOR\@/$(VER_PRODUCT_MINOR)/;
96     s/\@AUX\@/$(VER_PRODUCT_AUX)/;
97     s/\@PATCH\@/$(VER_PRODUCT_PATCH)/;
99     print $_;
100   }
105 $(INCDIR)\version.h: ..\windows\NTMakefile.config NTMakefile
106         $(CP) << $@
107 const char *heimdal_long_version = "@(#)$$Version: $(VER_PACKAGE_NAME) $(VER_PACKAGE_VERSION) by $(USERNAME) on $(COMPUTERNAME) ($(CPU)-pc-windows) $$";
108 const char *heimdal_version = "$(VER_PACKAGE_NAME) $(VER_PACKAGE_VERSION)";
111 all:: $(INCFILES)
113 clean::
114         -$(RM) $(INCFILES)