Code

main: move keyboard_event() to keyboard.c
[ncmpc.git] / Makefile.am
1 SUBDIRS = \
2   po
4 ACLOCAL_AMFLAGS = -I m4
5 AUTOMAKE_OPTIONS = foreign 1.11 dist-xz subdir-objects
7 AM_CPPFLAGS = \
8         $(LIBMPDCLIENT_CFLAGS) \
9         $(GLIB_CFLAGS) \
10         $(LIBLIRCCLIENT_CFLAGS) \
11         -DLOCALE_DIR=\""$(datadir)/locale"\"\
12         -DSYSCONFDIR=\""$(sysconfdir)"\"
14 bin_PROGRAMS = src/ncmpc
16 src_ncmpc_LDADD = \
17         $(CURSES_LIB) \
18         $(LIBMPDCLIENT_LIBS) \
19         $(GLIB_LIBS) \
20         $(LIBLIRCCLIENT_LIBS)
22 src_ncmpc_SOURCES = \
23         src/Compiler.h \
24         src/ncmpc.h \
25         src/defaults.h \
26         src/ncmpc_curses.h \
27         src/i18n.h \
28         src/main.c \
29         src/gidle.c src/gidle.h \
30         src/mpdclient.c src/mpdclient.h \
31         src/callbacks.c src/callbacks.h \
32         src/playlist.c src/playlist.h \
33         src/filelist.c src/filelist.h \
34         src/options.c src/options.h \
35         src/command.c src/command.h \
36         src/keyboard.c src/keyboard.h \
37         src/ncfix.h \
38         src/ncu.c src/ncu.h \
39         src/player_command.c src/player_command.h \
40         src/title_bar.c src/title_bar.h \
41         src/progress_bar.c src/progress_bar.h \
42         src/status_bar.c src/status_bar.h \
43         src/screen.c src/screen.h \
44         src/screen_interface.h \
45         src/screen_utils.c src/screen_utils.h \
46         src/screen_status.c src/screen_status.h \
47         src/screen_list.c src/screen_list.h \
48         src/screen_find.c src/screen_find.h \
49         src/screen_client.c src/screen_client.h \
50         src/screen_queue.c src/screen_queue.h \
51         src/screen_browser.c src/screen_browser.h \
52         src/screen_file.c src/screen_file.h \
53         src/list_window.c src/list_window.h \
54         src/paint.h \
55         src/song_paint.c src/song_paint.h \
56         src/colors.c src/colors.h \
57         src/charset.c src/charset.h \
58         src/window.h \
59         src/wreadln.c src/wreadln.h \
60         src/strfsong.c src/strfsong.h \
61         src/utils.c src/utils.h
63 #
64 # Windows resource file
65 #
67 src/win/ncmpc_win32_rc.$(OBJEXT): src/win/ncmpc_win32_rc.rc
68         $(WINDRES) -i $< -o $@
70 if HAVE_WINDOWS
71 noinst_DATA = src/win/ncmpc_win32_rc.rc
73 src_ncmpc_DEPENDENCIES = src/win/ncmpc_win32_rc.$(OBJEXT)
74 src_ncmpc_LDFLAGS = -Wl,src/win/ncmpc_win32_rc.$(OBJEXT)
75 endif
77 if NCMPC_MINI
78 else
79 src_ncmpc_SOURCES += \
80         src/hscroll.c src/hscroll.h \
81         src/match.c src/match.h \
82         src/conf.c src/conf.h
83 endif
85 if ENABLE_HELP_SCREEN
86 src_ncmpc_SOURCES += src/screen_help.c src/screen_help.h
87 endif
89 if ENABLE_ARTIST_SCREEN
90 src_ncmpc_SOURCES += src/screen_artist.c src/screen_artist.h
91 endif
93 if ENABLE_SEARCH_SCREEN
94 src_ncmpc_SOURCES += src/screen_search.c src/screen_search.h
95 endif
97 if ENABLE_SONG_SCREEN
98 src_ncmpc_SOURCES += src/screen_song.c src/screen_song.h
99 endif
101 if ENABLE_KEYDEF_SCREEN
102 src_ncmpc_SOURCES += src/screen_keydef.c src/screen_keydef.h
103 endif
105 if ENABLE_PLUGIN_LIBRARY
106 src_ncmpc_SOURCES += src/plugin.c src/plugin.h
107 endif
109 if ENABLE_SCREEN_TEXT
110 src_ncmpc_SOURCES += src/screen_text.c src/screen_text.h
111 endif
113 if ENABLE_LYRICS_SCREEN
114 src_ncmpc_SOURCES += \
115         src/screen_lyrics.c src/screen_lyrics.h \
116         src/lyrics.c src/lyrics.h
117 endif
119 if ENABLE_OUTPUTS_SCREEN
120 src_ncmpc_SOURCES += src/screen_outputs.c src/screen_outputs.h
121 endif
123 if ENABLE_CHAT_SCREEN
124 src_ncmpc_SOURCES += src/screen_chat.c src/screen_chat.h
125 endif
127 if ENABLE_LIRC
128 src_ncmpc_SOURCES += src/lirc.c src/lirc.h
129 endif
132 # build the smallest possible ncmpc binary
133 src/ncmpc-tiny: $(filter-out %.h,$(src_ncmpc_SOURCES))
134         $(COMPILE) --combine -fwhole-program $(src_ncmpc_LDFLAGS) $(src_ncmpc_LDADD) $(LIBS) $^ -o $@
135         strip --strip-all $@
137 CLEANFILES = src/ncmpc-tiny
140 # test suite
143 check_PROGRAMS = \
144         test/run_hscroll
146 test_run_hscroll_SOURCES = test/run_hscroll.c src/hscroll.c src/charset.c
147 test_run_hscroll_CPPFLAGS = -I$(srcdir)/src $(AM_CPPFLAGS)
148 test_run_hscroll_LDADD = @CURSES_LIB@ $(GLIB_LIBS)
151 # sparse
154 SPARSE = sparse
155 SPARSE_FLAGS = -Wdecl -Wdefault-bitfield-sign -Wdo-while -Wenum-mismatch \
156         -Wnon-pointer-null -Wptr-subtraction-blows -Wreturn-void \
157         -Wshadow -Wtypesign \
158         -D__transparent_union__=unused
160 sparse-check:
161         $(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)
164 # lyrics plugins
167 lyrics_plugins = lyrics/10-hd.sh lyrics/20-lyricwiki.rb
169 if ENABLE_LYRICS_SCREEN
171 lyricsdir = $(lyrics_plugin_dir)
172 lyrics_SCRIPTS = $(lyrics_plugins)
174 endif
177 # Documentation
180 doc_DATA = \
181         doc/config.sample doc/keys.sample doc/ncmpc.lirc \
182         AUTHORS NEWS README
183 man_MANS = doc/ncmpc.1
185 if ENABLE_DOCUMENTATION
186 doc/api/html/index.html: doc/doxygen.conf
187         @mkdir -p $(@D)
188         $(DOXYGEN) $<
190 all-local: doc/api/html/index.html
192 clean-local:
193         rm -rf doc/api
195 # copied from MPD, disabled  --jn
196 #---------------------------------------
197 #install-data-local: doc/api/html/index.html
198 #       $(mkinstalldirs) $(DESTDIR)$(docdir)/api/html
199 #       $(INSTALL_DATA) -c -m 644 doc/api/html/*.* \
200 #               $(DESTDIR)$(docdir)/api/html
202 #uninstall-local:
203 #       rm -f $(DESTDIR)$(docdir)/api/html/*.*
204 #---------------------------------------
205 endif
208 # Distribution
211 EXTRA_DIST = autogen.sh \
212         $(lyrics_plugins) \
213         $(man_MANS) $(doc_DATA) doc/doxygen.conf \
214         src/win/ncmpc_win32_rc.rc.in