arngment/Makefile
Lucas 06f6a4881c Run in Linux
- 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
2020-05-14 01:06:44 +00:00

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