#
# Makefile for X-CD-Roast 0.98alpha10
# simple version (perhaps replaced by smake or autoconf in the future)
#

# Installation prefix directory:

#PREFIX=/usr
PREFIX=/usr/local
PRE_LIBDIR=$(PREFIX)/lib/xcdroast-0.98

# put here the prefix where you want xcdroast to look for 
# cdrecord/mkisofs/readcd/cdda2wav. 
# e.g. /usr
CDRTOOLS_PREFIX=$(PREFIX)

# for linux
INSTALL=/usr/bin/install -c

# for solaris
#INSTALL=/usr/sbin/install

# for osX
#EXTRA_CFLAGS= -g -traditional-cpp
#EXTRA_LDFLAGS= -framework CoreAudio

# activate large file support
EXTRA_CFLAGS+= -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DUSE_LARGEFILES

#---

CFLAGS=-Wall `gtk-config --cflags` `gdk-pixbuf-config --cflags` -DPRE_PREFIX="\"$(PREFIX)\"" -DPRE_LIBDIR="\"$(PRE_LIBDIR)\"" -DCDRTOOLS_PREFIX="\"$(CDRTOOLS_PREFIX)\"" $(EXTRA_CFLAGS)
CFLAGS2=-Wall `glib-config --cflags --libs` -DPRE_PREFIX="\"$(PREFIX)\"" -DPRE_LIBDIR="\"$(PRE_LIBDIR)\"" -DCDRTOOLS_PREFIX="\"$(CDRTOOLS_PREFIX)\"" $(EXTRA_CFLAGS)

LIBS=`gtk-config --libs` `gdk-pixbuf-config --libs` 
TOOLLIBS=`gtk-config --libs`
CC=cc

OBJ = main.o language.o init.o tools.o xtools.o menus.o setup.o io.o duplicate.o wav_frontend.o wav_id.o create.o

all: xcdroast wavplay rmtool vrfytool cddbtool xcdrwrap
	@echo
	@echo "***********************************************************"
	@echo "  Please don't forget to install now \"cdrecord-1.11\" as"
	@echo "  described in the README. Before doing a \"make install\""
	@echo "  I recommend to do a \"make deinstall\" if you already"
	@echo "  had a prior alpha of X-CD-Roast 0.98 installed."
	@echo 
	@echo "***********************************************************"
	@echo


.c.o: xcdroast.h main.h 
	$(CC) $(CFLAGS) -c $<

xcdroast: $(OBJ)  
	$(CC) $(OBJ) $(LIBS) -o xcdroast 

wavplay: wavplay.o wav_id.o tools.o 
	$(CC) wavplay.o wav_id.o tools.o $(TOOLLIBS) $(EXTRA_LDFLAGS) -o wavplay 
	cp wavplay lib/bin 

rmtool: rmtool.o
	$(CC) rmtool.o $(TOOLLIBS) -o rmtool	
	cp rmtool lib/bin

vrfytool: vrfytool.o
	$(CC) vrfytool.o $(TOOLLIBS) -o vrfytool	
	cp vrfytool lib/bin

cddbtool: cddbtool.o tools.o
	$(CC) cddbtool.o tools.o $(TOOLLIBS) -o cddbtool	
	cp cddbtool lib/bin

xcdrwrap: xcdrwrap.c tools.o
	$(CC) xcdrwrap.c tools.o $(CFLAGS2) -o xcdrwrap
	cp xcdrwrap lib/bin

install:
	$(INSTALL) -m 0755 -d $(DESTDIR)/$(PREFIX)/bin 
	$(INSTALL) -m 0755 -d $(DESTDIR)/$(PREFIX)/man 
	$(INSTALL) -m 0755 -d $(DESTDIR)/$(PREFIX)/man/man1
	$(INSTALL) -m 0755 -d $(DESTDIR)/$(PRE_LIBDIR)
	$(INSTALL) -m 0755 -d $(DESTDIR)/$(PRE_LIBDIR)/bin
	$(INSTALL) -m 0755 -d $(DESTDIR)/$(PRE_LIBDIR)/icons
	$(INSTALL) -m 0755 -d $(DESTDIR)/$(PRE_LIBDIR)/lang
	$(INSTALL) -m 0755 -d $(DESTDIR)/$(PRE_LIBDIR)/sound
	$(INSTALL) -m 0755 ./xcdroast $(DESTDIR)/$(PREFIX)/bin
	$(INSTALL) -m 0644 ./xcdroast.1 $(DESTDIR)/$(PREFIX)/man/man1
	$(INSTALL) -m 0755 ./lib/bin/* $(DESTDIR)/$(PRE_LIBDIR)/bin
	$(INSTALL) -m 0644 ./lib/icons/* $(DESTDIR)/$(PRE_LIBDIR)/icons
	$(INSTALL) -m 0644 ./lib/lang/* $(DESTDIR)/$(PRE_LIBDIR)/lang
	$(INSTALL) -m 0644 ./lib/sound/* $(DESTDIR)/$(PRE_LIBDIR)/sound

perms:
#	note, the group xcdwrite can be set in xcdroast.h
	chown root:xcdwrite $(DESTDIR)/$(PRE_LIBDIR)/bin/xcdrwrap
	chmod 2755 $(DESTDIR)/$(PRE_LIBDIR)/bin/xcdrwrap

deinstall:
	rm -f $(PREFIX)/bin/xcdrgtk
	rm -f $(PREFIX)/bin/xcdroast
	rm -rf $(PRE_LIBDIR)

clean:
	rm -f xcdroast $(OBJ) wavplay.o lib/bin/wavplay lib/bin/rmtool rmtool.o lib/bin/vrfytool vrfytool.o lib/bin/cddbtool cddbtool.o lib/bin/xcdrwrap core
	rm -f wavplay rmtool vrfytool cddbtool xcdrwrap
	#rm -f lib/bin/cdrecord lib/bin/readcd lib/bin/mkisofs lib/bin/cdda2wav
