# Makefile for # VisMidi.exe

CFLAGS=/Ti /Gd- /Q /Tdp /Gm /G5 /Gf /DINCL_DOS -Iirtmidi

LFLAGS=/B"/exepack:2 /pmtype:pm /nologo"

all:  VisMidi.exe

irtmidi/irtmidi.lib:
   cd irtmidi
   nmake /nologo
   cd ..

VisMidi.exe: vismidi.obj info.obj keyboard.obj patchpnl.obj dumper.obj \
             keycan.obj patch.obj verttext.obj key.obj keymouse.obj \
             irtmidi\irtmidi.lib vismidi.res vismidi.o
   set LIB=irtmidi;%%LIB%%
   icc $(CFLAGS) $(LFLAGS) /FeVisMidi.exe \
       /B"vismidi.o" vismidi.obj info.obj \
       keyboard.obj patchpnl.obj dumper.obj \
       keycan.obj patch.obj \
       verttext.obj key.obj keymouse.obj
   rc vismidi.res VisMidi.exe

vismidi.obj: vismidi.cpp vismidi.o irtmidi\irtmidi.hpp info.hpp info.h \
             keyboard.hpp keyboard.h keyboard.hpv patchpnl.hpp \
             irtmidi\imidiins.hpp patch.hpp patch.h patch.hpv verttext.hpp \
             patchpnl.h patchpnl.hpv dumper.hpp dumper.h dumper.hpv \
             vismidi.hpp irtmidi\imidicls.hpp vismidi.h vismidi.hpv \
             vismidi.cpv
   icc /c $(CFLAGS) vismidi.cpp

vismidi.res:  vismidi.rc
   rc -r vismidi.rc

info.obj:  info.cpp irtmidi\irtmidi.hpp info.hpp info.h
   icc /c $(CFLAGS) info.cpp

keyboard.obj:  keyboard.cpp keycan.hpp keycan.h keycan.hpv \
          irtmidi\imidikbd.hpp irtmidi\imidiins.hpp irtmidi\irtmidi.hpp \
          keyboard.hpp keyboard.h keyboard.hpv keyboard.cpv
   icc /c $(CFLAGS) keyboard.cpp

patchpnl.obj:  patchpnl.cpp irtmidi\irtmidi.hpp patchpnl.hpp \
          irtmidi\imidiins.hpp patch.hpp patch.h patch.hpv verttext.hpp \
          patchpnl.h patchpnl.hpv patchpnl.cpv
   icc /c $(CFLAGS) patchpnl.cpp

dumper.obj:  dumper.cpp irtmidi\imididmp.hpp irtmidi\imidiins.hpp \
          irtmidi\irtmidi.hpp dumper.hpp dumper.h dumper.hpv dumper.cpv
   icc /c $(CFLAGS) dumper.cpp

keyCan.obj:  keycan.cpp key.hpp key.h key.hpv keycan.hpp keycan.h keycan.hpv \
          keycan.cpv
   icc /c $(CFLAGS) keycan.cpp

patch.obj:  patch.cpp patch.hpp irtmidi\imidiins.hpp irtmidi\irtmidi.hpp \
          patch.h patch.hpv patch.cpv
   icc /c $(CFLAGS) patch.cpp

verttext.obj:  verttext.cpp verttext.hpp
   icc /c $(CFLAGS) verttext.cpp

key.obj:  key.cpp key.hpp key.h key.hpv key.cpv
   icc /c $(CFLAGS) key.cpp

keymouse.obj:  keymouse.cpp keycan.hpp keycan.h keycan.hpv
   icc /c $(CFLAGS) keymouse.cpp

VisMidi.rc:     VisMidi.rcx
   icc /C /Q /Pc+ /Pe+ /Pd /I. VisMidi.rcx > VisMidi.rc

VisMidi.o: VisMidi.app VisMidi.hpp
   icc /c $(CFLAGS) -FoVisMidi.o VisMidi.app

clean:
        -del *.exe *.o *.obj *.res *.rc  >/nul 2>/nul
        -del tempinc\*.cpp tempinc\*.obj >/nul 2>/nul
        cd irtmidi
        nmake -nologo clean
        cd ..
