diff --git a/modules/system/system.install b/modules/system/system.install
index 162c6b90d7b5bb9156303581e14f54c4deae22ac..bf0d6b2f5f5071e1155204eb6739c1969bab89d1 100644
--- a/modules/system/system.install
+++ b/modules/system/system.install
@@ -108,6 +108,19 @@ function system_requirements($phase) {
     $requirements['pdo']['description'] = $t('Your server does not have the PHP PDO extension enabled. See the <a href="@system_requirements">system requirements page</a> for more information.', array('@system_requirements' => 'http://drupal.org/requirements'));
   }
 
+  // Test JSON library availability.
+  $requirements['json'] = array(
+    'title' => $t('JSON library'),
+  );
+  if (extension_loaded('json')) {
+    $requirements['json']['value'] = $t('Enabled');
+  }
+  else {
+    $requirements['json']['value'] = $t('Disabled');
+    $requirements['json']['severity'] = REQUIREMENT_ERROR;
+    $requirements['json']['description'] = $t('Your server does not have the PHP JSON extension enabled. See the <a href="@system_requirements">system requirements page</a> for more information.', array('@system_requirements' => 'http://drupal.org/requirements'));
+  }
+
   // Test PHP memory_limit
   $memory_limit = ini_get('memory_limit');
   $requirements['php_memory_limit'] = array(