Home | History | Annotate | Download | only in etc
      1 CC = icc
      2 
      3 CFLAGS += -I../
      4 
      5 # optimize for SPEED
      6 #
      7 # -mcpu= can be pentium, pentiumpro (covers PII through PIII) or pentium4
      8 # -ax?   specifies make code specifically for ? but compatible with IA-32
      9 # -x?    specifies compile solely for ? [not specifically IA-32 compatible]
     10 #
     11 # where ? is 
     12 #   K - PIII
     13 #   W - first P4 [Williamette]
     14 #   N - P4 Northwood
     15 #   P - P4 Prescott
     16 #   B - Blend of P4 and PM [mobile]
     17 #
     18 # Default to just generic max opts
     19 CFLAGS += -O3 -xP -ip
     20 
     21 # default lib name (requires install with root)
     22 # LIBNAME=-ltommath
     23 
     24 # libname when you can't install the lib with install
     25 LIBNAME=../libtommath.a
     26 
     27 #provable primes
     28 pprime: pprime.o
     29 	$(CC) pprime.o $(LIBNAME) -o pprime
     30 
     31 # portable [well requires clock()] tuning app
     32 tune: tune.o
     33 	$(CC) tune.o $(LIBNAME) -o tune
     34 	
     35 # same app but using RDTSC for higher precision [requires 80586+], coff based gcc installs [e.g. ming, cygwin, djgpp]
     36 tune86: tune.c
     37 	nasm -f coff timer.asm
     38 	$(CC) -DX86_TIMER $(CFLAGS) tune.c timer.o  $(LIBNAME) -o tune86
     39 	
     40 # for cygwin
     41 tune86c: tune.c
     42 	nasm -f gnuwin32 timer.asm
     43 	$(CC) -DX86_TIMER $(CFLAGS) tune.c timer.o  $(LIBNAME) -o tune86
     44 
     45 #make tune86 for linux or any ELF format
     46 tune86l: tune.c
     47 	nasm -f elf -DUSE_ELF timer.asm
     48 	$(CC) -DX86_TIMER $(CFLAGS) tune.c timer.o $(LIBNAME) -o tune86l
     49         
     50 # spits out mersenne primes
     51 mersenne: mersenne.o
     52 	$(CC) mersenne.o $(LIBNAME) -o mersenne
     53 
     54 # fines DR safe primes for the given config
     55 drprime: drprime.o
     56 	$(CC) drprime.o $(LIBNAME) -o drprime
     57 	
     58 # fines 2k safe primes for the given config
     59 2kprime: 2kprime.o
     60 	$(CC) 2kprime.o $(LIBNAME) -o 2kprime
     61 
     62 mont: mont.o
     63 	$(CC) mont.o $(LIBNAME) -o mont
     64 
     65         
     66 clean:
     67 	rm -f *.log *.o *.obj *.exe pprime tune mersenne drprime tune86 tune86l mont 2kprime pprime.dat *.il
     68