#
# This file is part of DisOrder.
-# Copyright (C) 2004-2008 Richard Kettlewell
+# Copyright (C) 2004-2009 Richard Kettlewell
#
# 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
sbin_PROGRAMS=disorderd disorder-deadlock disorder-rescan disorder-dump \
disorder-speaker disorder-decode disorder-normalize \
disorder-stats disorder-dbupgrade disorder-choose
-noinst_PROGRAMS=trackname
+noinst_PROGRAMS=trackname endian
AM_CPPFLAGS=-I${top_srcdir}/lib -I../lib
disorderd_SOURCES=disorderd.c api.c api-server.c daemonize.c play.c \
server.c server-queue.c queue-ops.c state.c plugin.c \
- schedule.c exports.c ../lib/memgc.c disorder-server.h
+ schedule.c dbparams.c background.c \
+ exports.c ../lib/memgc.c disorder-server.h
disorderd_LDADD=$(LIBOBJS) ../lib/libdisorder.a \
$(LIBPCRE) $(LIBDB) $(LIBAO) $(LIBGC) $(LIBGCRYPT) $(LIBICONV) \
- $(LIBASOUND)
+ $(LIBASOUND) $(COREAUDIO)
disorderd_LDFLAGS=-export-dynamic
disorderd_DEPENDENCIES=../lib/libdisorder.a
$(LIBDB) $(LIBPCRE) $(LIBICONV) $(LIBGCRYPT)
disorder_deadlock_DEPENDENCIES=../lib/libdisorder.a
-disorder_speaker_SOURCES=speaker.c speaker.h \
- speaker-command.c \
- speaker-network.c \
- speaker-coreaudio.c \
- speaker-oss.c \
- speaker-alsa.c
+disorder_speaker_SOURCES=speaker.c
disorder_speaker_LDADD=$(LIBOBJS) ../lib/libdisorder.a \
- $(LIBASOUND) $(LIBPCRE) $(LIBICONV) $(LIBGCRYPT) $(COREAUDIO)
+ $(LIBASOUND) $(LIBPCRE) $(LIBICONV) $(LIBGCRYPT) $(COREAUDIO) \
+ $(LIBPTHREAD)
disorder_speaker_DEPENDENCIES=../lib/libdisorder.a
disorder_decode_SOURCES=decode.c disorder-server.h
disorder_choose_SOURCES=choose.c server-queue.c ../lib/memgc.c \
disorder-server.h
disorder_choose_LDADD=$(LIBOBJS) ../lib/libdisorder.a \
- $(LIBDB) $(LIBGC) $(LIBPCRE) $(LIBGCRYPT)
+ $(LIBDB) $(LIBGC) $(LIBPCRE) $(LIBICONV) $(LIBGCRYPT)
disorder_choose_LDFLAGS=-export-dynamic
disorder_choose_DEPENDENCIES=../lib/libdisorder.a
./disorder-choose --help > /dev/null
./disorder-choose --version > /dev/null
-# My sox doesn't know MP3 or FLAC unfortunately
-check-decode: disorder-decode disorder-normalize
+check-decode: disorder-decode disorder-normalize endian
echo "speaker_backend network" > config
- echo "broadcast 127.255.255.255 discard" > config
+ echo "broadcast 127.255.255.255 9" > config
+ oggdec -b 16 -e `./endian` -R -s 1 -o oggdec.raw ${top_srcdir}/sounds/scratch.ogg
+ @$(MAKE) check-ogg
+ @$(MAKE) check-wav
+ @if which flac >/dev/null 2>&1; then $(MAKE) check-flac; fi
+ rm -f config oggdec.raw
+
+# TODO mp3 - but sox doesn't (reliably) know how to encode to it
+
+check-ogg:
./disorder-decode ${top_srcdir}/sounds/scratch.ogg | \
- ./disorder-normalize --config config > decoded.raw
- oggdec -b 16 -e 1 -R -s 1 -o oggdec.raw ${top_srcdir}/sounds/scratch.ogg
- cmp decoded.raw oggdec.raw
+ ./disorder-normalize --config config > ogged.raw
+ cmp ogged.raw oggdec.raw
+ rm -f ogged.raw
+
+check-wav:
sox ${top_srcdir}/sounds/scratch.ogg scratch.wav
./disorder-decode scratch.wav | \
- ./disorder-normalize --config config > decoded.raw
- ls -l *.raw
- cmp decoded.raw oggdec.raw
- rm -f scratch.wav config decoded.raw oggdec.raw
+ ./disorder-normalize --config config > waved.raw
+ cmp waved.raw oggdec.raw
+ rm -rf scratch.wav waved.raw
+
+check-flac:
+ rm -f scratch.wav scratch.flac
+ sox ${top_srcdir}/sounds/scratch.ogg scratch.wav
+ flac scratch.wav
+ ./disorder-decode scratch.flac | \
+ ./disorder-normalize --config config > flacced.raw
+ cmp flacced.raw oggdec.raw
+ rm -f scratch.flac scratch.wav flacced.raw
EXTRA_DIST=README.dbversions