Code

keyboard: call wgetch() on main window
[ncmpc.git] / Makefile.am
index 26880ec53d38612e06ca7842016ec3b9c3ceffc4..5f1abbae1fff8761fffa86b55046303a8303aae0 100644 (file)
@@ -2,135 +2,164 @@ SUBDIRS = \
   po
 
 ACLOCAL_AMFLAGS = -I m4
-AUTOMAKE_OPTIONS = foreign 1.9 dist-bzip2
+AUTOMAKE_OPTIONS = foreign 1.11 dist-xz subdir-objects
 
 AM_CPPFLAGS = \
+       $(CURSES_CFLAGS) \
+       $(LIBMPDCLIENT_CFLAGS) \
        $(GLIB_CFLAGS) \
        $(LIBLIRCCLIENT_CFLAGS) \
        -DLOCALE_DIR=\""$(datadir)/locale"\"\
        -DSYSCONFDIR=\""$(sysconfdir)"\"
 
-ncmpc_headers = \
-       src/libmpdclient.h \
-       src/resolver.h \
-       src/song.h \
-       src/mpdclient.h \
-       src/playlist.h \
-       src/filelist.h \
-       src/options.h \
-       src/conf.h \
-       src/command.h \
-       src/ncu.h \
-       src/screen.h \
-       src/screen_list.h \
-       src/screen_play.h \
-       src/screen_utils.h \
-       src/list_window.h \
-       src/colors.h \
-       src/hscroll.h \
-       src/charset.h \
-       src/match.h \
-       src/wreadln.h \
-       src/strfsong.h \
-       src/utils.h \
-       src/ncmpc.h \
-       src/defaults.h \
-       src/i18n.h \
-       src/screen_browser.h \
-       src/screen_text.h \
-       src/plugin.h \
-       src/lyrics.h \
-       src/str_pool.h \
-       src/lirc.h
-
 bin_PROGRAMS = src/ncmpc
 
 src_ncmpc_LDADD = \
+       $(CURSES_LIBS) \
+       $(LIBMPDCLIENT_LIBS) \
        $(GLIB_LIBS) \
        $(LIBLIRCCLIENT_LIBS)
 
 src_ncmpc_SOURCES = \
-       $(ncmpc_headers) \
-       src/libmpdclient.c \
-       src/resolver.c \
-       src/song.c \
+       src/Compiler.h \
+       src/ncmpc.h \
+       src/defaults.h \
+       src/ncmpc_curses.h \
+       src/i18n.h \
        src/main.c \
-       src/mpdclient.c \
-       src/playlist.c \
-       src/filelist.c \
-       src/options.c \
-       src/command.c \
-       src/ncu.c \
-       src/screen.c \
-       src/screen_list.c \
-       src/screen_utils.c \
-       src/screen_play.c \
-       src/screen_browser.c \
-       src/screen_file.c \
-       src/list_window.c \
-       src/colors.c \
-       src/charset.c \
-       src/wreadln.c \
-       src/strfsong.c \
-       src/utils.c \
-       src/str_pool.c
+       src/gidle.c src/gidle.h \
+       src/mpdclient.c src/mpdclient.h \
+       src/callbacks.c src/callbacks.h \
+       src/playlist.c src/playlist.h \
+       src/filelist.c src/filelist.h \
+       src/options.c src/options.h \
+       src/command.c src/command.h \
+       src/keyboard.c src/keyboard.h \
+       src/ncfix.h \
+       src/ncu.c src/ncu.h \
+       src/player_command.c src/player_command.h \
+       src/title_bar.c src/title_bar.h \
+       src/progress_bar.c src/progress_bar.h \
+       src/status_bar.c src/status_bar.h \
+       src/screen.c src/screen.h \
+       src/screen_interface.h \
+       src/screen_utils.c src/screen_utils.h \
+       src/screen_status.c src/screen_status.h \
+       src/screen_list.c src/screen_list.h \
+       src/screen_find.c src/screen_find.h \
+       src/screen_client.c src/screen_client.h \
+       src/screen_queue.c src/screen_queue.h \
+       src/screen_browser.c src/screen_browser.h \
+       src/screen_file.c src/screen_file.h \
+       src/list_window.c src/list_window.h \
+       src/paint.h \
+       src/song_paint.c src/song_paint.h \
+       src/colors.c src/colors.h \
+       src/charset.c src/charset.h \
+       src/window.h \
+       src/wreadln.c src/wreadln.h \
+       src/strfsong.c src/strfsong.h \
+       src/utils.c src/utils.h
+
+if ENABLE_ASYNC_CONNECT
+src_ncmpc_SOURCES += \
+       src/net/types.h \
+       src/net/socket.c src/net/socket.h \
+       src/net/resolver.c src/net/resolver.h \
+       src/net/async_connect.c src/net/async_connect.h \
+       src/net/async_rconnect.c src/net/async_rconnect.h \
+       src/aconnect.c src/aconnect.h
+endif
+
+#
+# Windows resource file
+#
+
+src/win/ncmpc_win32_rc.$(OBJEXT): src/win/ncmpc_win32_rc.rc
+       $(WINDRES) -i $< -o $@
+
+if HAVE_WINDOWS
+noinst_DATA = src/win/ncmpc_win32_rc.rc
+
+src_ncmpc_DEPENDENCIES = src/win/ncmpc_win32_rc.$(OBJEXT)
+src_ncmpc_LDFLAGS = -Wl,src/win/ncmpc_win32_rc.$(OBJEXT)
+else
+src_ncmpc_SOURCES += src/signals.c src/signals.h
+endif
 
 if NCMPC_MINI
 else
 src_ncmpc_SOURCES += \
