68 lines
1.7 KiB
Plaintext
68 lines
1.7 KiB
Plaintext
|
CC = icc
|
||
|
|
||
|
CFLAGS += -I../
|
||
|
|
||
|
# optimize for SPEED
|
||
|
#
|
||
|
# -mcpu= can be pentium, pentiumpro (covers PII through PIII) or pentium4
|
||
|
# -ax? specifies make code specifically for ? but compatible with IA-32
|
||
|
# -x? specifies compile solely for ? [not specifically IA-32 compatible]
|
||
|
#
|
||
|
# where ? is
|
||
|
# K - PIII
|
||
|
# W - first P4 [Williamette]
|
||
|
# N - P4 Northwood
|
||
|
# P - P4 Prescott
|
||
|
# B - Blend of P4 and PM [mobile]
|
||
|
#
|
||
|
# Default to just generic max opts
|
||
|
CFLAGS += -O3 -xP -ip
|
||
|
|
||
|
# default lib name (requires install with root)
|
||
|
# LIBNAME=-ltommath
|
||
|
|
||
|
# libname when you can't install the lib with install
|
||
|
LIBNAME=../libtommath.a
|
||
|
|
||
|
#provable primes
|
||
|
pprime: pprime.o
|
||
|
$(CC) pprime.o $(LIBNAME) -o pprime
|
||
|
|
||
|
# portable [well requires clock()] tuning app
|
||
|
tune: tune.o
|
||
|
$(CC) tune.o $(LIBNAME) -o tune
|
||
|
|
||
|
# same app but using RDTSC for higher precision [requires 80586+], coff based gcc installs [e.g. ming, cygwin, djgpp]
|
||
|
tune86: tune.c
|
||
|
nasm -f coff timer.asm
|
||
|
$(CC) -DX86_TIMER $(CFLAGS) tune.c timer.o $(LIBNAME) -o tune86
|
||
|
|
||
|
# for cygwin
|
||
|
tune86c: tune.c
|
||
|
nasm -f gnuwin32 timer.asm
|
||
|
$(CC) -DX86_TIMER $(CFLAGS) tune.c timer.o $(LIBNAME) -o tune86
|
||
|
|
||
|
#make tune86 for linux or any ELF format
|
||
|
tune86l: tune.c
|
||
|
nasm -f elf -DUSE_ELF timer.asm
|
||
|
$(CC) -DX86_TIMER $(CFLAGS) tune.c timer.o $(LIBNAME) -o tune86l
|
||
|
|
||
|
# spits out mersenne primes
|
||
|
mersenne: mersenne.o
|
||
|
$(CC) mersenne.o $(LIBNAME) -o mersenne
|
||
|
|
||
|
# fines DR safe primes for the given config
|
||
|
drprime: drprime.o
|
||
|
$(CC) drprime.o $(LIBNAME) -o drprime
|
||
|
|
||
|
# fines 2k safe primes for the given config
|
||
|
2kprime: 2kprime.o
|
||
|
$(CC) 2kprime.o $(LIBNAME) -o 2kprime
|
||
|
|
||
|
mont: mont.o
|
||
|
$(CC) mont.o $(LIBNAME) -o mont
|
||
|
|
||
|
|
||
|
clean:
|
||
|
rm -f *.log *.o *.obj *.exe pprime tune mersenne drprime tune86 tune86l mont 2kprime pprime.dat *.il
|