Browse Source

Tweak build system.

tags/non-daw-v1.1.0
Jonathan Moore Liles 15 years ago
parent
commit
4cf327e1a7
11 changed files with 294 additions and 12 deletions
  1. +1
    -0
      FL/FL
  2. +115
    -0
      FL/Makefile
  3. +21
    -0
      FL/configure
  4. +1
    -0
      FL/scripts
  5. +3
    -2
      Makefile
  6. +8
    -5
      mixer/Makefile
  7. +115
    -0
      nonlib/Makefile
  8. +20
    -0
      nonlib/configure
  9. +1
    -0
      nonlib/nonlib
  10. +1
    -0
      nonlib/scripts
  11. +8
    -5
      timeline/Makefile

+ 1
- 0
FL/FL View File

@@ -0,0 +1 @@
.

+ 115
- 0
FL/Makefile View File

@@ -0,0 +1,115 @@

###############################################################################
# Copyright (C) 2008 Jonathan Moore Liles #
# #
# This program is free software; you can redistribute it and/or modify it #
# under the terms of the GNU General Public License as published by the #
# Free Software Foundation; either version 2 of the License, or (at your #
# option) any later version. #
# #
# This program is distributed in the hope that it will be useful, but WITHOUT #
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or #
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for #
# more details. #
# #
# You should have received a copy of the GNU General Public License along #
# with This program; see the file COPYING. If not,write to the Free Software #
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #
###############################################################################

## Makefile for the Non-DAW.

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

VERSION := 1.0.0
PACKAGE := FL

all: .config

.config: configure
@ echo '<<< Configuring '$(PACKAGE)
@ ./configure

config:
@ echo '<<< Configuring '$(PACKAGE)
@ ./configure

-include .config

export SYSTEM_PATH:=$(prefix)/share/
export DOCUMENT_PATH:=$(prefix)/share/doc/
export PIXMAP_PATH:=$(prefix)/share/pixmaps/

# a bit of a hack to make sure this runs before any rules
ifneq ($(CALCULATING),yes)
TOTAL := $(shell $(MAKE) CALCULATING=yes -n 2>/dev/null | sed -n 's/^.*Compiling: \([^"]\+\)"/\1/p' > .files )
endif

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


CFLAGS+=-DVERSION=\"$(VERSION)\" \
-DINSTALL_PREFIX=\"$(prefix)\" \
-DSYSTEM_PATH=\"$(SYSTEM_PATH)\" \
-DDOCUMENT_PATH=\"$(DOCUMENT_PATH)\" \
-DPIXMAP_PATH=\"$(PIXMAP_PATH)\"

CXXFLAGS += $(SNDFILE_CFLAGS) $(FLTK_CFLAGS) $(JACK_CFLAGS)
CXXFLAGS := $(CFLAGS) $(CXXFLAGS)

INCLUDES := -I. -Iutil -IFL -Inonlib

include scripts/colors

ifneq ($(CALCULATING),yes)
COMPILING="$(BOLD)$(BLACK)$(PACKAGE) [$(SGR0)$(CYAN)`scripts/percent-complete .files "$<"`$(SGR0)$(BOLD)$(BLACK)]$(SGR0) $(BOLD)$(YELLOW)$<$(SGR0)"
else
COMPILING="Compiling: $<"
endif

.C.o:
@ echo $(COMPILING)
@ $(CXX) $(CXXFLAGS) $(INCLUDES) -c $< -o $@

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

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

include makefile.inc

SRCS:=$(FL_SRCS)
OBJS:=$(FL_OBJS)

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

TAGS: $(SRCS)
etags $(SRCS)

.deps: .config $(SRCS)
ifneq ($(CALCULATING),yes)
@ echo -n Calculating dependencies...
@ makedepend -f- -- $(CXXFLAGS) $(INCLUDES) -- $(SRCS) 2>/dev/null > .deps && echo $(DONE)
@ # gcc -M $(CXXFLAGS) $(INCLUDES) $(SRCS) > .deps && echo $(DONE)
endif

clean_deps:
@ rm -f .deps

install:
@ echo ...

.PHONEY: clean config depend clean_deps

clean: FL_clean

-include .deps

+ 21
- 0
FL/configure View File

@@ -0,0 +1,21 @@
#!/bin/sh
#
# Copyright (C) 2008 Jonathan Moore Liles
# This file is licensed under version 2 of the GPL.

. scripts/config-funcs

