2 # This file is part of DisOrder.
3 # Copyright (C) 2004-2010, 2012, 2013 Richard Kettlewell
5 # This program is free software: you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation, either version 3 of the License, or
8 # (at your option) any later version.
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with this program. If not, see <http://www.gnu.org/licenses/>.
19 VPATH+=${top_srcdir}/common
21 noinst_LIBRARIES=libdisorder.a
22 include_HEADERS=disorder.h
25 TRACKDB=trackdb.c trackdb-playlists.c
27 TRACKDB=trackdb-stub.c
30 libdisorder_a_SOURCES=charset.c charsetf.c charset.h \
32 authhash.c authhash.h \
39 client.c client.h client-stubs.h \
40 client-common.c client-common.h \
41 configuration.c configuration.h \
43 coreaudio.c coreaudio.h \
44 dateparse.c dateparse.h xgetdate.c \
46 eclient.c eclient.h eclient-stubs.h \
48 eventdist.c eventdist.h \
50 eventlog.c eventlog.h \
51 filepart.c filepart.h \
56 hostname.c hostname.h \
59 inputline.c inputline.h \
63 macros.c macros-builtin.c macros.h \
67 asprintf.c fprintf.c snprintf.c \
72 resample.c resample.h \
73 rights.c queue-rights.c rights.h \
75 salsa208.c salsa208.h \
76 selection.c selection.h \
77 sendmail.c sendmail.h \
80 socketio.c socketio.h \
81 speaker-protocol.c speaker-protocol.h \
83 strptime.c strptime.h \
84 syscalls.c syscallsrt.c syscalls.h \
88 $(TRACKDB) trackdb.h trackdb-int.h \
89 trackname.c trackorder.c trackname.h \
91 uaudio.c uaudio-thread.c uaudio.h uaudio-apis.c \
92 uaudio-oss.c uaudio-alsa.c \
95 uaudio-rtp.c uaudio-command.c uaudio-schedule.c \
101 validity.c validity.h \
103 version.c version.h \
108 nodist_libdisorder_a_SOURCES=hreader.c \
111 version-string: ../config.status ${top_srcdir}/scripts/make-version-string
112 CC="${CC}" ${top_srcdir}/scripts/make-version-string > $@.new
113 @if cmp $@.new $@; then \
114 echo rm -f $@.new; rm -f $@.new; else \
115 echo mv $@.new $@; mv $@.new $@; fi
117 versionstring.c: version-string ${top_srcdir}/scripts/text2c
118 ${top_srcdir}/scripts/text2c -extern disorder_version_string \
119 version-string > $@.new
120 @if cmp $@.new $@; then \
121 echo rm -f $@.new; rm -f $@.new; else \
122 echo mv $@.new $@; mv $@.new $@; fi
124 definitions.h: Makefile
126 echo "/** @file lib/definitions.h" >> $@.new
127 echo " * @brief Definitions exported from makefile" >> $@.new
129 echo " * DO NOT EDIT." >> $@.new
131 echo "#define PKGLIBDIR \"${pkglibdir}\"" >> $@.new
132 echo "#define PKGCONFDIR \"${sysconfdir}/\"PACKAGE" >> $@.new
133 echo "#define PKGSTATEDIR \"${localstatedir}/\"PACKAGE" >> $@.new
134 echo "#define PKGDATADIR \"${pkgdatadir}/\"" >> $@.new
135 echo "#define DOCHTMLDIR \"${dochtmldir}\"" >> $@.new
136 echo "#define SBINDIR \"${sbindir}/\"" >> $@.new
137 echo "#define BINDIR \"${bindir}/\"" >> $@.new
138 echo "#define FINKBINDIR \"${finkbindir}/\"" >> $@.new
139 echo "#define SENDMAIL \"${SENDMAIL}\"" >> $@.new
140 @if cmp $@.new $@; then \
141 echo rm -f $@.new; rm -f $@.new; else \
142 echo mv $@.new $@; mv $@.new $@; fi
143 defs.o: definitions.h
144 defs.lo: definitions.h
146 client.o: client-stubs.c
149 cd ${srcdir} && ${top_srcdir}/scripts/make-unidata
151 CLEANFILES=definitions.h definitions.h.new version-string versionstring.[ch] \
152 *.gcda *.gcov *.gcno *.c.html index.html
154 EXTRA_DIST=trackdb.c trackdb-stub.c client-stubs.c eclient-stubs.c \
155 getopt.c getopt.h getopt1.c \
156 disorder-win32.c disorder-win32.h \
157 lib.vcxproj lib.vcxproj.filters