X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=Makefile.am;h=20c2576ae2d4ef19cdeee9c85433100da121638b;hb=18addd464ff59b5b7e8877e426e861d06b86a45a;hp=015089aba7d2de170592f023863ea1882afa5d57;hpb=ba501462ff0b1700626c0118d6e3f5fe6c9761fb;p=vlc diff --git a/Makefile.am b/Makefile.am index 015089aba7..20c2576ae2 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 @@ -70,7 +76,7 @@ DISTCHECK_CONFIGURE_FLAGS = \ --enable-fast-install \ --disable-dbus \ --disable-dvd --disable-mad --disable-libmpeg2 \ - --disable-ffmpeg --disable-faad --disable-wxwidgets --disable-skins2 \ + --disable-ffmpeg --disable-faad --disable-skins2 \ --disable-live555 \ --disable-fribidi --disable-glx @@ -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 \ @@ -319,7 +324,7 @@ CLEANFILES = $(BUILT_SOURCES_clean) DISTCLEANFILES = $(BUILT_SOURCES_distclean) vlc-config.in compile MAINTAINERCLEANFILES = ChangeLog -# Shortcut for developpers to rebuild the core (libvlc + vlc) +# Shortcut for developers 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 libcompat: @@ -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 @@ -370,7 +375,7 @@ endif # Building aliases ############################################################################### -ALL_ALIASES = cvlc rvlc svlc wxvlc qvlc nvlc mvlc +ALL_ALIASES = cvlc rvlc svlc qvlc nvlc mvlc bin_SCRIPTS = $(ALIASES) CLEANFILES += $(ALIASES) $(noinst_SCRIPTS) EXTRA_SCRIPTS = $(ALL_ALIASES) @@ -388,9 +393,6 @@ rvlc: make-alias Makefile svlc: make-alias Makefile $(MKALIAS) skins2 -wxvlc: make-alias Makefile - $(MKALIAS) wx - qvlc: make-alias Makefile $(MKALIAS) qt4 @@ -408,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 \ @@ -471,8 +481,6 @@ VLC-release.app: vlc extended.m \ bookmarks.h \ bookmarks.m \ - update.h \ - update.m \ coredialogs.h \ coredialogs.m \ embeddedwindow.h \ @@ -483,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 $(silentstd) && \ + cd ../../../../ && \ + cp -R $(top_builddir)/tmp/extras/package/macosx/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 @@ -570,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 \ @@ -624,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 \ @@ -636,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 $(silentstd) && \ + cd ../../../../ && \ + cp -R $(top_builddir)/tmp/extras/package/macosx/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 @@ -698,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 @@ -745,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/" @@ -756,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 @@ -772,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/ @@ -794,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 \ @@ -876,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"; \ @@ -884,23 +906,20 @@ 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)/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 @@ -916,6 +935,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 @@ -966,13 +986,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) @@ -1119,6 +1140,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=