54 lines
1.5 KiB
Makefile
54 lines
1.5 KiB
Makefile
# Makefile for klick, by B. Watson (yalhcru@gmail.com). Part of
|
|
# SlackBuilds.org build for klick.
|
|
|
|
# Wrote this because the SConstruct for klick no longer works in
|
|
# modern scons, and I'm way better at Makefiles than I am at scons.
|
|
|
|
# This is the bare minimum needed to build klick. There are no clean
|
|
# or install targets, and there's no dependency info for headers.
|
|
|
|
PROJ=klick
|
|
VERSION=0.12.2
|
|
|
|
TERMINAL=yes
|
|
OSC=no
|
|
RUBBERBAND=no
|
|
SLKCFLAGS=
|
|
PREFIX=/usr
|
|
SHARE=$(PREFIX)/share/$(PROJ)
|
|
|
|
SRCS=src/main.cc src/klick.cc src/options.cc src/audio_interface.cc src/audio_interface_jack.cc src/audio_interface_sndfile.cc src/audio_chunk.cc src/tempomap.cc src/metronome.cc src/metronome_simple.cc src/metronome_map.cc src/metronome_jack.cc src/position.cc src/util/util.cc
|
|
|
|
LIBS:=$(shell pkg-config --libs jack samplerate sndfile)
|
|
FLAGS:=$(shell pkg-config --cflags jack samplerate sndfile)
|
|
|
|
ifeq ($(TERMINAL),yes)
|
|
SRCS+=src/terminal_handler.cc
|
|
DEFS+= -DENABLE_TERMINAL
|
|
endif
|
|
|
|
ifeq ($(OSC),yes)
|
|
SRCS+=src/osc_interface.cc src/osc_handler.cc
|
|
LIBS+= $(shell pkg-config --libs liblo)
|
|
FLAGS+= $(shell pkg-config --cflags liblo)
|
|
DEFS+= -DENABLE_OSC
|
|
endif
|
|
|
|
ifeq ($(RUBBERBAND),yes)
|
|
LIBS+= $(shell pkg-config --libs rubberband)
|
|
FLAGS+= $(shell pkg-config --cflags rubberband)
|
|
DEFS+= -DENABLE_RUBBERBAND
|
|
endif
|
|
|
|
DEFS+= -DHAVE_SNDFILE_OGG -DNDEBUG -DDATA_DIR='"$(SHARE)"' -DVERSION='"$(VERSION)"'
|
|
CXXFLAGS=-fpermissive $(SLKCFLAGS) $(DEFS) $(FLAGS)
|
|
|
|
OBJS=$(SRCS:.cc=.o)
|
|
|
|
all: $(PROJ)
|
|
|
|
$(PROJ): $(OBJS)
|
|
$(CXX) -o $(PROJ) $(OBJS) $(LDFLAGS) $(LIBS)
|
|
|
|
$(OBJS): $(SRCS)
|