1 ###############################################################################
2 # Automake targets and declarations
3 ###############################################################################
5 # SUBDIRS stores the directories where a "make" is required when building
6 # something. DIST_SUBDIRS stores the directories where nothing is built but
7 # which have makefiles with distribution information.
8 # - src (libvlccore) is nedeed by modules
9 SUBDIRS = compat doc po share src modules lib bin test
10 DIST_SUBDIRS = m4 $(SUBDIRS)
13 extras/include/x86/x86inc.asm \
14 extras/include/x86/x86util.asm \
15 extras/package/macosx/package.mak \
16 extras/package/win32/package.mak \
17 extras/package/npapi.am
19 dist_noinst_SCRIPTS = bootstrap
20 nodist_noinst_SCRIPTS = compile
22 BUILT_SOURCES_distclean =
24 BUILT_SOURCES = $(BUILT_SOURCES_distclean)
28 DISTCHECK_CONFIGURE_FLAGS = \
29 --enable-fast-install \
32 --disable-avcodec --disable-avformat \
33 --disable-postproc --disable-swscale \
35 --disable-mad --disable-libmpeg2 \
36 --disable-faad --disable-skins2 \
41 --with-kde-solid='$${datadir}/kde4/apps'
43 ACLOCAL_AMFLAGS = -I m4
52 ChangeLog: Makefile.am
54 cd doc && $(MAKE) $(AM_MAKEFLAGS) changelogs
55 $(LN_S) -f doc/ChangeLog-2015 "$@"
58 ###############################################################################
59 # tools (needed for contrib)
60 ##############################################################################
62 extras/tools/bootstrap \
63 extras/tools/packages.mak \
64 extras/tools/tools.mak \
65 extras/tools/SHA512SUMS \
66 extras/tools/automake-clang.patch \
67 extras/tools/bison-macOS-7df04f9.patch \
68 extras/tools/bison-macOS-c41f233c.patch \
69 extras/tools/cmake-enable-ALPN-support-on-macOS-10.14.patch \
70 extras/tools/libtool-2.4.6-bitcode.patch \
71 extras/tools/libtool-2.4.6-clang-libs.patch \
72 extras/tools/libtool-2.4.6-response-files.patch \
73 extras/tools/libtool-2.4.6-san.patch \
74 extras/tools/ragel-6.8-javacodegen.patch
76 ###############################################################################
77 # Various utilities ( editor syntax files, D-Bus controller ... )
78 ##############################################################################
80 extras/analyser/zsh_completion.sh \
81 extras/analyser/zsh.cpp \
82 extras/analyser/emacs.init \
83 extras/analyser/vlc.vim \
84 extras/analyser/valgrind.suppressions \
85 extras/buildsystem/make.pl \
86 extras/misc/mpris.py \
89 ###############################################################################
90 # Scripts for building dependencies.
91 ##############################################################################
96 ###############################################################################
98 ###############################################################################
101 DISTCLEANFILES = $(BUILT_SOURCES_distclean) compile doltcompile doltlibtool
102 MAINTAINERCLEANFILES = ChangeLog
104 # Shortcut for developers to rebuild the core (libvlc + vlc)
105 # Don't use it if you don't know what it is about.
106 # Don't complain if it doesn't work. -- Courmisch
108 cd compat && $(MAKE) $(AM_MAKEFLAGS)
110 libvlccore: libcompat
111 cd src && $(MAKE) $(AM_MAKEFLAGS) libvlccore.la
114 cd lib && $(MAKE) $(AM_MAKEFLAGS) libvlc.la
116 core: libvlc vlc$(EXEEXT)
117 cd bin && $(MAKE) $(AM_MAKEFLAGS) vlc$(EXEEXT) vlc-static$(EXEEXT)
120 cd doc && $(MAKE) $(AM_MAKEFLAGS) doc
122 .PHONY: libvlc core doc
124 ###############################################################################
126 ###############################################################################
128 ALL_ALIASES = cvlc rvlc svlc qvlc nvlc
130 bin_SCRIPTS = $(ALIASES)
132 CLEANFILES += $(ALIASES) $(noinst_SCRIPTS)
133 EXTRA_SCRIPTS = $(ALL_ALIASES)
135 dist_noinst_SCRIPTS += make-alias
137 MKALIAS = bindir="$(bindir)" transform="$(transform)" program_prefix="$(program_prefix)" program_suffix="$(program_suffix)" $(top_srcdir)/make-alias $@
139 cvlc: make-alias Makefile
140 $(AM_V_GEN)$(MKALIAS) dummy
142 rvlc: make-alias Makefile
143 $(AM_V_GEN)$(MKALIAS) rc
145 svlc: make-alias Makefile
146 $(AM_V_GEN)$(MKALIAS) skins2
148 qvlc: make-alias Makefile
149 $(AM_V_GEN)$(MKALIAS) qt
151 nvlc: make-alias Makefile
152 $(AM_V_GEN)$(MKALIAS) ncurses
155 noinst_SCRIPTS = vlc$(EXEEXT)
160 $(AM_V_GEN)$(LN_S) -f bin/vlc-osx-static vlc
162 $(AM_V_GEN)$(LN_S) -f bin/vlc-static$(EXEEXT) vlc$(EXEEXT)
165 TESTS = test/run_vlc.sh
166 dist_noinst_SCRIPTS += test/run_vlc.sh
169 ###############################################################################
170 # Installing plugins cache
171 ###############################################################################
173 if test "$(build)" = "$(host)"; then \
174 PATH="$(DESTDIR)$(bindir):$$PATH" \
175 LD_LIBRARY_PATH="$(DESTDIR)$(libdir):$$LD_LIBRARY_PATH" \
176 "$(DESTDIR)$(pkglibexecdir)/vlc-cache-gen$(EXEEXT)" \
177 "$(DESTDIR)$(pkglibdir)/plugins" ; \
179 echo "Cross-compilation: cache generation skipped!" ; \
184 rm -f -- "$(DESTDIR)$(pkglibdir)/plugins/plugins.dat"
186 ###############################################################################
188 ###############################################################################
191 $(MAKE) $(AM_MAKEFLAGS) all
193 $(MAKE) $(AM_MAKEFLAGS) check
194 lcov -c -d . -o lcov-raw.out
196 lcov.out: lcov-raw.out
197 lcov -r lcov-raw.out -o lcov.out \
198 '*test*' 'contrib/*' '/usr/include/*' '*mock*'
202 prefix="$$(cd "$(top_srcdir)" && pwd)" ; \
203 genhtml -p "$$prefix" -o lcov.tmp lcov.out >/dev/null
209 ###############################################################################
210 # PO translation files update
211 ###############################################################################
215 cd po && $(MAKE) POTFILES vlc.pot update-po
217 ###############################################################################
219 ###############################################################################
220 include extras/package/macosx/package.mak
221 include extras/package/win32/package.mak
222 include extras/package/win32/msi.mak