1# Id 2 3include $(top_srcdir)/Makefile.am.common 4 5AM_CPPFLAGS += -I$(srcdir)/libtommath -DUSE_HCRYPTO_LTM=1 6 7lib_LTLIBRARIES = libhcrypto.la 8check_LTLIBRARIES = libhctest.la 9 10libhcrypto_la_LDFLAGS = -version-info 5:0:1 11libhcrypto_la_LIBADD = \ 12 $(top_builddir)/lib/asn1/libasn1.la \ 13 $(LIB_dlopen) \ 14 $(LIBADD_roken) 15 16hcryptoincludedir = $(includedir)/hcrypto 17buildhcryptoinclude = $(buildinclude)/hcrypto 18 19hcryptoinclude_HEADERS = \ 20 aes.h \ 21 bn.h \ 22 des.h \ 23 dh.h \ 24 dsa.h \ 25 ec.h \ 26 ecdh.h \ 27 ecdsa.h \ 28 engine.h \ 29 evp.h \ 30 evp-hcrypto.h \ 31 evp-cc.h \ 32 hmac.h \ 33 md2.h \ 34 md4.h \ 35 md5.h \ 36 pkcs12.h \ 37 rand.h \ 38 rc2.h \ 39 rc4.h \ 40 rsa.h \ 41 sha.h \ 42 ui.h 43 44install-build-headers:: $(hcryptoinclude_HEADERS) 45 @foo='$(hcryptoinclude_HEADERS)'; \ 46 for f in $$foo; do \ 47 f=`basename $$f`; \ 48 if test -f "$(srcdir)/$$f"; then file="$(srcdir)/$$f"; \ 49 else file="$$f"; fi; \ 50 if cmp -s $$file $(buildhcryptoinclude)/$$f 2> /dev/null ; then \ 51 : ; else \ 52 echo "cp $$file $(buildhcryptoinclude)/$$f";\ 53 cp $$file $(buildhcryptoinclude)/$$f; \ 54 fi ; \ 55 done 56 57PROGRAM_TESTS = \ 58 destest \ 59 mdtest \ 60 rc2test \ 61 rctest \ 62 test_bn \ 63 test_cipher \ 64 test_engine_dso \ 65 test_hmac \ 66 test_pkcs12 \ 67 test_pkcs5 68 69libhctest_la_SOURCES = \ 70 des-tables.h \ 71 des.c \ 72 des.h \ 73 ui.c \ 74 ui.h 75 76destest_LDADD = libhctest.la $(LIB_roken) 77 78SCRIPT_TESTS = \ 79 test_crypto 80 81noinst_PROGRAMS = test_rand 82 83check_PROGRAMS = $(PROGRAM_TESTS) test_rsa test_dh example_evp_cipher 84check_SCRIPTS = $(SCRIPT_TESTS) 85 86TESTS = $(PROGRAM_TESTS) $(SCRIPT_TESTS) 87 88LDADD = $(lib_LTLIBRARIES) $(LIB_roken) 89 90libhcrypto_la_SOURCES = \ 91 $(ltmsources) \ 92 aes.c \ 93 aes.h \ 94 bn.c \ 95 bn.h \ 96 common.c \ 97 common.h \ 98 camellia.h \ 99 camellia.c \ 100 camellia-ntt.c \ 101 camellia-ntt.h \ 102 des-tables.h \ 103 des.c \ 104 des.h \ 105 dh.c \ 106 dh.h \ 107 dh-ltm.c \ 108 dsa.c \ 109 dsa.h \ 110 doxygen.c \ 111 evp.c \ 112 evp.h \ 113 evp-hcrypto.c \ 114 evp-cc.c \ 115 engine.c \ 116 engine.h \ 117 hash.h \ 118 hmac.c \ 119 hmac.h \ 120 md2.c \ 121 md2.h \ 122 md4.c \ 123 md4.h \ 124 md5.c \ 125 md5.h \ 126 pkcs5.c \ 127 pkcs12.c \ 128 rand-egd.c \ 129 rand-fortuna.c \ 130 rand-timer.c \ 131 rand-unix.c \ 132 rand.c \ 133 rand.h \ 134 randi.h \ 135 rc2.c \ 136 rc2.h \ 137 rc4.c \ 138 rc4.h \ 139 rijndael-alg-fst.c \ 140 rijndael-alg-fst.h \ 141 rnd_keys.c \ 142 rsa.c \ 143 rsa-gmp.c \ 144 rsa-ltm.c \ 145 rsa.h \ 146 sha.c \ 147 sha.h \ 148 sha256.c \ 149 sha512.c \ 150 validate.c \ 151 ui.c \ 152 ui.h 153 154ltmsources = \ 155 libtommath/tommath.h \ 156 libtommath/tommath_class.h \ 157 libtommath/tommath_superclass.h \ 158 libtommath/bncore.c \ 159 libtommath/bn_mp_init.c \ 160 libtommath/bn_mp_clear.c \ 161 libtommath/bn_mp_exch.c \ 162 libtommath/bn_mp_grow.c \ 163 libtommath/bn_mp_shrink.c \ 164 libtommath/bn_mp_clamp.c \ 165 libtommath/bn_mp_zero.c \ 166 libtommath/bn_mp_zero_multi.c \ 167 libtommath/bn_mp_set.c \ 168 libtommath/bn_mp_set_int.c \ 169 libtommath/bn_mp_init_size.c \ 170 libtommath/bn_mp_copy.c \ 171 libtommath/bn_mp_init_copy.c \ 172 libtommath/bn_mp_abs.c \ 173 libtommath/bn_mp_neg.c \ 174 libtommath/bn_mp_cmp_mag.c \ 175 libtommath/bn_mp_cmp.c \ 176 libtommath/bn_mp_cmp_d.c \ 177 libtommath/bn_mp_rshd.c \ 178 libtommath/bn_mp_lshd.c \ 179 libtommath/bn_mp_mod_2d.c \ 180 libtommath/bn_mp_div_2d.c \ 181 libtommath/bn_mp_mul_2d.c \ 182 libtommath/bn_mp_div_2.c \ 183 libtommath/bn_mp_mul_2.c \ 184 libtommath/bn_s_mp_add.c \ 185 libtommath/bn_s_mp_sub.c \ 186 libtommath/bn_fast_s_mp_mul_digs.c \ 187 libtommath/bn_s_mp_mul_digs.c \ 188 libtommath/bn_fast_s_mp_mul_high_digs.c \ 189 libtommath/bn_s_mp_mul_high_digs.c \ 190 libtommath/bn_fast_s_mp_sqr.c \ 191 libtommath/bn_s_mp_sqr.c \ 192 libtommath/bn_mp_add.c \ 193 libtommath/bn_mp_sub.c \ 194 libtommath/bn_mp_karatsuba_mul.c \ 195 libtommath/bn_mp_mul.c \ 196 libtommath/bn_mp_karatsuba_sqr.c \ 197 libtommath/bn_mp_sqr.c \ 198 libtommath/bn_mp_div.c \ 199 libtommath/bn_mp_mod.c \ 200 libtommath/bn_mp_add_d.c \ 201 libtommath/bn_mp_sub_d.c \ 202 libtommath/bn_mp_mul_d.c \ 203 libtommath/bn_mp_div_d.c \ 204 libtommath/bn_mp_mod_d.c \ 205 libtommath/bn_mp_expt_d.c \ 206 libtommath/bn_mp_addmod.c \ 207 libtommath/bn_mp_submod.c \ 208 libtommath/bn_mp_mulmod.c \ 209 libtommath/bn_mp_sqrmod.c \ 210 libtommath/bn_mp_gcd.c \ 211 libtommath/bn_mp_lcm.c \ 212 libtommath/bn_fast_mp_invmod.c \ 213 libtommath/bn_mp_invmod.c \ 214 libtommath/bn_mp_reduce.c \ 215 libtommath/bn_mp_montgomery_setup.c \ 216 libtommath/bn_fast_mp_montgomery_reduce.c \ 217 libtommath/bn_mp_montgomery_reduce.c \ 218 libtommath/bn_mp_exptmod_fast.c \ 219 libtommath/bn_mp_exptmod.c \ 220 libtommath/bn_mp_2expt.c \ 221 libtommath/bn_mp_n_root.c \ 222 libtommath/bn_mp_jacobi.c \ 223 libtommath/bn_reverse.c \ 224 libtommath/bn_mp_count_bits.c \ 225 libtommath/bn_mp_read_unsigned_bin.c \ 226 libtommath/bn_mp_read_signed_bin.c \ 227 libtommath/bn_mp_to_unsigned_bin.c \ 228 libtommath/bn_mp_to_signed_bin.c \ 229 libtommath/bn_mp_unsigned_bin_size.c \ 230 libtommath/bn_mp_signed_bin_size.c \ 231 libtommath/bn_mp_xor.c \ 232 libtommath/bn_mp_and.c \ 233 libtommath/bn_mp_or.c \ 234 libtommath/bn_mp_rand.c \ 235 libtommath/bn_mp_montgomery_calc_normalization.c \ 236 libtommath/bn_mp_prime_is_divisible.c \ 237 libtommath/bn_prime_tab.c \ 238 libtommath/bn_mp_prime_fermat.c \ 239 libtommath/bn_mp_prime_miller_rabin.c \ 240 libtommath/bn_mp_prime_is_prime.c \ 241 libtommath/bn_mp_prime_next_prime.c \ 242 libtommath/bn_mp_find_prime.c \ 243 libtommath/bn_mp_isprime.c \ 244 libtommath/bn_mp_dr_reduce.c \ 245 libtommath/bn_mp_dr_is_modulus.c \ 246 libtommath/bn_mp_dr_setup.c \ 247 libtommath/bn_mp_reduce_setup.c \ 248 libtommath/bn_mp_toom_mul.c \ 249 libtommath/bn_mp_toom_sqr.c \ 250 libtommath/bn_mp_div_3.c \ 251 libtommath/bn_s_mp_exptmod.c \ 252 libtommath/bn_mp_reduce_2k.c \ 253 libtommath/bn_mp_reduce_is_2k.c \ 254 libtommath/bn_mp_reduce_2k_setup.c \ 255 libtommath/bn_mp_reduce_2k_l.c \ 256 libtommath/bn_mp_reduce_is_2k_l.c \ 257 libtommath/bn_mp_reduce_2k_setup_l.c \ 258 libtommath/bn_mp_radix_smap.c \ 259 libtommath/bn_mp_read_radix.c \ 260 libtommath/bn_mp_toradix.c \ 261 libtommath/bn_mp_radix_size.c \ 262 libtommath/bn_mp_fread.c \ 263 libtommath/bn_mp_fwrite.c \ 264 libtommath/bn_mp_cnt_lsb.c \ 265 libtommath/bn_error.c \ 266 libtommath/bn_mp_init_multi.c \ 267 libtommath/bn_mp_clear_multi.c \ 268 libtommath/bn_mp_exteuclid.c \ 269 libtommath/bn_mp_toradix_n.c \ 270 libtommath/bn_mp_prime_random_ex.c \ 271 libtommath/bn_mp_get_int.c \ 272 libtommath/bn_mp_sqrt.c \ 273 libtommath/bn_mp_is_square.c \ 274 libtommath/bn_mp_init_set.c \ 275 libtommath/bn_mp_init_set_int.c \ 276 libtommath/bn_mp_invmod_slow.c \ 277 libtommath/bn_mp_prime_rabin_miller_trials.c \ 278 libtommath/bn_mp_to_signed_bin_n.c \ 279 libtommath/bn_mp_to_unsigned_bin_n.c 280 281 282$(libhcrypto_la_OBJECTS): hcrypto-link 283 284libhcrypto_la_CPPFLAGS = -DBUILD_HCRYPTO_LIB $(AM_CPPFLAGS) 285 286if versionscript 287libhcrypto_la_LDFLAGS += $(LDFLAGS_VERSION_SCRIPT)$(srcdir)/version-script.map 288endif 289$(libhcrypto_la_OBJECTS): $(srcdir)/version-script.map 290 291 292hcrypto-link: 293 $(LN_S) $(srcdir)/../hcrypto hcrypto 294 touch hcrypto-link 295 296do_subst = sed -e 's,[@]srcdir[@],$(srcdir),g' -e 's,[@]exeext[@],$(exeext),g' 297 298test_crypto: test_crypto.in Makefile 299 $(do_subst) < $(srcdir)/test_crypto.in > test_crypto.tmp 300 chmod +x test_crypto.tmp 301 mv test_crypto.tmp test_crypto 302 303CLEANFILES = \ 304 crypto-test \ 305 crypto-test2 \ 306 error \ 307 hcrypto \ 308 hcrypto-link \ 309 test.file \ 310 test_crypto \ 311 test-out* \ 312 test_crypto.tmp \ 313 test_crypto.tmp 314 315EXTRA_DIST = \ 316 NTMakefile \ 317 DESperate.txt \ 318 passwd_dialog.rc \ 319 libhcrypto-exports.def \ 320 dllmain.c \ 321 ec.h \ 322 ecdh.h \ 323 ecdsa.h \ 324 gen-des.pl \ 325 md5crypt_test.c \ 326 passwd_dialog.aps \ 327 passwd_dialog.clw \ 328 passwd_dialog.rc \ 329 passwd_dialog.res \ 330 passwd_dlg.c \ 331 passwd_dlg.h \ 332 resource.h \ 333 rsakey.der \ 334 rsakey2048.der \ 335 rsakey4096.der \ 336 test_crypto.in \ 337 version-script.map 338