diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 369cb6a..f2ee1ba 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2014-12-23  Tristan Gingold  <gingold@adacore.com>
+
+	* version.m4: Bump version to 2.25
+	* configure: Regenerate.
+
 2014-12-19  Andrew Bennett  <andrew.bennett@imgtec.com>
 
 	* elfxx-mips.c (mips_elf_calculate_relocation): Only check for
diff --git a/bfd/configure b/bfd/configure
index 482efe3..7016194 100755
--- a/bfd/configure
+++ b/bfd/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.64 for bfd 2.24.90.
+# Generated by GNU Autoconf 2.64 for bfd 2.25.
 #
 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
 # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software
@@ -556,8 +556,8 @@
 # Identity of this package.
 PACKAGE_NAME='bfd'
 PACKAGE_TARNAME='bfd'
-PACKAGE_VERSION='2.24.90'
-PACKAGE_STRING='bfd 2.24.90'
+PACKAGE_VERSION='2.25'
+PACKAGE_STRING='bfd 2.25'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -1349,7 +1349,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures bfd 2.24.90 to adapt to many kinds of systems.
+\`configure' configures bfd 2.25 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1420,7 +1420,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of bfd 2.24.90:";;
+     short | recursive ) echo "Configuration of bfd 2.25:";;
    esac
   cat <<\_ACEOF
 
@@ -1541,7 +1541,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-bfd configure 2.24.90
+bfd configure 2.25
 generated by GNU Autoconf 2.64
 
 Copyright (C) 2009 Free Software Foundation, Inc.
@@ -2183,7 +2183,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by bfd $as_me 2.24.90, which was
+It was created by bfd $as_me 2.25, which was
 generated by GNU Autoconf 2.64.  Invocation command line was
 
   $ $0 $@
@@ -3991,7 +3991,7 @@
 
 # Define the identity of the package.
  PACKAGE='bfd'
- VERSION='2.24.90'
+ VERSION='2.25'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -16567,7 +16567,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by bfd $as_me 2.24.90, which was
+This file was extended by bfd $as_me 2.25, which was
 generated by GNU Autoconf 2.64.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -16631,7 +16631,7 @@
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_version="\\
-bfd config.status 2.24.90
+bfd config.status 2.25
 configured by $0, generated by GNU Autoconf 2.64,
   with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 
diff --git a/bfd/version.m4 b/bfd/version.m4
index c92d143..4c966bc 100644
--- a/bfd/version.m4
+++ b/bfd/version.m4
@@ -1 +1 @@
-m4_define([BFD_VERSION], [2.24.90])
+m4_define([BFD_VERSION], [2.25])
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index c2f69e9..db0941d 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,7 @@
+2014-12-23  Tristan Gingold  <gingold@adacore.com>
+
+	* configure: Regenerate.
+
 2014-11-17  Nick Clifton  <nickc@redhat.com>
 
 	Apply trunk patches:
diff --git a/binutils/configure b/binutils/configure
index 07551c3..b31248f 100755
--- a/binutils/configure
+++ b/binutils/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.64 for binutils 2.24.90.
+# Generated by GNU Autoconf 2.64 for binutils 2.25.
 #
 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
 # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software
@@ -556,8 +556,8 @@
 # Identity of this package.
 PACKAGE_NAME='binutils'
 PACKAGE_TARNAME='binutils'
-PACKAGE_VERSION='2.24.90'
-PACKAGE_STRING='binutils 2.24.90'
+PACKAGE_VERSION='2.25'
+PACKAGE_STRING='binutils 2.25'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -1333,7 +1333,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures binutils 2.24.90 to adapt to many kinds of systems.
+\`configure' configures binutils 2.25 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1404,7 +1404,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of binutils 2.24.90:";;
+     short | recursive ) echo "Configuration of binutils 2.25:";;
    esac
   cat <<\_ACEOF
 
@@ -1525,7 +1525,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-binutils configure 2.24.90
+binutils configure 2.25
 generated by GNU Autoconf 2.64
 
 Copyright (C) 2009 Free Software Foundation, Inc.
@@ -1935,7 +1935,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by binutils $as_me 2.24.90, which was
+It was created by binutils $as_me 2.25, which was
 generated by GNU Autoconf 2.64.  Invocation command line was
 
   $ $0 $@
@@ -3743,7 +3743,7 @@
 
 # Define the identity of the package.
  PACKAGE='binutils'
- VERSION='2.24.90'
+ VERSION='2.25'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -14850,7 +14850,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by binutils $as_me 2.24.90, which was
+This file was extended by binutils $as_me 2.25, which was
 generated by GNU Autoconf 2.64.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -14914,7 +14914,7 @@
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_version="\\
-binutils config.status 2.24.90
+binutils config.status 2.25
 configured by $0, generated by GNU Autoconf 2.64,
   with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 
diff --git a/gas/ChangeLog b/gas/ChangeLog
index c3ac4a1..de5e997 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,7 @@
+2014-12-23  Tristan Gingold  <gingold@adacore.com>
+
+	* configure: Regenerate.
+
 2014-12-19  Matthew Fortune  <matthew.fortune@imgtec.com>
 
 	* config/tc-mips.c (md_apply_fix): Apply alignment check
diff --git a/gas/configure b/gas/configure
index 1025ddb..76b5f20 100755
--- a/gas/configure
+++ b/gas/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.64 for gas 2.24.90.
+# Generated by GNU Autoconf 2.64 for gas 2.25.
 #
 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
 # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software
@@ -556,8 +556,8 @@
 # Identity of this package.
 PACKAGE_NAME='gas'
 PACKAGE_TARNAME='gas'
-PACKAGE_VERSION='2.24.90'
-PACKAGE_STRING='gas 2.24.90'
+PACKAGE_VERSION='2.25'
+PACKAGE_STRING='gas 2.25'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -1320,7 +1320,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures gas 2.24.90 to adapt to many kinds of systems.
+\`configure' configures gas 2.25 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1391,7 +1391,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of gas 2.24.90:";;
+     short | recursive ) echo "Configuration of gas 2.25:";;
    esac
   cat <<\_ACEOF
 
@@ -1505,7 +1505,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-gas configure 2.24.90
+gas configure 2.25
 generated by GNU Autoconf 2.64
 
 Copyright (C) 2009 Free Software Foundation, Inc.
@@ -1915,7 +1915,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by gas $as_me 2.24.90, which was
+It was created by gas $as_me 2.25, which was
 generated by GNU Autoconf 2.64.  Invocation command line was
 
   $ $0 $@
@@ -3723,7 +3723,7 @@
 
 # Define the identity of the package.
  PACKAGE='gas'
- VERSION='2.24.90'
+ VERSION='2.25'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -15061,7 +15061,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by gas $as_me 2.24.90, which was
+This file was extended by gas $as_me 2.25, which was
 generated by GNU Autoconf 2.64.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -15125,7 +15125,7 @@
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_version="\\
-gas config.status 2.24.90
+gas config.status 2.25
 configured by $0, generated by GNU Autoconf 2.64,
   with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 
diff --git a/gprof/ChangeLog b/gprof/ChangeLog
index 19ee500..866eb0d 100644
--- a/gprof/ChangeLog
+++ b/gprof/ChangeLog
@@ -1,3 +1,7 @@
+2014-12-23  Tristan Gingold  <gingold@adacore.com>
+
+	* configure: Regenerate.
+
 2014-11-03  Nick Clifton  <nickc@redhat.com>
 
 	* po/fi.po: Updated Finnish translation.
diff --git a/gprof/configure b/gprof/configure
index 53897bc..a6f7ac7 100755
--- a/gprof/configure
+++ b/gprof/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.64 for gprof 2.24.90.
+# Generated by GNU Autoconf 2.64 for gprof 2.25.
 #
 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
 # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software
@@ -556,8 +556,8 @@
 # Identity of this package.
 PACKAGE_NAME='gprof'
 PACKAGE_TARNAME='gprof'
-PACKAGE_VERSION='2.24.90'
-PACKAGE_STRING='gprof 2.24.90'
+PACKAGE_VERSION='2.25'
+PACKAGE_STRING='gprof 2.25'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -1299,7 +1299,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures gprof 2.24.90 to adapt to many kinds of systems.
+\`configure' configures gprof 2.25 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1370,7 +1370,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of gprof 2.24.90:";;
+     short | recursive ) echo "Configuration of gprof 2.25:";;
    esac
   cat <<\_ACEOF
 
@@ -1476,7 +1476,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-gprof configure 2.24.90
+gprof configure 2.25
 generated by GNU Autoconf 2.64
 
 Copyright (C) 2009 Free Software Foundation, Inc.
@@ -1841,7 +1841,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by gprof $as_me 2.24.90, which was
+It was created by gprof $as_me 2.25, which was
 generated by GNU Autoconf 2.64.  Invocation command line was
 
   $ $0 $@
@@ -3649,7 +3649,7 @@
 
 # Define the identity of the package.
  PACKAGE='gprof'
- VERSION='2.24.90'
+ VERSION='2.25'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -12706,7 +12706,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by gprof $as_me 2.24.90, which was
+This file was extended by gprof $as_me 2.25, which was
 generated by GNU Autoconf 2.64.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -12770,7 +12770,7 @@
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_version="\\
-gprof config.status 2.24.90
+gprof config.status 2.25
 configured by $0, generated by GNU Autoconf 2.64,
   with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 5ca26c2..28dd353 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,7 @@
+2014-12-23  Tristan Gingold  <gingold@adacore.com>
+
+	* configure: Regenerate.
+
 2014-11-24  Alan Modra  <amodra@gmail.com>
 
 	* ld.texinfo: Correct --plt-align documentation.
diff --git a/ld/configure b/ld/configure
index 1047d18..66d8024 100755
--- a/ld/configure
+++ b/ld/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.64 for ld 2.24.90.
+# Generated by GNU Autoconf 2.64 for ld 2.25.
 #
 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
 # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software
@@ -556,8 +556,8 @@
 # Identity of this package.
 PACKAGE_NAME='ld'
 PACKAGE_TARNAME='ld'
-PACKAGE_VERSION='2.24.90'
-PACKAGE_STRING='ld 2.24.90'
+PACKAGE_VERSION='2.25'
+PACKAGE_STRING='ld 2.25'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -1347,7 +1347,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures ld 2.24.90 to adapt to many kinds of systems.
+\`configure' configures ld 2.25 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1418,7 +1418,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of ld 2.24.90:";;
+     short | recursive ) echo "Configuration of ld 2.25:";;
    esac
   cat <<\_ACEOF
 
@@ -1541,7 +1541,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-ld configure 2.24.90
+ld configure 2.25
 generated by GNU Autoconf 2.64
 
 Copyright (C) 2009 Free Software Foundation, Inc.
@@ -2250,7 +2250,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by ld $as_me 2.24.90, which was
+It was created by ld $as_me 2.25, which was
 generated by GNU Autoconf 2.64.  Invocation command line was
 
   $ $0 $@
@@ -4059,7 +4059,7 @@
 
 # Define the identity of the package.
  PACKAGE='ld'
- VERSION='2.24.90'
+ VERSION='2.25'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -17594,7 +17594,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by ld $as_me 2.24.90, which was
+This file was extended by ld $as_me 2.25, which was
 generated by GNU Autoconf 2.64.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -17658,7 +17658,7 @@
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_version="\\
-ld config.status 2.24.90
+ld config.status 2.25
 configured by $0, generated by GNU Autoconf 2.64,
   with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 82e41aa..38de39a 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,7 @@
+2014-12-23  Tristan Gingold  <gingold@adacore.com>
+
+	* configure: Regenerate.
+
 2014-12-16  Matthew Fortune  <matthew.fortune@imgtec.com>
 
 	* mips-opc.c (mips_builtin_opcodes): Add JALRC alias for
diff --git a/opcodes/configure b/opcodes/configure
index 2fd1948..1361ef6 100755
--- a/opcodes/configure
+++ b/opcodes/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.64 for opcodes 2.24.90.
+# Generated by GNU Autoconf 2.64 for opcodes 2.25.
 #
 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
 # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software
@@ -556,8 +556,8 @@
 # Identity of this package.
 PACKAGE_NAME='opcodes'
 PACKAGE_TARNAME='opcodes'
-PACKAGE_VERSION='2.24.90'
-PACKAGE_STRING='opcodes 2.24.90'
+PACKAGE_VERSION='2.25'
+PACKAGE_STRING='opcodes 2.25'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -1319,7 +1319,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures opcodes 2.24.90 to adapt to many kinds of systems.
+\`configure' configures opcodes 2.25 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1390,7 +1390,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of opcodes 2.24.90:";;
+     short | recursive ) echo "Configuration of opcodes 2.25:";;
    esac
   cat <<\_ACEOF
 
@@ -1497,7 +1497,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-opcodes configure 2.24.90
+opcodes configure 2.25
 generated by GNU Autoconf 2.64
 
 Copyright (C) 2009 Free Software Foundation, Inc.
@@ -1907,7 +1907,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by opcodes $as_me 2.24.90, which was
+It was created by opcodes $as_me 2.25, which was
 generated by GNU Autoconf 2.64.  Invocation command line was
 
   $ $0 $@
@@ -3715,7 +3715,7 @@
 
 # Define the identity of the package.
  PACKAGE='opcodes'
- VERSION='2.24.90'
+ VERSION='2.25'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -13209,7 +13209,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by opcodes $as_me 2.24.90, which was
+This file was extended by opcodes $as_me 2.25, which was
 generated by GNU Autoconf 2.64.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -13273,7 +13273,7 @@
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_version="\\
-opcodes config.status 2.24.90
+opcodes config.status 2.25
 configured by $0, generated by GNU Autoconf 2.64,
   with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 
