Lucas
06f6a4881c
- Define Pi to avoid running into too many feature test macros - Define _DEFAULT_SOURCE if not in OpenBSD - Add a play target that works in Linux
48 lines
1.1 KiB
Makefile
48 lines
1.1 KiB
Makefile
# arngment - random music generator
|
|
#
|
|
# Written in 2020 by Lucas
|
|
#
|
|
# To the extent possible under law, the author(s) have dedicated all
|
|
# copyright and related and neighboring rights to this software to the
|
|
# public domain worldwide. This software is distributed without any
|
|
# warranty.
|
|
#
|
|
# You should have received a copy of the CC0 Public Domain Dedication
|
|
# along with this software. If not, see
|
|
# <http://creativecommons.org/publicdomain/zero/1.0/>.
|
|
.POSIX:
|
|
.SUFFIXES:
|
|
.SUFFIXES: .c .o
|
|
|
|
P = arngment
|
|
V = 0.0
|
|
|
|
LDLIBS = -lm
|
|
|
|
HDR = err.h lrand48_uniform.h note.h synth.h
|
|
OBJ = err.o lrand48_uniform.o main.o note.o synth.o
|
|
SRC = ${OBJ:.o=.c}
|
|
DIST_FILES = COPYING Makefile ${HDR} ${SRC}
|
|
|
|
all: arngment
|
|
|
|
arngment: ${OBJ}
|
|
${CC} ${LDFLAGS} -o $@ ${OBJ} ${LDLIBS}
|
|
|
|
${OBJ}: ${HDR}
|
|
|
|
play:
|
|
@${MAKE} _play_$$(uname)
|
|
|
|
_play_OpenBSD: all
|
|
./arngment ${ARNGMENT_ARGS} | aucat -e s16 -h raw -i -
|
|
|
|
_play_Linux: all
|
|
./arngment ${ARNGMENT_ARGS} | aplay -f dat -t raw -
|
|
|
|
clean:
|
|
rm -f arngment ${OBJ} ${P}-${V}.tgz
|
|
|
|
dist: clean
|
|
pax -ws '@^@${P}-${V}/@' ${DIST_FILES} | gzip >${P}-${V}.tgz
|