# Makefile for Linux PRP
#
# NOTE: To convert the included object files to ELF, your binutils 
# installation must be able to read the coff-i386 object format.  
#
# Assuming your binutils are dynamically linked, you can add COFF support
# by configuring binutils with the switch '--enable-targets=i386-go32'
# and rebuilding libbfd.so .

CC = gcc
CFLAGS = -I.. -O2 -m486 -malign-double

#CFLAGS for Pentium (I don't know who recommended these settings)
#CFLAGS = -I.. -O2 -malign-double -malign-loops=2 -malign-jumps=2 -malign-functions=2

# Setting suggested by FenwayFrank - I don't know what it does
VPATH=../prime95

LFLAGS = -Wl
LIBS   = -lm
LIBS2  = -lm -static

COFFOBJS = mult.o mult1.o mult2.o mult2a.o mult3.o mult3a.o mult4.o mult2p.o mult2ap.o mult3p.o mult3ap.o mult4p.o mult1aux.o mult2aux.o xmult1.o xmult1ax.o xmult2.o xmult2a.o xmult2ax.o xmult3.o xmult3a.o xmult3ax.o ecmhelp.o cpuid.o
DUMMYOBJS = dummy4.o dummy8.o dummy12.o dummy16.o dummy20.o dummy24.o dummy28.o
LINUXOBJS = lprime.o lmenu.o
EXE      = llr
EXE2	 = sllr
DUMMY1   = dummy24.o
DUMMY2   = dummy24.o

#########################################################################

$(EXE): $(LINUXOBJS) $(COFFOBJS) $(DUMMYOBJS)
	$(CC) $(LFLAGS) -o $(EXE) $(LINUXOBJS) $(DUMMY1) $(COFFOBJS) $(LIBS)

$(EXE2): $(LINUXOBJS) $(COFFOBJS) $(DUMMYOBJS)
	$(CC) $(LFLAGS) -o $(EXE2) $(LINUXOBJS) $(DUMMY2) $(COFFOBJS) $(LIBS2)

clean:
	rm -f $(EXE) $(EXE2) $(LINUXOBJS) $(COFFOBJS) $(DUMMYOBJS)

.c.o:
	$(CC) $(CFLAGS) -c $<

$(COFFOBJS) $(DUMMYOBJS): %.o : ../prime95/%.obj
	objcopy -Oelf32-i386 $< $@

