INSTALLDIR             = /usr/local
CC                     = gcc 
CFLAGS                 = -O2 -I. -I./include -g -DWIN32 -DDRV_WIN -DHAVE_FCNTL_H -DHAVE_MALLOC_H
LIBRARIAN              = ar
MIKMOD_LIB_FILE        = ./libmikmod/libmikmod.a

MMIO_OBJECT_FILES      = mmio/mmio.o mmio/mmalloc.o mmio/mmerror.o

MIKMOD_PLAYERCODE_OBJS = playercode/mdreg.o playercode/mdriver.o playercode/mdulaw.o playercode/mloader.o playercode/mlreg.o \
playercode/mlutil.o playercode/mplayer.o playercode/munitrk.o playercode/mwav.o playercode/npertab.o playercode/sloader.o \
playercode/virtch.o playercode/virtch2.o playercode/virtch_common.o

MIKMOD_LOADER_OBJS     = loaders/load_669.o loaders/load_amf.o loaders/load_dsm.o loaders/load_far.o loaders/load_gdm.o loaders/load_imf.o \
loaders/load_it.o loaders/load_m15.o loaders/load_med.o loaders/load_mod.o loaders/load_mtm.o loaders/load_okt.o loaders/load_s3m.o \
loaders/load_stm.o loaders/load_stx.o loaders/load_ult.o loaders/load_uni.o loaders/load_xm.o

MIKMOD_DRIVER_OBJS     = drivers/drv_nos.o drivers/drv_raw.o drivers/drv_stdout.o drivers/drv_wav.o drivers/drv_win.o


MIKMOD_OBJECT_FILES    = $(MIKMOD_PLAYERCODE_OBJS) $(MIKMOD_LOADER_OBJS) $(MIKMOD_DRIVER_OBJS) $(MMIO_OBJECT_FILES)


####################
## Makefile rules ##
####################

all: $(MIKMOD_LIB_FILE)

$(MIKMOD_LIB_FILE): $(MIKMOD_OBJECT_FILES)
	$(LIBRARIAN) cru $(MIKMOD_LIB_FILE) $(MIKMOD_OBJECT_FILES)
  
clean:
	rm -f $(MIKMOD_LIB_FILE)
	rm -f mmio/*.o
	rm -f playercode/*.o
	rm -f drivers/*.o
	rm -f loaders/*.o
  
install: $(MMIO_LIB_FILE) $(MIKMOD_LIB_FILE)
	@echo ""
	@echo "**********************************************************************"
	@echo "Installing libmikmod into $(INSTALLDIR)"
	@mkdir -p $(INSTALLDIR)/include $(INSTALLDIR)/lib
	@cp include/mikmod_build.h $(INSTALLDIR)/include/mikmod.h
	@cp libmikmod/libmikmod.a $(INSTALLDIR)/lib
	@echo "Done"
	@echo "**********************************************************************"
	@echo ""