1 2sbin_PROGRAMS = forked-daapd 3 4if COND_FLAC 5FLACSRC=scan-flac.c 6endif 7 8if COND_MUSEPACK 9MUSEPACKSRC=scan-mpc.c 10endif 11 12if COND_ITUNES 13ITUNESSRC=filescanner_itunes.c 14endif 15 16if COND_ALSA 17ALSASRC=laudio_alsa.c 18endif 19 20if COND_OSS4 21OSS4SRC=laudio_oss4.c 22endif 23 24if COND_AVIO 25AVIO_SRC=avio_evbuffer.c avio_evbuffer.h 26else 27FFURL_SRC=ffmpeg_url_evbuffer.c ffmpeg_url_evbuffer.h 28endif 29 30GPERF_FILES = \ 31 daap_query.gperf \ 32 rsp_query.gperf \ 33 dacp_prop.gperf \ 34 dmap_fields.gperf 35 36GPERF_PRODUCTS = \ 37 daap_query_hash.c \ 38 rsp_query_hash.c \ 39 dacp_prop_hash.c \ 40 dmap_fields_hash.c 41 42ANTLR_GRAMMARS = \ 43 RSP.g RSP2SQL.g \ 44 DAAP.g DAAP2SQL.g 45 46ANTLR_SOURCES = \ 47 RSPLexer.c RSPLexer.h RSPParser.c RSPParser.h \ 48 RSP2SQL.c RSP2SQL.h \ 49 DAAPLexer.c DAAPLexer.h DAAPParser.c DAAPParser.h \ 50 DAAP2SQL.c DAAP2SQL.h 51 52ANTLR_PRODUCTS = 53 54forked_daapd_CPPFLAGS = -D_GNU_SOURCE \ 55 -DDATADIR="\"$(pkgdatadir)\"" -DCONFDIR="\"$(sysconfdir)\"" \ 56 -DSTATEDIR="\"$(localstatedir)\"" -DPKGLIBDIR="\"$(pkglibdir)\"" \ 57 @OSS4CPPFLAGS@ 58 59forked_daapd_CFLAGS = \ 60 @ZLIB_CFLAGS@ @AVAHI_CFLAGS@ @SQLITE3_CFLAGS@ @LIBAV_CFLAGS@ \ 61 @CONFUSE_CFLAGS@ @TAGLIB_CFLAGS@ @MINIXML_CFLAGS@ @LIBPLIST_CFLAGS@ \ 62 @LIBGCRYPT_CFLAGS@ @GPG_ERROR_CFLAGS@ @ALSA_CFLAGS@ 63 64forked_daapd_LDADD = -lrt \ 65 @ZLIB_LIBS@ @AVAHI_LIBS@ @SQLITE3_LIBS@ @LIBAV_LIBS@ \ 66 @CONFUSE_LIBS@ @FLAC_LIBS@ @TAGLIB_LIBS@ @LIBEVENT_LIBS@ \ 67 @LIBAVL_LIBS@ @MINIXML_LIBS@ @ANTLR3C_LIBS@ @LIBPLIST_LIBS@ \ 68 @LIBGCRYPT_LIBS@ @GPG_ERROR_LIBS@ @ALSA_LIBS@ @LIBUNISTRING@ 69 70forked_daapd_SOURCES = main.c \ 71 db.c db.h \ 72 logger.c logger.h \ 73 conffile.c conffile.h \ 74 filescanner.c filescanner.h \ 75 filescanner_ffmpeg.c filescanner_urlfile.c filescanner_m3u.c $(ITUNESSRC) \ 76 mdns_avahi.c mdns.h \ 77 remote_pairing.c remote_pairing.h \ 78 evhttp/http.c evhttp/evhttp.h \ 79 evhttp/http-internal.h evhttp/log.h \ 80 $(FFURL_SRC) $(AVIO_SRC) \ 81 httpd.c httpd.h \ 82 httpd_rsp.c httpd_rsp.h \ 83 httpd_daap.c httpd_daap.h \ 84 httpd_dacp.c httpd_dacp.h \ 85 dmap_common.c dmap_common.h \ 86 transcode.c transcode.h \ 87 artwork.c artwork.h \ 88 misc.c misc.h \ 89 rng.c rng.h \ 90 rsp_query.c rsp_query.h \ 91 daap_query.c daap_query.h \ 92 player.c player.h \ 93 $(ALSASRC) $(OSS4SRC) laudio.h \ 94 raop.c raop.h \ 95 evrtsp/rtsp.c evrtp/evrtsp.h \ 96 evrtsp/rtsp-internal.h evrtsp/log.h \ 97 scan-wma.c \ 98 $(FLACSRC) $(MUSEPACKSRC) 99 100nodist_forked_daapd_SOURCES = \ 101 $(ANTLR_SOURCES) 102 103BUILT_SOURCES = \ 104 $(GPERF_PRODUCTS) 105 106EXTRA_DIST = \ 107 $(ANTLR_GRAMMARS) \ 108 scan-mpc.c \ 109 scan-flac.c 110 111CLEANFILES = \ 112 $(GPERF_PRODUCTS) 113 114 115# gperf construction rules 116%_hash.c: %.gperf 117 if $(GPERF) $< > $@.tmp; then \ 118 mv $@.tmp $@; \ 119 elif $(GPERF) --version >/dev/null 2>&1; then \ 120 rm $@.tmp; \ 121 exit 1; \ 122 else \ 123 rm $@.tmp; \ 124 touch $@; \ 125 fi 126 127# Support for building the parsers when ANTLR3 is available 128if COND_ANTLR 129SUFFIXES = .g .u 130 131%.tokens %.c %Lexer.c %Parser.c %Lexer.h %Parser.h %.h: %.g 132 $(ANTLR) $(ANTLR_OPTIONS) $< 133 134%.u: %.g 135 $(ANTLR) -depend $< > $@ 136 @echo -n "ANTLR_PRODUCTS += " > $@.tmp 137 @grep : $@ | cut -d : -f 1 | tr -d ' ' | { while read f; do test "$$f" != "$<" && echo -n "$$f "; done } >> $@.tmp 138 @cat $@.tmp >> $@ 139 @rm $@.tmp 140 141BUILT_SOURCES += $(ANTLR_SOURCES) 142 143CLEANFILES += \ 144 $(ANTLR_PRODUCTS) \ 145 $(ANTLR_GRAMMARS:.g=.u) 146 147else !COND_ANTLR 148DISTCLEANFILES = \ 149 $(ANTLR_PRODUCTS) \ 150 $(ANTLR_GRAMMARS:.g=.u) 151 152endif 153 154-include $(ANTLR_GRAMMARS:.g=.u) 155