begin

begin_options

ask "Build for debugging" USE_DEBUG no

begin_tests

require_FLTK 1.1.7 images
require_command FLUID fluid
require_command ar ar
require_command makedepend makedepend

end

+ 1
- 0
FL/scripts View File

@@ -0,0 +1 @@
../scripts

+ 3
- 2
Makefile View File

@@ -17,7 +17,7 @@
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #
###############################################################################

SUBDIRS=timeline mixer
SUBDIRS=nonlib FL timeline mixer

all:
@ for dir in $(SUBDIRS); do $(MAKE) -s -C $$dir; done
@@ -28,4 +28,5 @@ clean:
install:
@ for dir in $(SUBDIRS); do $(MAKE) -s -C $$dir install; done


config:
@ for dir in $(SUBDIRS); do $(MAKE) -s -C $$dir config; done

+ 8
- 5
mixer/Makefile View File

@@ -24,13 +24,16 @@
##

VERSION := 1.0.0
PACKAGE := MIXER

all: .config

.config: configure
@ echo '<<< Configuring '$(PACKAGE)
@ ./configure

config:
@ echo '<<< Configuring '$(PACKAGE)
@ ./configure

-include .config
@@ -67,7 +70,7 @@ INCLUDES := -I. -Iutil -IFL -Inonlib
include scripts/colors

ifneq ($(CALCULATING),yes)
COMPILING="$(BOLD)$(BLACK)[$(SGR0)$(CYAN)`scripts/percent-complete .files "$<"`$(SGR0)$(BOLD)$(BLACK)]$(SGR0) Compiling: $(BOLD)$(YELLOW)$<$(SGR0)"
COMPILING="$(BOLD)$(BLACK)MIXER [$(SGR0)$(CYAN)`scripts/percent-complete .files "$<"`$(SGR0)$(BOLD)$(BLACK)]$(SGR0) $(BOLD)$(YELLOW)$<$(SGR0)"
else
COMPILING="Compiling: $<"
endif
@@ -82,11 +85,11 @@ endif
DONE := $(BOLD)$(GREEN)done$(SGR0)

include FL/makefile.inc
include nonlib/makefile.inc
#include nonlib/makefile.inc
include makefile.inc

SRCS:=$(FL_SRCS) $(nonlib_SRCS) $(Mixer_SRCS)
OBJS:=$(FL_OBJS) $(nonlib_OBJS) $(Mixer_OBJS)
SRCS:=$(Mixer_SRCS)
OBJS:=$(Mixer_OBJS)

# FIXME: isn't there a better way?
$(OBJS): .config Makefile
@@ -121,7 +124,7 @@ clean_deps:

.PHONEY: clean config depend clean_deps

clean: FL_clean nonlib_clean Mixer_clean
clean: FL_clean Mixer_clean

dist:
git archive --prefix=non-mixer-$(VERSION)/ v$(VERSION) | bzip2 > non-mixer-$(VERSION).tar.bz2


+ 115
- 0
nonlib/Makefile View File

@@ -0,0 +1,115 @@

###############################################################################
# Copyright (C) 2008 Jonathan Moore Liles #
# #
# This program is free software; you can redistribute it and/or modify it #
# under the terms of the GNU General Public License as published by the #
# Free Software Foundation; either version 2 of the License, or (at your #
# option) any later version. #
# #
# This program is distributed in the hope that it will be useful, but WITHOUT #
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or #
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for #
# more details. #
# #
# You should have received a copy of the GNU General Public License along #
# with This program; see the file COPYING. If not,write to the Free Software #
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #
###############################################################################

## Makefile for the Non-DAW.

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

VERSION := 1.0.0
PACKAGE := NONLIB

all: .config

.config: configure
@ echo '<<< Configuring '$(PACKAGE)
@ ./configure

config:
@ echo '<<< Configuring '$(PACKAGE)
@ ./configure

-include .config

export SYSTEM_PATH:=$(prefix)/share/
export DOCUMENT_PATH:=$(prefix)/share/doc/
export PIXMAP_PATH:=$(prefix)/share/pixmaps/

# a bit of a hack to make sure this runs before any rules
ifneq ($(CALCULATING),yes)
TOTAL := $(shell $(MAKE) CALCULATING=yes -n 2>/dev/null | sed -n 's/^.*Compiling: \([^"]\+\)"/\1/p' > .files )
endif

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


