# which have makefiles with distribution information.
# - src (libvlc) is nedeed by modules
# - libs/* are needed by modules
-BASE_SUBDIRS = po compat src bin modules share doc test
-EXTRA_SUBDIRS = m4 \
- libs/loader libs/srtp
-DIST_SUBDIRS = $(BASE_SUBDIRS) $(EXTRA_SUBDIRS)
-
-SUBDIRS = po compat src
-if LOADER
-SUBDIRS += libs/loader
-endif
-if HAVE_GCRYPT
-SUBDIRS += libs/srtp
-endif
+DIST_SUBDIRS = m4 compat doc po share src modules lib bin test
+SUBDIRS = compat doc po share src modules lib
if BUILD_VLC
SUBDIRS += bin
endif
-SUBDIRS += modules share doc test
+SUBDIRS += test
EXTRA_DIST = \
- HACKING \
- INSTALL.win32 \
extras/package/win32/vlc.exe.manifest \
extras/package/win32/libvlc.dll.manifest \
extras/package/macosx/README.MacOSX.rtf \
extras/package/win32/UAC.dll \
extras/package/win32/languages/declaration.nsh \
extras/package/win32/languages/bengali.nsh \
+ extras/package/win32/languages/basque.nsh \
extras/package/win32/languages/brazilian_portuguese.nsh \
extras/package/win32/languages/bulgarian.nsh \
extras/package/win32/languages/catalan.nsh \
extras/package/win32/languages/hungarian.nsh \
extras/package/win32/languages/italian.nsh \
extras/package/win32/languages/japanese.nsh \
+ extras/package/win32/languages/lithuanian.nsh \
extras/package/win32/languages/occitan.nsh \
extras/package/win32/languages/polish.nsh \
extras/package/win32/languages/punjabi.nsh \
EXTRA_DIST += \
extras/package/macosx/Resources/about_bg.png \
- extras/package/macosx/Resources/add_embedded.png \
- extras/package/macosx/Resources/add_embedded_graphite.png \
extras/package/macosx/Resources/dsa_pub.pem \
- extras/package/macosx/Resources/embedded_vout.png \
extras/package/macosx/Resources/English.lproj/About.xib \
extras/package/macosx/Resources/English.lproj/AudioEffects.xib \
extras/package/macosx/Resources/English.lproj/Bookmarks.xib \
extras/package/macosx/Resources/fspanel/fs_volume_slider_bar.png \
extras/package/macosx/Resources/fspanel/fs_volume_slider_knob.png \
extras/package/macosx/Resources/fspanel/fs_volume_slider_knob_highlight.png \
+ extras/package/macosx/Resources/fspanel/fs_background@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_exit_fullscreen@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_exit_fullscreen_highlight@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_forward@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_forward_highlight@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_pause@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_pause_highlight@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_play@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_play_highlight@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_rewind@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_rewind_highlight@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_skip_next@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_skip_next_highlight@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_skip_previous@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_skip_previous_highlight@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_stop@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_stop_highlight@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_time_slider@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_time_slider_knob@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_time_slider_knob_highlight@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_volume_max@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_volume_max_highlight@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_volume_mute@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_volume_mute_highlight@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_volume_slider_bar@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_volume_slider_knob@x1.5.png \
+ extras/package/macosx/Resources/fspanel/fs_volume_slider_knob_highlight@x1.5.png \
extras/package/macosx/Resources/icons/aiff.icns \
extras/package/macosx/Resources/icons/audio.icns \
extras/package/macosx/Resources/icons/avi.icns \
extras/package/macosx/Resources/mainwindow/back-pressed.png \
extras/package/macosx/Resources/mainwindow/back.png \
extras/package/macosx/Resources/mainwindow/bottom-background.png \
- extras/package/macosx/Resources/mainwindow/bottom-bar-mini.png \
+ extras/package/macosx/Resources/mainwindow/bottombar-mini.png \
extras/package/macosx/Resources/mainwindow/dropzone-background.png \
extras/package/macosx/Resources/mainwindow/dropzone.png \
extras/package/macosx/Resources/mainwindow/effects-double-buttons-blue.png \
extras/package/macosx/Resources/mainwindow/repeat-pressed.png \
extras/package/macosx/Resources/mainwindow/repeat.png \
extras/package/macosx/Resources/mainwindow/shuffle-blue-pressed.png \
- extras/package/macosx/Resources/mainwindow/shuffle-on.png \
+ extras/package/macosx/Resources/mainwindow/shuffle-blue.png \
extras/package/macosx/Resources/mainwindow/shuffle-pressed.png \
extras/package/macosx/Resources/mainwindow/shuffle.png \
extras/package/macosx/Resources/mainwindow/stop-pressed.png \
extras/package/macosx/Resources/mainwindow_dark/back-pressed_dark.png \
extras/package/macosx/Resources/mainwindow_dark/back_dark.png \
extras/package/macosx/Resources/mainwindow_dark/bottom-background_dark.png \
+ extras/package/macosx/Resources/mainwindow_dark/bottombar-mini.png \
extras/package/macosx/Resources/mainwindow_dark/effects-double-buttons-blue_dark.png \
extras/package/macosx/Resources/mainwindow_dark/effects-double-buttons-pressed_dark.png \
extras/package/macosx/Resources/mainwindow_dark/effects-double-buttons_dark.png \
extras/package/macosx/Resources/mainwindow_dark/volume-slider-knob_dark.png \
extras/package/macosx/Resources/mainwindow_dark/volume-slider-track_dark.png \
extras/package/macosx/Resources/noart.png \
- extras/package/macosx/Resources/pause_embedded.png \
- extras/package/macosx/Resources/pause_embedded_graphite.png \
- extras/package/macosx/Resources/play_embedded.png \
- extras/package/macosx/Resources/play_embedded_graphite.png \
extras/package/macosx/Resources/prefs/spref_cone_Audio_64.png \
extras/package/macosx/Resources/prefs/spref_cone_Hotkeys_64.png \
extras/package/macosx/Resources/prefs/spref_cone_Input_64.png \
extras/package/macosx/Resources/prefs/spref_cone_Subtitles_64.png \
extras/package/macosx/Resources/prefs/spref_cone_Video_64.png \
extras/package/macosx/Resources/README \
- extras/package/macosx/Resources/repeat_embedded.png \
- extras/package/macosx/Resources/repeat_embedded_graphite.png \
- extras/package/macosx/Resources/repeat_single_embedded_graphite.png \
- extras/package/macosx/Resources/shuffle_embedded.png \
- extras/package/macosx/Resources/shuffle_embedded_graphite.png \
extras/package/macosx/Resources/sidebar-icons/document-music-playlist.png \
extras/package/macosx/Resources/sidebar-icons/film-cast.png \
extras/package/macosx/Resources/sidebar-icons/film.png \
extras/package/macosx/Resources/sidebar-icons/network-cloud.png \
extras/package/macosx/Resources/sidebar-icons/picture.png \
extras/package/macosx/Resources/sidebar-icons/README \
- extras/package/macosx/Resources/skip_forward_active_embedded.png \
- extras/package/macosx/Resources/skip_forward_embedded_graphite.png \
- extras/package/macosx/Resources/skip_previous_active_embedded.png \
- extras/package/macosx/Resources/skip_previous_embedded_graphite.png \
extras/package/macosx/Resources/vlc.scriptSuite \
extras/package/macosx/Resources/vlc.scriptTerminology \
extras/package/macosx/fullscreen_panel.svg \
libcompat:
cd compat && $(MAKE) $(AM_MAKEFLAGS)
-libvlc: libcompat
- cd src && $(MAKE) $(AM_MAKEFLAGS) libvlc.la
+libvlccore: libcompat
+ cd src && $(MAKE) $(AM_MAKEFLAGS) libvlccore.la
+
+libvlc: libvlccore
+ cd lib && $(MAKE) $(AM_MAKEFLAGS) libvlc.la
core: libvlc vlc$(EXEEXT)
cd bin && $(MAKE) $(AM_MAKEFLAGS) vlc$(EXEEXT) vlc-static$(EXEEXT)
endif
endif
+###############################################################################
+# Installing plugins cache
+###############################################################################
+install-exec-hook:
+ if test "$(build)" = "$(host)"; then \
+ LD_LIBRARY_PATH="$(DESTDIR)$(libdir):$$LD_LIBRARY_PATH" \
+ "$(DESTDIR)$(vlclibdir)/vlc-cache-gen$(EXEEXT)" \
+ "$(DESTDIR)$(vlclibdir)/plugins" ; \
+ else \
+ echo "Cross-compilation: cache generation skipped!" ; \
+ fi
+
silentstd = $(silentstd_$(V))
silentstd_ = $(silentstd_$(AM_DEFAULT_VERBOSITY))
silentstd_0 = 2>&1 >/dev/null
# use package-macosx to get a nice dmg
VLC-release.app: vlc
( cd src && $(MAKE) $(AM_MAKEFLAGS) install $(silentstd) )
+ ( cd lib && $(MAKE) $(AM_MAKEFLAGS) install $(silentstd) )
rm -Rf "$(top_builddir)/tmp"
mkdir -p "$(top_builddir)/tmp/extras/package/macosx"
rm -Rf $(top_builddir)/VLC-release.app
prefs.m \
simple_prefs.h \
simple_prefs.m \
- vout.h \
- voutgl.m \
wizard.h \
wizard.m \
bookmarks.h \
bookmarks.m \
coredialogs.h \
coredialogs.m \
- embeddedwindow.h \
- embeddedwindow.m \
fspanel.h \
- fspanel.m \
- vout.m; do \
+ fspanel.m; do \
cp "$(srcdir)/modules/gui/macosx/$$i" \
$(top_builddir)/tmp/modules/gui/macosx; \
done
# This is just for development purposes.
# The resulting VLC.app will only run in this tree.
-VLC.app: vlc $(top_builddir)/src/.libs/libvlccore.dylib $(top_builddir)/src/.libs/libvlc.dylib
+VLC.app: vlc $(top_builddir)/src/.libs/libvlccore.dylib $(top_builddir)/lib/.libs/libvlc.dylib
$(AM_V_GEN)(cd src && make install $(silentstd))
+ $(AM_V_GEN)(cd lib && make install $(silentstd))
rm -Rf $(top_builddir)/tmp
mkdir -p "$(top_builddir)/tmp/extras/package/macosx"
rm -Rf $(top_builddir)/VLC.app
prefs.m \
simple_prefs.h \
simple_prefs.m \
- vout.h \
- voutgl.m \
wizard.h \
wizard.m \
bookmarks.h \
bookmarks.m \
coredialogs.h \
coredialogs.m \
- embeddedwindow.h \
- embeddedwindow.m \
fspanel.h \
- fspanel.m \
- vout.m; do \
+ fspanel.m; do \
cp "$(srcdir)/modules/gui/macosx/$$i" \
$(top_builddir)/tmp/modules/gui/macosx; \
done
win32_xpi_destdir=$(win32_destdir)/vlc-plugin
if HAVE_WIN64
-build-npapi:
- touch $@
-
-build-activex:
- touch $@
+include extras/package/npapi.am
else
if HAVE_WINCE
build-npapi:
touch $@
-
-build-activex:
- touch $@
else
if HAVE_WIN32
include extras/package/npapi.am
-include extras/package/activex.am
endif
endif
endif
#Win-common is for win32 and wince
-package-win-common: install build-npapi build-activex
+package-win-common: install build-npapi
# Check that tmp isn't in the way
@if test -e "$(win32_destdir)"; then \
echo "Error: please remove $(win32_destdir), it is in the way"; \
rm -f -- "$$file.tmp"; \
done
endif
-if !HAVE_WIN64
+
if !HAVE_WINCE
- cp "$(top_builddir)/activex-vlc/src/axvlc.dll.manifest" "$(win32_destdir)/"
- cp "$(top_builddir)/activex-vlc/installed/lib/axvlc.dll" "$(win32_destdir)/"
+if !HAVE_WIN64
+ cp "$(top_builddir)/npapi-vlc/activex/axvlc.dll.manifest" "$(win32_destdir)/"
+ cp "$(top_builddir)/npapi-vlc/installed/lib/axvlc.dll" "$(win32_destdir)/"
+endif
cp "$(top_builddir)/npapi-vlc/npapi/npvlc.dll.manifest" "$(win32_destdir)/"
cp "$(top_builddir)/npapi-vlc/installed/lib/npvlc.dll" "$(win32_destdir)/"
endif
+
+# Compiler shared DLLs
+# For win64 only, Debian mingw32 compilers are built with --disable-shared
+if HAVE_WIN64
+# if gcc_s_sjlj/stdc++ DLLs exist, our C++ modules were linked to them
+ gcc_lib_dir=`x86_64-w64-mingw32-gcc -v /dev/null 2>&1 | grep ^LIBRARY_PATH|cut -d= -f2|cut -d: -f1` ; \
+ cp "$${gcc_lib_dir}/libstdc++-6.dll" "$${gcc_lib_dir}/libgcc_s_sjlj-1.dll" "$(win32_destdir)/" ; true
endif
# SDK
if !HAVE_WIN64
if !HAVE_WINCE
mkdir -p "$(win32_destdir)/sdk/activex"
- cp $(top_builddir)/activex-vlc/README $(win32_destdir)/sdk/activex/README.TXT
- cp $(top_builddir)/activex-vlc/src/test.html $(win32_destdir)/sdk/activex/
+ cp $(top_builddir)/npapi-vlc/activex/README.TXT $(win32_destdir)/sdk/activex/README.TXT
+ cp $(top_builddir)/npapi-vlc/share/test.html $(win32_destdir)/sdk/activex/
endif
endif
find $(win32_destdir) -type f \( -name "*xml" -or -name "*html" -or -name '*js' -or -name '*css' -or -name '*hosts' -or -iname '*txt' -or -name '*.cfg' -or -name '*.lua' \) -exec $(U2D) {} \;
#Enable DEP and ASLR for all the binaries
-if USE_PEFLAGS
- find $(win32_destdir) -type f \( -name '*$(LIBEXT)' -print -o -name '*$(EXEEXT)' -print \) -exec $(PEFLAGS) --dynamicbase=true --nxcompat=true {} \;
-endif
+ find $(win32_destdir) -type f \( -name '*$(LIBEXT)' -print -o -name '*$(EXEEXT)' -print \) -exec $(top_srcdir)/extras/package/win32/peflags.py {} \;
find $(win32_destdir)/plugins/ -type f \( -name '*.a' -or -name '*.la' \) -exec rm -rvf {} \;
package-win-base: package-win-common
package-win32-webplugin-common: package-win-base
mkdir -p "$(win32_xpi_destdir)/plugins"
find $(destdir) -maxdepth 4 -name "*$(LIBEXT)" -exec cp {} "$(win32_xpi_destdir)/" \;
-if !HAVE_WIN64
cp $(top_builddir)/npapi-vlc/npapi/npvlc.dll.manifest "$(win32_xpi_destdir)/plugins"
-endif
cp "$(top_srcdir)/extras/package/win32/libvlc.dll.manifest" "$(win32_xpi_destdir)/plugins"
cp -r $(win32_destdir)/plugins/ "$(win32_xpi_destdir)/plugins"
rm -rf "$(win32_xpi_destdir)/plugins/plugins/*qt*"
rm -rf "$(win32_xpi_destdir)/plugins/plugins/*skins*"
package-win32-xpi: package-win32-webplugin-common
-if !HAVE_WIN64
cp $(top_builddir)/npapi-vlc/npapi/install.rdf "$(win32_xpi_destdir)"
cd $(win32_xpi_destdir) && zip -r "../vlc-$(VERSION).xpi" install.rdf plugins
-endif
package-win32-crx: package-win32-webplugin-common
-if !HAVE_WIN64
cp $(top_builddir)/npapi-vlc/npapi/manifest.json "$(win32_xpi_destdir)"
crxmake --pack-extension "$(win32_xpi_destdir)" \
--extension-output "$(win32_destdir)/vlc-$(VERSION).crx" --ignore-file install.rdf
-endif
package-win32-base-exe: package-win-base
# Script installer