Fix binding collision.
[gmpc.git] / src / Makefile.am
blobafe2235d11067aa914f3659e22bb886115371afc
1 if EXTRA_VERSION
2 REVISION=@EXTRA_VERSION@
3 else
4 REVISION=`git rev-parse --short master`
5 endif
6 CONF_VERSION=0
7 -include Makefile.config
9 bin_PROGRAMS=gmpc
11 gmpc_VALAFLAGS=--pkg=gmodule-2.0 --pkg=config --pkg=gtk+-2.0 --pkg=gmpc --pkg=libmpd --pkg=libxml-2.0  --pkg=fix --vapidir=$(top_srcdir)/src/vapi/ --basedir=$(top_builddir)/src/ -H gmpc-extras.h --library=gmpc-extras --use-header
13 VALA_VAPI_FILES=\
14     vapi/gmpc.vapi\
15     vapi/libmpd.vapi\
16     vapi/config.vapi
19 PLUGIN_FILES=\
20     Plugins/extraplaylist.c\
21     Plugins/AutoMPD.vala\
22     Plugins/sidebar-search.vala\
23     Plugins/sidebar-next-song.vala
27 gmpc_WIDGETS_FILES=\
28     Widgets/GmpcVolume.vala\
29     Widgets/gmpc-progress.vala\
30     Widgets/mpd-async-request.c\
31     Widgets/gmpc-song-list.vala\
32     Widgets/gmpc-clicklabel.vala\
33     Widgets/playlist3-messages.c\
34     Widgets/gmpc-song-links.vala\
35     Widgets/gmpc-image-async.vala\
36     Widgets/advanced_settings.vala\
37     Widgets/gmpc-widgets-qtable.vala\
38     Widgets/gmpc-widgets-popupmenu.vala\
39     Widgets/gmpc-metadata-backdrop.vala\
40     Widgets/gmpc-metadata-text-label.vala\
41     Widgets/gmpc-metadata-similarsongs.vala\
42     Widgets/gmpc-metadata-similarartists.vala\
43         Widgets/gmpc-sidebar-view.vala\
44         Widgets/gmpc-widgets-overlay.vala\
45     GUI/control_window.c\
46     GUI/title_header.c\
47     GUI/status_icon.c\
48     GUI/cmd.c
50 #    GUI/thv.c
52 gmpc_TOOLS_FILES=\
53     Tools/gmpc-database-update-tracker.vala\
54     Tools/gmpc-metadata-prefetcher.vala\
55     Tools/gmpc-liststore-sort.vala\
56     Tools/gmpc-metadata-appearance.vala \
57     Tools/gmpc_easy_download.c\
58     Tools/mpd-easy-commands.c\
59     Tools/advanced-search.c\
60     Tools/setup-assistant.c\
61     Tools/bug-information.c\
62     Tools/mpdinteraction.c\
63     Tools/pixbuf-cache.c\
64     Tools/url-fetcher.c\
65     Tools/plugin-man.c\
66     Tools/mm-keys.c\
67     Tools/misc.c\
68     Tools/log.c\
69     Tools/ipc.c
71 ## 
72 # Browsers
74 gmpc_BROWSERS_FILES=\
75         browsers/playlist3-current-playlist-browser.c\
76     browsers/gmpc-metadata-browser2.vala\
77         browsers/playlist3-playlist-editor.c\
78         browsers/playlist3-find2-browser.c\
79         browsers/playlist3-tag2-browser.c\
80         browsers/playlist3-file-browser.c\
81     browsers/gmpc-nowplaying2.vala\
82         browsers/server-information.c
84 gmpc_SOURCES=\
85     $(gmpc_WIDGETS_FILES)\
86     $(gmpc_BROWSERS_FILES)\
87     $(gmpc_TOOLS_FILES)\
88         $(gmpc_egg_FILES)\
89     $(PLUGIN_FILES)\
90     vala/gmpc-connection.vala\
91     vala/gmpc-easy-command.vala\
92     vala/gmpc-favorites.vala\
93     vala/gmpc-mpddata-treeview-tooltip.vala\
94     vala/gmpc-plugin.vala\
95     vala/gmpc-url-fetching-gui.vala\
96     vala/gmpc-test-plugin.vala\
97     vala/gmpc-paned-size-group.vala\
98     vala/gmpc-sidebar-plugins.vala\
99     MetaData/metadata.c\
100     preferences.c\
101     tray-icon2.c\
102     playlist3.c\
103     config1.c\
104     options.c\
105     plugin.c\
106     main.c
108 #    MetaData/metadata-cache-sqlite.c\
109 #    MetaData/metadata-cache.c\
113 nodist_gmpc_SOURCES=\
114     $(gmpc_GOBCFILES)
116 gmpc_LDADD=\
117            libeggsmclient.la
120 if WIN32 
121 gmpc_LDADD += gmpc-win32.o
122 endif
124 BUILT_SOURCES=\
125               $(gmpc_GOBSTAMPFILES)\
126               revisiont.h
128 gmpc-win32.o: gmpc-win32.rc
129         $(LIBTOOL) --mode=compile --tag=RC $(RC) -i $^ -o $@
131 .PHONY: revisiont.h
132 revisiont.h:
133         @if test "$(REVISION)" != "$(CONF_VERSION)"; then\
134                 echo "Writing new Makefile.config file";\
135                 echo "CONF_VERSION=$(REVISION)" > Makefile.config;\
136                 echo "static const char *revision = \"$(REVISION)""\"; " > revision.h;\
137         fi;
139 revision.h:     
140         echo "static const char *revision = \"$(REVISION)""\"; " > revision.h;
142 INCLUDES=\
143         -DPIXMAP_PATH=\""$(pkgdatadir)/icons/"\" \
144         -DGLADE_PATH=\""$(pkgdatadir)"\" \
145         -DVERSION=\"@VERSION@\"\
146         -DGMPC_BUILD=1\
147         -I$(top_srcdir)\
148         -I$(top_builddir)\
149         -I$(top_srcdir)/src\
150         -I$(top_builddir)/src\
151         -I$(top_srcdir)/src/egg\
152         -I$(top_builddir)/src/egg\
153         -I$(top_srcdir)/src/Tools\
154         -I$(top_builddir)/src/Tools\
155         -I$(top_srcdir)/src/vala\
156         -I$(top_builddir)/src/vala\
157         -I$(top_srcdir)/src/Widgets\
158         -I$(top_builddir)/src/Widgets\
159         -I$(top_srcdir)/src/GUI\
160         -I$(top_builddir)/src/GUI\
161         -I$(top_srcdir)/src/MetaData/\
162         -I$(top_builddir)/src/MetaData/
166 LIBS= \
167         @glib_LIBS@ @LIBS@ \
168         @libmpd_LIBS@ \
169         @gobject_LIBS@\
170         @gtk_LIBS@\
171         @gmodule_LIBS@\
172         @gthread_LIBS@\
173         @libsoup_LIBS@\
174         @libgio_LIBS@\
175         @SPIFF_LIBS@\
176         @libxspf_LIBS@\
177         @libxml2_LIBS@\
178         @libx11_LIBS@\
179     @libglyr_LIBS@\
180         @sqlite3_LIBS@\
181         -lz
184 if HAVE_UNIQUE
185     LIBS += @unique_LIBS@
186 endif
188 if HAVE_APP_INDICATOR
189     LIBS += @APP_INDICATOR_LIBS@
190 endif
192 AM_LDFLAGS = \
193         @EXTRA_LDFLAGS@\
194         @LDFLAGS@
198 AM_CFLAGS = @CFLAGS@\
199         @glib_CFLAGS@\
200         @libmpd_CFLAGS@ \
201         @gobject_CFLAGS@\
202         @gtk_CFLAGS@\
203         @gmodule_CFLAGS@\
204     @libxspf_CFLAGS@\
205         @gthread_CFLAGS@\
206         @libsoup_CFLAGS@\
207         @libgio_CFLAGS@\
208     @sqlite3_CFLAGS@\
209     @libxml2_CFLAGS@\
210     @libx11_CFLAGS@\
211     @EXTRA_CFLAGS@\
212     @libglyr_CFLAGS@\
213         -DPACKAGE_LIB_DIR=\""$(pkglibdir)"\"\
214         -DPACKAGE_DATA_DIR=\""$(datarootdir)"\"
217 if HAVE_UNIQUE
218     AM_CFLAGS += @unique_CFLAGS@ 
219 endif
221 if HAVE_APP_INDICATOR
222     AM_CFLAGS += @APP_INDICATOR_CFLAGS@
223 endif
225 if MAINTAINER_MODE
226 AM_CFLAGS+=-Wall -Wdeclaration-after-statement -Wshadow -fno-common -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wold-style-definition -Wmissing-declarations -Wredundant-decls -Wmissing-noreturn -Wpointer-arith -Wcast-align -Wwrite-strings -Winline -Wnested-externs -Wmissing-format-attribute -Waggregate-return -Wundef -Wmissing-include-dirs -Winit-self -Wswitch-default -Wswitch-enum -g -O1
227 endif
230 nodist_gmpcinclude_HEADERS=\
231         gmpc-profiles.h\
232         gmpc-meta-watcher.h\
233         gmpc-mpddata-model.h\
234         gmpc-mpddata-model-sort.h\
235         gmpc-mpddata-treeview.h\
236         gmpc-metaimage.h\
237         gmpc-meta-text-view.h
239 gmpcinclude_HEADERS = \
240                 plugin.h        \
241                 config1.h       \
242         Widgets/mpd-async-request.h\
243         Widgets/playlist3-messages.h\
244         Tools/gmpc_easy_download.h\
245         Tools/mpdinteraction.h\
246         Tools/misc.h\
247         gmpc-extras.h\
248         gmpc-version.h\
249         GUI/status_icon.h\
250                 MetaData/metadata.h
252 gmpcincludedir =$(includedir)/gmpc/
254 EXTRA_DIST=\
255                 playlist3.h\
256         tray-icon2.h\
257                 main.h\
258         Widgets/mpd-async-request.h\
259                 config-defaults.h\
260                 browsers/playlist3-tag2-browser.h\
261                 browsers/playlist3-file-browser.h\
262                 browsers/playlist3-current-playlist-browser.h\
263                 browsers/playlist3-find2-browser.h\
264                 browsers/playlist3-playlist-editor.h\
265         gtktransition.h\
266         plugin-internal.h\
267         Tools/mpd-easy-commands.h\
268         Tools/setup-assistant.h\
269                 Tools/bug-information.h\
270         Tools/plugin-man.h\
271         Tools/log.h\
272                 Tools/mm-keys.h\
273                 Tools/misc.h\
274                 MetaData/metadata.h\
275                 egg/eggcolumnchooserdialog.h\
276                 egg/eggcolumnmodel.h\
277                 Tools/advanced-search.h\
278                 Tools/setup-assistant.h\
279                 Tools/ipc.h\
280                 revision.h\
281                 gmpc-version.h.in\
282                 Tools/bug-information.h\
283                 options.h\
284                 gmpc-win32.rc\
285         Tools/pixbuf-cache.h\
286         preferences.h\
287         internal-plugins.h\
288         GUI/control_window.h\
289         GUI/title_header.h\
290         GUI/cmd.h\
291         $(VALA_VAPI_FILES)\
292         $(gmpc_GOBFILES)
294 #        GUI/thv.h
295 #               MetaData/metadata-cache.h\
296 #               MetaData/metadata-cache-sqlite.h\
299 DISTCLEANFILES=\
300                            revision.h\
301                            Makefile.config
303 CLEANFILES=\
304         $(gmpc_GOBCFILES)\
305         $(gmpc_GOBHFILES)\
306         $(gmpc_GOBSTAMPFILES)
308 ## 
309 # GOB stuff
311 gmpc_GOBFILES = \
312                 gmpc-profiles.gob\
313                 gmpc-meta-watcher.gob\
314                 gmpc-metaimage.gob\
315                 gmpc-meta-text-view.gob\
316                 gmpc-mpddata-model.gob\
317                 gmpc-mpddata-model-playlist.gob\
318                 gmpc-mpddata-model-sort.gob\
319                 gmpc-mpddata-treeview.gob\
320                 gmpc-stats-label.gob
322 gmpc_GOBSTAMPFILES=\
323         $(gmpc_GOBFILES:.gob=.gob.stamp)
325 gmpc_GOBCFILES=\
326         $(gmpc_GOBFILES:.gob=.c)
328 gmpc_GOBHFILES=\
329         $(gmpc_GOBFILES:.gob=.h)\
330         $(gmpc_GOBFILES:.gob=-private.h)
332 %.gob.stamp: %.gob
333         $(QUIET_GE) echo "  GOB   $< - $(top_builddir)/src/gob/"
334         @GOB2@ --always-private-header $<
335         @touch $(top_builddir)/src/$@
339 # Embedded egg
341 gmpc_egg_FILES=\
342         egg/eggcolumnchooserdialog.c\
343         egg/eggcolumnmodel.c
346 # SM CLIENT STUFF
349 if PLATFORM_WIN32
350 platform_sources = smclient/eggsmclient-win32.c
351 platform_logout_test_ldflags = -mwindows
352 else
353 if PLATFORM_OSX
354 platform_defines = -xobjective-c
355 platform_ldflags = -framework Carbon
356 platform_session_end_ldflags = -framework Carbon
357 platform_logout_test_ldflags = -framework Carbon
358 platform_sources = smclient/eggsmclient-osx.c
359 else
360 platform_defines = -DEGG_SM_CLIENT_BACKEND_XSMP
361 platform_ltlibraries =                   \
362         libeggdesktopfile.la             
363 platform_libs = libeggdesktopfile.la -lSM -lICE
364 platform_sources = smclient/eggsmclient-xsmp.c
365 endif
366 endif
368 libeggsmclient_la_INCLUDES = \
369         -DG_LOG_DOMAIN=\""EggSMClient"\" \
370         $(platform_defines)              \
371         $(glib_CFLAGS)           \
372     $(gtk_CFLAGS)
374 noinst_LTLIBRARIES =                     \
375         libeggsmclient.la                \
376         $(platform_ltlibraries)
378 libeggsmclient_la_LIBADD =               \
379         $(glib_LIBS)             \
380         $(gtk_LIBS)             \
381         $(platform_libs)
383 libeggsmclient_la_LDFLAGS =              \
384         $(platform_ldflags)
386 libeggsmclient_la_SOURCES =              \
387         smclient/eggsmclient.c                    \
388         $(platform_sources)
390 libeggdesktopfile_la_LIBADD =            \
391         $(EGG_LIBS)
393 libeggdesktopfile_la_SOURCES =           \
394         smclient/eggdesktopfile.c                 
396 EXTRA_DIST+=\
397         smclient/eggsmclient.h                    \
398         smclient/eggsmclient-private.h            \
399         smclient/eggdesktopfile.h
401 EXTRA_DIST +=                             \
402         smclient/eggsmclient-osx.c                \
403         smclient/eggsmclient-win32.c              \
404         smclient/eggsmclient-xsmp.c