From: Daniel W. <dm...@lu...> - 2013-07-11 16:56:15
|
diffing dir... Sun Jul 7 07:26:53 BST 2013 Hamish Mackenzie <ham...@go...> * Add support gtk.cabal-0 and gtk.cabal-3 Ignore-this: f01c48b1b1d03f6c5a44c5f61735d705 These are the same exacept for gtk.cabal-0 version is 0.X and defaults to -f-gtk3 gtk.cabal-3 version is 3.X and defaults to -fgtk3 The bootstrap.sh file has been updated so it builds both versions. A package.sh script has been added that uses cabal-src to install the sdist files locally then build them to make sure they work. hunk ./bootstrap.sh 1 -#!/bin/sh +#!/bin/sh -ex hunk ./bootstrap.sh 5 -for pkg in tools glib gio cairo pango gtk; do [_$_] +for pkg in tools glib gio cairo pango; do [_$_] hunk ./bootstrap.sh 10 - cabal install; + cabal copy; + cabal register; hunk ./bootstrap.sh 15 + +cd gtk; + +cabal build; +cabal haddock; +cabal copy; +cabal register; + +cp -f gtk.cabal-3 gtk.cabal; +cabal build; +cabal haddock; +cabal copy; +cabal register; + + hunk ./cairo/cairo.cabal 2 -Version: 0.12.4 +Version: 0.12.4.1 hunk ./gio/gio.cabal 2 -Version: 0.12.4 +Version: 0.12.4.1 hunk ./glib/glib.cabal 2 -Version: 0.12.4 +Version: 0.12.4.1 hunk ./gtk/gtk.cabal 2 -Version: 0.12.4 +Version: 3.12.4.1 addfile ./gtk/gtk.cabal-0 hunk ./gtk/gtk.cabal-0 1 +Name: gtk +Version: 0.12.4.1 +License: LGPL-2.1 +License-file: COPYING +Copyright: (c) 2001-2010 The Gtk2Hs Team +Author: Axel Simon, Duncan Coutts and many others +Maintainer: gtk...@li... +Build-Type: Custom +Cabal-Version: >= 1.8 +Stability: provisional +homepage: http://projects.haskell.org/gtk2hs/ +bug-reports: http://hackage.haskell.org/trac/gtk2hs/ +Synopsis: Binding to the Gtk+ graphical user interface library. +Description: This is the core library of the Gtk2Hs suite of libraries for Haskell + based on Gtk+. Gtk+ is an extensive and mature multi-platform toolkit + for creating graphical user interfaces. +Category: Graphics +Tested-With: GHC == 7.0.4, GHC == 7.2.2, GHC == 7.4.1 +Extra-Source-Files: hsgtk.h + Graphics/UI/Gtk/ModelView/Gtk2HsStore.h + Graphics/UI/Gtk/General/hsgthread.h + template-hsc-gtk2hs.h + SetupWrapper.hs SetupMain.hs Gtk2HsSetup.hs + marshal.list + hierarchy.list + hierarchy3.list + [_$_] +x-Types-File: Graphics/UI/Gtk/Types.chs +x-Types-ModName: Graphics.UI.Gtk.Types +x-Types-Forward: *System.Glib.GObject Graphics.UI.Gtk.General.Threading +x-Types-Destructor: objectUnrefFromMainloop + +Data-Dir: demo +Data-Files: actionMenu/ActionMenu.hs + actionMenu/Makefile + [_$_] + buttonbox/ButtonBox.hs + buttonbox/Makefile + [_$_] + carsim/CarSim.hs + carsim/Makefile + [_$_] + concurrent/Makefile + concurrent/Progress.hs + concurrent/ProgressThreadedRTS.hs + [_$_] + embedded/Embedded.hs + embedded/Makefile + embedded/MPlayer.hs + embedded/Notes.txt + embedded/Uzbl.hs + [_$_] + fastdraw/FastDraw.hs + fastdraw/Makefile + [_$_] + filechooser/FileChooserDemo.glade + filechooser/FileChooserDemo.hs + filechooser/Makefile + [_$_] + fonts/Fonts.hs + fonts/Makefile + [_$_] + graphic/Drawing.hs + graphic/Makefile + [_$_] + gtkbuilder/GtkBuilderTest.hs + gtkbuilder/Makefile + gtkbuilder/simple.ui + [_$_] + hello/Makefile + hello/World.hs + [_$_] + inputmethod/Layout.hs + inputmethod/Makefile + [_$_] + menu/ComboDemo.hs + menu/Makefile + menu/MenuDemo.hs + [_$_] + notebook/Notebook.hs + notebook/Makefile + [_$_] + statusicon/Makefile + statusicon/StatusIcon.hs + [_$_] + treelist/Completion.hs + treelist/DirList.hs + treelist/FilterDemo.hs + treelist/ListDemo.hs + treelist/ListDND.hs + treelist/ListTest.glade + treelist/ListTest.hs + treelist/ListText.hs + treelist/Makefile + treelist/rgb.txt + treelist/TreeDemo.hs + treelist/TreeSort.hs + treelist/TreeTest.glade + treelist/TreeTest.hs + [_$_] + treelist/resListDND/desktop.png + treelist/resListDND/laptop.png + treelist/resListDND/laptopSmall.png + treelist/resListDND/printer.png + treelist/resListDND/server.png + treelist/resListDND/tower.png + [_$_] + unicode/Arabic.hs + unicode/Makefile + [_$_] + demos.txt + [_$_] +Source-Repository head + type: darcs + location: http://code.haskell.org/gtk2hs/ + subdir: gtk + +Flag deprecated + Description: Include definitions in this library that are considered obsolete. + Default: True + Manual: True + +Flag have-gio + Description: Depend on GIO package, thereby enabling certain features. + Default: True + +Flag have-quartz-gtk + Description: Assume that the installed GTK is the version for OS X backend by Quartz, and hence does not provide gdk_x11_drawable_get_xid + Default: False + +Flag gtk3 + Description: Use GTK3 rather than GTK2 + Default: False + +Library + build-depends: base >= 4 && < 5, + array, containers, mtl, bytestring, + glib >= 0.12.0 && < 0.13, + pango >= 0.12.0 && < 0.13, + cairo >= 0.12.0 && < 0.13 + if flag(have-gio) + build-depends: gio >= 0.12.0 && < 0.13 + cpp-options: -DHAVE_GIO + if flag(have-quartz-gtk) + cpp-options: -DHAVE_QUARTZ_GTK + + build-tools: gtk2hsC2hs >= 0.13.5, + gtk2hsHookGenerator, gtk2hsTypeGen + + exposed-modules: + Graphics.UI.Gtk + Graphics.UI.GtkInternals + Graphics.UI.Gtk.Abstract.Bin + Graphics.UI.Gtk.Abstract.Box + Graphics.UI.Gtk.Abstract.ButtonBox + Graphics.UI.Gtk.Abstract.Container + Graphics.UI.Gtk.Abstract.IMContext + Graphics.UI.Gtk.Abstract.Misc + Graphics.UI.Gtk.Abstract.Object + Graphics.UI.Gtk.Abstract.Paned + Graphics.UI.Gtk.Abstract.Range + Graphics.UI.Gtk.Abstract.Scale + Graphics.UI.Gtk.Abstract.Scrollbar + Graphics.UI.Gtk.Abstract.Separator + Graphics.UI.Gtk.Abstract.Widget + Graphics.UI.Gtk.ActionMenuToolbar.Action + Graphics.UI.Gtk.ActionMenuToolbar.ActionGroup + Graphics.UI.Gtk.ActionMenuToolbar.RadioAction + Graphics.UI.Gtk.ActionMenuToolbar.RecentAction + Graphics.UI.Gtk.ActionMenuToolbar.ToggleAction + Graphics.UI.Gtk.ActionMenuToolbar.UIManager + Graphics.UI.Gtk.Builder + Graphics.UI.Gtk.Buttons.Button + Graphics.UI.Gtk.Buttons.CheckButton + Graphics.UI.Gtk.Buttons.RadioButton + Graphics.UI.Gtk.Buttons.ToggleButton + Graphics.UI.Gtk.Buttons.LinkButton + Graphics.UI.Gtk.Buttons.ScaleButton + Graphics.UI.Gtk.Buttons.VolumeButton + Graphics.UI.Gtk.Cairo + Graphics.UI.Gtk.Display.AccelLabel + Graphics.UI.Gtk.Display.Image + Graphics.UI.Gtk.Display.Label + Graphics.UI.Gtk.Display.ProgressBar + Graphics.UI.Gtk.Display.Spinner + Graphics.UI.Gtk.Display.Statusbar + Graphics.UI.Gtk.Display.StatusIcon + Graphics.UI.Gtk.Display.InfoBar + Graphics.UI.Gtk.Embedding.Embedding + Graphics.UI.Gtk.Embedding.Plug + Graphics.UI.Gtk.Embedding.Socket + Graphics.UI.Gtk.Entry.Editable + Graphics.UI.Gtk.Entry.Entry + Graphics.UI.Gtk.Entry.EntryBuffer + Graphics.UI.Gtk.Entry.EntryCompletion + Graphics.UI.Gtk.Entry.HScale + Graphics.UI.Gtk.Entry.SpinButton + Graphics.UI.Gtk.Entry.VScale + Graphics.UI.Gtk.Gdk.AppLaunchContext + Graphics.UI.Gtk.Gdk.Cursor + Graphics.UI.Gtk.Gdk.Keymap + Graphics.UI.Gtk.Gdk.Display + Graphics.UI.Gtk.Gdk.DisplayManager + Graphics.UI.Gtk.Gdk.Drawable + Graphics.UI.Gtk.Gdk.DrawWindow + Graphics.UI.Gtk.Gdk.EventM + Graphics.UI.Gtk.Gdk.Events + Graphics.UI.Gtk.Gdk.GC + Graphics.UI.Gtk.Gdk.Gdk + Graphics.UI.Gtk.Gdk.Keys + Graphics.UI.Gtk.Gdk.Pixbuf + Graphics.UI.Gtk.Gdk.PixbufAnimation + Graphics.UI.Gtk.Gdk.Pixmap + Graphics.UI.Gtk.Gdk.Region + Graphics.UI.Gtk.Gdk.Screen + Graphics.UI.Gtk.General.Clipboard + Graphics.UI.Gtk.General.CssProvider + Graphics.UI.Gtk.General.Drag + Graphics.UI.Gtk.General.General + Graphics.UI.Gtk.General.IconFactory + Graphics.UI.Gtk.General.IconTheme + Graphics.UI.Gtk.General.RcStyle + Graphics.UI.Gtk.General.Selection + Graphics.UI.Gtk.General.Settings + Graphics.UI.Gtk.General.StockItems + Graphics.UI.Gtk.General.Style + Graphics.UI.Gtk.General.StyleContext + Graphics.UI.Gtk.General.StyleProvider + Graphics.UI.Gtk.Layout.Alignment + Graphics.UI.Gtk.Layout.AspectFrame + Graphics.UI.Gtk.Layout.Expander + Graphics.UI.Gtk.Layout.Fixed + Graphics.UI.Gtk.Layout.HBox + Graphics.UI.Gtk.Layout.HButtonBox + Graphics.UI.Gtk.Layout.HPaned + Graphics.UI.Gtk.Layout.Layout + Graphics.UI.Gtk.Layout.Notebook + Graphics.UI.Gtk.Layout.Table + Graphics.UI.Gtk.Layout.VBox + Graphics.UI.Gtk.Layout.VButtonBox + Graphics.UI.Gtk.Layout.VPaned + Graphics.UI.Gtk.MenuComboToolbar.CheckMenuItem + Graphics.UI.Gtk.MenuComboToolbar.Combo + Graphics.UI.Gtk.MenuComboToolbar.ComboBox + Graphics.UI.Gtk.MenuComboToolbar.ComboBoxEntry + Graphics.UI.Gtk.MenuComboToolbar.ImageMenuItem + Graphics.UI.Gtk.MenuComboToolbar.Menu + Graphics.UI.Gtk.MenuComboToolbar.MenuBar + Graphics.UI.Gtk.MenuComboToolbar.MenuItem + Graphics.UI.Gtk.MenuComboToolbar.MenuShell + Graphics.UI.Gtk.MenuComboToolbar.MenuToolButton + Graphics.UI.Gtk.MenuComboToolbar.OptionMenu + Graphics.UI.Gtk.MenuComboToolbar.RadioMenuItem + Graphics.UI.Gtk.MenuComboToolbar.RadioToolButton + Graphics.UI.Gtk.MenuComboToolbar.SeparatorMenuItem + Graphics.UI.Gtk.MenuComboToolbar.SeparatorToolItem + Graphics.UI.Gtk.MenuComboToolbar.TearoffMenuItem + Graphics.UI.Gtk.MenuComboToolbar.ToggleToolButton + Graphics.UI.Gtk.MenuComboToolbar.Toolbar + Graphics.UI.Gtk.MenuComboToolbar.ToolButton + Graphics.UI.Gtk.MenuComboToolbar.ToolItem + Graphics.UI.Gtk.MenuComboToolbar.ToolItemGroup + Graphics.UI.Gtk.MenuComboToolbar.ToolPalette + Graphics.UI.Gtk.Misc.Accessible + Graphics.UI.Gtk.Misc.Adjustment + Graphics.UI.Gtk.Misc.Arrow + Graphics.UI.Gtk.Misc.Calendar + Graphics.UI.Gtk.Misc.DrawingArea + Graphics.UI.Gtk.Misc.EventBox + Graphics.UI.Gtk.Misc.HandleBox + Graphics.UI.Gtk.Misc.IMMulticontext + Graphics.UI.Gtk.Misc.IMContextSimple + Graphics.UI.Gtk.Misc.SizeGroup + Graphics.UI.Gtk.Misc.Tooltip + Graphics.UI.Gtk.Misc.Tooltips + Graphics.UI.Gtk.Misc.Viewport + Graphics.UI.Gtk.ModelView + Graphics.UI.Gtk.ModelView.CellEditable + Graphics.UI.Gtk.ModelView.CellLayout + Graphics.UI.Gtk.ModelView.CellRenderer + Graphics.UI.Gtk.ModelView.CellRendererSpinner + Graphics.UI.Gtk.ModelView.CellRendererCombo + Graphics.UI.Gtk.ModelView.CellRendererPixbuf + Graphics.UI.Gtk.ModelView.CellRendererProgress + Graphics.UI.Gtk.ModelView.CellRendererText + Graphics.UI.Gtk.ModelView.CellRendererAccel + Graphics.UI.Gtk.ModelView.CellRendererSpin + Graphics.UI.Gtk.ModelView.CellRendererToggle + Graphics.UI.Gtk.ModelView.CellView + Graphics.UI.Gtk.ModelView.CustomStore + Graphics.UI.Gtk.ModelView.IconView + Graphics.UI.Gtk.ModelView.ListStore + Graphics.UI.Gtk.ModelView.TreeDrag + Graphics.UI.Gtk.ModelView.TreeModel + Graphics.UI.Gtk.ModelView.TreeModelFilter + Graphics.UI.Gtk.ModelView.TreeModelSort + Graphics.UI.Gtk.ModelView.TreeRowReference + Graphics.UI.Gtk.ModelView.TreeSelection + Graphics.UI.Gtk.ModelView.TreeSortable + Graphics.UI.Gtk.ModelView.TreeStore + Graphics.UI.Gtk.ModelView.TreeView + Graphics.UI.Gtk.ModelView.TreeViewColumn + Graphics.UI.Gtk.Multiline.TextBuffer + Graphics.UI.Gtk.Multiline.TextIter + Graphics.UI.Gtk.Multiline.TextMark + Graphics.UI.Gtk.Multiline.TextTag + Graphics.UI.Gtk.Multiline.TextTagTable + Graphics.UI.Gtk.Multiline.TextView + Graphics.UI.Gtk.Ornaments.Frame + Graphics.UI.Gtk.Ornaments.HSeparator + Graphics.UI.Gtk.Ornaments.VSeparator + Graphics.UI.Gtk.Printing.PaperSize + Graphics.UI.Gtk.Printing.PageSetup + Graphics.UI.Gtk.Printing.PrintContext + Graphics.UI.Gtk.Printing.PrintOperation + Graphics.UI.Gtk.Printing.PrintSettings + Graphics.UI.Gtk.Recent.RecentChooserMenu + Graphics.UI.Gtk.Recent.RecentChooserWidget + Graphics.UI.Gtk.Recent.RecentFilter + Graphics.UI.Gtk.Recent.RecentManager + Graphics.UI.Gtk.Recent.RecentInfo + Graphics.UI.Gtk.Recent.RecentChooser + Graphics.UI.Gtk.Scrolling.HScrollbar + Graphics.UI.Gtk.Scrolling.ScrolledWindow + Graphics.UI.Gtk.Scrolling.VScrollbar + Graphics.UI.Gtk.Selectors.ColorButton + Graphics.UI.Gtk.Selectors.ColorSelection + Graphics.UI.Gtk.Selectors.ColorSelectionDialog + Graphics.UI.Gtk.Selectors.FileChooser + Graphics.UI.Gtk.Selectors.FileChooserButton + Graphics.UI.Gtk.Selectors.FileChooserDialog + Graphics.UI.Gtk.Selectors.FileChooserWidget + Graphics.UI.Gtk.Selectors.FileFilter + Graphics.UI.Gtk.Selectors.FileSelection + Graphics.UI.Gtk.Selectors.FontButton + Graphics.UI.Gtk.Selectors.FontSelection + Graphics.UI.Gtk.Selectors.FontSelectionDialog + Graphics.UI.Gtk.Selectors.HSV + Graphics.UI.Gtk.Special.Ruler + Graphics.UI.Gtk.Special.HRuler + Graphics.UI.Gtk.Special.VRuler + Graphics.UI.Gtk.Windows.AboutDialog + Graphics.UI.Gtk.Windows.Assistant + Graphics.UI.Gtk.Windows.Dialog + Graphics.UI.Gtk.Windows.Invisible + Graphics.UI.Gtk.Windows.MessageDialog + Graphics.UI.Gtk.Windows.Window + Graphics.UI.Gtk.Windows.OffscreenWindow + Graphics.UI.Gtk.Windows.WindowGroup + Graphics.UI.Gtk.General.Enums + other-modules: + Graphics.UI.Gtk.Gdk.Enums + Graphics.UI.Gtk.Gdk.PixbufData + Graphics.UI.Gtk.General.Structs + Graphics.UI.Gtk.ModelView.Types + Graphics.UI.Gtk.ModelView.Sequence + Graphics.UI.Gtk.Multiline.Types + Graphics.UI.Gtk.Abstract.ContainerChildProperties + Graphics.UI.Gtk.General.DNDTypes + Graphics.UI.Gtk.General.Threading + Graphics.UI.Gtk.Types + Graphics.UI.Gtk.Signals + + extensions: ForeignFunctionInterface + c-sources: Graphics/UI/Gtk/ModelView/Gtk2HsStore.c + Graphics/UI/Gtk/General/hsgthread.c + -- Due to http://hackage.haskell.org/trac/ghc/ticket/781 + -- we need to compile the hsgthread.c module with -fPIC to ensure that a global + -- variable in GLib that holds the address for the mutex lock and unlock functions + -- is accessed correctly. This bug only exists on x86-64 platforms. + if arch(x86_64) + cc-options: -fPIC + x-Signals-File: Graphics/UI/Gtk/Signals.chs + x-Signals-Modname: Graphics.UI.Gtk.Signals + x-Signals-Types: marshal.list + -- the following field is only needed because the gtk package may have callbacks that + -- take 'Widget's as arguments which, in turn, need gObjectUnrefFromMainloop which + -- needs to be imported from this module: + x-Signals-Import: Graphics.UI.Gtk.General.Threading + include-dirs: . + if !flag(deprecated) + cpp-options: -DDISABLE_DEPRECATED + else + x-Types-Tag: deprecated [_$_] + if os(windows) + cpp-options: -DWIN32 + extra-libraries: kernel32 + [_$_] + x-c2hs-Header: hsgtk.h + [_$_] + if flag(gtk3) + x-Types-Hierarchy: hierarchy3.list + else + x-Types-Hierarchy: hierarchy.list + [_$_] + if os(windows) || flag(have-quartz-gtk) + x-Types-Tag: default + else + x-Types-Tag: default plugNsocket + cpp-options: -DHAVE_PLUG_AND_SOCKET + + if flag(gtk3) + pkgconfig-depends: gthread-2.0, gtk+-3.0 + else + pkgconfig-depends: gthread-2.0, gtk+-2.0 addfile ./gtk/gtk.cabal-3 hunk ./gtk/gtk.cabal-3 1 +Name: gtk +Version: 3.12.4.1 +License: LGPL-2.1 +License-file: COPYING +Copyright: (c) 2001-2010 The Gtk2Hs Team +Author: Axel Simon, Duncan Coutts and many others +Maintainer: gtk...@li... +Build-Type: Custom +Cabal-Version: >= 1.8 +Stability: provisional +homepage: http://projects.haskell.org/gtk2hs/ +bug-reports: http://hackage.haskell.org/trac/gtk2hs/ +Synopsis: Binding to the Gtk+ graphical user interface library. +Description: This is the core library of the Gtk2Hs suite of libraries for Haskell + based on Gtk+. Gtk+ is an extensive and mature multi-platform toolkit + for creating graphical user interfaces. +Category: Graphics +Tested-With: GHC == 7.0.4, GHC == 7.2.2, GHC == 7.4.1 +Extra-Source-Files: hsgtk.h + Graphics/UI/Gtk/ModelView/Gtk2HsStore.h + Graphics/UI/Gtk/General/hsgthread.h + template-hsc-gtk2hs.h + SetupWrapper.hs SetupMain.hs Gtk2HsSetup.hs + marshal.list + hierarchy.list + hierarchy3.list + [_$_] +x-Types-File: Graphics/UI/Gtk/Types.chs +x-Types-ModName: Graphics.UI.Gtk.Types +x-Types-Forward: *System.Glib.GObject Graphics.UI.Gtk.General.Threading +x-Types-Destructor: objectUnrefFromMainloop + +Data-Dir: demo +Data-Files: actionMenu/ActionMenu.hs + actionMenu/Makefile + [_$_] + buttonbox/ButtonBox.hs + buttonbox/Makefile + [_$_] + carsim/CarSim.hs + carsim/Makefile + [_$_] + concurrent/Makefile + concurrent/Progress.hs + concurrent/ProgressThreadedRTS.hs + [_$_] + embedded/Embedded.hs + embedded/Makefile + embedded/MPlayer.hs + embedded/Notes.txt + embedded/Uzbl.hs + [_$_] + fastdraw/FastDraw.hs + fastdraw/Makefile + [_$_] + filechooser/FileChooserDemo.glade + filechooser/FileChooserDemo.hs + filechooser/Makefile + [_$_] + fonts/Fonts.hs + fonts/Makefile + [_$_] + graphic/Drawing.hs + graphic/Makefile + [_$_] + gtkbuilder/GtkBuilderTest.hs + gtkbuilder/Makefile + gtkbuilder/simple.ui + [_$_] + hello/Makefile + hello/World.hs + [_$_] + inputmethod/Layout.hs + inputmethod/Makefile + [_$_] + menu/ComboDemo.hs + menu/Makefile + menu/MenuDemo.hs + [_$_] + notebook/Notebook.hs + notebook/Makefile + [_$_] + statusicon/Makefile + statusicon/StatusIcon.hs + [_$_] + treelist/Completion.hs + treelist/DirList.hs + treelist/FilterDemo.hs + treelist/ListDemo.hs + treelist/ListDND.hs + treelist/ListTest.glade + treelist/ListTest.hs + treelist/ListText.hs + treelist/Makefile + treelist/rgb.txt + treelist/TreeDemo.hs + treelist/TreeSort.hs + treelist/TreeTest.glade + treelist/TreeTest.hs + [_$_] + treelist/resListDND/desktop.png + treelist/resListDND/laptop.png + treelist/resListDND/laptopSmall.png + treelist/resListDND/printer.png + treelist/resListDND/server.png + treelist/resListDND/tower.png + [_$_] + unicode/Arabic.hs + unicode/Makefile + [_$_] + demos.txt + [_$_] +Source-Repository head + type: darcs + location: http://code.haskell.org/gtk2hs/ + subdir: gtk + +Flag deprecated + Description: Include definitions in this library that are considered obsolete. + Default: True + Manual: True + +Flag have-gio + Description: Depend on GIO package, thereby enabling certain features. + Default: True + +Flag have-quartz-gtk + Description: Assume that the installed GTK is the version for OS X backend by Quartz, and hence does not provide gdk_x11_drawable_get_xid + Default: False + +Flag gtk3 + Description: Use GTK3 rather than GTK2 + Default: True + +Library + build-depends: base >= 4 && < 5, + array, containers, mtl, bytestring, + glib >= 0.12.0 && < 0.13, + pango >= 0.12.0 && < 0.13, + cairo >= 0.12.0 && < 0.13 + if flag(have-gio) + build-depends: gio >= 0.12.0 && < 0.13 + cpp-options: -DHAVE_GIO + if flag(have-quartz-gtk) + cpp-options: -DHAVE_QUARTZ_GTK + + build-tools: gtk2hsC2hs >= 0.13.5, + gtk2hsHookGenerator, gtk2hsTypeGen + + exposed-modules: + Graphics.UI.Gtk + Graphics.UI.GtkInternals + Graphics.UI.Gtk.Abstract.Bin + Graphics.UI.Gtk.Abstract.Box + Graphics.UI.Gtk.Abstract.ButtonBox + Graphics.UI.Gtk.Abstract.Container + Graphics.UI.Gtk.Abstract.IMContext + Graphics.UI.Gtk.Abstract.Misc + Graphics.UI.Gtk.Abstract.Object + Graphics.UI.Gtk.Abstract.Paned + Graphics.UI.Gtk.Abstract.Range + Graphics.UI.Gtk.Abstract.Scale + Graphics.UI.Gtk.Abstract.Scrollbar + Graphics.UI.Gtk.Abstract.Separator + Graphics.UI.Gtk.Abstract.Widget + Graphics.UI.Gtk.ActionMenuToolbar.Action + Graphics.UI.Gtk.ActionMenuToolbar.ActionGroup + Graphics.UI.Gtk.ActionMenuToolbar.RadioAction + Graphics.UI.Gtk.ActionMenuToolbar.RecentAction + Graphics.UI.Gtk.ActionMenuToolbar.ToggleAction + Graphics.UI.Gtk.ActionMenuToolbar.UIManager + Graphics.UI.Gtk.Builder + Graphics.UI.Gtk.Buttons.Button + Graphics.UI.Gtk.Buttons.CheckButton + Graphics.UI.Gtk.Buttons.RadioButton + Graphics.UI.Gtk.Buttons.ToggleButton + Graphics.UI.Gtk.Buttons.LinkButton + Graphics.UI.Gtk.Buttons.ScaleButton + Graphics.UI.Gtk.Buttons.VolumeButton + Graphics.UI.Gtk.Cairo + Graphics.UI.Gtk.Display.AccelLabel + Graphics.UI.Gtk.Display.Image + Graphics.UI.Gtk.Display.Label + Graphics.UI.Gtk.Display.ProgressBar + Graphics.UI.Gtk.Display.Spinner + Graphics.UI.Gtk.Display.Statusbar + Graphics.UI.Gtk.Display.StatusIcon + Graphics.UI.Gtk.Display.InfoBar + Graphics.UI.Gtk.Embedding.Embedding + Graphics.UI.Gtk.Embedding.Plug + Graphics.UI.Gtk.Embedding.Socket + Graphics.UI.Gtk.Entry.Editable + Graphics.UI.Gtk.Entry.Entry + Graphics.UI.Gtk.Entry.EntryBuffer + Graphics.UI.Gtk.Entry.EntryCompletion + Graphics.UI.Gtk.Entry.HScale + Graphics.UI.Gtk.Entry.SpinButton + Graphics.UI.Gtk.Entry.VScale + Graphics.UI.Gtk.Gdk.AppLaunchContext + Graphics.UI.Gtk.Gdk.Cursor + Graphics.UI.Gtk.Gdk.Keymap + Graphics.UI.Gtk.Gdk.Display + Graphics.UI.Gtk.Gdk.DisplayManager + Graphics.UI.Gtk.Gdk.Drawable + Graphics.UI.Gtk.Gdk.DrawWindow + Graphics.UI.Gtk.Gdk.EventM + Graphics.UI.Gtk.Gdk.Events + Graphics.UI.Gtk.Gdk.GC + Graphics.UI.Gtk.Gdk.Gdk + Graphics.UI.Gtk.Gdk.Keys + Graphics.UI.Gtk.Gdk.Pixbuf + Graphics.UI.Gtk.Gdk.PixbufAnimation + Graphics.UI.Gtk.Gdk.Pixmap + Graphics.UI.Gtk.Gdk.Region + Graphics.UI.Gtk.Gdk.Screen + Graphics.UI.Gtk.General.Clipboard + Graphics.UI.Gtk.General.CssProvider + Graphics.UI.Gtk.General.Drag + Graphics.UI.Gtk.General.General + Graphics.UI.Gtk.General.IconFactory + Graphics.UI.Gtk.General.IconTheme + Graphics.UI.Gtk.General.RcStyle + Graphics.UI.Gtk.General.Selection + Graphics.UI.Gtk.General.Settings + Graphics.UI.Gtk.General.StockItems + Graphics.UI.Gtk.General.Style + Graphics.UI.Gtk.General.StyleContext + Graphics.UI.Gtk.General.StyleProvider + Graphics.UI.Gtk.Layout.Alignment + Graphics.UI.Gtk.Layout.AspectFrame + Graphics.UI.Gtk.Layout.Expander + Graphics.UI.Gtk.Layout.Fixed + Graphics.UI.Gtk.Layout.HBox + Graphics.UI.Gtk.Layout.HButtonBox + Graphics.UI.Gtk.Layout.HPaned + Graphics.UI.Gtk.Layout.Layout + Graphics.UI.Gtk.Layout.Notebook + Graphics.UI.Gtk.Layout.Table + Graphics.UI.Gtk.Layout.VBox + Graphics.UI.Gtk.Layout.VButtonBox + Graphics.UI.Gtk.Layout.VPaned + Graphics.UI.Gtk.MenuComboToolbar.CheckMenuItem + Graphics.UI.Gtk.MenuComboToolbar.Combo + Graphics.UI.Gtk.MenuComboToolbar.ComboBox + Graphics.UI.Gtk.MenuComboToolbar.ComboBoxEntry + Graphics.UI.Gtk.MenuComboToolbar.ImageMenuItem + Graphics.UI.Gtk.MenuComboToolbar.Menu + Graphics.UI.Gtk.MenuComboToolbar.MenuBar + Graphics.UI.Gtk.MenuComboToolbar.MenuItem + Graphics.UI.Gtk.MenuComboToolbar.MenuShell + Graphics.UI.Gtk.MenuComboToolbar.MenuToolButton + Graphics.UI.Gtk.MenuComboToolbar.OptionMenu + Graphics.UI.Gtk.MenuComboToolbar.RadioMenuItem + Graphics.UI.Gtk.MenuComboToolbar.RadioToolButton + Graphics.UI.Gtk.MenuComboToolbar.SeparatorMenuItem + Graphics.UI.Gtk.MenuComboToolbar.SeparatorToolItem + Graphics.UI.Gtk.MenuComboToolbar.TearoffMenuItem + Graphics.UI.Gtk.MenuComboToolbar.ToggleToolButton + Graphics.UI.Gtk.MenuComboToolbar.Toolbar + Graphics.UI.Gtk.MenuComboToolbar.ToolButton + Graphics.UI.Gtk.MenuComboToolbar.ToolItem + Graphics.UI.Gtk.MenuComboToolbar.ToolItemGroup + Graphics.UI.Gtk.MenuComboToolbar.ToolPalette + Graphics.UI.Gtk.Misc.Accessible + Graphics.UI.Gtk.Misc.Adjustment + Graphics.UI.Gtk.Misc.Arrow + Graphics.UI.Gtk.Misc.Calendar + Graphics.UI.Gtk.Misc.DrawingArea + Graphics.UI.Gtk.Misc.EventBox + Graphics.UI.Gtk.Misc.HandleBox + Graphics.UI.Gtk.Misc.IMMulticontext + Graphics.UI.Gtk.Misc.IMContextSimple + Graphics.UI.Gtk.Misc.SizeGroup + Graphics.UI.Gtk.Misc.Tooltip + Graphics.UI.Gtk.Misc.Tooltips + Graphics.UI.Gtk.Misc.Viewport + Graphics.UI.Gtk.ModelView + Graphics.UI.Gtk.ModelView.CellEditable + Graphics.UI.Gtk.ModelView.CellLayout + Graphics.UI.Gtk.ModelView.CellRenderer + Graphics.UI.Gtk.ModelView.CellRendererSpinner + Graphics.UI.Gtk.ModelView.CellRendererCombo + Graphics.UI.Gtk.ModelView.CellRendererPixbuf + Graphics.UI.Gtk.ModelView.CellRendererProgress + Graphics.UI.Gtk.ModelView.CellRendererText + Graphics.UI.Gtk.ModelView.CellRendererAccel + Graphics.UI.Gtk.ModelView.CellRendererSpin + Graphics.UI.Gtk.ModelView.CellRendererToggle + Graphics.UI.Gtk.ModelView.CellView + Graphics.UI.Gtk.ModelView.CustomStore + Graphics.UI.Gtk.ModelView.IconView + Graphics.UI.Gtk.ModelView.ListStore + Graphics.UI.Gtk.ModelView.TreeDrag + Graphics.UI.Gtk.ModelView.TreeModel + Graphics.UI.Gtk.ModelView.TreeModelFilter + Graphics.UI.Gtk.ModelView.TreeModelSort + Graphics.UI.Gtk.ModelView.TreeRowReference + Graphics.UI.Gtk.ModelView.TreeSelection + Graphics.UI.Gtk.ModelView.TreeSortable + Graphics.UI.Gtk.ModelView.TreeStore + Graphics.UI.Gtk.ModelView.TreeView + Graphics.UI.Gtk.ModelView.TreeViewColumn + Graphics.UI.Gtk.Multiline.TextBuffer + Graphics.UI.Gtk.Multiline.TextIter + Graphics.UI.Gtk.Multiline.TextMark + Graphics.UI.Gtk.Multiline.TextTag + Graphics.UI.Gtk.Multiline.TextTagTable + Graphics.UI.Gtk.Multiline.TextView + Graphics.UI.Gtk.Ornaments.Frame + Graphics.UI.Gtk.Ornaments.HSeparator + Graphics.UI.Gtk.Ornaments.VSeparator + Graphics.UI.Gtk.Printing.PaperSize + Graphics.UI.Gtk.Printing.PageSetup + Graphics.UI.Gtk.Printing.PrintContext + Graphics.UI.Gtk.Printing.PrintOperation + Graphics.UI.Gtk.Printing.PrintSettings + Graphics.UI.Gtk.Recent.RecentChooserMenu + Graphics.UI.Gtk.Recent.RecentChooserWidget + Graphics.UI.Gtk.Recent.RecentFilter + Graphics.UI.Gtk.Recent.RecentManager + Graphics.UI.Gtk.Recent.RecentInfo + Graphics.UI.Gtk.Recent.RecentChooser + Graphics.UI.Gtk.Scrolling.HScrollbar + Graphics.UI.Gtk.Scrolling.ScrolledWindow + Graphics.UI.Gtk.Scrolling.VScrollbar + Graphics.UI.Gtk.Selectors.ColorButton + Graphics.UI.Gtk.Selectors.ColorSelection + Graphics.UI.Gtk.Selectors.ColorSelectionDialog + Graphics.UI.Gtk.Selectors.FileChooser + Graphics.UI.Gtk.Selectors.FileChooserButton + Graphics.UI.Gtk.Selectors.FileChooserDialog + Graphics.UI.Gtk.Selectors.FileChooserWidget + Graphics.UI.Gtk.Selectors.FileFilter + Graphics.UI.Gtk.Selectors.FileSelection + Graphics.UI.Gtk.Selectors.FontButton + Graphics.UI.Gtk.Selectors.FontSelection + Graphics.UI.Gtk.Selectors.FontSelectionDialog + Graphics.UI.Gtk.Selectors.HSV + Graphics.UI.Gtk.Special.Ruler + Graphics.UI.Gtk.Special.HRuler + Graphics.UI.Gtk.Special.VRuler + Graphics.UI.Gtk.Windows.AboutDialog + Graphics.UI.Gtk.Windows.Assistant + Graphics.UI.Gtk.Windows.Dialog + Graphics.UI.Gtk.Windows.Invisible + Graphics.UI.Gtk.Windows.MessageDialog + Graphics.UI.Gtk.Windows.Window + Graphics.UI.Gtk.Windows.OffscreenWindow + Graphics.UI.Gtk.Windows.WindowGroup + Graphics.UI.Gtk.General.Enums + other-modules: + Graphics.UI.Gtk.Gdk.Enums + Graphics.UI.Gtk.Gdk.PixbufData + Graphics.UI.Gtk.General.Structs + Graphics.UI.Gtk.ModelView.Types + Graphics.UI.Gtk.ModelView.Sequence + Graphics.UI.Gtk.Multiline.Types + Graphics.UI.Gtk.Abstract.ContainerChildProperties + Graphics.UI.Gtk.General.DNDTypes + Graphics.UI.Gtk.General.Threading + Graphics.UI.Gtk.Types + Graphics.UI.Gtk.Signals + + extensions: ForeignFunctionInterface + c-sources: Graphics/UI/Gtk/ModelView/Gtk2HsStore.c + Graphics/UI/Gtk/General/hsgthread.c + -- Due to http://hackage.haskell.org/trac/ghc/ticket/781 + -- we need to compile the hsgthread.c module with -fPIC to ensure that a global + -- variable in GLib that holds the address for the mutex lock and unlock functions + -- is accessed correctly. This bug only exists on x86-64 platforms. + if arch(x86_64) + cc-options: -fPIC + x-Signals-File: Graphics/UI/Gtk/Signals.chs + x-Signals-Modname: Graphics.UI.Gtk.Signals + x-Signals-Types: marshal.list + -- the following field is only needed because the gtk package may have callbacks that + -- take 'Widget's as arguments which, in turn, need gObjectUnrefFromMainloop which + -- needs to be imported from this module: + x-Signals-Import: Graphics.UI.Gtk.General.Threading + include-dirs: . + if !flag(deprecated) + cpp-options: -DDISABLE_DEPRECATED + else + x-Types-Tag: deprecated [_$_] + if os(windows) + cpp-options: -DWIN32 + extra-libraries: kernel32 + [_$_] + x-c2hs-Header: hsgtk.h + [_$_] + if flag(gtk3) + x-Types-Hierarchy: hierarchy3.list + else + x-Types-Hierarchy: hierarchy.list + [_$_] + if os(windows) || flag(have-quartz-gtk) + x-Types-Tag: default + else + x-Types-Tag: default plugNsocket + cpp-options: -DHAVE_PLUG_AND_SOCKET + + if flag(gtk3) + pkgconfig-depends: gthread-2.0, gtk+-3.0 + else + pkgconfig-depends: gthread-2.0, gtk+-2.0 addfile ./package.sh hunk ./package.sh 1 +#!/bin/sh -ex + +# Use cabal-src-install to install the source packages locally + +# 0.X (defaults to) Gtk2 +cp -f gtk/gtk.cabal-0 gtk/gtk.cabal; +cabal-src-install --src-only; + +# 3.X (defaults to) Gtk3 +cp -f gtk/gtk.cabal-3 gtk/gtk.cabal; +(cd gtk; cabal-src-install --src-only); + +# Check the packages work +cabal install gtk2hs-buildtools --reinstall --force-reinstall; +cabal install glib --reinstall --force-reinstall; +cabal install gio --reinstall --force-reinstall; +cabal install cairo --reinstall --force-reinstall; +cabal install pango --reinstall --force-reinstall; +cabal install gtk --constraint='gtk<=1' --reinstall --force-reinstall; +cabal install gtk --constraint='gtk>=3' --reinstall --force-reinstall; + hunk ./pango/pango.cabal 2 -Version: 0.12.4 +Version: 0.12.4.1 hunk ./sources.txt 1 +./tools hunk ./tools/gtk2hs-buildtools.cabal 2 -Version: 0.12.4 +Version: 0.12.4.1 |