# 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 po libs/loader libs/srtp src modules . \
+# - 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
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/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/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/dbus-vlc.glade
dist-hook:
- cd $(distdir) && srcdir=. $(SHELL) ./toolbox --update-vc
distdir=$(distdir) srcdir=$(srcdir) $(SHELL) $(srcdir)/toolbox --dist-contrib
###############################################################################
# Ugly kludge so that automake defines $(CXXLINK)
nodist_EXTRA_vlc_SOURCES = extras/zsh.cpp src/misc/darwin_specific.m
-# Work around a bug in the arm-wince-pe linker
-if HAVE_WINCE
-vlc_WORKAROUNDLDFLAGS = $(LIBVLC)
-endif
-
-# 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 = $(LIBVLC) $(DATA_win32_rc)
-vlc_LDADD = $(DATA_win32_rc) $(LIBVLC)
+vlc_LDADD = $(DATA_win32_rc) $(LIBVLC) $(LTLIBINTL)
+vlc_LDFLAGS =
+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 HAVE_WIN32
-vlc_LDFLAGS = -L$(top_builddir)/src -lvlc `$(VLC_CONFIG) --libs vlc`
-LIB_libvlc = libvlc.dll.a
-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.
src/$(LIB_libvlc): libvlc
-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)" ;; \
$(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_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/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
$(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 \
$(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_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 \
mkdir -p $(top_builddir)/VLC.app/Contents/MacOS/locale/$${i}/LC_MESSAGES ; \
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}/"
- cp "src/libvlc$(LIBEXT)" "vlc-${VERSION}/"
+ 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" ; \
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)"
$(STRIP) "vlc-${VERSION}/libvlc$(LIBEXT)"
+ $(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 ;
+
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 \
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\)' \
| sort ; \
echo "" ; \
echo "# modules" ; \
###############################################################################
# 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: