]> git.sesse.net Git - vlc/blob - modules/common.am
Version all plugins when building for Windows
[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 NULL =
9 libvlcdir = $(vlclibdir)/plugins/$(basedir)
10 BUILT_SOURCES =
11 CLEANFILES = $(BUILT_SOURCES)
12
13 LTLIBVLCCORE = $(top_builddir)/src/libvlccore.la
14
15 # Module name from object or executable file name.
16 MODULE_NAME = $$(p="$@"; p="$${p\#\#*/}"; p="$${p\#lib}"; echo "$${p%_plugin*}")
17
18 AM_CPPFLAGS = \
19         -DMODULE_NAME_IS_$(MODULE_NAME) \
20         -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 = -rpath '$(libvlcdir)' \
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