############################################
#
#	qdgdf makefile
#
############################################

VERSION="0.7"
PREFIX=/usr/local
VIDEO=AUTODETECT
AUDIO=AUTODETECT

# video driver selection

ifeq ($(VIDEO),AUTODETECT)
	ifdef DJGPP
		VIDEO=WIN32
	else
		VIDEO=X11
	endif
endif

ifeq ($(VIDEO),X11)
	CC=gcc -g -Wall -I/usr/X11R6/include
	OBJFLAGS=-c
	VIDEO_DRIVER=qdgdf_video_x11.o
	LIB_VIDEO=libqdgdfv.a
	RM=-rm -f
	O=o
endif

ifeq ($(VIDEO),WIN32)
	CC=bcc32 -6 -O2
	OBJFLAGS=-c
	VIDEO_DRIVER=qdgdf_video_ddraw.obj
	LIB_VIDEO=qdgdfv.lib
	RM=-del
	O=obj
endif

# audio driver selection

ifeq ($(AUDIO),AUTODETECT)
	AUDIO=NONE

	ifdef DJGPP
		AUDIO=WIN32
	else
		ifeq ($(OSTYPE),linux-gnu)
			AUDIO=LINUX
		endif
	endif
endif

ifeq ($(AUDIO),NONE)
	AUDIO_DRIVER=qdgdf_audio_none.$(O)
	LIB_AUDIO=libqdgdfa.a
endif

ifeq ($(AUDIO),LINUX)
	AUDIO_DRIVER=qdgdf_audio_linux.o
	LIB_AUDIO=libqdgdfa.a
endif

ifeq ($(AUDIO),WIN32)
	AUDIO_DRIVER=qdgdf_audio_dsound.obj
	LIB_AUDIO=qdgdfa.lib
endif

#Dan Compton editted this line to add the qdgdf_video_ext code
VIDEO_OBJS=qdgdf_video.$(O) qdgdf_video_ext.$(O) $(VIDEO_DRIVER)
AUDIO_OBJS=qdgdf_audio.$(O) $(AUDIO_DRIVER)

###############################################################

DEFS=-DVERSION='$(VERSION)'

###############################################################

all: LIB_VIDEO LIB_AUDIO

.PHONY: LIB_VIDEO
LIB_VIDEO: $(LIB_VIDEO)

.PHONY: LIB_AUDIO
LIB_AUDIO: $(LIB_AUDIO)

###############################################################

libqdgdfv.a: $(VIDEO_OBJS)
	ar rsv $(LIB_VIDEO) $(VIDEO_OBJS)

libqdgdfa.a: $(AUDIO_OBJS)
	ar rsv $(LIB_AUDIO) $(AUDIO_OBJS)

qdgdfv.lib: $(VIDEO_OBJS)
	$(RM) $(LIB_VIDEO)
	tlib $(LIB_VIDEO) +qdgdf_video.obj +$(VIDEO_DRIVER)

qdgdfa.lib: $(AUDIO_OBJS)
	$(RM) $(LIB_AUDIO)
	tlib $(LIB_AUDIO) +qdgdf_audio.obj +$(AUDIO_DRIVER)

# general rules
%.$(O): %.c
	$(CC) $(DEFS) $(CFLAGS) $(OBJFLAGS) $<

###############################################################

# dependencies
-include makefile.depend

dep:
	gcc $(DEFS) -MM *.c | sed -e 's/.o:/.$$(O):/' > makefile.depend

###############################################################

clean:
	$(RM) -f $(LIB) *.o *.obj *.gz *.a *.lib tags

###############################################################

dist: clean
	cd ..; tar czvf qdgdf/qdgdf-$(VERSION).tar.gz qdgdf/*