-       src/hscroll.c \
-       src/match.c \
-       src/conf.c
+       src/hscroll.c src/hscroll.h \
+       src/match.c src/match.h \
+       src/conf.c src/conf.h
 endif
 
 if ENABLE_HELP_SCREEN
-src_ncmpc_SOURCES += src/screen_help.c
+src_ncmpc_SOURCES += src/screen_help.c src/screen_help.h
 endif
 
 if ENABLE_ARTIST_SCREEN
-src_ncmpc_SOURCES += src/screen_artist.c
+src_ncmpc_SOURCES += src/screen_artist.c src/screen_artist.h
 endif
 
 if ENABLE_SEARCH_SCREEN
-src_ncmpc_SOURCES += src/screen_search.c
+src_ncmpc_SOURCES += src/screen_search.c src/screen_search.h
 endif
 
 if ENABLE_SONG_SCREEN
-src_ncmpc_SOURCES += src/screen_song.c
+src_ncmpc_SOURCES += src/screen_song.c src/screen_song.h
 endif
 
 if ENABLE_KEYDEF_SCREEN
-src_ncmpc_SOURCES += src/screen_keydef.c
+src_ncmpc_SOURCES += src/screen_keydef.c src/screen_keydef.h
 endif
 
 if ENABLE_PLUGIN_LIBRARY
-src_ncmpc_SOURCES += src/plugin.c
+src_ncmpc_SOURCES += src/plugin.c src/plugin.h
 endif
 
 if ENABLE_SCREEN_TEXT
-src_ncmpc_SOURCES += src/screen_text.c
+src_ncmpc_SOURCES += src/screen_text.c src/screen_text.h
 endif
 
 if ENABLE_LYRICS_SCREEN
-src_ncmpc_SOURCES += src/screen_lyrics.c src/lyrics.c
+src_ncmpc_SOURCES += \
+       src/screen_lyrics.c src/screen_lyrics.h \
+       src/lyrics.c src/lyrics.h
 endif
 
 if ENABLE_OUTPUTS_SCREEN
-src_ncmpc_SOURCES += src/screen_outputs.c
+src_ncmpc_SOURCES += src/screen_outputs.c src/screen_outputs.h
+endif
+
+if ENABLE_CHAT_SCREEN
+src_ncmpc_SOURCES += src/screen_chat.c src/screen_chat.h
 endif
 
 if ENABLE_LIRC
-src_ncmpc_SOURCES += src/lirc.c
+src_ncmpc_SOURCES += src/lirc.c src/lirc.h
 endif
 
 
-# build the smalles possible ncmpc binary
+# build the smallest possible ncmpc binary
 src/ncmpc-tiny: $(filter-out %.h,$(src_ncmpc_SOURCES))
        $(COMPILE) --combine -fwhole-program $(src_ncmpc_LDFLAGS) $(src_ncmpc_LDADD) $(LIBS) $^ -o $@
        strip --strip-all $@
 
 CLEANFILES = src/ncmpc-tiny
 
+#
+# test suite
+#
+
+check_PROGRAMS = \
+       test/run_hscroll
+
+test_run_hscroll_SOURCES = test/run_hscroll.c src/hscroll.c src/charset.c
+test_run_hscroll_CPPFLAGS = -I$(srcdir)/src $(AM_CPPFLAGS)
+test_run_hscroll_LDADD = @CURSES_LIB@ $(GLIB_LIBS)
+
 #
 # sparse
 #
@@ -142,16 +171,13 @@ SPARSE_FLAGS = -Wdecl -Wdefault-bitfield-sign -Wdo-while -Wenum-mismatch \
        -D__transparent_union__=unused
 
 sparse-check:
-       for i in $(src_ncmpc_SOURCES); \
-       do \
-               $(SPARSE) -I. -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) $(srcdir)/$$i || exit; \
-       done
+       $(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)
 
 #
 # lyrics plugins
 #
 
-lyrics_plugins = lyrics/01-hd.sh lyrics/02-lyricwiki.rb lyrics/03-leoslyrics.py
+lyrics_plugins = lyrics/10-hd.sh lyrics/20-lyricwiki.rb
 
 if ENABLE_LYRICS_SCREEN
 
@@ -169,10 +195,33 @@ doc_DATA = \
        AUTHORS NEWS README
 man_MANS = doc/ncmpc.1
 
+if ENABLE_DOCUMENTATION
+doc/api/html/index.html: doc/doxygen.conf
+       @mkdir -p $(@D)
+       $(DOXYGEN) $<
+
+all-local: doc/api/html/index.html
+
+clean-local:
+       rm -rf doc/api
+
+# copied from MPD, disabled  --jn
+#---------------------------------------
+#install-data-local: doc/api/html/index.html
+#      $(mkinstalldirs) $(DESTDIR)$(docdir)/api/html
+#      $(INSTALL_DATA) -c -m 644 doc/api/html/*.* \
+#              $(DESTDIR)$(docdir)/api/html
+#
+#uninstall-local:
+#      rm -f $(DESTDIR)$(docdir)/api/html/*.*
+#---------------------------------------
+endif
+
 #
 # Distribution
 #
 
 EXTRA_DIST = autogen.sh \
        $(lyrics_plugins) \
-       $(man_MANS) $(doc_DATA)
+       $(man_MANS) $(doc_DATA) doc/doxygen.conf \
+       src/win/ncmpc_win32_rc.rc.in