X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=Makefile.am;h=4224ba7a2ada87592c26685ccca7a959eeff288f;hb=ad9613a745cf1838d1d7273452b37d88a5f4b5c1;hp=184326be7b3118fe69d352063809ccf72a5b0340;hpb=fae0cf510dec7d86e4b8d0dc6f8a56d14c766475;p=vlc diff --git a/Makefile.am b/Makefile.am index 184326be7b..4224ba7a2a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -7,19 +7,24 @@ # which have makefiles with distribution information. # - src (libvlc) is nedeed by modules, mozilla and bindings # - libs/* are needed by modules -BASE_SUBDIRS = po src bin modules share doc test +BASE_SUBDIRS = po compat src bin modules share doc test EXTRA_SUBDIRS = m4 extras/package/ipkg \ - libs/loader libs/srtp \ + libs/loader libs/srtp libs/unzip \ projects/mozilla projects/activex DIST_SUBDIRS = $(BASE_SUBDIRS) $(EXTRA_SUBDIRS) -SUBDIRS = po src +SUBDIRS = po compat src if LOADER SUBDIRS += libs/loader endif if HAVE_LIBGCRYPT SUBDIRS += libs/srtp endif +if HAVE_ZLIB +if !HAVE_MINIZIP +SUBDIRS += libs/unzip +endif +endif if BUILD_VLC SUBDIRS += bin endif @@ -36,11 +41,11 @@ EXTRA_DIST = \ INSTALL.win32 \ INSTALL.wince \ extras/package/win32/vlc.exe.manifest \ + extras/package/win32/libvlc.dll.manifest \ MAINTAINERS \ extras/package/macosx/README.MacOSX.rtf \ vlc-config.in.in \ extras/package/rpm/vlc.fedora.spec \ - extras/package/rpm/vlc.mandriva.spec \ extras/package/rpm/vlc.altlinux.spec \ extras/package/win32/vlc.win32.nsi.in \ extras/package/win32/languages/declaration.nsh \ @@ -48,8 +53,9 @@ EXTRA_DIST = \ extras/package/win32/languages/french.nsh dist_noinst_SCRIPTS = bootstrap toolbox +nodist_noinst_SCRIPTS = compile -BUILT_SOURCES_distclean = vlc-config compile extras/package/win32/vlc.win32.nsi +BUILT_SOURCES_distclean = vlc-config extras/package/win32/vlc.win32.nsi if HAVE_DARWIN BUILT_SOURCES_clean = macosx-sdk else @@ -80,7 +86,7 @@ AUTOMAKE_OPTIONS = \ ChangeLog: Makefile.am rm -f -- "$@" cd doc && $(MAKE) $(AM_MAKEFLAGS) changelogs - ln -sf doc/ChangeLog-2008 "$@" + ln -sf doc/ChangeLog-2009 "$@" ############################################################################### # MacOS X project @@ -114,12 +120,12 @@ EXTRA_DIST += \ extras/package/macosx/Resources/English.lproj/Update.nib/classes.nib \ extras/package/macosx/Resources/English.lproj/Update.nib/info.nib \ extras/package/macosx/Resources/English.lproj/Update.nib/keyedobjects.nib \ - extras/package/macosx/Resources/English.lproj/Interaction.nib/classes.nib \ - extras/package/macosx/Resources/English.lproj/Interaction.nib/info.nib \ - extras/package/macosx/Resources/English.lproj/Interaction.nib/keyedobjects.nib \ - extras/package/macosx/Resources/English.lproj/InteractionErrorPanel.nib/classes.nib \ - extras/package/macosx/Resources/English.lproj/InteractionErrorPanel.nib/info.nib \ - extras/package/macosx/Resources/English.lproj/InteractionErrorPanel.nib/keyedobjects.nib \ + extras/package/macosx/Resources/English.lproj/CoreDialogs.nib/classes.nib \ + extras/package/macosx/Resources/English.lproj/CoreDialogs.nib/info.nib \ + extras/package/macosx/Resources/English.lproj/CoreDialogs.nib/keyedobjects.nib \ + extras/package/macosx/Resources/English.lproj/ErrorPanel.nib/classes.nib \ + extras/package/macosx/Resources/English.lproj/ErrorPanel.nib/info.nib \ + extras/package/macosx/Resources/English.lproj/ErrorPanel.nib/keyedobjects.nib \ extras/package/macosx/Resources/English.lproj/InfoPlist.strings.in \ extras/package/macosx/Resources/a52.icns \ extras/package/macosx/Resources/aac.icns \ @@ -266,7 +272,6 @@ EXTRA_DIST += \ extras/package/macosx/plugin/InstallerInfo.plist.in \ extras/package/macosx/plugin/InstallerDescription.plist \ extras/package/macosx/plugin/pbdevelopment.plist \ - extras/package/macosx/plugin/English.lproj/InfoPlist.strings.in \ extras/package/macosx/eyetvplugin/EyeTVPluginDefs.h \ extras/package/macosx/eyetvplugin/Info.plist \ extras/package/macosx/eyetvplugin/eyetvplugin.c \ @@ -358,7 +363,7 @@ endif # Building aliases ############################################################################### -ALL_ALIASES = cvlc rvlc svlc wxvlc qvlc nvlc +ALL_ALIASES = cvlc rvlc svlc wxvlc qvlc nvlc mvlc bin_SCRIPTS = $(ALIASES) CLEANFILES += $(ALIASES) $(noinst_SCRIPTS) EXTRA_SCRIPTS = $(ALL_ALIASES) @@ -367,34 +372,33 @@ dist_noinst_SCRIPTS += make-alias MKALIAS = bindir="$(bindir)" transform="$(transform)" program_prefix="$(program_prefix)" program_suffix="$(program_suffix)" $(top_srcdir)/make-alias $@ -cvlc: make-alias +cvlc: make-alias Makefile $(MKALIAS) dummy -rvlc: make-alias +rvlc: make-alias Makefile $(MKALIAS) rc -svlc: make-alias +svlc: make-alias Makefile $(MKALIAS) skins2 -wxvlc: make-alias +wxvlc: make-alias Makefile $(MKALIAS) wx -qvlc: make-alias +qvlc: make-alias Makefile $(MKALIAS) qt4 -nvlc: make-alias +nvlc: make-alias Makefile $(MKALIAS) ncurses +mvlc: make-alias Makefile + $(MKALIAS) maemo + if BUILD_VLC noinst_SCRIPTS += vlc$(EXEEXT) endif -vlc$(EXEEXT): Makefile.am - rm -f -- vlc vlc.tmp - echo '#! /bin/sh' > vlc.tmp - echo 'exec "$$(dirname "$$0")/bin/vlc-static$(EXEEXT)" "--plugin-path=$$(dirname "$$0")/modules" "$$@"' >> vlc.tmp - chmod +x vlc.tmp - mv -f -- vlc.tmp vlc +vlc$(EXEEXT): + ln -sf bin/vlc-static$(EXEEXT) vlc$(EXEEXT) if HAVE_DARWIN if BUILD_VLC @@ -413,7 +417,7 @@ VLC-release.app: vlc for i in vlc.xcodeproj Resources README.MacOSX.rtf ; do \ cp -R $(srcdir)/extras/package/macosx/$$i $(top_builddir)/tmp/extras/package/macosx/; \ done - REVISION=`git-describe` && \ + REVISION=`git describe --always` && \ cat $(top_builddir)/extras/package/macosx/Info.plist | \ sed "s/#REVISION#/$$REVISION/g" > $(top_builddir)/tmp/extras/package/macosx/Info.plist cp -R $(top_builddir)/extras/package/macosx/Resources $(top_builddir)/tmp/extras/package/macosx/ @@ -453,7 +457,6 @@ VLC-release.app: vlc simple_prefs.h \ simple_prefs.m \ vout.h \ - voutqt.m \ voutgl.m \ wizard.h \ wizard.m \ @@ -463,8 +466,8 @@ VLC-release.app: vlc bookmarks.m \ update.h \ update.m \ - interaction.h \ - interaction.m \ + coredialogs.h \ + coredialogs.m \ embeddedwindow.h \ embeddedwindow.m \ fspanel.h \ @@ -480,6 +483,10 @@ VLC-release.app: vlc rm -Rf $(top_builddir)/tmp $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS PRODUCT="VLC-release.app" ACTION="release-makefile" src_dir=$(srcdir) build_dir=$(top_builddir) sh $(srcdir)/projects/macosx/framework/Pre-Compile.sh + $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua + for i in $(srcdir)/share/lua/*.* ; do \ + $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/`basename $${i}` ; \ + done ; \ $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/playlist for i in $(srcdir)/share/lua/playlist/*.* ; do \ $(INSTALL) -m 644 $${i} $(top_builddir)/VLC-release.app/Contents/MacOS/share/lua/playlist/`basename $${i}` ; \ @@ -562,11 +569,13 @@ VLC-release.app: vlc $(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/Contents/Resources/English.lproj -name classes.nib -delete; + find $(top_builddir)/VLC-release.app/Contents/Resources/English.lproj -name info.nib -delete; find $(top_builddir)/VLC-release.app -type d -exec chmod ugo+rx '{}' \; find $(top_builddir)/VLC-release.app -type f -exec chmod ugo+r '{}' \; # This is just for development purposes. -# The resulting VLC.app will only in this tree. +# 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 (cd src && make install) rm -Rf $(top_builddir)/tmp @@ -575,7 +584,7 @@ VLC.app: vlc $(top_builddir)/src/.libs/libvlccore.dylib $(top_builddir)/src/.lib for i in vlc.xcodeproj Resources README.MacOSX.rtf; do \ cp -R $(srcdir)/extras/package/macosx/$$i $(top_builddir)/tmp/extras/package/macosx/; \ done - REVISION=`git-describe` && \ + REVISION=`git describe --always` && \ cat $(top_builddir)/extras/package/macosx/Info.plist | \ sed "s/#REVISION#/$$REVISION/g" > $(top_builddir)/tmp/extras/package/macosx/Info.plist cp -R $(top_builddir)/extras/package/macosx/Resources $(top_builddir)/tmp/extras/package/macosx/ @@ -615,7 +624,6 @@ VLC.app: vlc $(top_builddir)/src/.libs/libvlccore.dylib $(top_builddir)/src/.lib simple_prefs.h \ simple_prefs.m \ vout.h \ - voutqt.m \ voutgl.m \ wizard.h \ wizard.m \ @@ -625,8 +633,8 @@ VLC.app: vlc $(top_builddir)/src/.libs/libvlccore.dylib $(top_builddir)/src/.lib bookmarks.m \ update.h \ update.m \ - interaction.h \ - interaction.m \ + coredialogs.h \ + coredialogs.m \ embeddedwindow.h \ embeddedwindow.m \ fspanel.h \ @@ -672,6 +680,9 @@ VLC.app: vlc $(top_builddir)/src/.libs/libvlccore.dylib $(top_builddir)/src/.lib ## Win ## ############################################################################ win32_destdir=$(top_builddir)/vlc-$(VERSION) +win32_debugdir=$(top_builddir)/symbols-$(VERSION) +npvlc=vlc-$(VERSION)/mozilla/npvlc$(LIBEXT) +axvlc=vlc-$(VERSION)/activex/axvlc$(LIBEXT) win32_lua_destdir=$(win32_destdir)/lua win32_http_destdir=$(win32_destdir)/http @@ -689,6 +700,7 @@ package-win-common: # Copy executables and libs cp "$(top_builddir)/bin/.libs/vlc$(EXEEXT)" "$(win32_destdir)/" cp "$(top_srcdir)/extras/package/win32/vlc.exe.manifest" "$(win32_destdir)/" + cp "$(top_srcdir)/extras/package/win32/libvlc.dll.manifest" "$(win32_destdir)/" cp "$(top_builddir)/src/.libs/libvlccore$(LIBEXT)" "$(win32_destdir)/" cp "$(top_builddir)/src/.libs/libvlc$(LIBEXT)" "$(win32_destdir)/" @@ -697,10 +709,10 @@ package-win-common: do sed 's/@/_AT_/' < "$(srcdir)/$$file" > "$(win32_destdir)/$${file}.txt" ; done; for file in NEWS COPYING README; \ do cp "$(srcdir)/$$file" "$(win32_destdir)/$${file}.txt"; done - unix2dos "$(win32_destdir)/"*.txt + unix2dos "$(win32_destdir)/"*.txt || echo "WARNING: this shouldn't happen" # Necessary icons - cp $(srcdir)/share/vlc48x48.ico $(win32_destdir)/ + cp $(srcdir)/share/vlc.ico $(win32_destdir)/ # Copy the locales mkdir -p $(win32_destdir)/locale @@ -717,6 +729,7 @@ package-win-common: if BUILD_MOZILLA mkdir -p "$(win32_destdir)/mozilla" cp $(top_builddir)/projects/mozilla/.libs/npvlc$(LIBEXT) $(win32_destdir)/mozilla/ + cp $(top_srcdir)/projects/mozilla/npvlc.dll.manifest $(win32_destdir)/mozilla/ endif # ActiveX plugin @@ -727,6 +740,7 @@ if BUILD_ACTIVEX unix2dos $(win32_destdir)/activex/* cp $(top_builddir)/projects/activex/.libs/axvlc$(LIBEXT) $(win32_destdir)/activex/ + cp $(top_srcdir)/projects/activex/axvlc.dll.manifest $(win32_destdir)/activex/ endif # Rebase all those DLLs to speed up loading (need cygwin rebase) @@ -748,6 +762,9 @@ package-win32-base-debug: package-win-common $(INSTALL) "$$i" "vlc-$(VERSION)/plugins/" ; \ fi ; done +# Contrib *.dll's + cp $(srcdir)/extras/contrib/lib/*.dll "vlc-$(VERSION)/" || true + # Copy the lua scripts (HTTP) if BUILD_LUA mkdir -p "$(win32_lua_destdir)/http/images" @@ -776,6 +793,10 @@ endif if BUILD_LUA #Lua Scripts + $(INSTALL) -d $(win32_lua_destdir) + for i in $(srcdir)/share/lua/*.* ; do \ + $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/`basename $${i}` ; \ + done $(INSTALL) -d $(win32_lua_destdir)/playlist for i in $(srcdir)/share/lua/playlist/*.* ; do \ $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/playlist/`basename $${i}` ; \ @@ -840,18 +861,20 @@ if BUILD_SKINS for i in $(srcdir)/share/skins2/fonts/*.*; do \ cp -- "$$i" $(win32_destdir)/skins/fonts/ || true ; \ done - for i in $(srcdir)/share/skins2/*.*; do \ + for i in $(top_builddir)/share/skins2/*.*; do \ cp -- "$$i" $(win32_destdir)/skins/ || true ; \ done + cp -- $(srcdir)/share/skins2/skin.catalog $(win32_destdir)/skins/ || true ; + cp -- $(srcdir)/share/skins2/skin.dtd $(win32_destdir)/skins/ || true ; endif if BUILD_OSDMENU #OSD Menu mkdir -p "$(win32_destdir)/osdmenu" cp $(srcdir)/share/osdmenu/*.* "$(win32_destdir)/osdmenu" - for dir in dvd dvd/selected dvd/unselect dvd/selection dvd/volume default default/selected default/selection default/volume minimal;do \ + for dir in default default/selected default/selection default/volume ;do \ mkdir -p "$(win32_destdir)/osdmenu/$$dir"; \ - for file in $(srcdir)/share/osdmenu/$${dir}/*.png ;do \ + for file in $(srcdir)/share/osdmenu/$${dir}/*.png;do \ cp -- "$$file" "$(win32_destdir)/osdmenu/$$dir"; \ done; \ done @@ -875,20 +898,42 @@ endif #strip exe and main dll package-win-common-strip: package-win32-base-debug - $(STRIP) "vlc-$(VERSION)/vlc$(EXEEXT)" - $(STRIP) "vlc-$(VERSION)/libvlccore$(LIBEXT)" - $(STRIP) "vlc-$(VERSION)/libvlc$(LIBEXT)" + @if test -e "$(win32_debugdir)"; then \ + echo "Error: please remove $(win32_debugdir), it is in the way"; \ + false; \ + else \ + echo "OK."; mkdir -p "$(win32_debugdir)"; \ + fi + for i in "" vlc-$(VERSION)/*$(LIBEXT) ; \ + do if test -n "$$i" ; then \ + $(OBJCOPY) --only-keep-debug "$$i" "$$i.dbg"; \ + $(OBJCOPY) --strip-debug "$$i" ; \ + $(OBJCOPY) --add-gnu-debuglink="$$i.dbg" "$$i" ; \ + mv "$$i.dbg" "$(win32_debugdir)"; \ + fi; done + if BUILD_MOZILLA - $(STRIP) "vlc-$(VERSION)/mozilla/npvlc$(LIBEXT)" + $(OBJCOPY) --only-keep-debug "$(npvlc)" "$(npvlc).dbg" + $(OBJCOPY) --strip-debug "$(npvlc)" + $(OBJCOPY) --add-gnu-debuglink="$(npvlc).dbg" "$(npvlc)" + mv "$(npvlc).dbg" "$(win32_debugdir)" endif if BUILD_ACTIVEX - $(STRIP) "vlc-$(VERSION)/activex/axvlc$(LIBEXT)" + $(OBJCOPY) --only-keep-debug "$(axvlc)" "$(axvlc).dbg" + $(OBJCOPY) --strip-debug "$(axvlc)" + $(OBJCOPY) --add-gnu-debuglink="$(axvlc).dbg" "$(axvlc)" + mv "$(axvlc).dbg" "$(win32_debugdir)" endif #strip all plugins dll package-win32-base: package-win-common-strip for i in "" $(win32_destdir)/plugins/*$(LIBEXT) ; \ - do if test -n "$$i" ; then $(STRIP) "$$i" ; fi ; done + do if test -n "$$i" ; then \ + $(OBJCOPY) --only-keep-debug "$$i" "$$i.dbg"; \ + $(OBJCOPY) --strip-debug "$$i" ; \ + $(OBJCOPY) --add-gnu-debuglink="$$i.dbg" "$$i" ; \ + mv "$$i.dbg" "$(win32_debugdir)"; \ + fi ; done package-win32-base-exe: package-win32-base # Create package @@ -1108,7 +1153,14 @@ if BUILD_MOZILLA mkdir -p "$(top_builddir)/macosx-plugin-instdata" cp -R "$(top_builddir)/projects/mozilla/VLC Plugin.plugin" "$(top_builddir)/macosx-plugin-instdata" rm -rf "$(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" \ + export PACKAGEMAKER= + if test -x /Developer/Tools/packagemaker; then \ + export PACKAGEMAKER=/Developer/Tools/packagemaker; \ + fi; \ + if test -x /Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker; then \ + export PACKAGEMAKER=/Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker; \ + fi; \ + $${PACKAGEMAKER} -build -ds -p "$(top_builddir)/VLC Internet Plug-In.pkg" \ -f "$(top_builddir)/macosx-plugin-instdata" \ -i "$(srcdir)/extras/package/macosx/plugin/InstallerInfo.plist" \ -d "$(srcdir)/extras/package/macosx/plugin/InstallerDescription.plist"; true @@ -1156,37 +1208,12 @@ package-translations: ############################################################################### # 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 update-po: - rm -f $(top_srcdir)/po/POTFILES.in - { \ - cd $(top_srcdir) && \ - echo "# automatically created by make update-po" ; \ - echo "" ; \ - echo "# main sources" ; \ - find include src -name '*.[chm]' -o -name '*.[ch]pp' \ - | 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 -name '*.ui' \ - | grep -v '\(\.moc\.\|gui/gtk2/\)' \ - | grep -vE 'qt4/ui/.*.h' \ - | grep -v 'qt4/resources.cpp\|qt4/dialogs/about.hpp' \ - | grep -v 'gui/opie' \ - | grep -v 'wxwidgets' \ - | grep -v 'mux/rtp/' \ - | grep -v 'demux/rtpxiph.c' \ - | sort ; \ - } > $(top_srcdir)/po/POTFILES.in - rm -f $(top_srcdir)/po/vlc.pot cd po && $(MAKE) POTFILES vlc.pot update-po -#cd po && $(MAKE) update-po ############################################################################### # Enforce Mac OS X deployment target environment variable