aboutsummaryrefslogtreecommitdiffstats
path: root/src/Makefile.am
blob: 364c2d0b0474979ce8351523c28ea85a86d263a1 (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
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_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