X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=Makefile.am;h=fff7f22f77342cf37cca62a5291541011c422eaf;hb=e4980db217fc4c77f09ce93a700d15533061e685;hp=f3ad1e465d0ecc1eea1eddc16af1504667ff0256;hpb=1cf4ccdf71ed22a378361ff1dc756e0e13f17c06;p=vlc diff --git a/Makefile.am b/Makefile.am index f3ad1e465d..fff7f22f77 100644 --- a/Makefile.am +++ b/Makefile.am @@ -2,6 +2,12 @@ # Automake targets and declarations ############################################################################### +# Pass --quiet to make when we are not verbose. +AM_MAKEFLAGS = $(makesilentflags_$(V)) +makesilentflags_ = $(makesilentflags__$(AM_DEFAULT_VERBOSITY)) +makesilentflags_0 = --quiet +makesilentflags__0 = $(makesilentflags_0) + # 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. @@ -17,7 +23,7 @@ SUBDIRS = po compat src if LOADER SUBDIRS += libs/loader endif -if HAVE_LIBGCRYPT +if HAVE_GCRYPT SUBDIRS += libs/srtp endif if HAVE_ZLIB @@ -42,12 +48,12 @@ EXTRA_DIST = \ 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.altlinux.spec \ extras/package/win32/vlc.win32.nsi.in \ + extras/package/win32/spad.nsi.in \ extras/package/win32/languages/declaration.nsh \ extras/package/win32/languages/english.nsh \ extras/package/win32/languages/french.nsh @@ -55,7 +61,7 @@ EXTRA_DIST = \ dist_noinst_SCRIPTS = bootstrap toolbox nodist_noinst_SCRIPTS = compile -BUILT_SOURCES_distclean = vlc-config extras/package/win32/vlc.win32.nsi +BUILT_SOURCES_distclean = vlc-config extras/package/win32/vlc.win32.nsi extras/package/win32/spad.nsi if HAVE_DARWIN BUILT_SOURCES_clean = macosx-sdk else @@ -109,13 +115,12 @@ EXTRA_DIST += \ extras/package/macosx/Resources/English.lproj/Bookmarks.nib/keyedobjects.nib \ extras/package/macosx/Resources/English.lproj/Extended.nib/designable.nib \ extras/package/macosx/Resources/English.lproj/Extended.nib/keyedobjects.nib \ - extras/package/macosx/Resources/English.lproj/Update.nib/designable.nib \ - extras/package/macosx/Resources/English.lproj/Update.nib/keyedobjects.nib \ extras/package/macosx/Resources/English.lproj/CoreDialogs.nib/designable.nib \ extras/package/macosx/Resources/English.lproj/CoreDialogs.nib/keyedobjects.nib \ extras/package/macosx/Resources/English.lproj/ErrorPanel.nib/designable.nib \ extras/package/macosx/Resources/English.lproj/ErrorPanel.nib/keyedobjects.nib \ extras/package/macosx/Resources/English.lproj/InfoPlist.strings.in \ + extras/package/macosx/Resources/dsa_pub.pem \ extras/package/macosx/Resources/aiff.icns \ extras/package/macosx/Resources/audio.icns \ extras/package/macosx/Resources/avi.icns \ @@ -352,9 +357,9 @@ vlc-bundle: vlc cp "$$i$(LIBEXT)" $(top_builddir)/vlc-bundle/plugins/ ; \ fi ; \ done - if test -d $(top_builddir)/extras/contrib/vlc-lib ; then \ + if test -d $(CONTRIB_DIR)/vlc-lib ; then \ mkdir -p $(top_builddir)/vlc-bundle/lib ; \ - for i in $(top_builddir)/extras/contrib/vlc-lib/*.so ; do \ + for i in $(CONTRIB_DIR)/vlc-lib/*.so ; do \ cp $$i $(top_builddir)/vlc-bundle/lib/ ; \ done ; \ fi @@ -405,29 +410,37 @@ vlc$(EXEEXT): ln -sf bin/vlc-static$(EXEEXT) vlc$(EXEEXT) if HAVE_DARWIN -if BUILD_VLC +if BUILD_MACOSX_VLC_APP # Create the MacOS X app noinst_DATA = VLC.app endif endif +silentstd = $(silentstd_$(V)) +silentstd_ = $(silentstd__$(AM_DEFAULT_VERBOSITY)) +silentstd_0 = 2>&1 >/dev/null +# '__' prefix trick for old automake version. +silentstd__0 = $(silentstd_0) + # VLC-release.app for packaging and giving it to your friends # use package-macosx to get a nice dmg VLC-release.app: vlc - ( cd src && make install ) + ( cd src && $(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 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 --always` && \ + REVISION=`(git --git-dir=$(srcdir)/.git describe --always || echo exported)` && \ 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 + mkdir -p $(top_builddir)/tmp/extras/contrib/Sparkle + cp -R $(CONTRIB_DIR)/Sparkle/Sparkle.framework $(top_builddir)/tmp/extras/contrib/Sparkle mkdir -p $(top_builddir)/tmp/modules/audio_output mkdir -p $(top_builddir)/tmp/modules/gui/macosx for i in \ @@ -468,8 +481,6 @@ VLC-release.app: vlc extended.m \ bookmarks.h \ bookmarks.m \ - update.h \ - update.m \ coredialogs.h \ coredialogs.m \ embeddedwindow.h \ @@ -480,10 +491,10 @@ VLC-release.app: vlc cp "$(srcdir)/modules/gui/macosx/$$i" \ $(top_builddir)/tmp/modules/gui/macosx; \ done - cd $(top_builddir)/tmp/extras/package/macosx && xcodebuild -target vlc | grep -v '^\([ \t]\|$$\)' && \ - cd ../../../../ && \ - cp -R $(top_builddir)/tmp/extras/package/macosx/build/Default/VLC.bundle \ - $(top_builddir)/VLC-release.app; \ + $(AM_V_GEN)cd $(top_builddir)/tmp/extras/package/macosx && \ + xcodebuild -target vlc SYMROOT=../../../build $(silentstd) && \ + cd ../../../../ && \ + cp -R $(top_builddir)/tmp/build/Default/VLC.bundle $(top_builddir)/VLC-release.app; \ 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 @@ -567,20 +578,22 @@ VLC-release.app: vlc # 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 - (cd src && make install) + $(AM_V_GEN)(cd src && make install $(silentstd)) rm -Rf $(top_builddir)/tmp mkdir -p "$(top_builddir)/tmp/extras/package/macosx" rm -Rf $(top_builddir)/VLC.app 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 --always` && \ + REVISION=`(git --git-dir=$(srcdir)/.git describe --always || echo exported)` && \ 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 + mkdir -p $(top_builddir)/tmp/extras/contrib/Sparkle + cp -R $(CONTRIB_DIR)/Sparkle/Sparkle.framework $(top_builddir)/tmp/extras/contrib/Sparkle mkdir -p $(top_builddir)/tmp/modules/audio_output mkdir -p $(top_builddir)/tmp/modules/gui/macosx for i in \ @@ -621,8 +634,6 @@ VLC.app: vlc $(top_builddir)/src/.libs/libvlccore.dylib $(top_builddir)/src/.lib extended.m \ bookmarks.h \ bookmarks.m \ - update.h \ - update.m \ coredialogs.h \ coredialogs.m \ embeddedwindow.h \ @@ -633,10 +644,10 @@ VLC.app: vlc $(top_builddir)/src/.libs/libvlccore.dylib $(top_builddir)/src/.lib cp "$(srcdir)/modules/gui/macosx/$$i" \ $(top_builddir)/tmp/modules/gui/macosx; \ done - cd $(top_builddir)/tmp/extras/package/macosx && xcodebuild -target vlc | grep -v '^\([ \t]\|$$\)' && \ - cd ../../../../ && \ - cp -R $(top_builddir)/tmp/extras/package/macosx/build/Default/VLC.bundle \ - $(top_builddir)/VLC.app + $(AM_V_GEN)cd $(top_builddir)/tmp/extras/package/macosx && \ + xcodebuild -target vlc SYMROOT=../../../build $(silentstd) && \ + cd ../../../../ && \ + cp -R $(top_builddir)/tmp/build/Default/VLC.bundle $(top_builddir)/VLC.app $(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 @@ -695,7 +706,7 @@ package-win-common: cp "$(top_builddir)/src/.libs/libvlc$(LIBEXT)" "$(win32_destdir)/" # Copy Text files - for file in AUTHORS MAINTAINERS THANKS ; \ + for file in AUTHORS THANKS ; \ 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 @@ -742,6 +753,7 @@ package-win32-base-debug: package-win-common # Copy relevant files # Script installer cp "$(top_builddir)/extras/package/win32/vlc.win32.nsi" "$(win32_destdir)/" + cp "$(top_builddir)/extras/package/win32/spad.nsi" "$(win32_destdir)/" mkdir "$(win32_destdir)/languages" cp $(srcdir)/extras/package/win32/languages/*.nsh "$(win32_destdir)/languages/" @@ -753,7 +765,14 @@ package-win32-base-debug: package-win-common fi ; done # Contrib *.dll's - cp $(srcdir)/extras/contrib/lib/*.dll "vlc-$(VERSION)/" || true +# cp $(CONTRIB_DIR)/lib/*.dll "vlc-$(VERSION)/" || true + +#Enable DEP and ASLR for all the binaries +if USE_PEFLAGS + find $(win32_destdir) -type f -name '*.dll' -print -o -name '*.exe' -print | while read i; do \ + $(PEFLAGS) --dynamicbase=true --nxcompat=true "$$i" ; \ + done +endif # Copy the lua scripts (HTTP) if BUILD_LUA @@ -769,6 +788,8 @@ if BUILD_LUA unix2dos $(win32_lua_destdir)/http/*.css cp $(srcdir)/share/lua/http/js/*.js $(win32_lua_destdir)/http/js/ unix2dos $(win32_lua_destdir)/http/js/*.js + cp $(srcdir)/share/lua/http/*.lua $(win32_lua_destdir)/http/ + unix2dos $(win32_lua_destdir)/http/*.lua cp $(srcdir)/share/lua/http/dialogs/* $(win32_lua_destdir)/http/dialogs/ unix2dos $(win32_lua_destdir)/http/dialogs/* cp $(srcdir)/share/lua/http/dialogs/.hosts $(win32_lua_destdir)/http/dialogs/ @@ -791,9 +812,13 @@ if BUILD_LUA for i in $(srcdir)/share/lua/playlist/*.* ; do \ $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/playlist/`basename $${i}` ; \ done - $(INSTALL) -d $(win32_lua_destdir)/meta - for i in $(srcdir)/share/lua/meta/*.* ; do \ - $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/meta/`basename $${i}` ; \ + $(INSTALL) -d $(win32_lua_destdir)/meta/art + for i in $(srcdir)/share/lua/meta/art/*.lua ; do \ + $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/meta/art/`basename $${i}` ; \ + done + $(INSTALL) -d $(win32_lua_destdir)/meta/reader + for i in $(srcdir)/share/lua/meta/reader/*.lua ; do \ + $(INSTALL) -m 644 -- "$${i}" $(win32_lua_destdir)/meta/reader/`basename $${i}` ; \ done $(INSTALL) -d $(win32_lua_destdir)/intf for i in $(srcdir)/share/lua/intf/*.* ; do \ @@ -873,7 +898,7 @@ endif find vlc-$(VERSION)/sdk.tmp -type d | sort -r | xargs rmdir rm -Rf vlc-$(VERSION)/sdk/bin -#strip exe and main dll +# Strip DLLs package-win-common-strip: package-win32-base-debug @if test -e "$(win32_debugdir)"; then \ echo "Error: please remove $(win32_debugdir), it is in the way"; \ @@ -881,23 +906,21 @@ package-win-common-strip: package-win32-base-debug 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-all "$$i" ; \ - $(OBJCOPY) --add-gnu-debuglink="$$i.dbg" "$$i" ; \ - mv "$$i.dbg" "$(win32_debugdir)"; \ - fi; done - -#strip all plugins dll + for i in "" $(win32_destdir)/*$(LIBEXT) \ + $(win32_destdir)/*$(EXEEXT) \ + $(win32_destdir)/activex/*$(LIBEXT) \ + $(win32_destdir)/mozilla/*$(LIBEXT) \ + $(win32_destdir)/plugins/*$(LIBEXT) \ + ; do \ + if test -n "$$i" ; then \ + $(OBJCOPY) --only-keep-debug "$$i" "$$i.dbg"; \ + $(OBJCOPY) --strip-all "$$i" ; \ + $(OBJCOPY) --add-gnu-debuglink="$$i.dbg" "$$i" ; \ + mv "$$i.dbg" "$(win32_debugdir)"; \ + fi ; \ + done + package-win32-base: package-win-common-strip - for i in "" $(win32_destdir)/plugins/*$(LIBEXT) ; \ - do if test -n "$$i" ; then \ - $(OBJCOPY) --only-keep-debug "$$i" "$$i.dbg"; \ - $(OBJCOPY) --strip-all "$$i" ; \ - $(OBJCOPY) --add-gnu-debuglink="$$i.dbg" "$$i" ; \ - mv "$$i.dbg" "$(win32_debugdir)"; \ - fi ; done package-win32-base-exe: package-win32-base # Create package @@ -913,6 +936,7 @@ package-win32-base-exe: package-win32-base else \ echo 'Error: cannot locate makensis tool'; exit 1; \ fi; \ + eval "$$MAKENSIS $(win32_destdir)/spad.nsi"; \ eval "$$MAKENSIS $(win32_destdir)/vlc.win32.nsi" package-win32-base-zip: package-win32-base @@ -963,13 +987,14 @@ 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: package-win-common-strip -package-wince-base-zip: +package-wince-base-zip: package-wince-base # Create package - zip -r vlc-$(VERSION)-wince.zip vlc-$(VERSION) + rm -f -- vlc-$(VERSION)-wince.zip + zip -r -9 vlc-$(VERSION)-wince.zip vlc-$(VERSION) -package-wince: package-wince-base package-wince-base-zip +package-wince: package-wince-base-zip # Clean up rm -Rf $(win32_destdir) @@ -1116,6 +1141,7 @@ if BUILD_MOZILLA # Create Installer rm -rf "$(top_builddir)/macosx-plugin-instdata/"; true mkdir -p "$(top_builddir)/macosx-plugin-instdata" + rm -f "$(top_builddir)/projects/mozilla/VLC Plugin.plugin/Contents/MacOS/modules/libmacosx_plugin.dylib" cp -R "$(top_builddir)/projects/mozilla/VLC Plugin.plugin" "$(top_builddir)/macosx-plugin-instdata" rm -rf "$(top_builddir)/VLC Internet Plug-In.pkg" export PACKAGEMAKER=