# gccp by yuto
#	in:  1\[X1\[X
#	out: 1dll
PROG = in_pxtone

SRC  = $(PROG).c
OBJ  = $(PROG).o
RES  = $(PROG).res
DEF  = $(PROG).def
DLL  = ../$(PROG).dll
LIBPATH = /lib/w32api/
LIBS = libpxtone.a $(LIBPATH)libgdi32.a $(LIBPATH)libwinmm.a $(LIBPATH)libcomctl32.a $(LIBPATH)libversion.a
# gdi32: 摜`(LoadBitmap)
# winmm: ^C}[(timeGetTime)
# comctl32: gbNo[
# version: o[W񃊃\[X

CC   = gcc
CARGS=
RC   = windres
RARGS= -O coff
DC   = dlltool
DARGS= --export-all
LC   = dlltool
LARGS= --kill-at
DC2   = pexports
WRAP = dllwrap
WARGS= --mwindows --target i386-cygwin32 --driver-name=gcc --driver-flag='-shared' -mno-cygwin

.SUFFIXES : .o .c
.SUFFIXES : .res .rc

ALL: $(DLL)

clean:
	rm -f $(OBJ) $(RES) $(DEF) $(DLL) libpxtone.a pxtone.def

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

.rc.res:
	$(RC) $(RARGS) -o $@ -i $<

pxtone.def: pxtone.dll
	$(DC2) $< >$@

libpxtone.a: pxtone.dll pxtone.def
	$(LC) $(LARGS)  --output-lib $@ --dllname pxtone.dll --input-def pxtone.def

$(OBJ): $(SRC) pxtone.h in2.h resource.h

$(DEF): $(OBJ)
	$(DC) $(DARGS) --output-def $(DEF) $(OBJ)

$(DLL): $(DEF) $(OBJ) $(RES) $(LIBS)
	$(WRAP) $(WARGS) -o $(DLL) --def $(DEF) $(OBJ) $(RES) $(LIBS)
