X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=Makefile.am;h=4a17c64c35fec68a5c36d5a5e41bfb4eaa1ce32f;hb=b190a796acd528de06afe921f691c8bbd2de59e7;hp=1caf4eed24429eb13815b29c90e507a7c7016623;hpb=119a49ff66c87d570a9ed0fe76e74eb0dad0a622;p=vlc diff --git a/Makefile.am b/Makefile.am index 1caf4eed24..4a17c64c35 100644 --- a/Makefile.am +++ b/Makefile.am @@ -7,7 +7,7 @@ # which have makefiles with distribution information. # - src (libvlc) is nedeed by modules, mozilla and bindings # - libs/* are needed by modules -BASE_SUBDIRS = po src modules share doc test +BASE_SUBDIRS = po src bin modules share doc test EXTRA_SUBDIRS = m4 extras/package/ipkg \ libs/loader libs/srtp \ projects/mozilla projects/activex @@ -20,6 +20,9 @@ endif if HAVE_LIBGCRYPT SUBDIRS += libs/srtp endif +if BUILD_VLC +SUBDIRS += bin +endif SUBDIRS += modules share doc test if BUILD_MOZILLA SUBDIRS += projects/mozilla @@ -33,6 +36,7 @@ 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 \ @@ -45,8 +49,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 @@ -311,10 +316,10 @@ DISTCLEANFILES = $(BUILT_SOURCES_distclean) vlc-config.in compile ChangeLog # 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) libvlccore.la + cd src && $(MAKE) $(AM_MAKEFLAGS) libvlc.la -core: - cd src && $(MAKE) $(AM_MAKEFLAGS) vlc$(EXEEXT) +core: libvlc + cd bin && $(MAKE) $(AM_MAKEFLAGS) vlc$(EXEEXT) doc: cd doc && $(MAKE) $(AM_MAKEFLAGS) doc @@ -355,7 +360,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) @@ -382,6 +387,9 @@ qvlc: make-alias nvlc: make-alias $(MKALIAS) ncurses +mvlc: make-alias + $(MKALIAS) maemo + if BUILD_VLC noinst_SCRIPTS += vlc$(EXEEXT) endif @@ -389,7 +397,7 @@ endif vlc$(EXEEXT): Makefile.am rm -f -- vlc vlc.tmp echo '#! /bin/sh' > vlc.tmp - echo 'exec "$$(dirname "$$0")/src/vlc$(EXEEXT)" "--plugin-path=$$(dirname "$$0")/modules" "$$@"' >> 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 @@ -410,9 +418,10 @@ 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 - for i in Resources Info.plist; do \ - cp -R $(top_builddir)/extras/package/macosx/$$i $(top_builddir)/tmp/extras/package/macosx/; \ - done + 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/ for i in AUTHORS COPYING THANKS; do \ cp "$(srcdir)/$$i" $(top_builddir)/tmp; \ done @@ -449,7 +458,6 @@ VLC-release.app: vlc simple_prefs.h \ simple_prefs.m \ vout.h \ - voutqt.m \ voutgl.m \ wizard.h \ wizard.m \ @@ -476,6 +484,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}` ; \ @@ -549,8 +561,8 @@ VLC-release.app: vlc $(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/share/locale cat $(top_srcdir)/po/LINGUAS | while read i; do \ - mkdir -p $(top_builddir)/VLC-release.app/Contents/MacOS/share/locale/$${i}/LC_MESSAGES ; \ - cp $(srcdir)/po/$${i}.gmo $(top_builddir)/VLC-release.app/Contents/MacOS/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \ + $(INSTALL) -d $(top_builddir)/VLC-release.app/Contents/MacOS/share/locale/$${i}/LC_MESSAGES ; \ + $(INSTALL) $(srcdir)/po/$${i}.gmo $(top_builddir)/VLC-release.app/Contents/MacOS/share/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \ mkdir -p $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \ ln -sf ../English.lproj/InfoPlist.strings \ $(top_builddir)/VLC-release.app/Contents/Resources/$${i}.lproj ; \ @@ -558,12 +570,14 @@ 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. -VLC.app: vlc +VLC.app: vlc $(top_builddir)/src/.libs/libvlccore.dylib $(top_builddir)/src/.libs/libvlc.dylib (cd src && make install) rm -Rf $(top_builddir)/tmp mkdir -p "$(top_builddir)/tmp/extras/package/macosx" @@ -571,9 +585,10 @@ VLC.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 - for i in Resources Info.plist; do \ - cp -R $(top_builddir)/extras/package/macosx/$$i $(top_builddir)/tmp/extras/package/macosx/; \ - done + 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/ for i in AUTHORS COPYING THANKS; do \ cp "$(srcdir)/$$i" $(top_builddir)/tmp; \ done @@ -610,7 +625,6 @@ VLC.app: vlc simple_prefs.h \ simple_prefs.m \ vout.h \ - voutqt.m \ voutgl.m \ wizard.h \ wizard.m \ @@ -634,18 +648,15 @@ VLC.app: vlc cd ../../../../ && \ cp -R $(top_builddir)/tmp/extras/package/macosx/build/Default/VLC.bundle \ $(top_builddir)/VLC.app - rm -Rf $(top_builddir)/tmp $(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS touch $(top_builddir)/VLC.app/Contents/MacOS/VLC chmod +x $(top_builddir)/VLC.app/Contents/MacOS/VLC - $(INSTALL) $(top_builddir)/src/.libs/vlc $(top_builddir)/VLC.app/Contents/MacOS/VLC - $(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/modules - find modules/ -name '*_plugin$(LIBEXT)' | while read i; do \ - if test -n "$$i" ; \ - then ln -sfn "`pwd`/$$i" \ - "$(top_builddir)/VLC.app/Contents/MacOS/modules" ; \ - fi ; done && \ - ln -sfn `pwd`/$(srcdir)/share $(top_builddir)/VLC.app/Contents/MacOS/ + $(INSTALL) $(top_builddir)/bin/.libs/vlc $(top_builddir)/VLC.app/Contents/MacOS/VLC + ln -sf ../../../modules $(top_builddir)/VLC.app/Contents/MacOS/modules + install -d $(top_builddir)/VLC.app/Contents/MacOS/share + for i in `ls $(srcdir)/share`; do \ + ln -sf `pwd`/$(srcdir)/share/$$i $(top_builddir)/VLC.app/Contents/MacOS/share/; \ + done $(INSTALL) -d $(top_builddir)/VLC.app/Contents/MacOS/share/locale cat $(top_srcdir)/po/LINGUAS | while read i; do \ mkdir -p $(top_builddir)/VLC.app/Contents/MacOS/share/locale/$${i}/LC_MESSAGES ; \ @@ -666,6 +677,9 @@ VLC.app: vlc # the same setup as the maintaner(s). # +############################################################################ +## Win ## +############################################################################ win32_destdir=$(top_builddir)/vlc-$(VERSION) win32_lua_destdir=$(win32_destdir)/lua win32_http_destdir=$(win32_destdir)/http @@ -682,8 +696,9 @@ package-win-common: # Copy relevant files # Copy executables and libs - cp "$(top_builddir)/src/.libs/vlc$(EXEEXT)" "$(win32_destdir)/" + 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)/" @@ -692,7 +707,7 @@ 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)/ @@ -712,6 +727,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_builddir)/projects/mozilla/npvlc.dll.manifest $(win32_destdir)/mozilla/ endif # ActiveX plugin @@ -722,6 +738,7 @@ if BUILD_ACTIVEX unix2dos $(win32_destdir)/activex/* cp $(top_builddir)/projects/activex/.libs/axvlc$(LIBEXT) $(win32_destdir)/activex/ + cp $(top_builddir)/projects/activex/axvlc.dll.manifest $(win32_destdir)/activex/ endif # Rebase all those DLLs to speed up loading (need cygwin rebase) @@ -743,6 +760,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" @@ -771,6 +791,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}` ; \ @@ -835,7 +859,7 @@ 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 endif @@ -870,9 +894,8 @@ 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)" + for i in "" vlc-$(VERSION)/*$(LIBEXT) ; \ + do if test -n "$$i" ; then $(STRIP) "$$i" ; fi; done if BUILD_MOZILLA $(STRIP) "vlc-$(VERSION)/mozilla/npvlc$(LIBEXT)" endif @@ -906,10 +929,19 @@ package-win32-base-zip: package-win32-base rm -f -- vlc-$(VERSION)-win32.zip zip -r -9 vlc-$(VERSION)-win32.zip vlc-$(VERSION) +package-win32-base-debug-zip: package-win32-base-debug +# Create package + rm -f -- vlc-$(VERSION)-win32-debug.zip + zip -r -9 vlc-$(VERSION)-win32-debug.zip vlc-$(VERSION) + package-win32-base-7zip: package-win32-base # Create package 7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on vlc-$(VERSION)-win32.7z vlc-$(VERSION) +package-win32-base-debug-7zip: package-win32-base-debug +# Create package + 7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on vlc-$(VERSION)-win32-debug.7z vlc-$(VERSION) + package-win32-exe: package-win32-base package-win32-base-exe # Clean up rm -Rf $(win32_destdir) @@ -918,16 +950,28 @@ package-win32-zip: package-win32-base-zip # Clean up rm -Rf $(win32_destdir) +package-win32-debug-zip: package-win32-base-debug-zip +# Clean up + rm -Rf $(win32_destdir) + package-win32-7zip: package-win32-base-7zip # Clean up rm -Rf $(win32_destdir) +package-win32-debug-7zip: package-win32-base-debug-7zip +# Clean up + rm -Rf $(win32_destdir) + package-win32-no-clean: package-win32-base-zip package-win32-base-7zip package-win32-base-exe package-win32: package-win32-no-clean # Clean up rm -Rf $(win32_destdir) +package-win32-debug: package-win32-base-debug-zip package-win32-base-debug-7zip +# Clean up + rm -Rf $(win32_destdir) + package-wince-base: package-win-common package-win-common-strip package-wince-base-zip: @@ -939,6 +983,9 @@ package-wince: package-wince-base package-wince-base-zip rm -Rf $(win32_destdir) +##################################################################### +## BeOS ## +##################################################################### package-beos: # Check that tmp isn't in the way @if test -e $(srcdir)/tmp; then \ @@ -974,7 +1021,10 @@ package-beos: # Clean up rm -Rf $(srcdir)/tmp -package-macosx: VLC-release.app +######################################################################### +## MacOS X ## +######################################################################### +package-macosx: VLC-release.app ChangeLog # Check that the temporary location isn't in the way @if test -e "$(top_builddir)/vlc-$(VERSION)/"; then \ rm -Rf "$(top_builddir)/vlc-$(VERSION)/" ; \ @@ -1076,7 +1126,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