# mpg123 Win32 port makefile
#
# by Petteri Kangaslampi, pekangas@sci.fi


ifdef DEBUG

  CC = wcc386
  CCOPTS = -zq -fhq -w3 -we -d2 -fpi87 -fp5 -5r -oneatx -bt=nt -DWIN32 -DREAL_IS_FLOAT -DPENTIUM_OPT
  LINKIT = wlink system nt debug all option stack=64k name $@ $(patsubst %, file %, $^)

else
  CC = wcc386
  CCOPTS = -zq -fhq -w3 -we -d1 -fpi87 -fp5 -5r -oneatx -bt=nt -DWIN32 -DREAL_IS_FLOAT -DPENTIUM_OPT
  LINKIT = wlink system nt debug codeview option cvpack option stack=64k name $@ $(patsubst %, file %, $^)
endif

#linux:
#	$(MAKE) CC=gcc LDFLAGS= \
#		OBJECTS='decode_i386.o dct64_i386.o getbits.o decode_i586.o' \
#		CFLAGS='-DI386_ASSEM -DREAL_IS_FLOAT -DLINUX -Wall -O2 -m486 \
#			-fomit-frame-pointer -funroll-all-loops \
#			-finline-functions -ffast-math' \
#		mpg123


mpg123.exe :	mpg123.obj common.obj decode_i386.obj dct64_i386.obj \
		decode_2to1.obj decode_4to1.obj \
		tabinit.obj win32audio.obj layer1.obj layer2.obj layer3.obj \
		getlopt.obj wild32.obj equalizer.obj \
		decode_i586.obj \
		#xfermem.obj httpget.obj
	$(LINKIT)

%.obj :	%.c
	$(CC) $(CCOPTS) $<

%.obj : %.nas
	nasm -f obj $<


layer1.obj:		mpg123.h
layer2.obj:		mpg123.h
layer3.obj:		mpg123.h huffman.h get1bit.h
decode.obj:		mpg123.h
decode_int.obj:		mpg123.h
decode_2to1.obj:	mpg123.h
decode_4to1.obj:	mpg123.h
decode_i386.obj:	mpg123.h
common.obj:		mpg123.h tables.h
mpg123.obj:		mpg123.h getlopt.h xfermem.h version.h
mpg123.h:		audio.h
win32audio.obj:		mpg123.h
buffer.obj:		mpg123.h xfermem.h
getbits.obj:		mpg123.h
getbits_.obj:		mpg123.h
tabinit.obj:		mpg123.h
getlopt.obj:		getlopt.h
httpget.obj:		mpg123.h
dct64.obj:		mpg123.h
dct64_i386.obj:		mpg123.h
xfermem.obj:		xfermem.h
equalizer.obj:		mpg123.h
control.obj:		jukebos/controldata.h mpg123.h

wild32.obj : wild32.c

clean :
	-del *.obj *.bak *.exe *~ *.pch
