diff --git a/Gtk2HsSetup.hs b/Gtk2HsSetup.hs
--- a/Gtk2HsSetup.hs
+++ b/Gtk2HsSetup.hs
@@ -9,7 +9,10 @@
 module Gtk2HsSetup ( 
   gtk2hsUserHooks, 
   getPkgConfigPackages, 
-  checkGtk2hsBuildtools
+  checkGtk2hsBuildtools,
+  typeGenProgram,
+  signalGenProgram,
+  c2hsLocal
   ) where
 
 import Distribution.Simple
@@ -411,11 +414,11 @@
             (out',visited') = foldl visit (out, m `S.insert` visited) (mdRequires md)
 
 -- Check user whether install gtk2hs-buildtools correctly.
-checkGtk2hsBuildtools :: [String] -> IO ()
+checkGtk2hsBuildtools :: [Program] -> IO ()
 checkGtk2hsBuildtools programs = do
-  programInfos <- mapM (\ name -> do
-                         location <- programFindLocation (simpleProgram name) normal
-                         return (name, location)
+  programInfos <- mapM (\ prog -> do
+                         location <- programFindLocation prog normal
+                         return (programName prog, location)
                       ) programs
   let printError name = do
         putStrLn $ "Cannot find " ++ name ++ "\n" 
diff --git a/SetupMain.hs b/SetupMain.hs
--- a/SetupMain.hs
+++ b/SetupMain.hs
@@ -3,10 +3,11 @@
 -- all Gtk2Hs-specific boilerplate is kept in Gtk2HsSetup.hs
 -- which should be kept identical across all packages.
 --
-import Gtk2HsSetup ( gtk2hsUserHooks, checkGtk2hsBuildtools )
+import Gtk2HsSetup ( gtk2hsUserHooks, checkGtk2hsBuildtools,
+                     typeGenProgram, signalGenProgram, c2hsLocal)
 import Distribution.Simple ( defaultMainWithHooks )
 
 main = do
-  checkGtk2hsBuildtools ["gtk2hsC2hs", "gtk2hsTypeGen", "gtk2hsHookGenerator"]
+  checkGtk2hsBuildtools [typeGenProgram, signalGenProgram, c2hsLocal]
   defaultMainWithHooks gtk2hsUserHooks
   
diff --git a/System/GIO/Volumes/Drive.chs b/System/GIO/Volumes/Drive.chs
--- a/System/GIO/Volumes/Drive.chs
+++ b/System/GIO/Volumes/Drive.chs
@@ -56,8 +56,10 @@
     DriveClass,
 
 -- * Enums,
+#if GLIB_CHECK_VERSION(2,22,0)
     DriveStartStopType (..),
     DriveStartFlags (..),
+#endif
 
 -- * Methods
     driveGetName,
diff --git a/gio.cabal b/gio.cabal
--- a/gio.cabal
+++ b/gio.cabal
@@ -1,5 +1,5 @@
 Name:           gio
-Version:        0.12.1
+Version:        0.12.2
 License:        LGPL-2.1
 License-file:   COPYING
 Copyright:      (c) 2001-2010 The Gtk2Hs Team
