]> git.sesse.net Git - vlc/blob - modules/common.am
modules: simplify CPPFLAGS & CFLAGS
[vlc] / modules / common.am
1 # Common code for VLC modules/.../Makefile.am
2 #
3 # Copyright (C) 2005-2007 the VideoLAN team
4 # Copyright (C) 2005-2008 RĂ©mi Denis-Courmont
5 #
6 # Authors: Sam Hocevar <sam@zoy.org>
7
8 AUTOMAKE_OPTIONS = subdir-objects
9
10 NULL =
11 pluginsdir = $(vlclibdir)/plugins
12 BUILT_SOURCES =
13 CLEANFILES = $(BUILT_SOURCES)
14
15 LTLIBVLCCORE = $(top_builddir)/src/libvlccore.la
16
17 # Module name from object or executable file name.
18 MODULE_NAME = $$(p="$@"; p="$${p\#\#*/}"; p="$${p\#lib}"; p="$${p%_plugin*}"; p="$${p%.lo}"; echo "$$p")
19
20 AM_CPPFLAGS = -DMODULE_STRING=\"$(MODULE_NAME)\"
21 if HAVE_DYNAMIC_PLUGINS
22 AM_CPPFLAGS += -D__PLUGIN__
23 else
24 AM_CPPFLAGS += -DMODULE_NAME=$(MODULE_NAME)
25 endif
26 AM_CFLAGS =
27 AM_CXXFLAGS =
28 AM_OBJCFLAGS =
29 AM_LIBADD = $(LIBPTHREAD)
30 AM_LDFLAGS = \
31         -avoid-version -module \
32         -export-symbols-regex ^vlc_entry \
33         -shrext $(LIBEXT) \
34         -no-undefined \
35         $(LTLIBVLCCORE) $(top_builddir)/compat/libcompat.la
36
37 if HAVE_WIN32
38 AM_LDFLAGS += -Wl,lib$(MODULE_NAME)_plugin.rc.$(OBJEXT)
39
40 $(top_builddir)/modules/module.rc: $(top_builddir)/modules/module.rc.in $(top_builddir)/config.status
41         $(AM_V_GEN) cd "$(top_builddir)" && $(SHELL) ./config.status --file="modules/module.rc"
42
43 lib%_plugin.rc.$(OBJEXT): $(top_builddir)/modules/module.rc
44         $(AM_V_GEN) $(WINDRES) -DMODULE_NAME=\\\"$(MODULE_NAME)\\\" --include-dir $(top_srcdir)/share --include-dir $(top_srcdir)/extras/package/win32 -i $< -o $@
45 endif