aboutsummaryrefslogtreecommitdiffstats
path: root/src/Makefile.am
blob: 232417a916816ea355b2d8b38471ecd55b8d193a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
CLEANFILES = ncmpc-tiny

AM_CPPFLAGS = \
  $(GLIB_CFLAGS)\
  $(GTHREAD_CFLAGS)\
	$(LIBLIRCCLIENT_CFLAGS) \
  -DLOCALE_DIR=\""$(datadir)/locale"\"\
  -DSYSCONFDIR=\""$(sysconfdir)"\"

ncmpc_LDADD = \
  $(GLIB_LIBS)\
  $(GTHREAD_LIBS) \
	$(LIBLIRCCLIENT_LIBS)

ncmpc_headers = \
  libmpdclient.h\
	resolver.h \
	song.h \
  mpdclient.h\
	playlist.h \
	filelist.h \
  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\
	charset.h \
  wreadln.h\
  strfsong.h\
  utils.h\
  ncmpc.h\
	defaults.h \
	i18n.h \
	screen_browser.h \
	lyrics.h \
	str_pool.h \
	lirc.h \
	gcc.h

bin_PROGRAMS = ncmpc

lyr_src=${lyr_src_fixed}

ncmpc_SOURCES = \
  libmpdclient.c\
	resolver.c \
	song.c \
  main.c\
  mpdclient.c\
	playlist.c \
	filelist.c \
  options.c\
  command.c\
	ncu.c \
  screen.c\
	screen_list.c \
  screen_utils.c\
  screen_play.c\
	screen_browser.c\
  screen_file.c\
  list_window.c\
  colors.c\
  support.c\
	charset.c \
  wreadln.c\
  strfsong.c\
  utils.c\
	str_pool.c

if NCMPC_MINI
else
ncmpc_SOURCES += 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_LYRICS_SCREEN
ncmpc_SOURCES += screen_lyrics.c lyrics.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