CFLAGS+=-DVERSION=\"$(VERSION)\" \
-DINSTALL_PREFIX=\"$(prefix)\" \
-DSYSTEM_PATH=\"$(SYSTEM_PATH)\" \
-DDOCUMENT_PATH=\"$(DOCUMENT_PATH)\" \
-DPIXMAP_PATH=\"$(PIXMAP_PATH)\"

CXXFLAGS += $(SNDFILE_CFLAGS) $(FLTK_CFLAGS) $(JACK_CFLAGS)
CXXFLAGS := $(CFLAGS) $(CXXFLAGS)

INCLUDES := -I. -Iutil -IFL -Inonlib

include scripts/colors

ifneq ($(CALCULATING),yes)
COMPILING="$(BOLD)$(BLACK)NONLIB [$(SGR0)$(CYAN)`scripts/percent-complete .files "$<"`$(SGR0)$(BOLD)$(BLACK)]$(SGR0) $(BOLD)$(YELLOW)$<$(SGR0)"
else
COMPILING="Compiling: $<"
endif

.C.o:
@ echo $(COMPILING)
@ $(CXX) $(CXXFLAGS) $(INCLUDES) -c $< -o $@

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

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

include makefile.inc

SRCS:=$(nonlib_SRCS)
OBJS:=$(nonlib_OBJS)

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

TAGS: $(SRCS)
etags $(SRCS)

.deps: .config $(SRCS)
ifneq ($(CALCULATING),yes)
@ echo -n Calculating dependencies...
@ makedepend -f- -- $(CXXFLAGS) $(INCLUDES) -- $(SRCS) 2>/dev/null > .deps && echo $(DONE)
@ # gcc -M $(CXXFLAGS) $(INCLUDES) $(SRCS) > .deps && echo $(DONE)
endif

clean_deps:
@ rm -f .deps

.PHONEY: clean config depend clean_deps

install:
@ echo ...

clean: nonlib_clean

-include .deps

+ 20
- 0
nonlib/configure View File

@@ -0,0 +1,20 @@
#!/bin/sh
#
# Copyright (C) 2008 Jonathan Moore Liles
# This file is licensed under version 2 of the GPL.

. scripts/config-funcs

begin

begin_options

ask "Build for debugging" USE_DEBUG no

begin_tests

require_command ar ar
require_command makedepend makedepend
require_package JACK 0.103.0 jack

end

+ 1
- 0
nonlib/nonlib View File

@@ -0,0 +1 @@
.

+ 1
- 0
nonlib/scripts View File

@@ -0,0 +1 @@
../scripts

+ 8
- 5
timeline/Makefile View File

@@ -24,13 +24,16 @@
##

VERSION := 1.0.0
PACKAGE := TIMELINE

all: .config

.config: configure
@ echo '<<< Configuring '$(PACKAGE)
@ ./configure

config:
@ echo '<<< Configuring '$(PACKAGE)
@ ./configure

-include .config
@@ -79,7 +82,7 @@ INCLUDES := -I. -Iutil -IFL -Inonlib
include scripts/colors

ifneq ($(CALCULATING),yes)
COMPILING="$(BOLD)$(BLACK)[$(SGR0)$(CYAN)`scripts/percent-complete .files "$<"`$(SGR0)$(BOLD)$(BLACK)]$(SGR0) Compiling: $(BOLD)$(YELLOW)$<$(SGR0)"
COMPILING="$(BOLD)$(BLACK)$(PACKAGE) [$(SGR0)$(CYAN)`scripts/percent-complete .files "$<"`$(SGR0)$(BOLD)$(BLACK)]$(SGR0) $(BOLD)$(YELLOW)$<$(SGR0)"
else
COMPILING="Compiling: $<"
endif
@@ -94,11 +97,11 @@ endif
DONE := $(BOLD)$(GREEN)done$(SGR0)

include FL/makefile.inc
include nonlib/makefile.inc
# include nonlib/makefile.inc
include makefile.inc

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

# FIXME: isn't there a better way?
$(OBJS): .config Makefile
@@ -133,7 +136,7 @@ clean_deps:

.PHONEY: clean config depend clean_deps

clean: FL_clean nonlib_clean Timeline_clean
clean: FL_clean Timeline_clean

dist:
git archive --prefix=non-daw-$(VERSION)/ v$(VERSION) | bzip2 > non-daw-$(VERSION).tar.bz2


Loading…
Cancel
Save