diff --git a/GI/PangoCairo.hs b/GI/PangoCairo.hs
deleted file mode 100644
--- a/GI/PangoCairo.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
--}
-
-module GI.PangoCairo
-    (     module GI.PangoCairo.Callbacks          ,
-    module GI.PangoCairo.Functions          ,
-    module GI.PangoCairo.Interfaces         ,
-    module GI.PangoCairo.Objects            ,
-
-
-
-    module Data.GI.Base                     ,
-
-
-    ) where
-
-import GI.PangoCairo.Callbacks
-import GI.PangoCairo.Functions
-import GI.PangoCairo.Interfaces
-import GI.PangoCairo.Objects
-
-import Data.GI.Base.ShortPrelude
-
-import qualified Data.GI.Base.Attributes as GI.Attributes
-import qualified Data.Text as T
-import qualified Data.ByteString.Char8 as B
-import qualified Data.Map as Map
-
-import GI.PangoCairo.Types
-import GI.PangoCairo.Callbacks
-
-import Data.GI.Base
-
diff --git a/GI/PangoCairo/Callbacks.hs b/GI/PangoCairo/Callbacks.hs
deleted file mode 100644
--- a/GI/PangoCairo/Callbacks.hs
+++ /dev/null
@@ -1,78 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
--}
-
-module GI.PangoCairo.Callbacks
-    ( 
-
- -- * Signals
--- ** ShapeRendererFunc
-    ShapeRendererFunc                       ,
-    ShapeRendererFuncC                      ,
-    mkShapeRendererFunc                     ,
-    noShapeRendererFunc                     ,
-    shapeRendererFuncClosure                ,
-    shapeRendererFuncWrapper                ,
-
-
-
-
-    ) where
-
-import Data.GI.Base.ShortPrelude
-
-import qualified Data.GI.Base.Attributes as GI.Attributes
-import qualified Data.Text as T
-import qualified Data.ByteString.Char8 as B
-import qualified Data.Map as Map
-
-import GI.PangoCairo.Types
-
-import qualified GI.Pango as Pango
-import qualified GI.Cairo as Cairo
-
--- callback ShapeRendererFunc
-shapeRendererFuncClosure :: ShapeRendererFunc -> IO Closure
-shapeRendererFuncClosure cb = newCClosure =<< mkShapeRendererFunc wrapped
-    where wrapped = shapeRendererFuncWrapper Nothing cb
-
-type ShapeRendererFuncC =
-    Ptr Cairo.Context ->
-    Ptr Pango.AttrShape ->
-    CInt ->
-    Ptr () ->
-    IO ()
-
-foreign import ccall "wrapper"
-    mkShapeRendererFunc :: ShapeRendererFuncC -> IO (FunPtr ShapeRendererFuncC)
-
-type ShapeRendererFunc =
-    Cairo.Context ->
-    Pango.AttrShape ->
-    Bool ->
-    Ptr () ->
-    IO ()
-
-noShapeRendererFunc :: Maybe ShapeRendererFunc
-noShapeRendererFunc = Nothing
-
-shapeRendererFuncWrapper ::
-    Maybe (Ptr (FunPtr (ShapeRendererFuncC))) ->
-    ShapeRendererFunc ->
-    Ptr Cairo.Context ->
-    Ptr Pango.AttrShape ->
-    CInt ->
-    Ptr () ->
-    IO ()
-shapeRendererFuncWrapper funptrptr _cb cr attr doPath data_ = do
-    cr' <- (newBoxed Cairo.Context) cr
-    attr' <- (newPtr Pango.AttrShape) attr
-    let doPath' = (/= 0) doPath
-    _cb  cr' attr' doPath' data_
-    maybeReleaseFunPtr funptrptr
-
-
diff --git a/GI/PangoCairo/Functions.hs b/GI/PangoCairo/Functions.hs
deleted file mode 100644
--- a/GI/PangoCairo/Functions.hs
+++ /dev/null
@@ -1,618 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
--}
-
-module GI.PangoCairo.Functions
-    ( 
-
- -- * Methods
--- ** contextGetFontOptions
-    contextGetFontOptions                   ,
-
-
--- ** contextGetResolution
-    contextGetResolution                    ,
-
-
--- ** contextSetFontOptions
-    contextSetFontOptions                   ,
-
-
--- ** contextSetResolution
-    contextSetResolution                    ,
-
-
--- ** contextSetShapeRenderer
-    contextSetShapeRenderer                 ,
-
-
--- ** createContext
-    createContext                           ,
-
-
--- ** createLayout
-    createLayout                            ,
-
-
--- ** errorUnderlinePath
-    errorUnderlinePath                      ,
-
-
--- ** glyphStringPath
-    glyphStringPath                         ,
-
-
--- ** layoutLinePath
-    layoutLinePath                          ,
-
-
--- ** layoutPath
-    layoutPath                              ,
-
-
--- ** showErrorUnderline
-    showErrorUnderline                      ,
-
-
--- ** showGlyphItem
-    showGlyphItem                           ,
-
-
--- ** showGlyphString
-    showGlyphString                         ,
-
-
--- ** showLayout
-    showLayout                              ,
-
-
--- ** showLayoutLine
-    showLayoutLine                          ,
-
-
--- ** updateContext
-    updateContext                           ,
-
-
--- ** updateLayout
-    updateLayout                            ,
-
-
-
-
-    ) where
-
-import Data.GI.Base.ShortPrelude
-
-import qualified Data.GI.Base.Attributes as GI.Attributes
-import qualified Data.Text as T
-import qualified Data.ByteString.Char8 as B
-import qualified Data.Map as Map
-
-import GI.PangoCairo.Types
-import GI.PangoCairo.Callbacks
-import qualified GI.GLib as GLib
-import qualified GI.Pango as Pango
-import qualified GI.Cairo as Cairo
-
--- function pango_cairo_update_layout
--- Args : [Arg {argCName = "cr", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "layout", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_update_layout" pango_cairo_update_layout :: 
-    Ptr Cairo.Context ->                    -- cr : TInterface "cairo" "Context"
-    Ptr Pango.Layout ->                     -- layout : TInterface "Pango" "Layout"
-    IO ()
-
-
-updateLayout ::
-    (MonadIO m, Pango.LayoutK a) =>
-    Cairo.Context                           -- cr
-    -> a                                    -- layout
-    -> m ()                                 -- result
-updateLayout cr layout = liftIO $ do
-    let cr' = unsafeManagedPtrGetPtr cr
-    let layout' = unsafeManagedPtrCastPtr layout
-    pango_cairo_update_layout cr' layout'
-    touchManagedPtr cr
-    touchManagedPtr layout
-    return ()
-
-
--- function pango_cairo_update_context
--- Args : [Arg {argCName = "cr", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_update_context" pango_cairo_update_context :: 
-    Ptr Cairo.Context ->                    -- cr : TInterface "cairo" "Context"
-    Ptr Pango.Context ->                    -- context : TInterface "Pango" "Context"
-    IO ()
-
-
-updateContext ::
-    (MonadIO m, Pango.ContextK a) =>
-    Cairo.Context                           -- cr
-    -> a                                    -- context
-    -> m ()                                 -- result
-updateContext cr context = liftIO $ do
-    let cr' = unsafeManagedPtrGetPtr cr
-    let context' = unsafeManagedPtrCastPtr context
-    pango_cairo_update_context cr' context'
-    touchManagedPtr cr
-    touchManagedPtr context
-    return ()
-
-
--- function pango_cairo_show_layout_line
--- Args : [Arg {argCName = "cr", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "line", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_show_layout_line" pango_cairo_show_layout_line :: 
-    Ptr Cairo.Context ->                    -- cr : TInterface "cairo" "Context"
-    Ptr Pango.LayoutLine ->                 -- line : TInterface "Pango" "LayoutLine"
-    IO ()
-
-
-showLayoutLine ::
-    (MonadIO m) =>
-    Cairo.Context                           -- cr
-    -> Pango.LayoutLine                     -- line
-    -> m ()                                 -- result
-showLayoutLine cr line = liftIO $ do
-    let cr' = unsafeManagedPtrGetPtr cr
-    let line' = unsafeManagedPtrGetPtr line
-    pango_cairo_show_layout_line cr' line'
-    touchManagedPtr cr
-    touchManagedPtr line
-    return ()
-
-
--- function pango_cairo_show_layout
--- Args : [Arg {argCName = "cr", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "layout", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_show_layout" pango_cairo_show_layout :: 
-    Ptr Cairo.Context ->                    -- cr : TInterface "cairo" "Context"
-    Ptr Pango.Layout ->                     -- layout : TInterface "Pango" "Layout"
-    IO ()
-
-
-showLayout ::
-    (MonadIO m, Pango.LayoutK a) =>
-    Cairo.Context                           -- cr
-    -> a                                    -- layout
-    -> m ()                                 -- result
-showLayout cr layout = liftIO $ do
-    let cr' = unsafeManagedPtrGetPtr cr
-    let layout' = unsafeManagedPtrCastPtr layout
-    pango_cairo_show_layout cr' layout'
-    touchManagedPtr cr
-    touchManagedPtr layout
-    return ()
-
-
--- function pango_cairo_show_glyph_string
--- Args : [Arg {argCName = "cr", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "font", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "glyphs", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_show_glyph_string" pango_cairo_show_glyph_string :: 
-    Ptr Cairo.Context ->                    -- cr : TInterface "cairo" "Context"
-    Ptr Pango.Font ->                       -- font : TInterface "Pango" "Font"
-    Ptr Pango.GlyphString ->                -- glyphs : TInterface "Pango" "GlyphString"
-    IO ()
-
-
-showGlyphString ::
-    (MonadIO m, Pango.FontK a) =>
-    Cairo.Context                           -- cr
-    -> a                                    -- font
-    -> Pango.GlyphString                    -- glyphs
-    -> m ()                                 -- result
-showGlyphString cr font glyphs = liftIO $ do
-    let cr' = unsafeManagedPtrGetPtr cr
-    let font' = unsafeManagedPtrCastPtr font
-    let glyphs' = unsafeManagedPtrGetPtr glyphs
-    pango_cairo_show_glyph_string cr' font' glyphs'
-    touchManagedPtr cr
-    touchManagedPtr font
-    touchManagedPtr glyphs
-    return ()
-
-
--- function pango_cairo_show_glyph_item
--- Args : [Arg {argCName = "cr", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "glyph_item", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_show_glyph_item" pango_cairo_show_glyph_item :: 
-    Ptr Cairo.Context ->                    -- cr : TInterface "cairo" "Context"
-    CString ->                              -- text : TBasicType TUTF8
-    Ptr Pango.GlyphItem ->                  -- glyph_item : TInterface "Pango" "GlyphItem"
-    IO ()
-
-
-showGlyphItem ::
-    (MonadIO m) =>
-    Cairo.Context                           -- cr
-    -> T.Text                               -- text
-    -> Pango.GlyphItem                      -- glyphItem
-    -> m ()                                 -- result
-showGlyphItem cr text glyphItem = liftIO $ do
-    let cr' = unsafeManagedPtrGetPtr cr
-    text' <- textToCString text
-    let glyphItem' = unsafeManagedPtrGetPtr glyphItem
-    pango_cairo_show_glyph_item cr' text' glyphItem'
-    touchManagedPtr cr
-    touchManagedPtr glyphItem
-    freeMem text'
-    return ()
-
-
--- function pango_cairo_show_error_underline
--- Args : [Arg {argCName = "cr", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "x", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "y", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "height", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_show_error_underline" pango_cairo_show_error_underline :: 
-    Ptr Cairo.Context ->                    -- cr : TInterface "cairo" "Context"
-    CDouble ->                              -- x : TBasicType TDouble
-    CDouble ->                              -- y : TBasicType TDouble
-    CDouble ->                              -- width : TBasicType TDouble
-    CDouble ->                              -- height : TBasicType TDouble
-    IO ()
-
-
-showErrorUnderline ::
-    (MonadIO m) =>
-    Cairo.Context                           -- cr
-    -> Double                               -- x
-    -> Double                               -- y
-    -> Double                               -- width
-    -> Double                               -- height
-    -> m ()                                 -- result
-showErrorUnderline cr x y width height = liftIO $ do
-    let cr' = unsafeManagedPtrGetPtr cr
-    let x' = realToFrac x
-    let y' = realToFrac y
-    let width' = realToFrac width
-    let height' = realToFrac height
-    pango_cairo_show_error_underline cr' x' y' width' height'
-    touchManagedPtr cr
-    return ()
-
-
--- function pango_cairo_layout_path
--- Args : [Arg {argCName = "cr", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "layout", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_layout_path" pango_cairo_layout_path :: 
-    Ptr Cairo.Context ->                    -- cr : TInterface "cairo" "Context"
-    Ptr Pango.Layout ->                     -- layout : TInterface "Pango" "Layout"
-    IO ()
-
-
-layoutPath ::
-    (MonadIO m, Pango.LayoutK a) =>
-    Cairo.Context                           -- cr
-    -> a                                    -- layout
-    -> m ()                                 -- result
-layoutPath cr layout = liftIO $ do
-    let cr' = unsafeManagedPtrGetPtr cr
-    let layout' = unsafeManagedPtrCastPtr layout
-    pango_cairo_layout_path cr' layout'
-    touchManagedPtr cr
-    touchManagedPtr layout
-    return ()
-
-
--- function pango_cairo_layout_line_path
--- Args : [Arg {argCName = "cr", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "line", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_layout_line_path" pango_cairo_layout_line_path :: 
-    Ptr Cairo.Context ->                    -- cr : TInterface "cairo" "Context"
-    Ptr Pango.LayoutLine ->                 -- line : TInterface "Pango" "LayoutLine"
-    IO ()
-
-
-layoutLinePath ::
-    (MonadIO m) =>
-    Cairo.Context                           -- cr
-    -> Pango.LayoutLine                     -- line
-    -> m ()                                 -- result
-layoutLinePath cr line = liftIO $ do
-    let cr' = unsafeManagedPtrGetPtr cr
-    let line' = unsafeManagedPtrGetPtr line
-    pango_cairo_layout_line_path cr' line'
-    touchManagedPtr cr
-    touchManagedPtr line
-    return ()
-
-
--- function pango_cairo_glyph_string_path
--- Args : [Arg {argCName = "cr", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "font", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "glyphs", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_glyph_string_path" pango_cairo_glyph_string_path :: 
-    Ptr Cairo.Context ->                    -- cr : TInterface "cairo" "Context"
-    Ptr Pango.Font ->                       -- font : TInterface "Pango" "Font"
-    Ptr Pango.GlyphString ->                -- glyphs : TInterface "Pango" "GlyphString"
-    IO ()
-
-
-glyphStringPath ::
-    (MonadIO m, Pango.FontK a) =>
-    Cairo.Context                           -- cr
-    -> a                                    -- font
-    -> Pango.GlyphString                    -- glyphs
-    -> m ()                                 -- result
-glyphStringPath cr font glyphs = liftIO $ do
-    let cr' = unsafeManagedPtrGetPtr cr
-    let font' = unsafeManagedPtrCastPtr font
-    let glyphs' = unsafeManagedPtrGetPtr glyphs
-    pango_cairo_glyph_string_path cr' font' glyphs'
-    touchManagedPtr cr
-    touchManagedPtr font
-    touchManagedPtr glyphs
-    return ()
-
-
--- function pango_cairo_error_underline_path
--- Args : [Arg {argCName = "cr", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "x", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "y", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "width", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "height", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_error_underline_path" pango_cairo_error_underline_path :: 
-    Ptr Cairo.Context ->                    -- cr : TInterface "cairo" "Context"
-    CDouble ->                              -- x : TBasicType TDouble
-    CDouble ->                              -- y : TBasicType TDouble
-    CDouble ->                              -- width : TBasicType TDouble
-    CDouble ->                              -- height : TBasicType TDouble
-    IO ()
-
-
-errorUnderlinePath ::
-    (MonadIO m) =>
-    Cairo.Context                           -- cr
-    -> Double                               -- x
-    -> Double                               -- y
-    -> Double                               -- width
-    -> Double                               -- height
-    -> m ()                                 -- result
-errorUnderlinePath cr x y width height = liftIO $ do
-    let cr' = unsafeManagedPtrGetPtr cr
-    let x' = realToFrac x
-    let y' = realToFrac y
-    let width' = realToFrac width
-    let height' = realToFrac height
-    pango_cairo_error_underline_path cr' x' y' width' height'
-    touchManagedPtr cr
-    return ()
-
-
--- function pango_cairo_create_layout
--- Args : [Arg {argCName = "cr", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface "Pango" "Layout")
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_create_layout" pango_cairo_create_layout :: 
-    Ptr Cairo.Context ->                    -- cr : TInterface "cairo" "Context"
-    IO (Ptr Pango.Layout)
-
-
-createLayout ::
-    (MonadIO m) =>
-    Cairo.Context                           -- cr
-    -> m Pango.Layout                       -- result
-createLayout cr = liftIO $ do
-    let cr' = unsafeManagedPtrGetPtr cr
-    result <- pango_cairo_create_layout cr'
-    checkUnexpectedReturnNULL "pango_cairo_create_layout" result
-    result' <- (wrapObject Pango.Layout) result
-    touchManagedPtr cr
-    return result'
-
-
--- function pango_cairo_create_context
--- Args : [Arg {argCName = "cr", argType = TInterface "cairo" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface "Pango" "Context")
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_create_context" pango_cairo_create_context :: 
-    Ptr Cairo.Context ->                    -- cr : TInterface "cairo" "Context"
-    IO (Ptr Pango.Context)
-
-
-createContext ::
-    (MonadIO m) =>
-    Cairo.Context                           -- cr
-    -> m Pango.Context                      -- result
-createContext cr = liftIO $ do
-    let cr' = unsafeManagedPtrGetPtr cr
-    result <- pango_cairo_create_context cr'
-    checkUnexpectedReturnNULL "pango_cairo_create_context" result
-    result' <- (wrapObject Pango.Context) result
-    touchManagedPtr cr
-    return result'
-
-
--- function pango_cairo_context_set_shape_renderer
--- Args : [Arg {argCName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "func", argType = TInterface "PangoCairo" "ShapeRendererFunc", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeNotified, argClosure = 2, argDestroy = 3, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "data", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dnotify", argType = TInterface "GLib" "DestroyNotify", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeAsync, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_context_set_shape_renderer" pango_cairo_context_set_shape_renderer :: 
-    Ptr Pango.Context ->                    -- context : TInterface "Pango" "Context"
-    FunPtr ShapeRendererFuncC ->            -- func : TInterface "PangoCairo" "ShapeRendererFunc"
-    Ptr () ->                               -- data : TBasicType TPtr
-    FunPtr GLib.DestroyNotifyC ->           -- dnotify : TInterface "GLib" "DestroyNotify"
-    IO ()
-
-
-contextSetShapeRenderer ::
-    (MonadIO m, Pango.ContextK a) =>
-    a                                       -- context
-    -> Maybe (ShapeRendererFunc)            -- func
-    -> m ()                                 -- result
-contextSetShapeRenderer context func = liftIO $ do
-    let context' = unsafeManagedPtrCastPtr context
-    maybeFunc <- case func of
-        Nothing -> return (castPtrToFunPtr nullPtr)
-        Just jFunc -> do
-            jFunc' <- mkShapeRendererFunc (shapeRendererFuncWrapper Nothing jFunc)
-            return jFunc'
-    let data_ = castFunPtrToPtr maybeFunc
-    let dnotify = safeFreeFunPtrPtr
-    pango_cairo_context_set_shape_renderer context' maybeFunc data_ dnotify
-    touchManagedPtr context
-    return ()
-
-
--- function pango_cairo_context_set_resolution
--- Args : [Arg {argCName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dpi", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_context_set_resolution" pango_cairo_context_set_resolution :: 
-    Ptr Pango.Context ->                    -- context : TInterface "Pango" "Context"
-    CDouble ->                              -- dpi : TBasicType TDouble
-    IO ()
-
-
-contextSetResolution ::
-    (MonadIO m, Pango.ContextK a) =>
-    a                                       -- context
-    -> Double                               -- dpi
-    -> m ()                                 -- result
-contextSetResolution context dpi = liftIO $ do
-    let context' = unsafeManagedPtrCastPtr context
-    let dpi' = realToFrac dpi
-    pango_cairo_context_set_resolution context' dpi'
-    touchManagedPtr context
-    return ()
-
-
--- function pango_cairo_context_set_font_options
--- Args : [Arg {argCName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "options", argType = TInterface "cairo" "FontOptions", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_context_set_font_options" pango_cairo_context_set_font_options :: 
-    Ptr Pango.Context ->                    -- context : TInterface "Pango" "Context"
-    Ptr Cairo.FontOptions ->                -- options : TInterface "cairo" "FontOptions"
-    IO ()
-
-
-contextSetFontOptions ::
-    (MonadIO m, Pango.ContextK a) =>
-    a                                       -- context
-    -> Maybe (Cairo.FontOptions)            -- options
-    -> m ()                                 -- result
-contextSetFontOptions context options = liftIO $ do
-    let context' = unsafeManagedPtrCastPtr context
-    maybeOptions <- case options of
-        Nothing -> return nullPtr
-        Just jOptions -> do
-            let jOptions' = unsafeManagedPtrGetPtr jOptions
-            return jOptions'
-    pango_cairo_context_set_font_options context' maybeOptions
-    touchManagedPtr context
-    whenJust options touchManagedPtr
-    return ()
-
-
--- function pango_cairo_context_get_resolution
--- Args : [Arg {argCName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TDouble)
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_context_get_resolution" pango_cairo_context_get_resolution :: 
-    Ptr Pango.Context ->                    -- context : TInterface "Pango" "Context"
-    IO CDouble
-
-
-contextGetResolution ::
-    (MonadIO m, Pango.ContextK a) =>
-    a                                       -- context
-    -> m Double                             -- result
-contextGetResolution context = liftIO $ do
-    let context' = unsafeManagedPtrCastPtr context
-    result <- pango_cairo_context_get_resolution context'
-    let result' = realToFrac result
-    touchManagedPtr context
-    return result'
-
-
--- function pango_cairo_context_get_font_options
--- Args : [Arg {argCName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface "cairo" "FontOptions")
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_context_get_font_options" pango_cairo_context_get_font_options :: 
-    Ptr Pango.Context ->                    -- context : TInterface "Pango" "Context"
-    IO (Ptr Cairo.FontOptions)
-
-
-contextGetFontOptions ::
-    (MonadIO m, Pango.ContextK a) =>
-    a                                       -- context
-    -> m (Maybe Cairo.FontOptions)          -- result
-contextGetFontOptions context = liftIO $ do
-    let context' = unsafeManagedPtrCastPtr context
-    result <- pango_cairo_context_get_font_options context'
-    maybeResult <- convertIfNonNull result $ \result' -> do
-        result'' <- (newPtr Cairo.FontOptions) result'
-        return result''
-    touchManagedPtr context
-    return maybeResult
-
-
-
diff --git a/GI/PangoCairo/Interfaces.hs b/GI/PangoCairo/Interfaces.hs
deleted file mode 100644
--- a/GI/PangoCairo/Interfaces.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
--}
-
-module GI.PangoCairo.Interfaces
-    (     module GI.PangoCairo.Interfaces.Font    ,
-    module GI.PangoCairo.Interfaces.FontMap ,
-
-
-    ) where
-
-import GI.PangoCairo.Interfaces.Font
-import GI.PangoCairo.Interfaces.FontMap
-
-import Data.GI.Base.ShortPrelude
-
-import qualified Data.GI.Base.Attributes as GI.Attributes
-import qualified Data.Text as T
-import qualified Data.ByteString.Char8 as B
-import qualified Data.Map as Map
-
-import GI.PangoCairo.Types
-import GI.PangoCairo.Callbacks
-
-
diff --git a/GI/PangoCairo/Interfaces/Font.hs b/GI/PangoCairo/Interfaces/Font.hs
deleted file mode 100644
--- a/GI/PangoCairo/Interfaces/Font.hs
+++ /dev/null
@@ -1,140 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
--}
-
-module GI.PangoCairo.Interfaces.Font
-    ( 
-
--- * Exported types
-    Font(..)                                ,
-    noFont                                  ,
-    FontK                                   ,
-    toFont                                  ,
-
-
- -- * Methods
--- ** fontGetScaledFont
-    FontGetScaledFontMethodInfo             ,
-    fontGetScaledFont                       ,
-
-
-
-
-    ) where
-
-import Data.GI.Base.ShortPrelude
-
-import qualified Data.GI.Base.Attributes as GI.Attributes
-import qualified Data.Text as T
-import qualified Data.ByteString.Char8 as B
-import qualified Data.Map as Map
-
-import GI.PangoCairo.Types
-import GI.PangoCairo.Callbacks
-import qualified GI.GObject as GObject
-import qualified GI.Pango as Pango
-import qualified GI.Cairo as Cairo
-
--- interface Font 
-
-newtype Font = Font (ForeignPtr Font)
-noFont :: Maybe Font
-noFont = Nothing
-
-type family ResolveFontMethod (t :: Symbol) (o :: *) :: * where
-    ResolveFontMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
-    ResolveFontMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
-    ResolveFontMethod "describe" o = Pango.FontDescribeMethodInfo
-    ResolveFontMethod "describeWithAbsoluteSize" o = Pango.FontDescribeWithAbsoluteSizeMethodInfo
-    ResolveFontMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
-    ResolveFontMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
-    ResolveFontMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
-    ResolveFontMethod "notify" o = GObject.ObjectNotifyMethodInfo
-    ResolveFontMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
-    ResolveFontMethod "ref" o = GObject.ObjectRefMethodInfo
-    ResolveFontMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
-    ResolveFontMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
-    ResolveFontMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
-    ResolveFontMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
-    ResolveFontMethod "stealData" o = GObject.ObjectStealDataMethodInfo
-    ResolveFontMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
-    ResolveFontMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
-    ResolveFontMethod "unref" o = GObject.ObjectUnrefMethodInfo
-    ResolveFontMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
-    ResolveFontMethod "getData" o = GObject.ObjectGetDataMethodInfo
-    ResolveFontMethod "getFontMap" o = Pango.FontGetFontMapMethodInfo
-    ResolveFontMethod "getGlyphExtents" o = Pango.FontGetGlyphExtentsMethodInfo
-    ResolveFontMethod "getMetrics" o = Pango.FontGetMetricsMethodInfo
-    ResolveFontMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
-    ResolveFontMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
-    ResolveFontMethod "getScaledFont" o = FontGetScaledFontMethodInfo
-    ResolveFontMethod "setData" o = GObject.ObjectSetDataMethodInfo
-    ResolveFontMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
-    ResolveFontMethod l o = MethodResolutionFailed l o
-
-instance (info ~ ResolveFontMethod t Font, MethodInfo info Font p) => IsLabelProxy t (Font -> p) where
-    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
-
-#if MIN_VERSION_base(4,9,0)
-instance (info ~ ResolveFontMethod t Font, MethodInfo info Font p) => IsLabel t (Font -> p) where
-    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
-#endif
-
-type instance AttributeList Font = FontAttributeList
-type FontAttributeList = ('[ ] :: [(Symbol, *)])
-
-type instance SignalList Font = FontSignalList
-type FontSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
-
-foreign import ccall "pango_cairo_font_get_type"
-    c_pango_cairo_font_get_type :: IO GType
-
-type instance ParentTypes Font = FontParentTypes
-type FontParentTypes = '[Pango.Font, GObject.Object]
-
-instance GObject Font where
-    gobjectIsInitiallyUnowned _ = False
-    gobjectType _ = c_pango_cairo_font_get_type
-    
-
-class GObject o => FontK o
-instance (GObject o, IsDescendantOf Font o) => FontK o
-
-toFont :: FontK o => o -> IO Font
-toFont = unsafeCastTo Font
-
--- method Font::get_scaled_font
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "_obj", argType = TInterface "PangoCairo" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface "cairo" "ScaledFont")
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_font_get_scaled_font" pango_cairo_font_get_scaled_font :: 
-    Ptr Font ->                             -- _obj : TInterface "PangoCairo" "Font"
-    IO (Ptr Cairo.ScaledFont)
-
-
-fontGetScaledFont ::
-    (MonadIO m, FontK a) =>
-    a                                       -- _obj
-    -> m (Maybe Cairo.ScaledFont)           -- result
-fontGetScaledFont _obj = liftIO $ do
-    let _obj' = unsafeManagedPtrCastPtr _obj
-    result <- pango_cairo_font_get_scaled_font _obj'
-    maybeResult <- convertIfNonNull result $ \result' -> do
-        result'' <- (wrapBoxed Cairo.ScaledFont) result'
-        return result''
-    touchManagedPtr _obj
-    return maybeResult
-
-data FontGetScaledFontMethodInfo
-instance (signature ~ (m (Maybe Cairo.ScaledFont)), MonadIO m, FontK a) => MethodInfo FontGetScaledFontMethodInfo a signature where
-    overloadedMethod _ = fontGetScaledFont
-
-
diff --git a/GI/PangoCairo/Interfaces/Font.hs-boot b/GI/PangoCairo/Interfaces/Font.hs-boot
deleted file mode 100644
--- a/GI/PangoCairo/Interfaces/Font.hs-boot
+++ /dev/null
@@ -1,14 +0,0 @@
-module GI.PangoCairo.Interfaces.Font where
-
-import Data.GI.Base.ShortPrelude
-
-import qualified Data.GI.Base.Attributes as GI.Attributes
-import qualified Data.Text as T
-import qualified Data.ByteString.Char8 as B
-import qualified Data.Map as Map
-
-newtype Font = Font (ForeignPtr Font)
-instance GObject Font where
-class GObject o => FontK o
-instance (GObject o, IsDescendantOf Font o) => FontK o
-data FontGetScaledFontMethodInfo
diff --git a/GI/PangoCairo/Interfaces/FontMap.hs b/GI/PangoCairo/Interfaces/FontMap.hs
deleted file mode 100644
--- a/GI/PangoCairo/Interfaces/FontMap.hs
+++ /dev/null
@@ -1,324 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
--}
-
-module GI.PangoCairo.Interfaces.FontMap
-    ( 
-
--- * Exported types
-    FontMap(..)                             ,
-    noFontMap                               ,
-    FontMapK                                ,
-    toFontMap                               ,
-
-
- -- * Methods
--- ** fontMapGetDefault
-    fontMapGetDefault                       ,
-
-
--- ** fontMapGetFontType
-    FontMapGetFontTypeMethodInfo            ,
-    fontMapGetFontType                      ,
-
-
--- ** fontMapGetResolution
-    FontMapGetResolutionMethodInfo          ,
-    fontMapGetResolution                    ,
-
-
--- ** fontMapNew
-    fontMapNew                              ,
-
-
--- ** fontMapNewForFontType
-    fontMapNewForFontType                   ,
-
-
--- ** fontMapSetDefault
-    FontMapSetDefaultMethodInfo             ,
-    fontMapSetDefault                       ,
-
-
--- ** fontMapSetResolution
-    FontMapSetResolutionMethodInfo          ,
-    fontMapSetResolution                    ,
-
-
-
-
-    ) where
-
-import Data.GI.Base.ShortPrelude
-
-import qualified Data.GI.Base.Attributes as GI.Attributes
-import qualified Data.Text as T
-import qualified Data.ByteString.Char8 as B
-import qualified Data.Map as Map
-
-import GI.PangoCairo.Types
-import GI.PangoCairo.Callbacks
-import qualified GI.GObject as GObject
-import qualified GI.Pango as Pango
-import qualified GI.Cairo as Cairo
-
--- interface FontMap 
-
-newtype FontMap = FontMap (ForeignPtr FontMap)
-noFontMap :: Maybe FontMap
-noFontMap = Nothing
-
-type family ResolveFontMapMethod (t :: Symbol) (o :: *) :: * where
-    ResolveFontMapMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
-    ResolveFontMapMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
-    ResolveFontMapMethod "changed" o = Pango.FontMapChangedMethodInfo
-    ResolveFontMapMethod "createContext" o = Pango.FontMapCreateContextMethodInfo
-    ResolveFontMapMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
-    ResolveFontMapMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
-    ResolveFontMapMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
-    ResolveFontMapMethod "listFamilies" o = Pango.FontMapListFamiliesMethodInfo
-    ResolveFontMapMethod "loadFont" o = Pango.FontMapLoadFontMethodInfo
-    ResolveFontMapMethod "loadFontset" o = Pango.FontMapLoadFontsetMethodInfo
-    ResolveFontMapMethod "notify" o = GObject.ObjectNotifyMethodInfo
-    ResolveFontMapMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
-    ResolveFontMapMethod "ref" o = GObject.ObjectRefMethodInfo
-    ResolveFontMapMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
-    ResolveFontMapMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
-    ResolveFontMapMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
-    ResolveFontMapMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
-    ResolveFontMapMethod "stealData" o = GObject.ObjectStealDataMethodInfo
-    ResolveFontMapMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
-    ResolveFontMapMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
-    ResolveFontMapMethod "unref" o = GObject.ObjectUnrefMethodInfo
-    ResolveFontMapMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
-    ResolveFontMapMethod "getData" o = GObject.ObjectGetDataMethodInfo
-    ResolveFontMapMethod "getFontType" o = FontMapGetFontTypeMethodInfo
-    ResolveFontMapMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
-    ResolveFontMapMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
-    ResolveFontMapMethod "getResolution" o = FontMapGetResolutionMethodInfo
-    ResolveFontMapMethod "getSerial" o = Pango.FontMapGetSerialMethodInfo
-    ResolveFontMapMethod "getShapeEngineType" o = Pango.FontMapGetShapeEngineTypeMethodInfo
-    ResolveFontMapMethod "setData" o = GObject.ObjectSetDataMethodInfo
-    ResolveFontMapMethod "setDefault" o = FontMapSetDefaultMethodInfo
-    ResolveFontMapMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
-    ResolveFontMapMethod "setResolution" o = FontMapSetResolutionMethodInfo
-    ResolveFontMapMethod l o = MethodResolutionFailed l o
-
-instance (info ~ ResolveFontMapMethod t FontMap, MethodInfo info FontMap p) => IsLabelProxy t (FontMap -> p) where
-    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
-
-#if MIN_VERSION_base(4,9,0)
-instance (info ~ ResolveFontMapMethod t FontMap, MethodInfo info FontMap p) => IsLabel t (FontMap -> p) where
-    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
-#endif
-
-type instance AttributeList FontMap = FontMapAttributeList
-type FontMapAttributeList = ('[ ] :: [(Symbol, *)])
-
-type instance SignalList FontMap = FontMapSignalList
-type FontMapSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
-
-foreign import ccall "pango_cairo_font_map_get_type"
-    c_pango_cairo_font_map_get_type :: IO GType
-
-type instance ParentTypes FontMap = FontMapParentTypes
-type FontMapParentTypes = '[Pango.FontMap, GObject.Object]
-
-instance GObject FontMap where
-    gobjectIsInitiallyUnowned _ = False
-    gobjectType _ = c_pango_cairo_font_map_get_type
-    
-
-class GObject o => FontMapK o
-instance (GObject o, IsDescendantOf FontMap o) => FontMapK o
-
-toFontMap :: FontMapK o => o -> IO FontMap
-toFontMap = unsafeCastTo FontMap
-
--- method FontMap::get_font_type
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "_obj", argType = TInterface "PangoCairo" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface "cairo" "FontType")
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_font_map_get_font_type" pango_cairo_font_map_get_font_type :: 
-    Ptr FontMap ->                          -- _obj : TInterface "PangoCairo" "FontMap"
-    IO (Ptr Cairo.FontType)
-
-
-fontMapGetFontType ::
-    (MonadIO m, FontMapK a) =>
-    a                                       -- _obj
-    -> m Cairo.FontType                     -- result
-fontMapGetFontType _obj = liftIO $ do
-    let _obj' = unsafeManagedPtrCastPtr _obj
-    result <- pango_cairo_font_map_get_font_type _obj'
-    checkUnexpectedReturnNULL "pango_cairo_font_map_get_font_type" result
-    result' <- (wrapPtr Cairo.FontType) result
-    touchManagedPtr _obj
-    return result'
-
-data FontMapGetFontTypeMethodInfo
-instance (signature ~ (m Cairo.FontType), MonadIO m, FontMapK a) => MethodInfo FontMapGetFontTypeMethodInfo a signature where
-    overloadedMethod _ = fontMapGetFontType
-
--- method FontMap::get_resolution
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "_obj", argType = TInterface "PangoCairo" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TBasicType TDouble)
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_font_map_get_resolution" pango_cairo_font_map_get_resolution :: 
-    Ptr FontMap ->                          -- _obj : TInterface "PangoCairo" "FontMap"
-    IO CDouble
-
-
-fontMapGetResolution ::
-    (MonadIO m, FontMapK a) =>
-    a                                       -- _obj
-    -> m Double                             -- result
-fontMapGetResolution _obj = liftIO $ do
-    let _obj' = unsafeManagedPtrCastPtr _obj
-    result <- pango_cairo_font_map_get_resolution _obj'
-    let result' = realToFrac result
-    touchManagedPtr _obj
-    return result'
-
-data FontMapGetResolutionMethodInfo
-instance (signature ~ (m Double), MonadIO m, FontMapK a) => MethodInfo FontMapGetResolutionMethodInfo a signature where
-    overloadedMethod _ = fontMapGetResolution
-
--- method FontMap::set_default
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "_obj", argType = TInterface "PangoCairo" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_font_map_set_default" pango_cairo_font_map_set_default :: 
-    Ptr FontMap ->                          -- _obj : TInterface "PangoCairo" "FontMap"
-    IO ()
-
-
-fontMapSetDefault ::
-    (MonadIO m, FontMapK a) =>
-    a                                       -- _obj
-    -> m ()                                 -- result
-fontMapSetDefault _obj = liftIO $ do
-    let _obj' = unsafeManagedPtrCastPtr _obj
-    pango_cairo_font_map_set_default _obj'
-    touchManagedPtr _obj
-    return ()
-
-data FontMapSetDefaultMethodInfo
-instance (signature ~ (m ()), MonadIO m, FontMapK a) => MethodInfo FontMapSetDefaultMethodInfo a signature where
-    overloadedMethod _ = fontMapSetDefault
-
--- method FontMap::set_resolution
--- method type : OrdinaryMethod
--- Args : [Arg {argCName = "_obj", argType = TInterface "PangoCairo" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dpi", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Nothing
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_font_map_set_resolution" pango_cairo_font_map_set_resolution :: 
-    Ptr FontMap ->                          -- _obj : TInterface "PangoCairo" "FontMap"
-    CDouble ->                              -- dpi : TBasicType TDouble
-    IO ()
-
-
-fontMapSetResolution ::
-    (MonadIO m, FontMapK a) =>
-    a                                       -- _obj
-    -> Double                               -- dpi
-    -> m ()                                 -- result
-fontMapSetResolution _obj dpi = liftIO $ do
-    let _obj' = unsafeManagedPtrCastPtr _obj
-    let dpi' = realToFrac dpi
-    pango_cairo_font_map_set_resolution _obj' dpi'
-    touchManagedPtr _obj
-    return ()
-
-data FontMapSetResolutionMethodInfo
-instance (signature ~ (Double -> m ()), MonadIO m, FontMapK a) => MethodInfo FontMapSetResolutionMethodInfo a signature where
-    overloadedMethod _ = fontMapSetResolution
-
--- method FontMap::get_default
--- method type : MemberFunction
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface "Pango" "FontMap")
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_font_map_get_default" pango_cairo_font_map_get_default :: 
-    IO (Ptr Pango.FontMap)
-
-
-fontMapGetDefault ::
-    (MonadIO m) =>
-    m Pango.FontMap                         -- result
-fontMapGetDefault  = liftIO $ do
-    result <- pango_cairo_font_map_get_default
-    checkUnexpectedReturnNULL "pango_cairo_font_map_get_default" result
-    result' <- (newObject Pango.FontMap) result
-    return result'
-
--- method FontMap::new
--- method type : MemberFunction
--- Args : []
--- Lengths : []
--- returnType : Just (TInterface "Pango" "FontMap")
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_font_map_new" pango_cairo_font_map_new :: 
-    IO (Ptr Pango.FontMap)
-
-
-fontMapNew ::
-    (MonadIO m) =>
-    m Pango.FontMap                         -- result
-fontMapNew  = liftIO $ do
-    result <- pango_cairo_font_map_new
-    checkUnexpectedReturnNULL "pango_cairo_font_map_new" result
-    result' <- (wrapObject Pango.FontMap) result
-    return result'
-
--- method FontMap::new_for_font_type
--- method type : MemberFunction
--- Args : [Arg {argCName = "fonttype", argType = TInterface "cairo" "FontType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
--- Lengths : []
--- returnType : Just (TInterface "Pango" "FontMap")
--- throws : False
--- Skip return : False
-
-foreign import ccall "pango_cairo_font_map_new_for_font_type" pango_cairo_font_map_new_for_font_type :: 
-    Ptr Cairo.FontType ->                   -- fonttype : TInterface "cairo" "FontType"
-    IO (Ptr Pango.FontMap)
-
-
-fontMapNewForFontType ::
-    (MonadIO m) =>
-    Cairo.FontType                          -- fonttype
-    -> m (Maybe Pango.FontMap)              -- result
-fontMapNewForFontType fonttype = liftIO $ do
-    let fonttype' = unsafeManagedPtrGetPtr fonttype
-    result <- pango_cairo_font_map_new_for_font_type fonttype'
-    maybeResult <- convertIfNonNull result $ \result' -> do
-        result'' <- (wrapObject Pango.FontMap) result'
-        return result''
-    touchManagedPtr fonttype
-    return maybeResult
-
-
diff --git a/GI/PangoCairo/Interfaces/FontMap.hs-boot b/GI/PangoCairo/Interfaces/FontMap.hs-boot
deleted file mode 100644
--- a/GI/PangoCairo/Interfaces/FontMap.hs-boot
+++ /dev/null
@@ -1,17 +0,0 @@
-module GI.PangoCairo.Interfaces.FontMap where
-
-import Data.GI.Base.ShortPrelude
-
-import qualified Data.GI.Base.Attributes as GI.Attributes
-import qualified Data.Text as T
-import qualified Data.ByteString.Char8 as B
-import qualified Data.Map as Map
-
-newtype FontMap = FontMap (ForeignPtr FontMap)
-instance GObject FontMap where
-class GObject o => FontMapK o
-instance (GObject o, IsDescendantOf FontMap o) => FontMapK o
-data FontMapGetFontTypeMethodInfo
-data FontMapGetResolutionMethodInfo
-data FontMapSetDefaultMethodInfo
-data FontMapSetResolutionMethodInfo
diff --git a/GI/PangoCairo/Objects.hs b/GI/PangoCairo/Objects.hs
deleted file mode 100644
--- a/GI/PangoCairo/Objects.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
--}
-
-module GI.PangoCairo.Objects
-    (     module GI.PangoCairo.Objects.FcFontMap  ,
-
-
-    ) where
-
-import GI.PangoCairo.Objects.FcFontMap
-
-import Data.GI.Base.ShortPrelude
-
-import qualified Data.GI.Base.Attributes as GI.Attributes
-import qualified Data.Text as T
-import qualified Data.ByteString.Char8 as B
-import qualified Data.Map as Map
-
-import GI.PangoCairo.Types
-import GI.PangoCairo.Callbacks
-
-
diff --git a/GI/PangoCairo/Objects/FcFontMap.hs b/GI/PangoCairo/Objects/FcFontMap.hs
deleted file mode 100644
--- a/GI/PangoCairo/Objects/FcFontMap.hs
+++ /dev/null
@@ -1,104 +0,0 @@
-
-
-{- |
-Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-License    : LGPL-2.1
-Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
--}
-
-module GI.PangoCairo.Objects.FcFontMap
-    ( 
-
--- * Exported types
-    FcFontMap(..)                           ,
-    FcFontMapK                              ,
-    toFcFontMap                             ,
-    noFcFontMap                             ,
-
-
-    ) where
-
-import Data.GI.Base.ShortPrelude
-
-import qualified Data.GI.Base.Attributes as GI.Attributes
-import qualified Data.Text as T
-import qualified Data.ByteString.Char8 as B
-import qualified Data.Map as Map
-
-import GI.PangoCairo.Types
-import GI.PangoCairo.Callbacks
-import qualified GI.GObject as GObject
-import qualified GI.Pango as Pango
-
-newtype FcFontMap = FcFontMap (ForeignPtr FcFontMap)
-foreign import ccall "pango_cairo_fc_font_map_get_type"
-    c_pango_cairo_fc_font_map_get_type :: IO GType
-
-type instance ParentTypes FcFontMap = FcFontMapParentTypes
-type FcFontMapParentTypes = '[Pango.FontMap, GObject.Object, FontMap]
-
-instance GObject FcFontMap where
-    gobjectIsInitiallyUnowned _ = False
-    gobjectType _ = c_pango_cairo_fc_font_map_get_type
-    
-
-class GObject o => FcFontMapK o
-instance (GObject o, IsDescendantOf FcFontMap o) => FcFontMapK o
-
-toFcFontMap :: FcFontMapK o => o -> IO FcFontMap
-toFcFontMap = unsafeCastTo FcFontMap
-
-noFcFontMap :: Maybe FcFontMap
-noFcFontMap = Nothing
-
-type family ResolveFcFontMapMethod (t :: Symbol) (o :: *) :: * where
-    ResolveFcFontMapMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
-    ResolveFcFontMapMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
-    ResolveFcFontMapMethod "changed" o = Pango.FontMapChangedMethodInfo
-    ResolveFcFontMapMethod "createContext" o = Pango.FontMapCreateContextMethodInfo
-    ResolveFcFontMapMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
-    ResolveFcFontMapMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
-    ResolveFcFontMapMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
-    ResolveFcFontMapMethod "listFamilies" o = Pango.FontMapListFamiliesMethodInfo
-    ResolveFcFontMapMethod "loadFont" o = Pango.FontMapLoadFontMethodInfo
-    ResolveFcFontMapMethod "loadFontset" o = Pango.FontMapLoadFontsetMethodInfo
-    ResolveFcFontMapMethod "notify" o = GObject.ObjectNotifyMethodInfo
-    ResolveFcFontMapMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
-    ResolveFcFontMapMethod "ref" o = GObject.ObjectRefMethodInfo
-    ResolveFcFontMapMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
-    ResolveFcFontMapMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
-    ResolveFcFontMapMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
-    ResolveFcFontMapMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
-    ResolveFcFontMapMethod "stealData" o = GObject.ObjectStealDataMethodInfo
-    ResolveFcFontMapMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
-    ResolveFcFontMapMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
-    ResolveFcFontMapMethod "unref" o = GObject.ObjectUnrefMethodInfo
-    ResolveFcFontMapMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
-    ResolveFcFontMapMethod "getData" o = GObject.ObjectGetDataMethodInfo
-    ResolveFcFontMapMethod "getFontType" o = FontMapGetFontTypeMethodInfo
-    ResolveFcFontMapMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
-    ResolveFcFontMapMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
-    ResolveFcFontMapMethod "getResolution" o = FontMapGetResolutionMethodInfo
-    ResolveFcFontMapMethod "getSerial" o = Pango.FontMapGetSerialMethodInfo
-    ResolveFcFontMapMethod "getShapeEngineType" o = Pango.FontMapGetShapeEngineTypeMethodInfo
-    ResolveFcFontMapMethod "setData" o = GObject.ObjectSetDataMethodInfo
-    ResolveFcFontMapMethod "setDefault" o = FontMapSetDefaultMethodInfo
-    ResolveFcFontMapMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
-    ResolveFcFontMapMethod "setResolution" o = FontMapSetResolutionMethodInfo
-    ResolveFcFontMapMethod l o = MethodResolutionFailed l o
-
-instance (info ~ ResolveFcFontMapMethod t FcFontMap, MethodInfo info FcFontMap p) => IsLabelProxy t (FcFontMap -> p) where
-    fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
-
-#if MIN_VERSION_base(4,9,0)
-instance (info ~ ResolveFcFontMapMethod t FcFontMap, MethodInfo info FcFontMap p) => IsLabel t (FcFontMap -> p) where
-    fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
-#endif
-
-type instance AttributeList FcFontMap = FcFontMapAttributeList
-type FcFontMapAttributeList = ('[ ] :: [(Symbol, *)])
-
-type instance SignalList FcFontMap = FcFontMapSignalList
-type FcFontMapSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
-
-
diff --git a/GI/PangoCairo/Objects/FcFontMap.hs-boot b/GI/PangoCairo/Objects/FcFontMap.hs-boot
deleted file mode 100644
--- a/GI/PangoCairo/Objects/FcFontMap.hs-boot
+++ /dev/null
@@ -1,13 +0,0 @@
-module GI.PangoCairo.Objects.FcFontMap where
-
-import Data.GI.Base.ShortPrelude
-
-import qualified Data.GI.Base.Attributes as GI.Attributes
-import qualified Data.Text as T
-import qualified Data.ByteString.Char8 as B
-import qualified Data.Map as Map
-
-newtype FcFontMap = FcFontMap (ForeignPtr FcFontMap)
-instance GObject FcFontMap where
-class GObject o => FcFontMapK o
-instance (GObject o, IsDescendantOf FcFontMap o) => FcFontMapK o
diff --git a/GI/PangoCairo/Types.hs b/GI/PangoCairo/Types.hs
deleted file mode 100644
--- a/GI/PangoCairo/Types.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-module GI.PangoCairo.Types
-    (     module GI.PangoCairo.Interfaces.Font    ,
-    module GI.PangoCairo.Interfaces.FontMap ,
-    module GI.PangoCairo.Objects.FcFontMap  ,
-
-
-    ) where
-
-
-import {-# SOURCE #-} GI.PangoCairo.Interfaces.Font
-import {-# SOURCE #-} GI.PangoCairo.Interfaces.FontMap
-import {-# SOURCE #-} GI.PangoCairo.Objects.FcFontMap
-
-
diff --git a/Setup.hs b/Setup.hs
--- a/Setup.hs
+++ b/Setup.hs
@@ -1,3 +1,12 @@
-#!/usr/bin/env runhaskell
-import Distribution.Simple
-main = defaultMain
+{-# LANGUAGE OverloadedStrings #-}
+
+import Distribution.Simple (defaultMainWithHooks)
+import Data.GI.CodeGen.CabalHooks (simpleHaskellGIHooks)
+
+main = defaultMainWithHooks (simpleHaskellGIHooks name version verbose
+                             overridesFile outputDir)
+    where name = "PangoCairo"
+          version = "1.0"
+          verbose = False
+          overridesFile = Nothing
+          outputDir = Nothing
diff --git a/gi-pangocairo.cabal b/gi-pangocairo.cabal
--- a/gi-pangocairo.cabal
+++ b/gi-pangocairo.cabal
@@ -1,6 +1,5 @@
--- Autogenerated, do not edit.
 name:               gi-pangocairo
-version:            0.1.38.15
+version:            1.0.1
 synopsis:           PangoCairo bindings
 description:        Bindings for PangoCairo, autogenerated by haskell-gi.
 homepage:           https://github.com/haskell-gi/haskell-gi
@@ -9,31 +8,28 @@
 author:             Will Thompson, Iñaki García Etxebarria and Jonas Platte
 maintainer:         Iñaki García Etxebarria (garetxe@gmail.com)
 category:           Bindings
-build-type:         Simple
-cabal-version:      >=1.10
+build-type:         Custom
+cabal-version:      >= 1.24
 
+custom-setup
+  setup-depends: base >= 4.7,
+                 Cabal >= 1.24,
+                 haskell-gi >= 0.15
+
 library
     default-language:   Haskell2010
     default-extensions: NoImplicitPrelude, ScopedTypeVariables, CPP, OverloadedStrings, NegativeLiterals, ConstraintKinds, TypeFamilies, MultiParamTypeClasses, KindSignatures, FlexibleInstances, UndecidableInstances, DataKinds, FlexibleContexts
     other-extensions:   PatternSynonyms ViewPatterns
     ghc-options:        -fno-warn-unused-imports -fno-warn-warnings-deprecations
-    exposed-modules:    GI.PangoCairo.Types
-                        GI.PangoCairo
-                        GI.PangoCairo.Callbacks
-                        GI.PangoCairo.Functions
-                        GI.PangoCairo.Interfaces
-                        GI.PangoCairo.Interfaces.Font
-                        GI.PangoCairo.Interfaces.FontMap
-                        GI.PangoCairo.Objects
-                        GI.PangoCairo.Objects.FcFontMap
-    pkgconfig-depends:  pangocairo >= 1.38
+
+    pkgconfig-depends:  pangocairo >= 1.0 && < 2
     build-depends: base >= 4.7 && <5,
         haskell-gi-base >= 0.15 && < 1,
-        gi-glib >= 0.2.46.15 && < 0.2.47,
-        gi-gobject >= 0.2.46.15 && < 0.2.47,
-        gi-pango >= 0.1.38.15 && < 0.1.39,
-        gi-cairo >= 0.1.14.15 && < 0.1.15,
+        gi-glib == 2.0.*,
+        gi-gobject == 2.0.*,
+        gi-pango == 1.0.*,
+        gi-cairo == 1.0.*,
         bytestring >= 0.10,
         containers >= 0.5,
         text >= 1.0,
-        transformers >= 0.3
+        transformers >= 0.5
