summaryrefslogtreecommitdiffstats
path: root/source/ap/vim/patches/7.3.050
diff options
context:
space:
mode:
Diffstat (limited to 'source/ap/vim/patches/7.3.050')
-rw-r--r--source/ap/vim/patches/7.3.050199
1 files changed, 199 insertions, 0 deletions
diff --git a/source/ap/vim/patches/7.3.050 b/source/ap/vim/patches/7.3.050
new file mode 100644
index 000000000..cccb836ce
--- /dev/null
+++ b/source/ap/vim/patches/7.3.050
@@ -0,0 +1,199 @@
+To: vim_dev@googlegroups.com
+Subject: Patch 7.3.050
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.3.050
+Problem: The link script is clumsy.
+Solution: Use the --as-needed linker option if available. (Kirill A.
+ Shutemov)
+Files: src/Makefile, src/auto/configure, src/config.mk.in,
+ src/configure.in, src/link.sh
+
+
+*** ../vim-7.3.049/src/Makefile 2010-10-27 16:49:41.000000000 +0200
+--- src/Makefile 2010-11-03 22:26:45.000000000 +0100
+***************
+*** 1700,1706 ****
+ $(CCC) version.c -o objects/version.o
+ @LINK="$(PURIFY) $(SHRPENV) $(CClink) $(ALL_LIB_DIRS) $(LDFLAGS) \
+ -o $(VIMTARGET) $(OBJ) objects/version.o $(ALL_LIBS)" \
+! MAKE="$(MAKE)" sh $(srcdir)/link.sh
+
+ xxd/xxd$(EXEEXT): xxd/xxd.c
+ cd xxd; CC="$(CC)" CFLAGS="$(CPPFLAGS) $(CFLAGS)" \
+--- 1700,1707 ----
+ $(CCC) version.c -o objects/version.o
+ @LINK="$(PURIFY) $(SHRPENV) $(CClink) $(ALL_LIB_DIRS) $(LDFLAGS) \
+ -o $(VIMTARGET) $(OBJ) objects/version.o $(ALL_LIBS)" \
+! MAKE="$(MAKE)" LINK_AS_NEEDED=$(LINK_AS_NEEDED) \
+! sh $(srcdir)/link.sh
+
+ xxd/xxd$(EXEEXT): xxd/xxd.c
+ cd xxd; CC="$(CC)" CFLAGS="$(CPPFLAGS) $(CFLAGS)" \
+*** ../vim-7.3.049/src/auto/configure 2010-11-03 21:59:23.000000000 +0100
+--- src/auto/configure 2010-11-03 22:28:03.000000000 +0100
+***************
+*** 593,598 ****
+--- 593,599 ----
+
+ ac_subst_vars='LTLIBOBJS
+ LIBOBJS
++ LINK_AS_NEEDED
+ DEPEND_CFLAGS_FILTER
+ MAKEMO
+ MSGFMT
+***************
+*** 12404,12409 ****
+--- 12405,12427 ----
+ fi
+
+
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking linker --as-needed support" >&5
++ $as_echo_n "checking linker --as-needed support... " >&6; }
++ LINK_AS_NEEDED=
++ # Check if linker supports --as-needed and --no-as-needed options
++ if $CC -Wl,--help 2>/dev/null | grep as-needed > /dev/null; then
++ LDFLAGS="$LDFLAGS -Wl,--as-needed"
++ LINK_AS_NEEDED=yes
++ fi
++ if test "$LINK_AS_NEEDED" = yes; then
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
++ $as_echo "yes" >&6; }
++ else
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
++ $as_echo "no" >&6; }
++ fi
++
++
+ ac_config_files="$ac_config_files auto/config.mk:config.mk.in"
+
+ cat >confcache <<\_ACEOF
+*** ../vim-7.3.049/src/config.mk.in 2010-08-15 21:57:28.000000000 +0200
+--- src/config.mk.in 2010-11-03 22:26:24.000000000 +0100
+***************
+*** 30,35 ****
+--- 30,36 ----
+ CPP = @CPP@
+ CPP_MM = @CPP_MM@
+ DEPEND_CFLAGS_FILTER = @DEPEND_CFLAGS_FILTER@
++ LINK_AS_NEEDED = @LINK_AS_NEEDED@
+ X_CFLAGS = @X_CFLAGS@
+ X_LIBS_DIR = @X_LIBS@
+ X_PRE_LIBS = @X_PRE_LIBS@
+*** ../vim-7.3.049/src/configure.in 2010-11-03 21:59:23.000000000 +0100
+--- src/configure.in 2010-11-03 22:26:16.000000000 +0100
+***************
+*** 3527,3532 ****
+--- 3527,3549 ----
+ fi
+ AC_SUBST(DEPEND_CFLAGS_FILTER)
+
++ dnl link.sh tries to avoid overlinking in a hackish way.
++ dnl At least GNU ld supports --as-needed which provides the same functionality
++ dnl at linker level. Let's use it.
++ AC_MSG_CHECKING(linker --as-needed support)
++ LINK_AS_NEEDED=
++ # Check if linker supports --as-needed and --no-as-needed options
++ if $CC -Wl,--help 2>/dev/null | grep as-needed > /dev/null; then
++ LDFLAGS="$LDFLAGS -Wl,--as-needed"
++ LINK_AS_NEEDED=yes
++ fi
++ if test "$LINK_AS_NEEDED" = yes; then
++ AC_MSG_RESULT(yes)
++ else
++ AC_MSG_RESULT(no)
++ fi
++ AC_SUBST(LINK_AS_NEEDED)
++
+ dnl write output files
+ AC_OUTPUT(auto/config.mk:config.mk.in)
+
+*** ../vim-7.3.049/src/link.sh 2010-08-15 21:57:25.000000000 +0200
+--- src/link.sh 2010-11-03 22:26:08.000000000 +0100
+***************
+*** 5,11 ****
+ # libraries when they exist, but this doesn't mean they are needed for Vim.
+ #
+ # Author: Bram Moolenaar
+! # Last change: 2006 Sep 26
+ # License: Public domain
+ #
+ # Warning: This fails miserably if the linker doesn't return an error code!
+--- 5,11 ----
+ # libraries when they exist, but this doesn't mean they are needed for Vim.
+ #
+ # Author: Bram Moolenaar
+! # Last change: 2010 Nov 03
+ # License: Public domain
+ #
+ # Warning: This fails miserably if the linker doesn't return an error code!
+***************
+*** 16,26 ****
+ echo "$LINK " >link.cmd
+ exit_value=0
+
+ #
+ # If auto/link.sed already exists, use it. We assume a previous run of
+ # link.sh has found the correct set of libraries.
+ #
+- if test -f auto/link.sed; then
+ echo "link.sh: The file 'auto/link.sed' exists, which is going to be used now."
+ echo "link.sh: If linking fails, try deleting the auto/link.sed file."
+ echo "link.sh: If this fails too, try creating an empty auto/link.sed file."
+--- 16,38 ----
+ echo "$LINK " >link.cmd
+ exit_value=0
+
++ if test "$LINK_AS_NEEDED" = yes; then
++ echo "link.sh: \$LINK_AS_NEEDED set to 'yes': invoking linker directly."
++ cat link.cmd
++ if sh link.cmd; then
++ exit_value=0
++ echo "link.sh: Linked fine"
++ else
++ exit_value=$?
++ echo "link.sh: Linking failed"
++ fi
++ else
++ if test -f auto/link.sed; then
++
+ #
+ # If auto/link.sed already exists, use it. We assume a previous run of
+ # link.sh has found the correct set of libraries.
+ #
+ echo "link.sh: The file 'auto/link.sed' exists, which is going to be used now."
+ echo "link.sh: If linking fails, try deleting the auto/link.sed file."
+ echo "link.sh: If this fails too, try creating an empty auto/link.sed file."
+***************
+*** 124,129 ****
+--- 136,143 ----
+ fi
+ fi
+
++ fi
++
+ #
+ # cleanup
+ #
+*** ../vim-7.3.049/src/version.c 2010-11-03 21:59:23.000000000 +0100
+--- src/version.c 2010-11-03 22:30:17.000000000 +0100
+***************
+*** 716,717 ****
+--- 716,719 ----
+ { /* Add new patch number below this line */
++ /**/
++ 50,
+ /**/
+
+--
+Save the plankton - eat a whale.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
+/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\ download, build and distribute -- http://www.A-A-P.org ///
+ \\\ help me help AIDS victims -- http://ICCF-Holland.org ///