# Useage:  make -f SampleMake
#
# Modify FCFLAGS and CFLAGS to the appropriate values.
# Make sure LIBDIR points to the location of the installed libraries.
#


LIBDIR        = $(HOME)/lib
SNOPT_LIBS    =   -lsnopt    -lsnprint   -lblas

FC            = gfortran
FCFLAGS       = -O -fdefault-integer-8

CC            = gcc
CFLAGS        = -O -DD64

all:  toyb manne springb

toyb: toyb.o snopt.o snset.o sn_open.o snget.o  snerror.o
	$(FC) $(CFLAGS)  $^ -o $@ -L$(LIBDIR) $(SNOPT_LIBS)

manne: manne.o snopt.o snset.o sn_open.o snget.o  snerror.o
	$(FC) $(CFLAGS)  $^ -o $@ -L$(LIBDIR) $(SNOPT_LIBS)

springb: springb.o snopt.o snset.o sn_open.o snget.o  snerror.o
	$(FC) $(CFLAGS)  $^ -o $@ -L$(LIBDIR) $(SNOPT_LIBS)

toych: toych.o snoptch.o snset.o sn_open.o snget.o  snerror.o
	$(FC) $(CFLAGS)  $^ -o $@ -L$(LIBDIR) $(SNOPT_LIBS)

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

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

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

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

sn_open.o: sn_open.f
	$(FC) -c $(FCFLAGS) $< -o $@

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

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

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

clean:
	rm -f *.o
