# Makefile for the Non-DAW.
# Copyright 2008 Jonathan Moore Liles
# This file is licensed under version 2 of the GPL.

#
# Do not edit this file; run `make config` instead.
#

VERSION := 0.5.0

all: make.conf FL Timeline Mixer

make.conf: configure
	@ ./configure

config:
	@ ./configure

-include make.conf

ifeq ($(USE_DEBUG),yes)
	CXXFLAGS := -pipe -ggdb -Wall -Wextra -Wnon-virtual-dtor -Wno-missing-field-initializers -O0 -fno-rtti -fno-exceptions
else
	CXXFLAGS := -pipe -O2 -fno-rtti -fno-exceptions -DNDEBUG
endif

CXXFLAGS += $(SNDFILE_CFLAGS) $(LASH_CFLAGS) $(FLTK_CFLAGS) -DINSTALL_PREFIX="\"$(prefix)\"" -DVERSION=\"$(VERSION)\"
INCLUDES := -Iutil

include scripts/colors


.C.o:
	@ echo "Compiling: $(BOLD)$(YELLOW)$<$(SGR0)"
	@ $(CXX) $(CXXFLAGS) $(INCLUDES) -c $< -o $@

%.C : %.fl
	@ cd `dirname $<` && fluid -c ../$<

DONE := $(BOLD)$(GREEN)done$(SGR0)

include FL/makefile.inc
include Timeline/makefile.inc
include Mixer/makefile.inc

SRCS:=$(Timeline_SRCS) $(FL_SRCS) $(Mixer_SRCS)
OBJS:=$(FL_OBJS) $(Timeline_OBJS) $(Mixer_OBJS)

# FIXME: isn't there a better way?
$(OBJS): make.conf

TAGS: $(SRCS)
	etags $(SRCS)

.deps: make.conf $(SRCS)
	@ echo -n Calculating dependencies...
	@ makedepend -f- -- $(CXXFLAGS) -I. -IFL -ITimeline -IMixer -- $(SRCS) > .deps 2>/dev/null && echo $(DONE)

depend: .deps

.PHONEY: clean config depend

clean: FL_clean Timeline_clean Mixer_clean

-include .deps