SHELL=/bin/sh

PROGRAM = shotcut-wm
VERSION = 1.00

CXXFILES = main.cpp Frame.cpp Rotated.cpp Menu.cpp FrameWindow.cpp Desktop.cpp Hotkeys.cpp

LIBS = `fltk-config --ldflags` `mlt-config --libs` -lmlt++

MANPAGE = 1

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

OBJECTS = $(CXXFILES:.cpp=.o)

all:	makeinclude $(PROGRAM)

$(PROGRAM) : $(OBJECTS)
	$(CXX) $(LDFLAGS) -o $(PROGRAM) $(OBJECTS) $(LIBS) $(LDLIBS)

makeinclude: configure
	./configure
include makeinclude

CXXFLAGS += `fltk-config --cxxflags` `mlt-config --cflags`

.SUFFIXES : .fl .do .cpp .c .H

.cpp.o :
	$(CXX) $(CXXFLAGS) -c $<
.cpp :
	$(CXX) $(CXXFLAGS) -c $<
.fl.C :
	-fluid -c $<
.fl.H :
	-fluid -c $<

clean :
	-@ rm -f *.o $(PROGRAM) $(CLEAN) core *~ makedepend
	@touch makedepend

depend:
	$(MAKEDEPEND) -I.. $(CXXFLAGS) $(CXXFILES) $(CFILES) > makedepend
makedepend:
	touch makedepend
include makedepend

install: $(PROGRAM)
	$(INSTALL) -s $(PROGRAM) $(bindir)/$(PROGRAM)
	$(INSTALL) $(PROGRAM).$(MANPAGE) $(mandir)/man$(MANPAGE)/$(PROGRAM).$(MANPAGE)

uninstall:
	-@ rm -f $(bindir)/$(PROGRAM)
	-@ rm -f $(mandir)/man$(MANPAGE)/$(PROGRAM).$(MANPAGE)

dist:
	cat /dev/null > makedepend
	-@mkdir $(PROGRAM)-$(VERSION)
	-@ln README Makefile configure install-sh makedepend *.cpp *.H *.h *.in *.fl $(PROGRAM).$(MANPAGE) $(PROGRAM)-$(VERSION)
	tar -cvzf $(PROGRAM)-$(VERSION).tgz $(PROGRAM)-$(VERSION)
	-@rm -r $(PROGRAM)-$(VERSION)

exedist:
	-@mkdir $(PROGRAM)-$(VERSION)-x86
	-@ln README $(PROGRAM) $(PROGRAM).$(MANPAGE) $(PROGRAM)-$(VERSION)-x86
	tar -cvzf $(PROGRAM)-$(VERSION)-x86.tgz $(PROGRAM)-$(VERSION)-x86
	-@rm -r $(PROGRAM)-$(VERSION)-x86

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

PROGRAM_D = $(PROGRAM)_d

debug: $(PROGRAM_D)

OBJECTS_D = $(CXXFILES:.cpp=.do) $(CFILES:.c=.do)

.cpp.do :
	$(CXX) -I.. $(CXXFLAGS_D) -c -o $@ $<
.c.do :
	$(CC) -I.. $(CFLAGS_D) -c -o $@ $<

$(PROGRAM_D) : $(OBJECTS_D)
	$(CXX) $(LDFLAGS) -o $(PROGRAM_D) $(OBJECTS_D) $(LIBS) $(LDLIBS)

rotated_test: Rotated.o rotated_test.cpp
	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o rotated_test rotated_test.cpp Rotated.o $(LIBS) $(LDLIBS)
