# Automake targets and declarations
###############################################################################
-NULL =
-
# SUBDIRS stores the directories where a "make" is required when building
# something. DIST_SUBDIRS stores the directories where nothing is built but
# which have makefiles with distribution information.
-# - intl should come before modules and . because all the code uses gettext
-# - modules should come before . because vlc needs the builtins
-# - . should come before mozilla/bindings because the plugin needs libvlc.a
-# - po should come before . because VLC.app needs the pofiles
-# - loader should come before modules because some plugins need it
-SUBDIRS = intl loader src modules po . mozilla bindings activex share m4 doc
-DIST_SUBDIRS = $(SUBDIRS) ipkg
+# - intl (gettext) is needed by src and modules
+# - src (libvlc) is nedeed by modules, mozilla and bindings
+# - libs/* are needed by modules
+SUBDIRS = intl po libs/loader libs/srtp src modules \
+ mozilla bindings activex share doc
+DIST_SUBDIRS = $(SUBDIRS) m4 ipkg
EXTRA_DIST = \
HACKING \
vlc.exe.manifest \
MAINTAINERS \
README.MacOSX.rtf \
- bootstrap \
- toolbox \
- vlc-api.pl \
vlc-config.in.in \
vlc.fedora.spec \
vlc.mandriva.spec \
vlc.altlinux.spec \
- vlc.win32.nsi.in \
- $(NULL)
+ vlc.win32.nsi.in
+
+dist_noinst_SCRIPTS = bootstrap toolbox
BUILT_SOURCES_distclean = vlc-config compile vlc.win32.nsi
+if HAVE_DARWIN
BUILT_SOURCES_clean = macosx-sdk
+else
+BUILT_SOURCES_clean =
+endif
BUILT_SOURCES = $(BUILT_SOURCES_distclean) $(BUILT_SOURCES_clean)
extras/MacOSX/Resources/fs_exit_fullscreen.png \
extras/MacOSX/Resources/fs_background.png \
extras/MacOSX/fullscreen_panel.svg \
- extras/MacOSX/vlc.pbproj/project.pbxproj \
+ extras/MacOSX/ub.sh \
+ extras/MacOSX/vlc.xcodeproj/project.pbxproj \
extras/MacOSX/Delete_Preferences.app/Contents/Info.plist \
extras/MacOSX/Delete_Preferences.app/Contents/PkgInfo \
extras/MacOSX/Delete_Preferences.app/Contents/MacOS/applet \
extras/MacOSX/plugin/InstallerInfo.plist \
extras/MacOSX/plugin/InstallerDescription.plist \
extras/MacOSX/plugin/pbdevelopment.plist \
- extras/MacOSX/plugin/English.lproj/InfoPlist.strings \
- $(NULL)
+ extras/MacOSX/plugin/English.lproj/InfoPlist.strings
###############################################################################
# Various utilities ( editor syntax files, D-Bus controller ... )
extras/make.pl \
extras/valgrind.suppressions \
extras/m4/autoconf260.m4 \
- extras/dbus-vlc.py \
- extras/dbus-vlc.glade \
- $(NULL)
-
-###############################################################################
-# MS Visual Studio and eMbedded Visual Studio projects
-###############################################################################
-
-EXTRA_DIST += \
- msvc/vlc.dsw \
- msvc/libvlc.dsp.in \
- msvc/plugins.dsp.in \
- msvc/vlc.dsp.in \
- msvc/config.h.in \
- msvc/modules_builtin_msvc.h \
- evc/vlc.vcw \
- evc/libvlc.vcp.in \
- evc/vlc.vcp.in \
- evc/plugins.vcp.in \
- evc/errno.h \
- evc/config.h.in \
- evc/modules_builtin_evc.h \
- $(NULL)
+ extras/mpris.py \
+ extras/mpris.glade
dist-hook:
- cd $(distdir) && srcdir=. $(SHELL) ./toolbox --update-vc
distdir=$(distdir) srcdir=$(srcdir) $(SHELL) $(srcdir)/toolbox --dist-contrib
###############################################################################
CLEANFILES = $(BUILT_SOURCES_clean) stamp-builtin
DISTCLEANFILES = $(BUILT_SOURCES_distclean) vlc-config.in compile
+# Shortcut for developpers to rebuild the core (libvlc + vlc)
+# Don't use it if you don't know what it is about.
+# Don't complain if it doesn't work. -- Courmisch
+libvlc:
+ cd src && $(MAKE) $(AM_MAKEFLAGS) $(LIB_libvlc)
+
+.PHONY: libvlc
+
###############################################################################
# Building vlc
###############################################################################
vlc_SOURCES = src/vlc.c
# Ugly kludge so that automake defines $(CXXLINK)
-EXTRA_vlc_SOURCES = extras/zsh.cpp
-
-# Work around a bug in the arm-wince-pe linker
-if HAVE_WINCE
-vlc_WORKAROUNDLDFLAGS = $(LIBVLC)
-endif
+nodist_EXTRA_vlc_SOURCES = extras/zsh.cpp src/misc/darwin_specific.m
-# We use DEPENDENCIES_vlc instead of vlc_DEPENDENCIES because of an
-# old automake-1.5 bug (automake/279).
-DEPENDENCIES_vlc = src/$(LIB_libvlc) $(DATA_win32_rc)
+vlc_DEPENDENCIES = $(DATA_win32_rc)
-vlc_LDADD = $(DATA_win32_rc) $(LIBVLC)
+vlc_LDADD = $(DATA_win32_rc) $(LIBVLC) $(LTLIBINTL) `$(VLC_CONFIG) -libs vlc`
+vlc_LDFLAGS = `$(VLC_CONFIG) --ldflags vlc`
+if !HAVE_PLUGINS
+vlc_LDFLAGS += `$(VLC_CONFIG) --target plugin | sed -e 's/\_plugin /_plugin.la /g'`
+endif
vlc_CFLAGS = `$(VLC_CONFIG) --cflags vlc`
-if USE_LIBTOOL
LIB_libvlc = libvlc.la
LIBVLC = src/$(LIB_libvlc)
-vlc_LDFLAGS =
-else
-if BUILD_SHARED
-vlc_LDFLAGS = `$(VLC_CONFIG) --libs vlc` -Wl,-rpath $(libdir) -L$(top_builddir)/src -lvlc
-if HAVE_WIN32
-LIB_libvlc = libvlc.dll.a
-else
-LIB_libvlc = libvlc$(LIBEXT)
-endif
-LIBVLC =
-else
-vlc_LDFLAGS = $(vlc_WORKAROUNDLFDLAGS) `$(VLC_CONFIG) --libs vlc builtin`
-LIB_libvlc = libvlc.a
-LIBVLC = src/$(LIB_libvlc)
-DEPENDENCIES_vlc += stamp-builtin
-endif
-vlc_LDADD += $(INCLUDED_LIBINTL)
-endif
-
-# Shortcut for developpers to rebuild the core (libvlc + vlc)
-# Don't use it if you don't know what it is about.
-# Don't complain if it doesn't work. -- Courmisch
-libvlc:
- cd src && $(MAKE) $(AM_MAKEFLAGS) $(LIB_libvlc)
-core: libvlc
- $(MAKE) $(AM_MAKEFLAGS) vlc$(EXEEXT)
+#To get some nice output
+nice:
+ $(top_builddir)/compile
-.PHONY: libvlc core
+core: libvlc vlc$(EXEEXT)
-src/$(LIB_libvlc): libvlc
+.PHONY: core
-vlc$(EXEEXT): $(vlc_OBJECTS) $(DEPENDENCIES_vlc)
+vlc$(EXEEXT): $(vlc_OBJECTS) $(vlc_DEPENDENCIES)
@rm -f vlc$(EXEEXT)
@case `$(VLC_CONFIG) --linkage vlc builtin` in \
c++) cmd="$(CXXLINK)" ;; \
cp $$i $(top_builddir)/vlc-bundle/lib/ ; \
done ; \
fi
- for i in $(ALL_LINGUAS); do \
+ cat $(top_srcdir)/po/LINGUAS | while read i; do \
mkdir -p "$(top_builddir)/vlc-bundle/locale/$$i/LC_MESSAGES" ; \
cp "$(top_builddir)/po/$$i.gmo" \
"$(top_builddir)/vlc-bundle/locale/$$i/LC_MESSAGES/vlc.mo" || true ; \
find $(top_builddir)/vlc-bundle -type f -exec mimeset -f "{}" \;
endif
-# Install the symlinks
-install-exec-local: install-binPROGRAMS
- for i in "" $(ALIASES) ; do if test -n "$$i" ; then \
- rm -f "$(DESTDIR)$(bindir)/$$i" && \
- ln -sf vlc "$(DESTDIR)$(bindir)/$$i" ; \
- fi ; done
+###############################################################################
+# Building aliases
+###############################################################################
+
+ALL_ALIASES = cvlc rvlc svlc wxvlc qvlc nvlc
+bin_SCRIPTS += $(ALIASES)
+EXTRA_SCRIPTS = $(ALL_ALIASES)
+
+dist_noinst_SCRIPTS += make-alias
+
+MKALIAS = bindir="$(bindir)" transform="$(transform)" $(top_srcdir)/make-alias $@
+
+cvlc: make-alias
+ $(MKALIAS) dummy
+
+rvlc: make-alias
+ $(MKALIAS) rc
-# the opposite of install-{data,exec}-local
-uninstall-local:
- for i in "" $(ALIASES) ; do if test -n "$$i" ; then \
- rm -f "$(DESTDIR)$(bindir)/$$i" ; \
- fi ; done
+svlc: make-alias
+ $(MKALIAS) skins2
+
+wxvlc: make-alias
+ $(MKALIAS) wx
+
+qvlc: make-alias
+ $(MKALIAS) qt4
+
+nvlc: make-alias
+ $(MKALIAS) ncurses
if HAVE_DARWIN
# Create the MacOS X app
cp "$(srcdir)/modules/gui/macosx/$$i" \
$(top_builddir)/tmp/modules/gui/macosx; \
done
- case $(host_os) in \
- *darwin6*) cd $(top_builddir)/tmp/extras/MacOSX && pbxbuild -target vlc | grep -v '^\([ \t]\|$$\)' && \
- cd ../../../ && \
- cp -R $(top_builddir)/tmp/extras/MacOSX/build/VLC.bundle \
- $(top_builddir)/VLC-release.app;; \
- *darwin7*) cd $(top_builddir)/tmp/extras/MacOSX && xcodebuild -target vlc | grep -v '^\([ \t]\|$$\)' && \
- cd ../../../ && \
- cp -R $(top_builddir)/tmp/extras/MacOSX/build/VLC.bundle \
- $(top_builddir)/VLC-release.app;; \
- *darwin8*) cd $(top_builddir)/tmp/extras/MacOSX && xcodebuild -target vlc | grep -v '^\([ \t]\|$$\)' && \
+ cd $(top_builddir)/tmp/extras/MacOSX && xcodebuild -target vlc | grep -v '^\([ \t]\|$$\)' && \
cd ../../../ && \
cp -R $(top_builddir)/tmp/extras/MacOSX/build/Default/VLC.bundle \
- $(top_builddir)/VLC-release.app;; \
- esac
+ $(top_builddir)/VLC-release.app; \
rm -Rf $(top_builddir)/tmp
$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS
- $(INSTALL) $(top_builddir)/vlc \
+ $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/lib
+ $(INSTALL) $(top_builddir)/.libs/vlc \
$(top_builddir)/VLC-release.app/Contents/MacOS/VLC
+ $(INSTALL) $(top_builddir)/src/.libs/libvlc.1.dylib \
+ $(top_builddir)/VLC-release.app/Contents/MacOS/lib/libvlc.dylib
+ $(INSTALL) $(top_builddir)/src/.libs/libvlc-control.1.dylib \
+ $(top_builddir)/VLC-release.app/Contents/MacOS/lib/libvlc-control.dylib
+ install_name_tool -change /usr/local/lib/libvlc.1.dylib \
+ @executable_path/lib/libvlc.dylib \
+ $(top_builddir)/VLC-release.app/Contents/MacOS/lib/libvlc-control.dylib
+ install_name_tool -change /usr/local/lib/libvlc.1.dylib \
+ @executable_path/lib/libvlc.dylib \
+ $(top_builddir)/VLC-release.app/Contents/MacOS/VLC
ln -sf ./VLC $(top_builddir)/VLC-release.app/Contents/MacOS/clivlc
$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/modules
- for i in "" `$(VLC_CONFIG) --target plugin` ; do \
+ for i in `$(VLC_CONFIG) --target plugin` ; do \
if test -n "$$i" ; \
- then $(INSTALL) "$$i$(LIBEXT)" \
+ then $(INSTALL) "`pwd`/`dirname $$i`/.libs/`basename $$i`$(LIBEXT)" \
"$(top_builddir)/VLC-release.app/Contents/MacOS/modules" ; \
fi ; done
if test -d $(srcdir)/extras/contrib/vlc-lib; then \
$(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/lib/`basename $${i}` ; \
done ; \
fi
+ $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/luaplaylist
+ for i in $(srcdir)/share/luaplaylist/*.* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/luaplaylist/`basename $${i}` ; \
+ done ; \
+ $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/luameta
+ for i in $(srcdir)/share/luameta/*.* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/luameta/`basename $${i}` ; \
+ done ; \
+ $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/luaintf
+ for i in $(srcdir)/share/luaintf/*.* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/luaintf/`basename $${i}` ; \
+ done ; \
+ $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/luaintf/modules
+ for i in $(srcdir)/share/luaintf/modules/*.* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/luaintf/modules/`basename $${i}` ; \
+ done ; \
+ $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/dialogs
+ $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/js
+ $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/old
+ $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/old/admin
+ $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/old/vlm
+ $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/images
+ $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/requests
+ for i in $(srcdir)/share/http-lua/*.* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/`basename $${i}` ; \
+ done ; \
+ for i in $(srcdir)/share/http-lua/dialogs/* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/dialogs/`basename $${i}` ; \
+ done ; \
+ for i in $(srcdir)/share/http-lua/js/*.* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/js/`basename $${i}` ; \
+ done ; \
+ for i in $(srcdir)/share/http-lua/old/*.* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/old/`basename $${i}` ; \
+ done ; \
+ for i in $(srcdir)/share/http-lua/old/admin/*.* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/old/admin/`basename $${i}` ; \
+ done ; \
+ for i in $(srcdir)/share/http-lua/old/vlm/*.* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/old/vlm/`basename $${i}` ; \
+ done ; \
+ for i in $(srcdir)/share/http-lua/images/*.* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/images/`basename $${i}` ; \
+ done ; \
+ for i in $(srcdir)/share/http-lua/requests/*.* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/requests/`basename $${i}` ; \
+ done ; \
+ $(INSTALL) -m 644 $(srcdir)/share/http-lua/requests/readme $(top_builddir)/VLC-release.app/Contents/MacOS/share/http-lua/requests/readme.txt
$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/dialogs
$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/js
$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/old
done ; \
$(INSTALL) -m 644 $(srcdir)/share/http/requests/readme $(top_builddir)/VLC-release.app/Contents/MacOS/share/http/requests/readme.txt
$(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/locale
- for i in $(ALL_LINGUAS); do \
+ cat $(top_srcdir)/po/LINGUAS | while read i; do \
mkdir -p $(top_builddir)/VLC-release.app/Contents/MacOS/locale/$${i}/LC_MESSAGES ; \
cp $(srcdir)/po/$${i}.gmo $(top_builddir)/VLC-release.app/Contents/MacOS/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \
mkdir -p $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
$(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
ln -sf ../English.lproj/MainMenu.nib \
$(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
- ln -sf ../English.lproj/vlc.scriptTerminology \
- $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \
done
printf "APPLVLC#" >| $(top_builddir)/VLC-release.app/Contents/PkgInfo
+ find $(top_builddir)/VLC-release.app -type d -exec chmod ugo+rx '{}' \;
+ find $(top_builddir)/VLC-release.app -type f -exec chmod ugo+r '{}' \;
VLC.app: vlc
@if test -e "$(top_builddir)/tmp"; then \
cp "$(srcdir)/modules/gui/macosx/$$i" \
$(top_builddir)/tmp/modules/gui/macosx; \
done
- case $(host_os) in \
- *darwin6*) cd $(top_builddir)/tmp/extras/MacOSX && pbxbuild -target vlc | grep -v '^\([ \t]\|$$\)'&& \
- cd ../../../ && \
- cp -R $(top_builddir)/tmp/extras/MacOSX/build/VLC.bundle \
- $(top_builddir)/VLC.app;; \
- *darwin7*) cd $(top_builddir)/tmp/extras/MacOSX && xcodebuild -target vlc | grep -v '^\([ \t]\|$$\)'&& \
- cd ../../../ && \
- cp -R $(top_builddir)/tmp/extras/MacOSX/build/VLC.bundle \
- $(top_builddir)/VLC.app;; \
- *darwin8*) cd $(top_builddir)/tmp/extras/MacOSX && xcodebuild -target vlc | grep -v '^\([ \t]\|$$\)' && \
+ cd $(top_builddir)/tmp/extras/MacOSX && xcodebuild -target vlc | grep -v '^\([ \t]\|$$\)' && \
cd ../../../ && \
cp -R $(top_builddir)/tmp/extras/MacOSX/build/Default/VLC.bundle \
- $(top_builddir)/VLC.app;; \
- esac
+ $(top_builddir)/VLC.app; \
rm -Rf $(top_builddir)/tmp
$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS
- $(INSTALL) $(top_builddir)/vlc \
+ $(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/lib
+ $(INSTALL) $(top_builddir)/.libs/vlc \
$(top_builddir)/VLC.app/Contents/MacOS/VLC
+ $(INSTALL) $(top_builddir)/src/.libs/libvlc.1.dylib \
+ $(top_builddir)/VLC.app/Contents/MacOS/lib/libvlc.dylib
+ $(INSTALL) $(top_builddir)/src/.libs/libvlc-control.1.dylib \
+ $(top_builddir)/VLC.app/Contents/MacOS/lib/libvlc-control.dylib
+ install_name_tool -change /usr/local/lib/libvlc.1.dylib \
+ @executable_path/lib/libvlc.dylib \
+ $(top_builddir)/VLC.app/Contents/MacOS/lib/libvlc-control.dylib
+ install_name_tool -change /usr/local/lib/libvlc.1.dylib \
+ @executable_path/lib/libvlc.dylib \
+ $(top_builddir)/VLC.app/Contents/MacOS/VLC
ln -sf ./VLC $(top_builddir)/VLC.app/Contents/MacOS/clivlc
$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/modules
- for i in "" `$(VLC_CONFIG) --target plugin` ; do \
+ for i in `$(VLC_CONFIG) --target plugin` ; do \
if test -n "$$i" ; \
- then ln -sfn "`pwd`/$$i$(LIBEXT)" \
+ then install_name_tool -change /usr/local/lib/libvlc.1.dylib \
+ @executable_path/lib/libvlc.dylib \
+ "`pwd`/`dirname $$i`/.libs/`basename $$i`$(LIBEXT)"; \
+ ln -sfn "`pwd`/`dirname $$i`/.libs/`basename $$i`$(LIBEXT)" \
"$(top_builddir)/VLC.app/Contents/MacOS/modules" ; \
fi ; done
if test -d $(srcdir)/extras/contrib/vlc-lib; then \
mkdir -p $(top_builddir)/VLC.app/Contents/MacOS/lib ; \
for i in $(srcdir)/extras/contrib/vlc-lib/*.dylib ; do \
+ install_name_tool -change /usr/local/lib/libvlc.1.dylib @executable_path/lib/libvlc.dylib $${i}; \
ln -sfn `pwd`/$${i} $(top_builddir)/VLC.app/Contents/MacOS/lib/`basename $${i}` ; \
done ; \
fi
- ln -sfn `pwd`/share $(top_builddir)/VLC.app/Contents/MacOS/
+ ln -sfn `pwd`/$(srcdir)/share $(top_builddir)/VLC.app/Contents/MacOS/
$(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/locale
- for i in $(ALL_LINGUAS); do \
+ cat $(top_srcdir)/po/LINGUAS | while read i; do \
mkdir -p $(top_builddir)/VLC.app/Contents/MacOS/locale/$${i}/LC_MESSAGES ; \
ln -sfn `pwd`/po/$${i}.gmo $(top_builddir)/VLC.app/Contents/MacOS/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \
mkdir -p $(top_builddir)/VLC.app/Contents/Resources/$${i}.lproj ; \
endif
-###############################################################################
-# Building specific source packages
-###############################################################################
-
-dist-woody: distdir
- $(remove_distdir_woody)
- mv $(distdir) $(PACKAGE)-woody-$(VERSION)
- $(srcdir)/toolbox --make-woody $(PACKAGE)-woody-$(VERSION)
- $(AMTAR) chof - $(PACKAGE)-woody-$(VERSION) \
- | GZIP=$(GZIP_ENV) gzip -c >$(PACKAGE)-woody-$(VERSION).tar.gz
- $(remove_distdir_woody)
-
-remove_distdir_woody = \
- { test ! -d $(PACKAGE)-woody-$(VERSION) \
- || { find $(PACKAGE)-woody-$(VERSION) -type d ! -perm -200 \
- -exec chmod u+w {} ';' \
- && rm -fr $(PACKAGE)-woody-$(VERSION); }; }
-
###############################################################################
# Building architecture-specific binary packages
###############################################################################
# XXX: this rule is probably only useful to you if you have exactly
-# the same setup as me. Contact sam@zoy.org if you need to use it.
+# the same setup as the maintaner(s).
#
package-win-common:
fi
# Copy relevant files
- cp "$(top_builddir)/vlc$(EXEEXT)" "$(top_builddir)/vlc-${VERSION}/"
+ cp "$(top_builddir)/.libs/vlc$(EXEEXT)" "$(top_builddir)/vlc-${VERSION}/"
cp "$(top_srcdir)/vlc.exe.manifest" "$(top_builddir)/vlc-${VERSION}/"
-if BUILD_SHARED
- cp "src/libvlc$(LIBEXT)" "vlc-${VERSION}/"
-endif
+ cp "$(top_builddir)/src/.libs/libvlc$(LIBEXT)" "vlc-${VERSION}/"
+ cp "$(top_builddir)/src/.libs/libvlc-control$(LIBEXT)" "vlc-${VERSION}/"
- for file in AUTHORS MAINTAINERS THANKS NEWS COPYING README ; \
- do sed 's/@/_AT_/' < "$(srcdir)/$$file" > "$(top_builddir)/vlc-${VERSION}/$${file}.txt" ; \
- unix2dos "$(top_builddir)/vlc-${VERSION}/$${file}.txt" ; done
+ for file in AUTHORS MAINTAINERS THANKS ; \
+ do sed 's/@/_AT_/' < "$(srcdir)/$$file" > "$(top_builddir)/vlc-${VERSION}/$${file}.txt" ; done;
+ for file in NEWS COPYING README; \
+ do cp "$(srcdir)/$$file" "$(top_builddir)/vlc-${VERSION}/$${file}.txt"; done
+ unix2dos "$(top_builddir)/vlc-${VERSION}/"*.txt
mkdir $(top_builddir)/vlc-${VERSION}/locale
- for i in $(ALL_LINGUAS); do \
+ cat $(top_srcdir)/po/LINGUAS | while read i; do \
mkdir -p "$(top_builddir)/vlc-${VERSION}/locale/$${i}/LC_MESSAGES" ; \
cp "$(srcdir)/po/$${i}.gmo" \
"$(top_builddir)/vlc-${VERSION}/locale/$${i}/LC_MESSAGES/vlc.mo" \
|| true ; \
done
+ mkdir -p "$(top_builddir)/vlc-${VERSION}/http-lua/images"
+ mkdir -p "$(top_builddir)/vlc-${VERSION}/http-lua/requests"
+ mkdir -p "$(top_builddir)/vlc-${VERSION}/http-lua/js"
+ mkdir -p "$(top_builddir)/vlc-${VERSION}/http-lua/dialogs"
+ mkdir -p "$(top_builddir)/vlc-${VERSION}/http-lua/old"
+ mkdir -p "$(top_builddir)/vlc-${VERSION}/http-lua/old/vlm"
+ mkdir -p "$(top_builddir)/vlc-${VERSION}/http-lua/old/admin"
+ cp $(srcdir)/share/http-lua/*.html $(top_builddir)/vlc-${VERSION}/http-lua/ ;
+ unix2dos $(top_builddir)/vlc-${VERSION}/http-lua/*.html ;
+ cp $(srcdir)/share/http-lua/.hosts $(top_builddir)/vlc-${VERSION}/http-lua/ ;
+ unix2dos $(top_builddir)/vlc-${VERSION}/http-lua/.hosts ;
+ cp $(srcdir)/share/http-lua/*.css $(top_builddir)/vlc-${VERSION}/http-lua/ ;
+ unix2dos $(top_builddir)/vlc-${VERSION}/http-lua/*.css ;
+ cp $(srcdir)/share/http-lua/js/*.js $(top_builddir)/vlc-${VERSION}/http-lua/js/ ;
+ unix2dos $(top_builddir)/vlc-${VERSION}/http-lua/js/*.js ;
+ cp $(srcdir)/share/http-lua/dialogs/* $(top_builddir)/vlc-${VERSION}/http-lua/dialogs/ ;
+ unix2dos $(top_builddir)/vlc-${VERSION}/http-lua/dialogs/* ;
+ cp $(srcdir)/share/http-lua/dialogs/.hosts $(top_builddir)/vlc-${VERSION}/http-lua/dialogs/ ;
+ unix2dos $(top_builddir)/vlc-${VERSION}/http-lua/dialogs/.hosts ;
+ cp $(srcdir)/share/http-lua/*.ico $(top_builddir)/vlc-${VERSION}/http-lua/ ;
+ cp $(srcdir)/share/http-lua/images/*.png $(top_builddir)/vlc-${VERSION}/http-lua/images/
+ cp $(srcdir)/share/http-lua/requests/*.xml $(top_builddir)/vlc-${VERSION}/http-lua/requests/ ;
+ unix2dos $(top_builddir)/vlc-${VERSION}/http-lua/requests/*.xml ;
+ cp $(srcdir)/share/http-lua/requests/readme $(top_builddir)/vlc-${VERSION}/http-lua/requests/readme.txt ;
+ unix2dos $(top_builddir)/vlc-${VERSION}/http-lua/requests/readme.txt ;
+
+ cp $(srcdir)/share/http-lua/old/*.html $(top_builddir)/vlc-${VERSION}/http-lua/old/ ;
+ unix2dos $(top_builddir)/vlc-${VERSION}/http-lua/old/*.html ;
+ cp $(srcdir)/share/http-lua/old/*.css $(top_builddir)/vlc-${VERSION}/http-lua/old/ ;
+ cp $(srcdir)/share/http-lua/old/.hosts $(top_builddir)/vlc-${VERSION}/http-lua/old/ ;
+ cp $(srcdir)/share/http-lua/old/*.png $(top_builddir)/vlc-${VERSION}/http-lua/old/ ;
+ cp $(srcdir)/share/http-lua/old/vlm/*.html $(top_builddir)/vlc-${VERSION}/http-lua/old/vlm/ ;
+ unix2dos $(top_builddir)/vlc-${VERSION}/http-lua/old/vlm/*.html ;
+ cp $(srcdir)/share/http-lua/old/admin/*.html $(top_builddir)/vlc-${VERSION}/http-lua/old/admin/ ;
+ unix2dos $(top_builddir)/vlc-${VERSION}/http-lua/old/admin/*.html ;
+ cp $(srcdir)/share/http-lua/old/admin/.access $(top_builddir)/vlc-${VERSION}/http-lua/old/admin/ ;
+
mkdir -p "$(top_builddir)/vlc-${VERSION}/http/images"
mkdir -p "$(top_builddir)/vlc-${VERSION}/http/requests"
mkdir -p "$(top_builddir)/vlc-${VERSION}/http/js"
mkdir -p "$(top_builddir)/vlc-${VERSION}/http/old/admin"
cp $(srcdir)/share/http/*.html $(top_builddir)/vlc-${VERSION}/http/ ;
unix2dos $(top_builddir)/vlc-${VERSION}/http/*.html ;
+ cp $(srcdir)/share/http/.hosts $(top_builddir)/vlc-${VERSION}/http/ ;
+ unix2dos $(top_builddir)/vlc-${VERSION}/http/.hosts ;
cp $(srcdir)/share/http/*.css $(top_builddir)/vlc-${VERSION}/http/ ;
unix2dos $(top_builddir)/vlc-${VERSION}/http/*.css ;
cp $(srcdir)/share/http/js/*.js $(top_builddir)/vlc-${VERSION}/http/js/ ;
unix2dos $(top_builddir)/vlc-${VERSION}/http/js/*.js ;
cp $(srcdir)/share/http/dialogs/* $(top_builddir)/vlc-${VERSION}/http/dialogs/ ;
unix2dos $(top_builddir)/vlc-${VERSION}/http/dialogs/* ;
+ cp $(srcdir)/share/http/dialogs/.hosts $(top_builddir)/vlc-${VERSION}/http/dialogs/ ;
+ unix2dos $(top_builddir)/vlc-${VERSION}/http/dialogs/.hosts ;
cp $(srcdir)/share/http/*.ico $(top_builddir)/vlc-${VERSION}/http/ ;
cp $(srcdir)/share/http/images/*.png $(top_builddir)/vlc-${VERSION}/http/images/
cp $(srcdir)/share/http/requests/*.xml $(top_builddir)/vlc-${VERSION}/http/requests/ ;
cp $(srcdir)/share/http/old/*.html $(top_builddir)/vlc-${VERSION}/http/old/ ;
unix2dos $(top_builddir)/vlc-${VERSION}/http/old/*.html ;
cp $(srcdir)/share/http/old/*.css $(top_builddir)/vlc-${VERSION}/http/old/ ;
+ cp $(srcdir)/share/http/old/.hosts $(top_builddir)/vlc-${VERSION}/http/old/ ;
cp $(srcdir)/share/http/old/*.png $(top_builddir)/vlc-${VERSION}/http/old/ ;
cp $(srcdir)/share/http/old/vlm/*.html $(top_builddir)/vlc-${VERSION}/http/old/vlm/ ;
unix2dos $(top_builddir)/vlc-${VERSION}/http/old/vlm/*.html ;
cp $(srcdir)/share/http/old/admin/*.html $(top_builddir)/vlc-${VERSION}/http/old/admin/ ;
unix2dos $(top_builddir)/vlc-${VERSION}/http/old/admin/*.html ;
+ cp $(srcdir)/share/http/old/admin/.access $(top_builddir)/vlc-${VERSION}/http/old/admin/ ;
cp $(srcdir)/share/vlc48x48.ico $(top_builddir)/vlc-${VERSION}/ ;
if BUILD_MOZILLA
mkdir -p "$(top_builddir)/vlc-${VERSION}/mozilla"
- cp $(top_builddir)/mozilla/*$(LIBEXT) $(top_builddir)/vlc-${VERSION}/mozilla/ ;
+ cp $(top_builddir)/mozilla/.libs/npvlc$(LIBEXT) $(top_builddir)/vlc-${VERSION}/mozilla/ ;
endif
if BUILD_ACTIVEX
cp $(srcdir)/activex/test.html $(top_builddir)/vlc-${VERSION}/activex/ ;
unix2dos $(top_builddir)/vlc-${VERSION}/activex/* ;
- cp $(top_builddir)/activex/*$(LIBEXT) $(top_builddir)/vlc-${VERSION}/activex/ ;
+ cp $(top_builddir)/activex/.libs/axvlc$(LIBEXT) $(top_builddir)/vlc-${VERSION}/activex/ ;
endif
# Rebase all those DLLs to speed up loading (need cygwin rebase)
if rebase -b 0x42 /dev/null >/dev/null 2>&1; then \
package-win-common-strip:
$(STRIP) "$(top_builddir)/vlc-${VERSION}/vlc$(EXEEXT)"
-if BUILD_SHARED
$(STRIP) "vlc-${VERSION}/libvlc$(LIBEXT)"
-endif
+ $(STRIP) "vlc-${VERSION}/libvlc-control$(LIBEXT)"
if BUILD_MOZILLA
- $(STRIP) $(top_builddir)/vlc-${VERSION}/mozilla/*$(LIBEXT);
+ $(STRIP) $(top_builddir)/vlc-${VERSION}/mozilla/npvlc$(LIBEXT);
endif
if BUILD_ACTIVEX
- $(STRIP) $(top_builddir)/vlc-${VERSION}/activex/*$(LIBEXT);
+ $(STRIP) $(top_builddir)/vlc-${VERSION}/activex/axvlc$(LIBEXT);
endif
package-win32-base-debug: package-win-common
mkdir -p "$(top_builddir)/vlc-${VERSION}/plugins"
for i in "" `$(VLC_CONFIG) --target plugin` ; do \
if test -n "$$i" ; then \
- $(INSTALL) "$(top_builddir)/$$i$(LIBEXT)" \
+ $(INSTALL) "$(top_builddir)/`dirname $$i`/.libs/`basename $$i`$(LIBEXT)" \
"$(top_builddir)/vlc-${VERSION}/plugins/" ; \
fi ; done
cp $$i $(top_builddir)/vlc-${VERSION}/skins/ || true ; \
done
+ $(INSTALL) -d $(top_builddir)/vlc-${VERSION}/share/luaplaylist
+ for i in $(srcdir)/share/luaplaylist/*.* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/vlc-${VERSION}/share/luaplaylist/`basename $${i}` ; \
+ done ;
+ $(INSTALL) -d $(top_builddir)/vlc-${VERSION}/share/luameta
+ for i in $(srcdir)/share/luameta/*.* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/vlc-${VERSION}/share/luameta/`basename $${i}` ; \
+ done ;
+ $(INSTALL) -d $(top_builddir)/vlc-${VERSION}/share/luaintf
+ for i in $(srcdir)/share/luaintf/*.* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/vlc-${VERSION}/share/luaintf/`basename $${i}` ; \
+ done ;
+ $(INSTALL) -d $(top_builddir)/vlc-${VERSION}/share/luaintf/modules
+ for i in $(srcdir)/share/luaintf/modules/*.* ; do \
+ $(INSTALL) -m 644 $${i} $(top_builddir)/vlc-${VERSION}/share/luaintf/modules/`basename $${i}` ; \
+ done ;
+
mkdir -p "$(top_builddir)/vlc-${VERSION}/osdmenu"
cp $(srcdir)/share/osdmenu/*.* "$(top_builddir)/vlc-${VERSION}/osdmenu"
- for dir in dvd dvd/selected dvd/unselect dvd/selection dvd/volume default default/selected default/selection default/volume;do \
+ for dir in dvd dvd/selected dvd/unselect dvd/selection dvd/volume default default/selected default/selection default/volume minimal;do \
mkdir -p "$(top_builddir)/vlc-${VERSION}/osdmenu/$$dir"; \
for file in $(srcdir)/share/osdmenu/$${dir}/*.*;do \
cp $$file "$(top_builddir)/vlc-${VERSION}/osdmenu/$$dir" || true; \
done; \
done
unix2dos $(top_builddir)/vlc-${VERSION}/osdmenu/*.cfg;
- sed -i 's%share/osdmenu%osdmenu%g' $(top_builddir)/vlc-${VERSION}/osdmenu/*.cfg
- sed -i 's%/%\\%g' $(top_builddir)/vlc-${VERSION}/osdmenu/*.cfg
+ for file in $(top_builddir)/vlc-${VERSION}/osdmenu/*.cfg; do \
+ if sed 's%share/osdmenu%osdmenu%g' $$file >$$file.tmp; then :; else exit 1; fi; \
+ if sed 's%/%\\%g' $$file.tmp >$$file; then :; else exit 1; fi; \
+ rm -f $$file.tmp; \
+ done
package-win32-base: package-win32-base-debug package-win-common-strip
MAKENSIS="makensis -DVERSION=${VERSION}"; \
elif [ -x "/cygdrive/c/Program Files/NSIS/makensis" ]; then \
MAKENSIS="/cygdrive/c/Program\ Files/NSIS/makensis /DVERSION=${VERSION}"; \
- elif wine --version >dev/null 2>&1; then \
+ elif [ -x "${PROGRAMFILES}/NSIS/makensis" ]; then \
+ MAKENSIS="${PROGRAMFILES}/NSIS/makensis -DVERSION=${VERSION}"; \
+ elif wine --version >/dev/null 2>&1; then \
MAKENSIS="wine C:/Program\ Files/NSIS/makensis.exe /DVERSION=${VERSION}"; \
else \
echo 'Error: cannot locate makensis tool'; exit 1; \
# Clean up
rm -Rf $(top_builddir)/vlc-${VERSION}
-package-win32: package-win32-base-exe package-win32-base-zip
+package-win32-no-clean: package-win32-base-exe package-win32-base-zip package-win32-base-7zip
+
+package-win32: package-win32-no-clean
# Clean up
rm -Rf $(top_builddir)/vlc-${VERSION}
echo "Create package directory: vlc-${VERSION}/";
mkdir -p "$(top_builddir)/vlc-${VERSION}/";
+# For now, export the framework for third parties, from here
+ (cd $(top_builddir)/extras/MacOSX/Framework && xcodebuild);
+ cp -r $(top_builddir)/extras/MacOSX/Framework/build/Release/VLC.framework $(top_builddir)/vlc-${VERSION}/VLC.framework
+
# Copy relevant files
@if test -e "$(top_builddir)/VLC-release.app/"; then \
cp -R "$(top_builddir)/VLC-release.app" "$(top_builddir)/vlc-${VERSION}/VLC.app"; \
else \
cp -R "$(top_builddir)/VLC.app" "$(top_builddir)/vlc-${VERSION}/VLC.app"; \
fi
- cd "$(srcdir)" && cp AUTHORS COPYING ChangeLog README README.MacOSX.rtf THANKS NEWS $(top_builddir)/vlc-${VERSION}/ && cp -R extras/MacOSX/Delete_Preferences.app $(top_builddir)/vlc-${VERSION}/
+ cd "$(srcdir)" && mkdir -p $(top_builddir)/vlc-${VERSION}/Goodies/ && \
+ mkdir -p $(top_builddir)/vlc-${VERSION}/.background/ && \
+ cp AUTHORS COPYING ChangeLog README THANKS NEWS $(top_builddir)/vlc-${VERSION}/Goodies/ && \
+ cp -R extras/MacOSX/Delete_Preferences.app $(top_builddir)/vlc-${VERSION}/Goodies/Delete\ VLC\ Preferences.app && \
+ cp README.MacOSX.rtf $(top_builddir)/vlc-${VERSION}/Read\ Me.rtf && \
+ cp extras/MacOSX/Resources/about_bg.png $(top_builddir)/vlc-${VERSION}/.background/background.png ;
+
+# Place a link to the application folder
+ ln -s /Applications $(top_builddir)/vlc-${VERSION}/Applications ;
# Create disk image
echo "Creating disk image" ;
rm -f "$(top_builddir)/vlc-${VERSION}.dmg" ;
hdiutil create -srcfolder "$(top_builddir)/vlc-${VERSION}" \
- "$(top_builddir)/vlc-${VERSION}.dmg" -format UDZO \
+ "$(top_builddir)/vlc-${VERSION}.dmg" -format UDRW \
-scrub -imagekey zlib-level=9 ;
+
+# Make sure the root window of the dmg will pop up when the dmg is mounted.
+# Note: We dont mount in /Volumes to be sure we won't collide with an other
+# finder mounted dmg with the same name.
+ echo "Make sure the root window of the dmg will pop up when the dmg is mounted" ;
+ mkdir -p $(top_builddir)/vlcmnt ;
+ hdiutil attach -readwrite -noverify -noautoopen "$(top_builddir)/vlc-${VERSION}.dmg" -mountpoint "$(top_builddir)/vlcmnt/vlc-${VERSION}" ;
+ bless --folder "$(top_builddir)/vlcmnt/vlc-${VERSION}/" --openfolder "$(top_builddir)/vlcmnt/vlc-${VERSION}" ;
+ sleep 1 # Make sure operation completes
+ cd "$(srcdir)"
+
+# Unmount the image now
+ hdiutil detach "$(top_builddir)/vlcmnt/vlc-${VERSION}" ;
+ rm -R $(top_builddir)/vlcmnt ;
+
+# Make sure the image is not writable
+# Note: We can't directly create a read only dmg as we do the bless stuff
+ echo "Make the disk image read-only" ;
+ mv "$(top_builddir)/vlc-${VERSION}.dmg" "$(top_builddir)/vlc-${VERSION}-rw.dmg" ;
+ hdiutil convert "$(top_builddir)/vlc-${VERSION}-rw.dmg" -format UDZO -o "$(top_builddir)/vlc-${VERSION}.dmg" ;
+ rm "$(top_builddir)/vlc-${VERSION}-rw.dmg" ;
+
+# We are done
echo "Disk image creation completed:" ;
ls -la "$(top_builddir)/vlc-${VERSION}.dmg" ; echo ;
mkdir -p "$(top_builddir)/macosx-plugin-instdata"
cp -R "$(top_builddir)/mozilla/VLC Plugin.plugin" "$(top_builddir)/macosx-plugin-instdata"
rm -rf "$(top_builddir)/VLC Internet Plug-In.pkg"
- /Developer/Tools/packagemaker -build -ds -p "$(top_builddir)/VLC Internet Plug-In.pkg" \
+ PATH=/Developer/usr/bin:/Developer/Tools:$$PATH packagemaker -build -ds -p "$(top_builddir)/VLC Internet Plug-In.pkg" \
-f "$(top_builddir)/macosx-plugin-instdata" \
-i "$(srcdir)/extras/MacOSX/plugin/InstallerInfo.plist" \
-d "$(srcdir)/extras/MacOSX/plugin/InstallerDescription.plist"; true
echo "OK."; mkdir -p "$(srcdir)/vlc-translations-${VERSION}"; \
fi
# Copy translations
- for i in $(ALL_LINGUAS); do \
+ cat $(top_srcdir)/po/LINGUAS | while read i; do \
cp "$(srcdir)/po/$${i}.po" \
"$(srcdir)/vlc-translations-${VERSION}/$${i}.po" \
|| true ; \
###############################################################################
# PO translation files update
+# Generate po/POTFILES.in which lists all the files containing translatable
+# strings. Find all source files and remove the generated files
###############################################################################
.PHONY: update-po
echo "" ; \
echo "# main sources" ; \
find include src -name '*.[chm]' -o -name '*.[ch]pp' \
- | grep -v '\(vlc_symbols\|misc/modules_\|src/misc/version.c\)' \
+ | grep -v '\(misc/modules_\|src/misc/revision.c\|modules/builtin.h\|include/vlc_about.h\)' \
| sort ; \
echo "" ; \
echo "# modules" ; \
- find modules -name '*.[chm]' -o -name '*.[ch]pp' -o -wholename 'modules/gui/qt4/ui/*.ui'\
+ find modules -name '*.[chm]' -o -name '*.[ch]pp' -o -name '*.ui' \
| grep -v '\(\.moc\.\|gui/gtk2/\)' \
- | grep -vE 'qt4/ui/.*.h' |grep -v qt4/resources.cpp \
+ | grep -vE 'qt4/ui/.*.h' \
+ | grep -v 'qt4/resources.cpp\|qt4/dialogs/about.hpp' \
+ | grep -v 'gui/opie' \
| sort ; \
} > $(top_srcdir)/po/POTFILES.in
rm -f $(top_srcdir)/po/vlc.pot
###############################################################################
# Stamp rules
###############################################################################
-stamp-builtin: FORCE
- @for dep in "" `$(VLC_CONFIG) --target builtin`; do \
- if test "$${dep}" -nt "$(top_builddir)/vlc$(EXEEXT)"; then \
- rm -f $@; \
+stamp-builtin:
+ @for dep in "" `$(VLC_CONFIG) --target plugin`; do \
+ if test "$${dep}.la" -nt "$(top_builddir)/vlc$(EXEEXT)"; then \
+ touch "$@"; \
break; \
fi; \
done
- @if test ! -f $@; then printf "" > $@; fi
+
+.PHONY: stamp-builtin
###############################################################################
# Enforce Mac OS X deployment target environment variable
###############################################################################
-macosx-sdk: Makefile.in $(HEADERS_include) vlc-config vlc-api.pl
+macosx-sdk: Makefile.in $(HEADERS_include) vlc-config
export MACOSX_DEPLOYMENT_TARGET=$(MACOSX_DEPLOYMENT_TARGET)
-
-###############################################################################
-# Force rule
-###############################################################################
-FORCE: