]> git.sesse.net Git - vlc/blobdiff - Makefile.am
Qt: wrap items automatically in a grid.
[vlc] / Makefile.am
index f3ad1e465d0ecc1eea1eddc16af1504667ff0256..fff7f22f77342cf37cca62a5291541011c422eaf 100644 (file)
@@ -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=