diff --git a/toolchain/glibc/common.mk b/toolchain/glibc/common.mk
index 26e2376bfcc6d75dc4ccf98aaa46c5a14b97997f..0ea166e77dfe3ab300d932b2e310508b38e6be81 100644
--- a/toolchain/glibc/common.mk
+++ b/toolchain/glibc/common.mk
@@ -7,18 +7,13 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=glibc
-PKG_VERSION:=2.24
-PKG_REVISION:=8c716c2
-PKG_MIRROR_HASH:=714d26c0daf6a8acf73fc8b6053349880c79f240f96ca57b00ab0ecbbead2b73
+PKG_VERSION:=2.25
 
-PKG_SOURCE_PROTO:=git
-PKG_SOURCE_URL:=git://sourceware.org/git/glibc.git
-PKG_SOURCE_VERSION:=$(PKG_REVISION)
-PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_REVISION)
-PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.bz2
-
-GLIBC_PATH:=
+PKG_SOURCE_URL:=@GNU/libc
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
+PKG_HASH:=067bd9bb3390e79aa45911537d13c3721f1d9d3769931a30c2681bfee66f23a0
 
+PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
 HOST_BUILD_DIR:=$(BUILD_DIR_TOOLCHAIN)/$(PKG_SOURCE_SUBDIR)
 CUR_BUILD_DIR:=$(HOST_BUILD_DIR)-$(VARIANT)
 
@@ -77,7 +72,7 @@ endef
 
 define Host/Configure
 	[ -f $(HOST_BUILD_DIR)/.autoconf ] || { \
-		cd $(HOST_BUILD_DIR)/$(GLIBC_PATH); \
+		cd $(HOST_BUILD_DIR)/; \
 		autoconf --force && \
 		touch $(HOST_BUILD_DIR)/.autoconf; \
 	}
diff --git a/toolchain/glibc/patches/200-add-dl-search-paths.patch b/toolchain/glibc/patches/200-add-dl-search-paths.patch
index d65a0bcdd01b033d5a5e56fd8699d0847ab9437b..8f720cb9fd95246c717af036cd04aa6191fdca3e 100644
--- a/toolchain/glibc/patches/200-add-dl-search-paths.patch
+++ b/toolchain/glibc/patches/200-add-dl-search-paths.patch
@@ -2,7 +2,7 @@ add /usr/lib to default search path for the dynamic linker
 
 --- a/Makeconfig
 +++ b/Makeconfig
-@@ -526,6 +526,9 @@ else
+@@ -571,6 +571,9 @@ else
  default-rpath = $(libdir)
  endif