Code

Merge branch 'chat' of git://git.musicpd.org/jn/ncmpc
[ncmpc.git] / Makefile.am
1 SUBDIRS = \
2   po
4 ACLOCAL_AMFLAGS = -I m4
5 AUTOMAKE_OPTIONS = foreign 1.10 dist-bzip2 subdir-objects
7 AM_CPPFLAGS = \
8         $(LIBMPDCLIENT_CFLAGS) \
9         $(GLIB_CFLAGS) \
10         $(LIBLIRCCLIENT_CFLAGS) \
11         -DLOCALE_DIR=\""$(datadir)/locale"\"\
12         -DSYSCONFDIR=\""$(sysconfdir)"\"
14 ncmpc_headers = \
15         src/glib_compat.h \
16         src/resolver.h \
17         src/gidle.h \
18         src/mpdclient.h \
19         src/playlist.h \
20         src/filelist.h \
21         src/options.h \
22         src/conf.h \
23         src/command.h \
24         src/ncu.h \
25         src/ncfix.h \
26         src/player_command.h \
27         src/window.h \
28         src/title_bar.h \
29         src/progress_bar.h \
30         src/status_bar.h \
31         src/screen.h \
32         src/screen_status.h \
33         src/screen_interface.h \
34         src/screen_list.h \
35         src/screen_find.h \
36         src/screen_utils.h \
37         src/screen_client.h \
38         src/list_window.h \
39         src/song_paint.h \
40         src/colors.h \
41         src/paint.h \
42         src/hscroll.h \
43         src/charset.h \
44         src/match.h \
45         src/wreadln.h \
46         src/strfsong.h \
47         src/utils.h \
48         src/ncmpc.h \
49         src/defaults.h \
50         src/i18n.h \
51         src/screen_help.h \
52         src/screen_queue.h \
53         src/screen_file.h \
54         src/screen_artist.h \
55         src/screen_browser.h \
56         src/screen_search.h \
57         src/screen_song.h \
58         src/screen_keydef.h \
59         src/screen_lyrics.h \
60         src/screen_outputs.h \
61         src/screen_chat.h \
62         src/screen_text.h \
63         src/plugin.h \
64         src/lyrics.h \
65         src/lirc.h \
66         src/ncmpc_curses.h
68 bin_PROGRAMS = src/ncmpc
70 src_ncmpc_LDADD = \
71         $(CURSES_LIB) \
72         $(LIBMPDCLIENT_LIBS) \
73         $(GLIB_LIBS) \
74         $(LIBLIRCCLIENT_LIBS)
76 src_ncmpc_SOURCES = \
77         $(ncmpc_headers) \
78         src/resolver.c \
79         src/main.c \
80         src/gidle.c \
81         src/mpdclient.c \
82         src/playlist.c \
83         src/filelist.c \
84         src/options.c \
85         src/command.c \
86         src/ncu.c \
87         src/player_command.c \
88         src/title_bar.c \
89         src/progress_bar.c \
90         src/status_bar.c \
91         src/screen.c \
92         src/screen_status.c \
93         src/screen_list.c \
94         src/screen_find.c \
95         src/screen_utils.c \
96         src/screen_client.c \
97         src/screen_queue.c \
98         src/screen_browser.c \
99         src/screen_file.c \
100         src/list_window.c \
101         src/song_paint.c \
102         src/colors.c \
103         src/charset.c \
104         src/wreadln.c \
105         src/strfsong.c \
106         src/utils.c \
107         src/win/ncmpc.rc
110 # Windows resource file
113 src/win/ncmpc_win32_rc.$(OBJEXT): src/win/ncmpc_win32_rc.rc
114         $(WINDRES) -i $< -o $@
116 if HAVE_WINDOWS
117 noinst_DATA = src/win/ncmpc_win32_rc.rc
119 src_ncmpc_DEPENDENCIES = src/win/ncmpc_win32_rc.$(OBJEXT)
120 src_ncmpc_LDFLAGS = -Wl,src/win/ncmpc_win32_rc.$(OBJEXT)
121 endif
123 if NCMPC_MINI
124 else
125 src_ncmpc_SOURCES += \
126         src/hscroll.c \
127         src/match.c \
128         src/conf.c
129 endif
131 if ENABLE_HELP_SCREEN
132 src_ncmpc_SOURCES += src/screen_help.c
133 endif
135 if ENABLE_ARTIST_SCREEN
136 src_ncmpc_SOURCES += src/screen_artist.c
137 endif
139 if ENABLE_SEARCH_SCREEN
140 src_ncmpc_SOURCES += src/screen_search.c
141 endif
143 if ENABLE_SONG_SCREEN
144 src_ncmpc_SOURCES += src/screen_song.c
145 endif
147 if ENABLE_KEYDEF_SCREEN
148 src_ncmpc_SOURCES += src/screen_keydef.c
149 endif
151 if ENABLE_PLUGIN_LIBRARY
152 src_ncmpc_SOURCES += src/plugin.c
153 endif
155 if ENABLE_SCREEN_TEXT
156 src_ncmpc_SOURCES += src/screen_text.c
157 endif
159 if ENABLE_LYRICS_SCREEN
160 src_ncmpc_SOURCES += src/screen_lyrics.c src/lyrics.c
161 endif
163 if ENABLE_OUTPUTS_SCREEN
164 src_ncmpc_SOURCES += src/screen_outputs.c
165 endif
167 if ENABLE_CHAT_SCREEN
168 src_ncmpc_SOURCES += src/screen_chat.c
169 endif
171 if ENABLE_LIRC
172 src_ncmpc_SOURCES += src/lirc.c
173 endif
176 # build the smallest possible ncmpc binary
177 src/ncmpc-tiny: $(filter-out %.h,$(src_ncmpc_SOURCES))
178         $(COMPILE) --combine -fwhole-program $(src_ncmpc_LDFLAGS) $(src_ncmpc_LDADD) $(LIBS) $^ -o $@
179         strip --strip-all $@
181 CLEANFILES = src/ncmpc-tiny
184 # test suite
187 check_PROGRAMS = \
188         test/run_hscroll
190 test_run_hscroll_SOURCES = test/run_hscroll.c src/hscroll.c src/charset.c
191 test_run_hscroll_CPPFLAGS = -I$(srcdir)/src $(AM_CPPFLAGS)
192 test_run_hscroll_LDADD = @CURSES_LIB@ $(GLIB_LIBS)
195 # sparse
198 SPARSE = sparse
199 SPARSE_FLAGS = -Wdecl -Wdefault-bitfield-sign -Wdo-while -Wenum-mismatch \
200         -Wnon-pointer-null -Wptr-subtraction-blows -Wreturn-void \
201         -Wshadow -Wtypesign \
202         -D__transparent_union__=unused
204 sparse-check:
205         $(SPARSE) -I. -I/usr/lib/gcc/$(shell gcc -dumpmachine)/4.3/include -I/usr/lib/gcc/$(shell gcc -dumpmachine)/4.3/include-fixed $(AM_CPPFLAGS) $(SPARSE_FLAGS) $(src_ncmpc_SOURCES)
208 # lyrics plugins
211 lyrics_plugins = lyrics/10-hd.sh lyrics/15-leoslyrics.sh lyrics/20-lyricwiki.rb lyrics/30-leoslyrics.py
213 if ENABLE_LYRICS_SCREEN
215 lyricsdir = $(lyrics_plugin_dir)
216 lyrics_SCRIPTS = $(lyrics_plugins)
218 endif
221 # Documentation
224 doc_DATA = \
225         doc/config.sample doc/keys.sample doc/ncmpc.lirc \
226         AUTHORS NEWS README
227 man_MANS = doc/ncmpc.1
229 if ENABLE_DOCUMENTATION
230 doc/api/html/index.html: doc/doxygen.conf
231         @mkdir -p $(@D)
232         $(DOXYGEN) $<
234 all-local: doc/api/html/index.html
236 clean-local:
237         rm -rf doc/api
239 # copied from MPD, disabled  --jn
240 #---------------------------------------
241 #install-data-local: doc/api/html/index.html
242 #       $(mkinstalldirs) $(DESTDIR)$(docdir)/api/html
243 #       $(INSTALL_DATA) -c -m 644 doc/api/html/*.* \
244 #               $(DESTDIR)$(docdir)/api/html
246 #uninstall-local:
247 #       rm -f $(DESTDIR)$(docdir)/api/html/*.*
248 #---------------------------------------
249 endif
252 # Distribution
255 EXTRA_DIST = autogen.sh \
256         $(lyrics_plugins) \
257         $(man_MANS) $(doc_DATA) doc/doxygen.conf \
258         src/win/ncmpc_win32_rc.rc.in