2 ###############################################################################
3 # Copyright (C) 2008 Jonathan Moore Liles #
5 # This program is free software; you can redistribute it and/or modify it #
6 # under the terms of the GNU General Public License as published by the #
7 # Free Software Foundation; either version 2 of the License, or (at your #
8 # option) any later version. #
10 # This program is distributed in the hope that it will be useful, but WITHOUT #
11 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or #
12 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for #
15 # You should have received a copy of the GNU General Public License along #
16 # with This program; see the file COPYING. If not,write to the Free Software #
17 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #
18 ###############################################################################
20 ## Makefile for the Non-DAW.
23 ## Do not edit this file; run `make config` instead.
38 export SYSTEM_PATH
:=$(prefix)/share
/non-daw
/
39 export DOCUMENT_PATH
:=$(prefix)/share
/doc
/non-daw
/
40 export PIXMAP_PATH
:=$(prefix)/share
/pixmaps
/non-daw
/
42 # a bit of a hack to make sure this runs before any rules
43 ifneq ($(CALCULATING
),yes
)
44 TOTAL
:= $(shell $(MAKE
) CALCULATING
=yes
-n
2>/dev
/null | sed
-n
's/^.*Compiling: \([^"]\+\)"/\1/p' > .files
)
47 ifeq ($(USE_DEBUG
),yes
)
48 CFLAGS
:= -pipe
-ggdb
-fno-inline
-Wall
-Wextra
-O0
49 CXXFLAGS
:= -Wnon-virtual-dtor
-Wno-missing-field-initializers
-fno-rtti
-fno-exceptions
51 CFLAGS
:= -pipe
-O2
-DNDEBUG
52 CXXFLAGS
:= -fno-rtti
-fno-exceptions
56 ifeq ($(USE_UNOPTIMIZED_DRAWING
),yes
)
57 CFLAGS
+=-DUSE_UNOPTIMIZED_DRAWING
60 ifeq ($(USE_SINGLEBUFFERED_TIMELINE
),yes
)
61 CFLAGS
+=-DUSE_SINGLEBUFFERED_TIMELINE
64 ifeq ($(USE_WIDGET_FOR_TIMELINE
),yes
)
65 CFLAGS
+=-DUSE_WIDGET_FOR_TIMELINE
68 CFLAGS
+=-DVERSION
=\"$(VERSION
)\" \
69 -DINSTALL_PREFIX
=\"$(prefix)\" \
70 -DSYSTEM_PATH
=\"$(SYSTEM_PATH
)\" \
71 -DDOCUMENT_PATH
=\"$(DOCUMENT_PATH
)\" \
72 -DPIXMAP_PATH
=\"$(PIXMAP_PATH
)\"
74 CXXFLAGS
+= $(SNDFILE_CFLAGS
) $(FLTK_CFLAGS
) $(JACK_CFLAGS
)
75 CXXFLAGS
:= $(CFLAGS
) $(CXXFLAGS
)
77 INCLUDES
:= -I.
-Iutil
-IFL
-Inonlib
79 include scripts
/colors
81 ifneq ($(CALCULATING
),yes
)
82 COMPILING
="$(BOLD)$(BLACK)[$(SGR0)$(CYAN)`scripts/percent-complete .files "$<"`$(SGR0)$(BOLD)$(BLACK)]$(SGR0) Compiling: $(BOLD)$(YELLOW)$<$(SGR0)"
84 COMPILING
="Compiling: $<"
89 @
$(CXX
) $(CXXFLAGS
) $(INCLUDES
) -c
$< -o
$@
92 @ cd
`dirname $<` && fluid
-c ..
/$<
94 DONE
:= $(BOLD
)$(GREEN
)done
$(SGR0
)
96 include FL
/makefile.inc
97 include nonlib
/makefile.inc
98 include Timeline
/makefile.inc
99 include Mixer
/makefile.inc
101 SRCS
:=$(FL_SRCS
) $(nonlib_SRCS
) $(Timeline_SRCS
) $(Mixer_SRCS
)
102 OBJS
:=$(FL_OBJS
) $(nonlib_OBJS
) $(Timeline_OBJS
) $(Mixer_OBJS
)
104 # FIXME: isn't there a better way?
105 $(OBJS
): .config Makefile
110 .deps
: .config
$(SRCS
)
111 ifneq ($(CALCULATING
),yes
)
112 @ echo
-n Calculating dependencies...
113 @ makedepend
-f-
-- $(CXXFLAGS
) $(INCLUDES
) -- $(SRCS
) 2>/dev
/null
> .deps
&& echo
$(DONE
)
114 # @ gcc -M $(CXXFLAGS) $(INCLUDES) $(SRCS) > .deps && echo $(DONE)
119 @ echo
-n
"Installing..."
120 @
install Timeline
/timeline
$(prefix)/bin
/non-daw
121 @
install Mixer
/mixer
$(prefix)/bin
/non-mixer
122 @ mkdir
-p
$(SYSTEM_PATH
)
123 @ mkdir
-p
$(PIXMAP_PATH
)
124 @ cp pixmaps
/*.png
$(PIXMAP_PATH
)
125 @
$(MAKE
) -s
-C doc
install
127 ifneq ($(USE_DEBUG
),yes
)
128 @ echo
-n
"Stripping..."
129 @
strip $(prefix)/bin
/non-daw
130 @
strip $(prefix)/bin
/non-mixer
137 .PHONEY
: clean config depend clean_deps
139 clean: FL_clean nonlib_clean Timeline_clean Mixer_clean
142 git archive
--prefix=non-daw-
$(VERSION
)/ v
$(VERSION
) | bzip2
> non-daw-
$(VERSION
).
tar.bz2
145 @ scripts
/scan-gpl
$(SRCS
) || echo
$(BOLD
)$(RED
)Some source files do not contain proper license information
!