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 \
33 authhash.c authhash.h \
40 client.c client.h client-stubs.h \
41 client-common.c client-common.h \
42 configuration.c configuration.h \
44 coreaudio.c coreaudio.h \
45 dateparse.c dateparse.h xgetdate.c \
47 eclient.c eclient.h eclient-stubs.h \
49 eventdist.c eventdist.h \
51 eventlog.c eventlog.h \
52 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 \
71 resample.c resample.h \
72 rights.c queue-rights.c rights.h \
74 selection.c selection.h \
75 sendmail.c sendmail.h \
78 socketio.c socketio.h \
79 speaker-protocol.c speaker-protocol.h \
81 strptime.c strptime.h \
82 syscalls.c syscallsrt.c syscalls.h \
86 $(TRACKDB) trackdb.h trackdb-int.h \
87 trackname.c trackorder.c trackname.h \
89 uaudio.c uaudio-thread.c uaudio.h uaudio-apis.c \
90 uaudio-oss.c uaudio-alsa.c \
93 uaudio-rtp.c uaudio-command.c uaudio-schedule.c \
99 validity.c validity.h \
101 version.c version.h \
106 nodist_libdisorder_a_SOURCES=hreader.c \
109 version-string: ../config.status ${top_srcdir}/scripts/make-version-string
110 CC="${CC}" ${top_srcdir}/scripts/make-version-string > $@.new
111 @if cmp $@.new $@; then \
112 echo rm -f $@.new; rm -f $@.new; else \
113 echo mv $@.new $@; mv $@.new $@; fi
115 versionstring.c: version-string ${top_srcdir}/scripts/text2c
116 ${top_srcdir}/scripts/text2c -extern disorder_version_string \
117 version-string > $@.new
118 @if cmp $@.new $@; then \
119 echo rm -f $@.new; rm -f $@.new; else \
120 echo mv $@.new $@; mv $@.new $@; fi
122 definitions.h: Makefile
124 echo "/** @file lib/definitions.h" >> $@.new
125 echo " * @brief Definitions exported from makefile" >> $@.new
127 echo " * DO NOT EDIT." >> $@.new
129 echo "#define PKGLIBDIR \"${pkglibdir}\"" >> $@.new
130 echo "#define PKGCONFDIR \"${sysconfdir}/\"PACKAGE" >> $@.new
131 echo "#define PKGSTATEDIR \"${localstatedir}/\"PACKAGE" >> $@.new
132 echo "#define PKGDATADIR \"${pkgdatadir}/\"" >> $@.new
133 echo "#define DOCHTMLDIR \"${dochtmldir}\"" >> $@.new
134 echo "#define SBINDIR \"${sbindir}/\"" >> $@.new
135 echo "#define BINDIR \"${bindir}/\"" >> $@.new
136 echo "#define FINKBINDIR \"${finkbindir}/\"" >> $@.new
137 echo "#define SENDMAIL \"${SENDMAIL}\"" >> $@.new
138 @if cmp $@.new $@; then \
139 echo rm -f $@.new; rm -f $@.new; else \
140 echo mv $@.new $@; mv $@.new $@; fi
141 defs.o: definitions.h
142 defs.lo: definitions.h
144 client.o: client-stubs.c
147 cd ${srcdir} && ${top_srcdir}/scripts/make-unidata
149 CLEANFILES=definitions.h definitions.h.new version-string versionstring.[ch] \
150 *.gcda *.gcov *.gcno *.c.html index.html
152 EXTRA_DIST=trackdb.c trackdb-stub.c client-stubs.c eclient-stubs.c \
153 getopt.c getopt.h getopt1.c \
154 disorder-win32.c disorder-win32.h \
155 lib.vcxproj lib.vcxproj.filters