forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
378 lines
12 KiB
378 lines
12 KiB
# $Id: Makefile.win32 242 2010-06-21 15:26:31Z tp $ |
|
# |
|
# Makefile for Visual C++. Use with command-line tool nmake: |
|
# nmake /f makefile.win32 |
|
# |
|
# (nmake.exe comes with Visual C++, in the same directory as the |
|
# command-line compiler cl.exe) |
|
# |
|
# ==========================(LICENSE BEGIN)============================ |
|
# |
|
# Copyright (c) 2007-2010 Projet RNRT SAPHIR |
|
# |
|
# Permission is hereby granted, free of charge, to any person obtaining |
|
# a copy of this software and associated documentation files (the |
|
# "Software"), to deal in the Software without restriction, including |
|
# without limitation the rights to use, copy, modify, merge, publish, |
|
# distribute, sublicense, and/or sell copies of the Software, and to |
|
# permit persons to whom the Software is furnished to do so, subject to |
|
# the following conditions: |
|
# |
|
# The above copyright notice and this permission notice shall be included |
|
# in all copies or substantial portions of the Software. |
|
# |
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, |
|
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
|
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. |
|
# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY |
|
# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, |
|
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE |
|
# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
|
# |
|
# ===========================(LICENSE END)============================= |
|
# |
|
|
|
# |
|
# We use "/W2" because higher warning levels trigger dozens of spurious |
|
# warnings about possible loss of precision when casting integer types |
|
# into "unsigned char" values -- but we really want that "loss of |
|
# precision". |
|
# |
|
# The "/D_CRT_SECURE_NO_DEPRECATE" flag avoids a warning on fopen(). We |
|
# use fopen() only for reading, which has no security problem. |
|
# |
|
# Optimization flags are tricky. These ones provide good performance on |
|
# an AMD Athlon 64 architecture (used in 32-bit mode). |
|
# |
|
|
|
CC = cl |
|
CFLAGS = /nologo /O2 /Ob2tiy /W2 /D_CRT_SECURE_NO_DEPRECATE |
|
|
|
# |
|
# You can use /arch:SSE or /arch:SSE2 to activate usage of opcodes and |
|
# optimizations valid only for the CPUs which feature, respectively, the |
|
# SSE and the SSE2 instruction sets. |
|
# |
|
#CFLAGS = /nologo /O2 /Ob2tiy /W2 /D_CRT_SECURE_NO_DEPRECATE /arch:SSE2 |
|
|
|
# ========================================================================== |
|
|
|
OBJ = blake.obj bmw.obj cubehash.obj echo.obj fugue.obj groestl.obj hamsi.obj haval.obj jh.obj keccak.obj luffa.obj md2.obj md4.obj md5.obj panama.obj radiogatun.obj ripemd.obj sha0.obj sha1.obj sha2.obj sha2big.obj shabal.obj shavite.obj simd.obj skein.obj tiger.obj whirlpool.obj |
|
TESTTYPES = test_types.exe |
|
TESTBLAKE = test_blake.exe |
|
TESTBMW = test_bmw.exe |
|
TESTCUBEHASH = test_cubehash.exe |
|
TESTECHO = test_echo.exe |
|
TESTFUGUE = test_fugue.exe |
|
TESTGROESTL = test_groestl.exe |
|
TESTHAMSI = test_hamsi.exe |
|
TESTHAVAL = test_haval.exe |
|
TESTJH = test_jh.exe |
|
TESTKECCAK = test_keccak.exe |
|
TESTLUFFA = test_luffa.exe |
|
TESTMD2 = test_md2.exe |
|
TESTMD4 = test_md4.exe |
|
TESTMD5 = test_md5.exe |
|
TESTPANAMA = test_panama.exe |
|
TESTRADIOGATUN = test_radiogatun.exe |
|
TESTRIPEMD = test_ripemd.exe |
|
TESTSHA0 = test_sha0.exe |
|
TESTSHA1 = test_sha1.exe |
|
TESTSHA2 = test_sha2.exe |
|
TESTSHA3 = test_sha2big.exe |
|
TESTSHABAL = test_shabal.exe |
|
TESTSHAVITE = test_shavite.exe |
|
TESTSIMD = test_simd.exe |
|
TESTSKEIN = test_skein.exe |
|
TESTTIGER = test_tiger.exe |
|
TESTWHIRLPOOL = test_whirlpool.exe |
|
TESTS = $(TESTTYPES) $(TESTBLAKE) $(TESTBMW) $(TESTCUBEHASH) $(TESTECHO) $(TESTFUGUE) $(TESTGROESTL) $(TESTHAMSI) $(TESTHAVAL) $(TESTJH) $(TESTKECCAK) $(TESTLUFFA) $(TESTMD2) $(TESTMD4) $(TESTMD5) $(TESTPANAMA) $(TESTRADIOGATUN) $(TESTRIPEMD) $(TESTSHA0) $(TESTSHA1) $(TESTSHA2) $(TESTSHA3) $(TESTSHABAL) $(TESTSHAVITE) $(TESTSIMD) $(TESTSKEIN) $(TESTTIGER) $(TESTWHIRLPOOL) |
|
TESTTYPESOBJ = test_types.obj utest.obj |
|
TESTBLAKEOBJ = test_blake.obj blake.obj utest.obj |
|
TESTBMWOBJ = test_bmw.obj bmw.obj utest.obj |
|
TESTCUBEHASHOBJ = test_cubehash.obj cubehash.obj utest.obj |
|
TESTECHOOBJ = test_echo.obj echo.obj utest.obj |
|
TESTFUGUEOBJ = test_fugue.obj fugue.obj utest.obj |
|
TESTGROESTLOBJ = test_groestl.obj groestl.obj utest.obj |
|
TESTHAMSIOBJ = test_hamsi.obj hamsi.obj utest.obj |
|
TESTHAVALOBJ = test_haval.obj haval.obj utest.obj |
|
TESTJHOBJ = test_jh.obj jh.obj utest.obj |
|
TESTKECCAKOBJ = test_keccak.obj keccak.obj utest.obj |
|
TESTLUFFAOBJ = test_luffa.obj luffa.obj utest.obj |
|
TESTMD2OBJ = test_md2.obj md2.obj utest.obj |
|
TESTMD4OBJ = test_md4.obj md4.obj utest.obj |
|
TESTMD5OBJ = test_md5.obj md5.obj utest.obj |
|
TESTPANAMAOBJ = test_panama.obj panama.obj utest.obj |
|
TESTRADIOGATUNOBJ = test_radiogatun.obj radiogatun.obj utest.obj |
|
TESTRIPEMDOBJ = test_ripemd.obj ripemd.obj utest.obj |
|
TESTSHA0OBJ = test_sha0.obj sha0.obj utest.obj |
|
TESTSHA1OBJ = test_sha1.obj sha1.obj utest.obj |
|
TESTSHA2OBJ = test_sha2.obj sha2.obj utest.obj |
|
TESTSHA3OBJ = test_sha2big.obj sha2big.obj utest.obj |
|
TESTSHABALOBJ = test_shabal.obj shabal.obj utest.obj |
|
TESTSHAVITEOBJ = test_shavite.obj shavite.obj utest.obj |
|
TESTSIMDOBJ = test_simd.obj simd.obj utest.obj |
|
TESTSKEINOBJ = test_skein.obj skein.obj utest.obj |
|
TESTTIGEROBJ = test_tiger.obj tiger.obj utest.obj |
|
TESTWHIRLPOOLOBJ = test_whirlpool.obj whirlpool.obj utest.obj |
|
SPEED = sphspeed.exe |
|
SPEEDOBJ = speed.obj |
|
HSUM = sphsum.exe |
|
HSUMOBJ = hsum.obj |
|
HEADERS = sph_blake.h sph_bmw.h sph_cubehash.h sph_echo.h sph_fugue.h sph_groestl.h sph_hamsi.h sph_haval.h sph_jh.h sph_keccak.h sph_luffa.h sph_md2.h sph_md4.h sph_md5.h sph_panama.h sph_radiogatun.h sph_ripemd.h sph_sha0.h sph_sha1.h sph_sha2.h sph_sha3.h sph_shabal.h sph_shavite.h sph_simd.h sph_skein.h sph_tiger.h sph_types.h sph_whirlpool.h |
|
|
|
all: compile tests |
|
|
|
compile: $(OBJ) $(SPEED) $(HSUM) |
|
|
|
build-tests: $(TESTS) |
|
|
|
run-tests: build-tests |
|
$(TESTTYPES) |
|
$(TESTBLAKE) |
|
$(TESTBMW) |
|
$(TESTCUBEHASH) |
|
$(TESTECHO) |
|
$(TESTFUGUE) |
|
$(TESTGROESTL) |
|
$(TESTHAMSI) |
|
$(TESTHAVAL) |
|
$(TESTJH) |
|
$(TESTKECCAK) |
|
$(TESTLUFFA) |
|
$(TESTMD2) |
|
$(TESTMD4) |
|
$(TESTMD5) |
|
$(TESTPANAMA) |
|
$(TESTRADIOGATUN) |
|
$(TESTRIPEMD) |
|
$(TESTSHA0) |
|
$(TESTSHA1) |
|
$(TESTSHA2) |
|
$(TESTSHA3) |
|
$(TESTSHABAL) |
|
$(TESTSHAVITE) |
|
$(TESTSIMD) |
|
$(TESTSKEIN) |
|
$(TESTTIGER) |
|
$(TESTWHIRLPOOL) |
|
|
|
tests: build-tests run-tests |
|
|
|
clean: |
|
-del /Q $(OBJ) $(TESTS) $(TESTTYPESOBJ) $(TESTBLAKEOBJ) $(TESTBMWOBJ) $(TESTCUBEHASHOBJ) $(TESTECHOOBJ) $(TESTFUGUEOBJ) $(TESTGROESTLOBJ) $(TESTHAMSIOBJ) $(TESTHAVALOBJ) $(TESTJHOBJ) $(TESTKECCAKOBJ) $(TESTLUFFAOBJ) $(TESTMD2OBJ) $(TESTMD4OBJ) $(TESTMD5OBJ) $(TESTPANAMAOBJ) $(TESTRADIOGATUNOBJ) $(TESTRIPEMDOBJ) $(TESTSHA0OBJ) $(TESTSHA1OBJ) $(TESTSHA2OBJ) $(TESTSHA3OBJ) $(TESTSHABALOBJ) $(TESTSHAVITEOBJ) $(TESTSIMDOBJ) $(TESTSKEINOBJ) $(TESTTIGEROBJ) $(TESTWHIRLPOOLOBJ) $(SPEED) $(SPEEDOBJ) $(HSUM) $(HSUMOBJ) |
|
|
|
$(TESTTYPES): $(TESTTYPESOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTTYPESOBJ) |
|
|
|
$(TESTBLAKE): $(TESTBLAKEOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTBLAKEOBJ) |
|
|
|
$(TESTBMW): $(TESTBMWOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTBMWOBJ) |
|
|
|
$(TESTCUBEHASH): $(TESTCUBEHASHOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTCUBEHASHOBJ) |
|
|
|
$(TESTECHO): $(TESTECHOOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTECHOOBJ) |
|
|
|
$(TESTFUGUE): $(TESTFUGUEOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTFUGUEOBJ) |
|
|
|
$(TESTGROESTL): $(TESTGROESTLOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTGROESTLOBJ) |
|
|
|
$(TESTHAMSI): $(TESTHAMSIOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTHAMSIOBJ) |
|
|
|
$(TESTHAVAL): $(TESTHAVALOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTHAVALOBJ) |
|
|
|
$(TESTJH): $(TESTJHOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTJHOBJ) |
|
|
|
$(TESTKECCAK): $(TESTKECCAKOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTKECCAKOBJ) |
|
|
|
$(TESTLUFFA): $(TESTLUFFAOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTLUFFAOBJ) |
|
|
|
$(TESTMD2): $(TESTMD2OBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTMD2OBJ) |
|
|
|
$(TESTMD4): $(TESTMD4OBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTMD4OBJ) |
|
|
|
$(TESTMD5): $(TESTMD5OBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTMD5OBJ) |
|
|
|
$(TESTPANAMA): $(TESTPANAMAOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTPANAMAOBJ) |
|
|
|
$(TESTRADIOGATUN): $(TESTRADIOGATUNOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTRADIOGATUNOBJ) |
|
|
|
$(TESTRIPEMD): $(TESTRIPEMDOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTRIPEMDOBJ) |
|
|
|
$(TESTSHA0): $(TESTSHA0OBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTSHA0OBJ) |
|
|
|
$(TESTSHA1): $(TESTSHA1OBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTSHA1OBJ) |
|
|
|
$(TESTSHA2): $(TESTSHA2OBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTSHA2OBJ) |
|
|
|
$(TESTSHA3): $(TESTSHA3OBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTSHA3OBJ) |
|
|
|
$(TESTSHABAL): $(TESTSHABALOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTSHABALOBJ) |
|
|
|
$(TESTSHAVITE): $(TESTSHAVITEOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTSHAVITEOBJ) |
|
|
|
$(TESTSIMD): $(TESTSIMDOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTSIMDOBJ) |
|
|
|
$(TESTSKEIN): $(TESTSKEINOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTSKEINOBJ) |
|
|
|
$(TESTTIGER): $(TESTTIGEROBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTTIGEROBJ) |
|
|
|
$(TESTWHIRLPOOL): $(TESTWHIRLPOOLOBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(TESTWHIRLPOOLOBJ) |
|
|
|
$(SPEED): $(SPEEDOBJ) $(OBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(SPEEDOBJ) $(OBJ) |
|
|
|
$(HSUM): $(HSUMOBJ) $(OBJ) |
|
$(CC) $(CFLAGS) /Fe$@ $(HSUMOBJ) $(OBJ) |
|
|
|
SUFFIXES: .c .obj |
|
|
|
.c.obj: |
|
$(CC) $(CFLAGS) -c $< |
|
|
|
# ========================================================================= |
|
# Dependencies. |
|
# |
|
|
|
blake.obj: sph_blake.h sph_types.h |
|
|
|
bmw.obj: sph_bmw.h sph_types.h |
|
|
|
cubehash.obj: sph_cubehash.h sph_types.h |
|
|
|
echo.obj: sph_echo.h sph_types.h aes_helper.c |
|
|
|
fugue.obj: sph_fugue.h sph_types.h |
|
|
|
groestl.obj: sph_groestl.h sph_types.h |
|
|
|
hamsi.obj: sph_hamsi.h sph_types.h hamsi_helper.c |
|
|
|
haval.obj: sph_haval.h sph_types.h haval_helper.c |
|
|
|
hsum.obj: sph_blake.h sph_bmw.h sph_cubehash.h sph_echo.h sph_fugue.h sph_groestl.h sph_hamsi.h sph_haval.h sph_jh.h sph_keccak.h sph_luffa.h sph_md2.h sph_md4.h sph_md5.h sph_panama.h sph_radiogatun.h sph_ripemd.h sph_sha0.h sph_sha1.h sph_sha2.h sph_shabal.h sph_shavite.h sph_simd.h sph_skein.h sph_tiger.h sph_types.h sph_whirlpool.h |
|
|
|
jh.obj: sph_jh.h sph_types.h |
|
|
|
keccak.obj: sph_keccak.h sph_types.h |
|
|
|
luffa.obj: sph_luffa.h sph_types.h |
|
|
|
md2.obj: sph_md2.h sph_types.h |
|
|
|
md4.obj: sph_md4.h sph_types.h md_helper.c |
|
|
|
md5.obj: sph_md5.h sph_types.h md_helper.c |
|
|
|
panama.obj: sph_panama.h sph_types.h |
|
|
|
radiogatun.obj: sph_radiogatun.h sph_types.h |
|
|
|
ripemd.obj: sph_ripemd.h sph_types.h md_helper.c |
|
|
|
sha0.obj: sph_sha0.h sph_types.h md_helper.c |
|
|
|
sha1.obj: sph_sha1.h sph_types.h md_helper.c |
|
|
|
sha2.obj: sph_sha2.h sph_types.h md_helper.c |
|
|
|
sha2big.obj: sph_sha2.h sph_types.h md_helper.c |
|
|
|
shabal.obj: sph_shabal.h sph_types.h |
|
|
|
shavite.obj: sph_shavite.h sph_types.h aes_helper.c |
|
|
|
simd.obj: sph_simd.h sph_types.h |
|
|
|
skein.obj: sph_skein.h sph_types.h |
|
|
|
speed.obj: sph_blake.h sph_bmw.h sph_cubehash.h sph_echo.h sph_fugue.h sph_groestl.h sph_hamsi.h sph_haval.h sph_jh.h sph_keccak.h sph_luffa.h sph_md2.h sph_md4.h sph_md5.h sph_panama.h sph_radiogatun.h sph_ripemd.h sph_sha0.h sph_sha1.h sph_sha2.h sph_shabal.h sph_shavite.h sph_simd.h sph_skein.h sph_tiger.h sph_types.h sph_whirlpool.h |
|
|
|
test_blake.obj: sph_blake.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_bmw.obj: sph_bmw.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_cubehash.obj: sph_cubehash.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_echo.obj: sph_echo.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_fugue.obj: sph_fugue.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_groestl.obj: sph_groestl.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_hamsi.obj: sph_hamsi.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_haval.obj: sph_haval.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_keccak.obj: sph_keccak.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_luffa.obj: sph_luffa.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_jh.obj: sph_jh.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_md2.obj: sph_md2.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_md4.obj: sph_md4.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_md5.obj: sph_md5.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_panama.obj: sph_panama.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_radiogatun.obj: sph_radiogatun.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_shabal.obj: sph_shabal.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_shavite.obj: sph_shavite.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_ripemd.obj: sph_ripemd.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_sha0.obj: sph_sha0.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_sha1.obj: sph_sha1.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_sha2.obj: sph_sha2.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_sha2big.obj: sph_sha2.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_simd.obj: sph_simd.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_skein.obj: sph_skein.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_tiger.obj: sph_tiger.h sph_types.h test_digest_helper.c utest.h |
|
|
|
test_types.obj: sph_types.h utest.h |
|
|
|
test_whirlpool.obj: sph_whirlpool.h sph_types.h test_digest_helper.c utest.h |
|
|
|
tiger.obj: sph_tiger.h sph_types.h md_helper.c |
|
|
|
utest.obj: utest.h |
|
|
|
whirlpool.obj: sph_whirlpool.h sph_types.h md_helper.c
|
|
|