diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index e6a2242cf0a92be74944ec9b86c45c1594266a48..09cbe8915ba2b44f3170088fe55db9be68b0b390 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -1175,4 +1175,7 @@ (define (gcc-toolchain gcc)
 (define-public gcc-toolchain-4.8
   (gcc-toolchain gcc-final))
 
+(define-public gcc-toolchain-4.9
+  (gcc-toolchain gcc-4.9))
+
 ;;; base.scm ends here
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index cb7817c0844b77207e6374af2b698c03a8437bb3..a8d63fc98adc56c7fff3f0119902139ee4f6e83a 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -227,6 +227,17 @@ (define-public gcc-4.8
               (base32
                "1j6dwgby4g3p3lz7zkss32ghr45zpdidrg8xvazvn91lqxv25p09"))))))
 
+(define-public gcc-4.9
+  (package (inherit gcc-4.7)
+    (version "4.9.0")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append "mirror://gnu/gcc/gcc-"
+                                 version "/gcc-" version ".tar.bz2"))
+             (sha256
+              (base32
+               "0mqjxpw2klskls00lwx1k24pnyzm3whqxg3hk74c3sddgfllgc5r"))))))
+
 (define (custom-gcc gcc name languages)
   "Return a custom version of GCC that supports LANGUAGES."
   (package (inherit gcc)