#
#  B/"" = Pass options to linker, in addition to default options
#  C+   = Compile without linking
#  D    = define preprocessor macros
#  I    = include search paths
# Ft-   = Control and direct files for template resolution 
# Gd+   = dynamic linking to runtime library
# Ge+   = build exe file
# Gm+   = link to multithreaded libraries
#  Q+   = Display compiler logo when invoking compiler
# Ss+   = allow double slashes to indicate comments
# Ti+   = generate debugger information 
# -W3   = produce and count all error messages
#

CFLAGS = -C+ -Ft- -I. -Gd+ -Gm+ -Ti+ -B/"DEBUG:NONE" -Ss -W3

LFLAGS = -Ft- -Gd+ -Gm+ -Ge+ -B"/pmtype:pm" -Ti+ -B/"DEBUG:NONE" 

spectrum.exe : spectrum.obj covsrt.obj convlv.obj fit.obj four1.obj \
        gaussj.obj ludcmp.obj lubksb.obj model.obj mrqmin.obj \
        mrqcof.obj nrutil.obj realft.obj savgol.obj spline.obj splint.obj \
        twofft.obj spectrum.res spectrum.hlp
# 
        icc $(LFLAGS) spectrum.obj covsrt.obj convlv.obj fit.obj \
        four1.obj gaussj.obj ludcmp.obj lubksb.obj model.obj \
        mrqmin.obj mrqcof.obj nrutil.obj realft.obj savgol.obj \
        spline.obj splint.obj twofft.obj 
#
        rc -x spectrum.res spectrum.exe


spectrum.obj : spectrum.c spectrum.h nr.h nrutil.h
        icc $(CFLAGS) spectrum.c

covsrt.obj : covsrt.c
        icc $(CFLAGS) covsrt.c

convlv.obj : convlv.c nrutil.h
        icc $(CFLAGS) convlv.c

fit.obj : fit.c    nrutil.h
        icc $(CFLAGS) fit.c

four1.obj : four1.c
        icc $(CFLAGS) four1.c

gaussj.obj : gaussj.c nrutil.h
        icc $(CFLAGS) gaussj.c

ludcmp.obj : ludcmp.c nrutil.h
        icc $(CFLAGS) ludcmp.c

lubksb.obj : lubksb.c
        icc $(CFLAGS) lubksb.c

mrqcof.obj : mrqcof.c nrutil.h
        icc $(CFLAGS) mrqcof.c

mrqmin.obj : mrqmin.c nrutil.h
        icc $(CFLAGS) mrqmin.c

model.obj : model.c
        icc $(CFLAGS) model.c

nrutil.obj : nrutil.c
        icc $(CFLAGS) nrutil.c

realft.obj : realft.c
        icc $(CFLAGS) realft.c

savgol.obj : savgol.c nrutil.h
        icc $(CFLAGS) savgol.c

spline.obj : spline.c nrutil.h
        icc $(CFLAGS) spline.c

splint.obj : splint.c
        icc $(CFLAGS) splint.c

twofft.obj : twofft.c
        icc $(CFLAGS) twofft.c



# 
# Resources
#
spectrum.res : spectrum.rc spectrum.h spectrum.dlg \
        .\bitmap\spectrum.ico
        rc -i . -d__OS2__ -d IC_PM -r spectrum.rc

spectrum.hlp : spectrum.ipf
        ipfc /W3 spectrum.ipf



clean : 
        del spectrum.obj covsrt.obj convlv.obj fit.obj four1.obj \
        gaussj.obj ludcmp.obj lubksb.obj mrqcof.obj mrqmin.obj \
        model.obj nrutil.obj realft.obj savgol.obj spline.obj \
        splint.obj twofft.obj spectrum.res spectrum.exe
    
