Assists music production by grouping standalone programs into sessions. Community version of "Non Session Manager".
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

119 lines
3.4KB

  1. ###############################################################################
  2. # Copyright (C) 2008 Jonathan Moore Liles #
  3. # #
  4. # This program is free software; you can redistribute it and/or modify it #
  5. # under the terms of the GNU General Public License as published by the #
  6. # Free Software Foundation; either version 2 of the License, or (at your #
  7. # option) any later version. #
  8. # #
  9. # This program is distributed in the hope that it will be useful, but WITHOUT #
  10. # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or #
  11. # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for #
  12. # more details. #
  13. # #
  14. # You should have received a copy of the GNU General Public License along #
  15. # with This program; see the file COPYING. If not,write to the Free Software #
  16. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #
  17. ###############################################################################
  18. ## Makefile for the Non-DAW.
  19. ##
  20. ## Do not edit this file; run `make config` instead.
  21. ##
  22. VERSION := 0.5.0
  23. all: .config FL Timeline
  24. .config: configure
  25. @ ./configure
  26. config:
  27. @ ./configure
  28. -include .config
  29. # a bit of a hack to make sure this runs before any rules
  30. ifneq ($(CALCULATING),yes)
  31. TOTAL := $(shell $(MAKE) CALCULATING=yes -n 2>/dev/null | sed -n 's/^.*Compiling: \([^"]\+\)"/\1/p' > .files )
  32. endif
  33. ifeq ($(USE_DEBUG),yes)
  34. CXXFLAGS := -pipe -ggdb -Wall -Wextra -Wnon-virtual-dtor -Wno-missing-field-initializers -O0 -fno-rtti -fno-exceptions
  35. else
  36. CXXFLAGS := -pipe -O2 -fno-rtti -fno-exceptions -DNDEBUG
  37. endif
  38. CXXFLAGS += $(SNDFILE_CFLAGS) $(LASH_CFLAGS) $(FLTK_CFLAGS) -DINSTALL_PREFIX="\"$(prefix)\"" -DVERSION=\"$(VERSION)\"
  39. INCLUDES := -I. -Iutil -IFL
  40. include scripts/colors
  41. ifneq ($(CALCULATING),yes)
  42. COMPILING="$(BOLD)$(BLACK)[$(SGR0)$(CYAN)`scripts/percent-complete .files "$<"`$(SGR0)$(BOLD)$(BLACK)]$(SGR0) Compiling: $(BOLD)$(YELLOW)$<$(SGR0)"
  43. else
  44. COMPILING="Compiling: $<"
  45. endif
  46. .C.o:
  47. @ echo $(COMPILING)
  48. @ $(CXX) $(CXXFLAGS) $(INCLUDES) -c $< -o $@
  49. %.C : %.fl
  50. @ cd `dirname $<` && fluid -c ../$<
  51. DONE := $(BOLD)$(GREEN)done$(SGR0)
  52. include FL/makefile.inc
  53. include Timeline/makefile.inc
  54. SRCS:=$(Timeline_SRCS) $(FL_SRCS)
  55. OBJS:=$(FL_OBJS) $(Timeline_OBJS)
  56. # FIXME: isn't there a better way?
  57. $(OBJS): .config Makefile
  58. TAGS: $(SRCS)
  59. etags $(SRCS)
  60. .deps: .config $(SRCS)
  61. ifneq ($(CALCULATING),yes)
  62. @ echo -n Calculating dependencies...
  63. @ makedepend -f- -- $(CXXFLAGS) $(INCLUDES) -- $(SRCS) 2>/dev/null > .deps && echo $(DONE)
  64. endif
  65. install: all
  66. @ echo -n "Installing..."
  67. @ install Timeline/timeline $(prefix)/bin/non-daw
  68. # @ install Mixer/mixer $(prefix)/bin/non-mixer
  69. @ mkdir -p $(prefix)/share/non-daw
  70. @ mkdir -p $(prefix)/share/pixmaps/non-daw
  71. @ mkdir -p $(prefix)/doc/non-daw
  72. @ cp pixmaps/*.png $(prefix)/share/pixmaps/non-daw
  73. @ cp doc/*.html doc/*.png $(prefix)/doc/non-daw
  74. @ cp COPYING $(prefix)/doc/non-daw
  75. @ echo "$(DONE)"
  76. ifneq ($(USE_DEBUG),yes)
  77. @ echo -n "Stripping..."
  78. @ strip $(prefix)/bin/non-daw
  79. @ strip $(prefix)/bin/non-mixer
  80. @ echo "$(DONE)"
  81. endif
  82. clean_deps:
  83. @ rm -f .deps
  84. .PHONEY: clean config depend clean_deps
  85. clean: FL_clean Timeline_clean
  86. dist:
  87. git archive --prefix=non-daw-$(VERSION)/ v$(VERSION) | bzip2 > non-daw-$(VERSION).tar.bz2
  88. scan-gpl:
  89. @ scripts/scan-gpl $(SRCS) || echo $(BOLD)$(RED)Some source files do not contain proper license information!
  90. -include .deps