Build Tom's fast math library on Windows
[heimdal.git] / lib / hcrypto / tomsfastmath / NTMakefile
blobfc75b6c23bb67350ad15c9cc5dbd789f2b5dc1e2
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=lib\hcrypto\tomsfastmath
34 !include ../../../windows/NTMakefile.w32
36 INCFILES=$(INCDIR)\tfm.h
38 libtfm_OBJs=    \
39         $(OBJ)\fp_add.obj       \
40         $(OBJ)\fp_add_d.obj     \
41         $(OBJ)\fp_addmod.obj    \
42         $(OBJ)\fp_cmp.obj       \
43         $(OBJ)\fp_cmp_d.obj     \
44         $(OBJ)\fp_cmp_mag.obj   \
45         $(OBJ)\fp_sub.obj       \
46         $(OBJ)\fp_sub_d.obj     \
47         $(OBJ)\fp_submod.obj    \
48         $(OBJ)\s_fp_add.obj     \
49         $(OBJ)\s_fp_sub.obj     \
50         $(OBJ)\fp_radix_size.obj        \
51         $(OBJ)\fp_read_radix.obj        \
52         $(OBJ)\fp_read_signed_bin.obj   \
53         $(OBJ)\fp_read_unsigned_bin.obj \
54         $(OBJ)\fp_reverse.obj   \
55         $(OBJ)\fp_s_rmap.obj    \
56         $(OBJ)\fp_signed_bin_size.obj   \
57         $(OBJ)\fp_to_signed_bin.obj     \
58         $(OBJ)\fp_to_unsigned_bin.obj   \
59         $(OBJ)\fp_toradix.obj   \
60         $(OBJ)\fp_unsigned_bin_size.obj \
61         $(OBJ)\fp_cnt_lsb.obj   \
62         $(OBJ)\fp_count_bits.obj        \
63         $(OBJ)\fp_div_2.obj     \
64         $(OBJ)\fp_div_2d.obj    \
65         $(OBJ)\fp_lshd.obj      \
66         $(OBJ)\fp_mod_2d.obj    \
67         $(OBJ)\fp_rshd.obj      \
68         $(OBJ)\fp_div.obj       \
69         $(OBJ)\fp_div_d.obj     \
70         $(OBJ)\fp_mod.obj       \
71         $(OBJ)\fp_mod_d.obj     \
72         $(OBJ)\fp_2expt.obj     \
73         $(OBJ)\fp_exptmod.obj   \
74         $(OBJ)\fp_ident.obj     \
75         $(OBJ)\fp_set.obj       \
76         $(OBJ)\fp_montgomery_calc_normalization.obj     \
77         $(OBJ)\fp_montgomery_reduce.obj \
78         $(OBJ)\fp_montgomery_setup.obj  \
79         $(OBJ)\fp_mul.obj       \
80         $(OBJ)\fp_mul_2.obj     \
81         $(OBJ)\fp_mul_2d.obj    \
82         $(OBJ)\fp_mul_comba.obj \
83         $(OBJ)\fp_mul_comba_12.obj      \
84         $(OBJ)\fp_mul_comba_17.obj      \
85         $(OBJ)\fp_mul_comba_20.obj      \
86         $(OBJ)\fp_mul_comba_24.obj      \
87         $(OBJ)\fp_mul_comba_28.obj      \
88         $(OBJ)\fp_mul_comba_3.obj       \
89         $(OBJ)\fp_mul_comba_32.obj      \
90         $(OBJ)\fp_mul_comba_4.obj       \
91         $(OBJ)\fp_mul_comba_48.obj      \
92         $(OBJ)\fp_mul_comba_6.obj       \
93         $(OBJ)\fp_mul_comba_64.obj      \
94         $(OBJ)\fp_mul_comba_7.obj       \
95         $(OBJ)\fp_mul_comba_8.obj       \
96         $(OBJ)\fp_mul_comba_9.obj       \
97         $(OBJ)\fp_mul_comba_small_set.obj       \
98         $(OBJ)\fp_mul_d.obj     \
99         $(OBJ)\fp_mulmod.obj    \
100         $(OBJ)\fp_gcd.obj       \
101         $(OBJ)\fp_invmod.obj    \
102         $(OBJ)\fp_isprime.obj   \
103         $(OBJ)\fp_lcm.obj       \
104         $(OBJ)\fp_prime_miller_rabin.obj        \
105         $(OBJ)\fp_prime_random_ex.obj   \
106         $(OBJ)\fp_sqr.obj       \
107         $(OBJ)\fp_sqr_comba.obj \
108         $(OBJ)\fp_sqr_comba_12.obj      \
109         $(OBJ)\fp_sqr_comba_17.obj      \
110         $(OBJ)\fp_sqr_comba_20.obj      \
111         $(OBJ)\fp_sqr_comba_24.obj      \
112         $(OBJ)\fp_sqr_comba_28.obj      \
113         $(OBJ)\fp_sqr_comba_3.obj       \
114         $(OBJ)\fp_sqr_comba_32.obj      \
115         $(OBJ)\fp_sqr_comba_4.obj       \
116         $(OBJ)\fp_sqr_comba_48.obj      \
117         $(OBJ)\fp_sqr_comba_6.obj       \
118         $(OBJ)\fp_sqr_comba_64.obj      \
119         $(OBJ)\fp_sqr_comba_7.obj       \
120         $(OBJ)\fp_sqr_comba_8.obj       \
121         $(OBJ)\fp_sqr_comba_9.obj       \
122         $(OBJ)\fp_sqr_comba_generic.obj \
123         $(OBJ)\fp_sqr_comba_small_set.obj       \
124         $(OBJ)\fp_sqrmod.obj
126 {src\addsub}.c{$(OBJ)}.obj:
127         $(C2OBJ)
129 {src\bin}.c{$(OBJ)}.obj:
130         $(C2OBJ)
132 {src\bit}.c{$(OBJ)}.obj:
133         $(C2OBJ)
135 {src\divide}.c{$(OBJ)}.obj:
136         $(C2OBJ)
138 {src\exptmod}.c{$(OBJ)}.obj:
139         $(C2OBJ)
141 {src\misc}.c{$(OBJ)}.obj:
142         $(C2OBJ)
144 {src\mont}.c{$(OBJ)}.obj:
145         $(C2OBJ)
147 {src\mul}.c{$(OBJ)}.obj:
148         $(C2OBJ)
150 {src\numtheory}.c{$(OBJ)}.obj:
151         $(C2OBJ)
153 {src\sqr}.c{$(OBJ)}.obj:
154         $(C2OBJ)
156 {src\headers}.h{$(INCDIR)}.h:
157         $(CP) $** $@
159 $(LIBTFM): $(libtfm_OBJs)
160         $(LIBCON)
162 all:: $(INCFILES) $(LIBTFM)