Code

i18n: don't use locale.h
[ncmpc.git] / src / Makefile.am
index a16fef52171ece3f1d1a9609616819519d637563..085396db14703c4270d4c984c03ee6187c8671bb 100644 (file)
@@ -1,14 +1,16 @@
-#SUBDIRS = 
+CLEANFILES = ncmpc-tiny
 
 AM_CPPFLAGS = \
   $(GLIB_CFLAGS)\
   $(GTHREAD_CFLAGS)\
+       $(LIBLIRCCLIENT_CFLAGS) \
   -DLOCALE_DIR=\""$(datadir)/locale"\"\
   -DSYSCONFDIR=\""$(sysconfdir)"\"
 
 ncmpc_LDADD = \
   $(GLIB_LIBS)\
-  $(GTHREAD_LIBS)
+  $(GTHREAD_LIBS) \
+       $(LIBLIRCCLIENT_LIBS)
 
 ncmpc_headers = \
   libmpdclient.h\
@@ -20,21 +22,28 @@ ncmpc_headers = \
   options.h\
   conf.h\
   command.h\
+       ncu.h \
   screen.h\
+       screen_list.h \
+       screen_play.h \
   screen_utils.h\
   list_window.h\
   colors.h\
-  support.h\
+       hscroll.h \
+       charset.h \
+       match.h \
   wreadln.h\
   strfsong.h\
   utils.h\
   ncmpc.h\
+       defaults.h \
+       i18n.h \
        screen_browser.h \
+       screen_text.h \
+       plugin.h \
        lyrics.h \
        str_pool.h \
-       gcc.h
-
-# $Id$
+       lirc.h
 
 bin_PROGRAMS = ncmpc
 
@@ -49,27 +58,89 @@ ncmpc_SOURCES = \
        playlist.c \
        filelist.c \
   options.c\
-  conf.c\
   command.c\
+       ncu.c \
   screen.c\
+       screen_list.c \
   screen_utils.c\
   screen_play.c\
        screen_browser.c\
   screen_file.c\
-  screen_artist.c\
-  screen_search.c\
-  screen_help.c\
-  screen_lyrics.c\
-  screen_keydef.c\
   list_window.c\
   colors.c\
-  support.c\
+       charset.c \
   wreadln.c\
   strfsong.c\
   utils.c\
-       lyrics.c \
        str_pool.c
 
+if NCMPC_MINI
+else
+ncmpc_SOURCES += \
+       hscroll.c \
+       match.c \
+       conf.c
+endif
+
+if ENABLE_HELP_SCREEN
+ncmpc_SOURCES += screen_help.c
+endif
+
+if ENABLE_ARTIST_SCREEN
+ncmpc_SOURCES += screen_artist.c
+endif
+
+if ENABLE_SEARCH_SCREEN
+ncmpc_SOURCES += screen_search.c
+endif
+
+if ENABLE_SONG_SCREEN
+ncmpc_SOURCES += screen_song.c
+endif
+
+if ENABLE_KEYDEF_SCREEN
+ncmpc_SOURCES += screen_keydef.c
+endif
+
+if ENABLE_PLUGIN_LIBRARY
+ncmpc_SOURCES += plugin.c
+endif
+
+if ENABLE_SCREEN_TEXT
+ncmpc_SOURCES += screen_text.c
+endif
+
+if ENABLE_LYRICS_SCREEN
+ncmpc_SOURCES += screen_lyrics.c lyrics.c
+endif
+
+if ENABLE_OUTPUTS_SCREEN
+ncmpc_SOURCES += screen_outputs.c
+endif
+
+if ENABLE_LIRC
+ncmpc_SOURCES += lirc.c
+endif
+
 ncmpc_SOURCES+=${ncmpc_headers}
 
+# build the smalles possible ncmpc binary
+ncmpc-tiny: $(filter-out %.h,$(ncmpc_SOURCES))
+       $(COMPILE) --combine -fwhole-program $(ncmpc_LDFLAGS) $(ncmpc_LDADD) $(LIBS) $^ -o $@
+       strip --strip-all $@
+
+#
+# sparse
+#
+
+SPARSE = sparse
+SPARSE_FLAGS = -Wdecl -Wdefault-bitfield-sign -Wdo-while -Wenum-mismatch \
+       -Wnon-pointer-null -Wptr-subtraction-blows -Wreturn-void \
+       -Wshadow -Wtypesign \
+       -D__transparent_union__=unused
 
+sparse-check:
+       for i in $(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