2
|
1 CFLAGS += -Wall -W -Wshadow -O3 -fomit-frame-pointer -funroll-loops -I../ |
|
2 |
|
3 # default lib name (requires install with root) |
|
4 # LIBNAME=-ltommath |
|
5 |
|
6 # libname when you can't install the lib with install |
|
7 LIBNAME=../libtommath.a |
|
8 |
|
9 #provable primes |
|
10 pprime: pprime.o |
|
11 $(CC) pprime.o $(LIBNAME) -o pprime |
|
12 |
|
13 # portable [well requires clock()] tuning app |
|
14 tune: tune.o |
|
15 $(CC) tune.o $(LIBNAME) -o tune |
|
16 |
|
17 # same app but using RDTSC for higher precision [requires 80586+], coff based gcc installs [e.g. ming, cygwin, djgpp] |
|
18 tune86: tune.c |
|
19 nasm -f coff timer.asm |
|
20 $(CC) -DX86_TIMER $(CFLAGS) tune.c timer.o $(LIBNAME) -o tune86 |
|
21 |
|
22 # for cygwin |
|
23 tune86c: tune.c |
|
24 nasm -f gnuwin32 timer.asm |
|
25 $(CC) -DX86_TIMER $(CFLAGS) tune.c timer.o $(LIBNAME) -o tune86 |
|
26 |
|
27 #make tune86 for linux or any ELF format |
|
28 tune86l: tune.c |
|
29 nasm -f elf -DUSE_ELF timer.asm |
|
30 $(CC) -DX86_TIMER $(CFLAGS) tune.c timer.o $(LIBNAME) -o tune86l |
|
31 |
|
32 # spits out mersenne primes |
|
33 mersenne: mersenne.o |
|
34 $(CC) mersenne.o $(LIBNAME) -o mersenne |
|
35 |
|
36 # fines DR safe primes for the given config |
|
37 drprime: drprime.o |
|
38 $(CC) drprime.o $(LIBNAME) -o drprime |
|
39 |
|
40 # fines 2k safe primes for the given config |
|
41 2kprime: 2kprime.o |
|
42 $(CC) 2kprime.o $(LIBNAME) -o 2kprime |
|
43 |
|
44 mont: mont.o |
|
45 $(CC) mont.o $(LIBNAME) -o mont |
|
46 |
|
47 |
|
48 clean: |
|
49 rm -f *.log *.o *.obj *.exe pprime tune mersenne drprime tune86 tune86l mont 2kprime pprime.dat |