mpd.mk 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345
  1. ################################################################################
  2. #
  3. # mpd
  4. #
  5. ################################################################################
  6. MPD_VERSION_MAJOR = 0.21
  7. MPD_VERSION = $(MPD_VERSION_MAJOR).25
  8. MPD_SOURCE = mpd-$(MPD_VERSION).tar.xz
  9. MPD_SITE = http://www.musicpd.org/download/mpd/$(MPD_VERSION_MAJOR)
  10. MPD_DEPENDENCIES = host-pkgconf boost
  11. MPD_LICENSE = GPL-2.0+
  12. MPD_LICENSE_FILES = COPYING
  13. # Zeroconf support depends on libdns_sd from avahi.
  14. ifeq ($(BR2_PACKAGE_MPD_AVAHI_SUPPORT),y)
  15. MPD_DEPENDENCIES += avahi
  16. MPD_CONF_OPTS += -Dzeroconf=avahi
  17. else
  18. MPD_CONF_OPTS += -Dzeroconf=disabled
  19. endif
  20. # MPD prefers libicu for utf8 collation instead of libglib2.
  21. ifeq ($(BR2_PACKAGE_ICU),y)
  22. MPD_DEPENDENCIES += icu
  23. MPD_CONF_OPTS += -Dicu=enabled
  24. else
  25. MPD_CONF_OPTS += -Dicu=disabled
  26. endif
  27. ifeq ($(BR2_PACKAGE_MPD_ALSA),y)
  28. MPD_DEPENDENCIES += alsa-lib
  29. MPD_CONF_OPTS += -Dalsa=enabled
  30. else
  31. MPD_CONF_OPTS += -Dalsa=disabled
  32. endif
  33. ifeq ($(BR2_PACKAGE_MPD_AO),y)
  34. MPD_DEPENDENCIES += libao
  35. MPD_CONF_OPTS += -Dao=enabled
  36. else
  37. MPD_CONF_OPTS += -Dao=disabled
  38. endif
  39. ifeq ($(BR2_PACKAGE_MPD_AUDIOFILE),y)
  40. MPD_DEPENDENCIES += audiofile
  41. MPD_CONF_OPTS += -Daudiofile=enabled
  42. else
  43. MPD_CONF_OPTS += -Daudiofile=disabled
  44. endif
  45. ifeq ($(BR2_PACKAGE_MPD_BZIP2),y)
  46. MPD_DEPENDENCIES += bzip2
  47. MPD_CONF_OPTS += -Dbzip2=enabled
  48. else
  49. MPD_CONF_OPTS += -Dbzip2=disabled
  50. endif
  51. ifeq ($(BR2_PACKAGE_MPD_CDIO_PARANOIA),y)
  52. MPD_DEPENDENCIES += libcdio-paranoia
  53. MPD_CONF_OPTS += -Dcdio_paranoia=enabled
  54. else
  55. MPD_CONF_OPTS += -Dcdio_paranoia=disabled
  56. endif
  57. ifeq ($(BR2_PACKAGE_MPD_CURL),y)
  58. MPD_DEPENDENCIES += libcurl
  59. MPD_CONF_OPTS += -Dcurl=enabled
  60. else
  61. MPD_CONF_OPTS += -Dcurl=disabled
  62. endif
  63. ifeq ($(BR2_PACKAGE_MPD_DSD),y)
  64. MPD_CONF_OPTS += -Ddsd=true
  65. else
  66. MPD_CONF_OPTS += -Ddsd=false
  67. endif
  68. ifeq ($(BR2_PACKAGE_MPD_FAAD2),y)
  69. MPD_DEPENDENCIES += faad2
  70. MPD_CONF_OPTS += -Dfaad=enabled
  71. else
  72. MPD_CONF_OPTS += -Dfaad=disabled
  73. endif
  74. ifeq ($(BR2_PACKAGE_MPD_FFMPEG),y)
  75. MPD_DEPENDENCIES += ffmpeg
  76. MPD_CONF_OPTS += -Dffmpeg=enabled
  77. else
  78. MPD_CONF_OPTS += -Dffmpeg=disabled
  79. endif
  80. ifeq ($(BR2_PACKAGE_MPD_FLAC),y)
  81. MPD_DEPENDENCIES += flac
  82. MPD_CONF_OPTS += -Dflac=enabled
  83. else
  84. MPD_CONF_OPTS += -Dflac=disabled
  85. endif
  86. ifeq ($(BR2_PACKAGE_MPD_FLUIDSYNTH),y)
  87. MPD_DEPENDENCIES += fluidsynth
  88. MPD_CONF_OPTS += -Dfluidsynth=enabled
  89. else
  90. MPD_CONF_OPTS += -Dfluidsynth=disabled
  91. endif
  92. ifeq ($(BR2_PACKAGE_MPD_HTTPD_OUTPUT),y)
  93. MPD_CONF_OPTS += -Dhttpd=true
  94. else
  95. MPD_CONF_OPTS += -Dhttpd=false
  96. endif
  97. ifeq ($(BR2_PACKAGE_MPD_ID3TAG),y)
  98. MPD_DEPENDENCIES += libid3tag
  99. MPD_CONF_OPTS += -Did3tag=enabled
  100. else
  101. MPD_CONF_OPTS += -Did3tag=disabled
  102. endif
  103. ifeq ($(BR2_PACKAGE_MPD_JACK2),y)
  104. MPD_DEPENDENCIES += jack2
  105. MPD_CONF_OPTS += -Djack=enabled
  106. else
  107. MPD_CONF_OPTS += -Djack=disabled
  108. endif
  109. ifeq ($(BR2_PACKAGE_MPD_LAME),y)
  110. MPD_DEPENDENCIES += lame
  111. MPD_CONF_OPTS += -Dlame=enabled
  112. else
  113. MPD_CONF_OPTS += -Dlame=disabled
  114. endif
  115. ifeq ($(BR2_PACKAGE_MPD_LIBMPDCLIENT),y)
  116. MPD_DEPENDENCIES += libmpdclient
  117. MPD_CONF_OPTS += -Dlibmpdclient=enabled
  118. else
  119. MPD_CONF_OPTS += -Dlibmpdclient=disabled
  120. endif
  121. ifeq ($(BR2_PACKAGE_MPD_LIBMMS),y)
  122. MPD_DEPENDENCIES += libmms
  123. MPD_CONF_OPTS += -Dmms=enabled
  124. else
  125. MPD_CONF_OPTS += -Dmms=disabled
  126. endif
  127. ifeq ($(BR2_PACKAGE_MPD_LIBNFS),y)
  128. MPD_DEPENDENCIES += libnfs
  129. MPD_CONF_OPTS += -Dnfs=enabled
  130. else
  131. MPD_CONF_OPTS += -Dnfs=disabled
  132. endif
  133. ifeq ($(BR2_PACKAGE_MPD_LIBSMBCLIENT),y)
  134. MPD_DEPENDENCIES += samba4
  135. MPD_CONF_OPTS += -Dsmbclient=enabled
  136. else
  137. MPD_CONF_OPTS += -Dsmbclient=disabled
  138. endif
  139. ifeq ($(BR2_PACKAGE_MPD_LIBSAMPLERATE),y)
  140. MPD_DEPENDENCIES += libsamplerate
  141. MPD_CONF_OPTS += -Dlibsamplerate=enabled
  142. else
  143. MPD_CONF_OPTS += -Dlibsamplerate=disabled
  144. endif
  145. ifeq ($(BR2_PACKAGE_MPD_LIBSNDFILE),y)
  146. MPD_DEPENDENCIES += libsndfile
  147. MPD_CONF_OPTS += -Dsndfile=enabled
  148. else
  149. MPD_CONF_OPTS += -Dsndfile=disabled
  150. endif
  151. ifeq ($(BR2_PACKAGE_MPD_LIBSOXR),y)
  152. MPD_DEPENDENCIES += libsoxr
  153. MPD_CONF_OPTS += -Dsoxr=enabled
  154. else
  155. MPD_CONF_OPTS += -Dsoxr=disabled
  156. endif
  157. ifeq ($(BR2_PACKAGE_MPD_MAD),y)
  158. MPD_DEPENDENCIES += libid3tag libmad
  159. MPD_CONF_OPTS += -Dmad=enabled
  160. else
  161. MPD_CONF_OPTS += -Dmad=disabled
  162. endif
  163. ifeq ($(BR2_PACKAGE_MPD_MODPLUG),y)
  164. MPD_DEPENDENCIES += libmodplug
  165. MPD_CONF_OPTS += -Dmodplug=enabled
  166. else
  167. MPD_CONF_OPTS += -Dmodplug=disabled
  168. endif
  169. ifeq ($(BR2_PACKAGE_MPD_MPG123),y)
  170. MPD_DEPENDENCIES += libid3tag mpg123
  171. MPD_CONF_OPTS += -Dmpg123=enabled
  172. else
  173. MPD_CONF_OPTS += -Dmpg123=disabled
  174. endif
  175. ifeq ($(BR2_PACKAGE_MPD_MUSEPACK),y)
  176. MPD_DEPENDENCIES += musepack
  177. MPD_CONF_OPTS += -Dmpcdec=enabled
  178. else
  179. MPD_CONF_OPTS += -Dmpcdec=disabled
  180. endif
  181. ifeq ($(BR2_PACKAGE_MPD_NEIGHBOR_DISCOVERY_SUPPORT),y)
  182. MPD_CONF_OPTS += -Dneighbor=true
  183. else
  184. MPD_CONF_OPTS += -Dneighbor=false
  185. endif
  186. ifeq ($(BR2_PACKAGE_MPD_OPENAL),y)
  187. MPD_DEPENDENCIES += openal
  188. MPD_CONF_OPTS += -Dopenal=enabled
  189. else
  190. MPD_CONF_OPTS += -Dopenal=disabled
  191. endif
  192. ifeq ($(BR2_PACKAGE_MPD_OPUS),y)
  193. MPD_DEPENDENCIES += opus libogg
  194. MPD_CONF_OPTS += -Dopus=enabled
  195. else
  196. MPD_CONF_OPTS += -Dopus=disabled
  197. endif
  198. ifeq ($(BR2_PACKAGE_MPD_OSS),y)
  199. MPD_CONF_OPTS += -Doss=enabled
  200. else
  201. MPD_CONF_OPTS += -Doss=disabled
  202. endif
  203. ifeq ($(BR2_PACKAGE_MPD_PULSEAUDIO),y)
  204. MPD_DEPENDENCIES += pulseaudio
  205. MPD_CONF_OPTS += -Dpulse=enabled
  206. else
  207. MPD_CONF_OPTS += -Dpulse=disabled
  208. endif
  209. ifeq ($(BR2_PACKAGE_MPD_QOBUZ),y)
  210. MPD_DEPENDENCIES += libgcrypt yajl
  211. MPD_CONF_OPTS += -Dqobuz=enabled
  212. else
  213. MPD_CONF_OPTS += -Dqobuz=disabled
  214. endif
  215. ifeq ($(BR2_PACKAGE_MPD_SHOUTCAST),y)
  216. MPD_DEPENDENCIES += libshout
  217. MPD_CONF_OPTS += -Dshout=enabled
  218. else
  219. MPD_CONF_OPTS += -Dshout=disabled
  220. endif
  221. ifeq ($(BR2_PACKAGE_MPD_SIDPLAY),y)
  222. MPD_DEPENDENCIES += libsidplay2
  223. MPD_CONF_OPTS += -Dsidplay=enabled
  224. else
  225. MPD_CONF_OPTS += -Dsidplay=disabled
  226. endif
  227. ifeq ($(BR2_PACKAGE_MPD_SOUNDCLOUD),y)
  228. MPD_DEPENDENCIES += yajl
  229. MPD_CONF_OPTS += -Dsoundcloud=enabled
  230. else
  231. MPD_CONF_OPTS += -Dsoundcloud=disabled
  232. endif
  233. ifeq ($(BR2_PACKAGE_MPD_SQLITE),y)
  234. MPD_DEPENDENCIES += sqlite
  235. MPD_CONF_OPTS += -Dsqlite=enabled
  236. else
  237. MPD_CONF_OPTS += -Dsqlite=disabled
  238. endif
  239. ifneq ($(BR2_PACKAGE_MPD_TCP),y)
  240. MPD_CONF_OPTS += -Dtcp=true
  241. endif
  242. ifeq ($(BR2_PACKAGE_MPD_TIDAL),y)
  243. MPD_DEPENDENCIES += yajl
  244. MPD_CONF_OPTS += -Dtidal=enabled
  245. else
  246. MPD_CONF_OPTS += -Dtidal=disabled
  247. endif
  248. ifeq ($(BR2_PACKAGE_MPD_TREMOR),y)
  249. MPD_DEPENDENCIES += tremor
  250. MPD_CONF_OPTS += -Dtremor=enabled
  251. else
  252. MPD_CONF_OPTS += -Dtremor=disabled
  253. endif
  254. ifeq ($(BR2_PACKAGE_MPD_TWOLAME),y)
  255. MPD_DEPENDENCIES += twolame
  256. MPD_CONF_OPTS += -Dtwolame=enabled
  257. else
  258. MPD_CONF_OPTS += -Dtwolame=disabled
  259. endif
  260. ifeq ($(BR2_PACKAGE_MPD_UPNP),y)
  261. MPD_DEPENDENCIES += \
  262. expat \
  263. $(if $(BR2_PACKAGE_LIBUPNP),libupnp,libupnp18)
  264. MPD_CONF_OPTS += -Dupnp=enabled
  265. else
  266. MPD_CONF_OPTS += -Dupnp=disabled
  267. endif
  268. ifeq ($(BR2_PACKAGE_MPD_VORBIS),y)
  269. MPD_DEPENDENCIES += libvorbis
  270. MPD_CONF_OPTS += -Dvorbis=enabled -Dvorbisenc=enabled
  271. else
  272. MPD_CONF_OPTS += -Dvorbis=disabled -Dvorbisenc=disabled
  273. endif
  274. ifeq ($(BR2_PACKAGE_MPD_WAVPACK),y)
  275. MPD_DEPENDENCIES += wavpack
  276. MPD_CONF_OPTS += -Dwavpack=enabled
  277. else
  278. MPD_CONF_OPTS += -Dwavpack=disabled
  279. endif
  280. ifeq ($(BR2_PACKAGE_MPD_ZZIP),y)
  281. MPD_DEPENDENCIES += zziplib
  282. MPD_CONF_OPTS += -Dzzip=enabled
  283. else
  284. MPD_CONF_OPTS += -Dzzip=disabled
  285. endif
  286. define MPD_INSTALL_EXTRA_FILES
  287. $(INSTALL) -m 0644 -D package/mpd/mpd.conf $(TARGET_DIR)/etc/mpd.conf
  288. endef
  289. MPD_POST_INSTALL_TARGET_HOOKS += MPD_INSTALL_EXTRA_FILES
  290. define MPD_INSTALL_INIT_SYSV
  291. $(INSTALL) -m 0755 -D package/mpd/S95mpd \
  292. $(TARGET_DIR)/etc/init.d/S95mpd
  293. endef
  294. $(eval $(meson-package))