CC= (if not exist avicore mkdir avicore) & (if not exist misc mkdir misc) & (if not exist src mkdir src) & cl
RC=rc
LINK=link
GTKDIR=..\GTK
SRCDIR=.
LDFLAGS=/LIBPATH:$(GTKDIR)\lib \
		/INCREMENTAL:NO /MACHINE:I386 /OUT:$@ /SUBSYSTEM:WINDOWS
CFLAGS=	/c /DWIN32 /DNDEBUG /D_WINDOWS /DMBCS /DWINVER=0x0400 /Fo$@ /Fp$*.pch /MT /O1 /QI0f /QIfdiv /YX
LIBS=	gdk_pixbuf-2.0.lib \
		gdk-win32-2.0.lib \
		glib-2.0.lib \
		gobject-2.0.lib \
		gthread-2.0.lib \
		gtk-win32-2.0.lib \
		intl.lib
INCLUDES= \
		/I$(SRCDIR) \
		/I$(GTKDIR)\include \
		/I$(GTKDIR)\include\atk-1.0 \
		/I$(GTKDIR)\include\glib-2.0 \
		/I$(GTKDIR)\include\gtk-2.0 \
		/I$(GTKDIR)\include\pango-1.0 \
		/I$(GTKDIR)\lib\glib-2.0\include \
		/I$(GTKDIR)\lib\gtk-2.0\include

all: vmaid.exe

vmaid.exe: $*.res misc\fileio.obj misc\license.obj misc\misc.obj misc\profile.obj avicore\avicore.obj avicore\aviedit.obj avicore\avifilesel.obj avicore\aviframe.obj avicore\aviopen.obj avicore\avisave.obj avicore\avitext.obj avicore\bitmap.obj avicore\chunk.obj avicore\icm.obj src\argument.obj src\command.obj src\conf.obj src\file.obj src\general.obj src\jump.obj src\prop.obj src\sigfile.obj src\sigmain.obj src\size.obj src\thread.obj src\toolbar.obj src\version.obj src\vmaid.obj src\winmain.obj
	$(LINK) $(LDFLAGS) $(LIBS) shell32.lib user32.lib $**

misc\fileio.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

misc\license.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\misc\fileio.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

misc\misc.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\misc\fileio.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

misc\profile.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\misc\misc.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

avicore\avicore.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avifmt.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\misc\misc.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

avicore\aviedit.obj: $(SRCDIR)\$*.c $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avibase.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

avicore\avifilesel.obj: $(SRCDIR)\$*.c $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avibase.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

avicore\aviframe.obj: $(SRCDIR)\$*.c $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avibase.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\avifmt.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

avicore\aviopen.obj: $(SRCDIR)\$*.c $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avibase.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\avifmt.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

avicore\avisave.obj: $(SRCDIR)\$*.c $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avibase.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\avifmt.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

avicore\avitext.obj: $(SRCDIR)\$*.c $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avibase.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\misc\misc.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

avicore\bitmap.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\misc\fileio.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

avicore\chunk.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\misc\fileio.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

avicore\icm.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avifmt.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\misc\misc.h $(SRCDIR)\misc\profile.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

src\argument.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\misc\misc.h $(SRCDIR)\src\vmaid.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

src\command.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\avifilesel.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\misc\misc.h $(SRCDIR)\src\file.h $(SRCDIR)\src\general.h $(SRCDIR)\src\jump.h $(SRCDIR)\src\prop.h $(SRCDIR)\src\sigfile.h $(SRCDIR)\src\size.h $(SRCDIR)\src\thread.h $(SRCDIR)\src\vmaid.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

src\conf.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\src\vmaid.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

src\file.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\misc\misc.h $(SRCDIR)\src\sigfile.h $(SRCDIR)\src\sigmain.h $(SRCDIR)\src\size.h $(SRCDIR)\src\thread.h $(SRCDIR)\src\vmaid.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

src\general.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\misc\misc.h $(SRCDIR)\src\command.h $(SRCDIR)\src\sigfile.h $(SRCDIR)\src\toolbar.h $(SRCDIR)\src\vmaid.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

src\jump.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\misc\misc.h $(SRCDIR)\src\vmaid.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

src\prop.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\misc\misc.h $(SRCDIR)\src\vmaid.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

src\sigfile.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\misc\misc.h $(SRCDIR)\src\command.h $(SRCDIR)\src\file.h $(SRCDIR)\src\general.h $(SRCDIR)\src\vmaid.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

src\sigmain.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\misc\misc.h $(SRCDIR)\src\argument.h $(SRCDIR)\src\command.h $(SRCDIR)\src\file.h $(SRCDIR)\src\general.h $(SRCDIR)\src\sigfile.h $(SRCDIR)\src\thread.h $(SRCDIR)\src\vmaid.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

src\size.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\src\vmaid.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

src\thread.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\src\vmaid.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

src\toolbar.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\src\command.h $(SRCDIR)\src\vmaid.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

src\version.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\misc\license.h $(SRCDIR)\src\vmaid.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

src\vmaid.obj: $(SRCDIR)\$*.c $(SRCDIR)\$*.h $(SRCDIR)\common.h $(SRCDIR)\config.w32.h $(SRCDIR)\avicore\avicore.h $(SRCDIR)\avicore\bitmap.h $(SRCDIR)\avicore\chunk.h $(SRCDIR)\avicore\icm.h $(SRCDIR)\avicore\wave.h $(SRCDIR)\misc\fileio.h $(SRCDIR)\misc\license.h $(SRCDIR)\misc\profile.h $(SRCDIR)\src\argument.h $(SRCDIR)\src\command.h $(SRCDIR)\src\conf.h $(SRCDIR)\src\file.h $(SRCDIR)\src\general.h $(SRCDIR)\src\sigfile.h $(SRCDIR)\src\sigmain.h $(SRCDIR)\src\thread.h $(SRCDIR)\src\toolbar.h $(SRCDIR)\src\version.h
	$(CC) $(CFLAGS) $(INCLUDES) $(SRCDIR)\$*.c

src\winmain.obj: $(SRCDIR)\$*.c
	$(CC) $(CFLAGS) $(INCLUDES) $**

vmaid.res: $(SRCDIR)\$*.rc $(SRCDIR)\$*.ico
	$(RC) /fo$@ $(SRCDIR)\$*.rc

clean:
	if exist vmaid.exe del vmaid.exe
	if exist vmaid.res del vmaid.res
	del /q avicore\*.obj
	del /q avicore\*.pch
	del /q misc\*.obj
	del /q misc\*.pch
	del /q src\*.obj
	del /q src\*.pch
