packages feed

wxcore-0.12.1.7: wxcore.cabal

name:         wxcore
version:      0.12.1.7
license:      LGPL
license-file: LICENSE
author:       Daan Leijen
maintainer:   wxhaskell-devel@lists.sourceforge.net
category:     GUI, User interfaces
synopsis:     wxHaskell core
description:
  wxHaskell is a portable and native GUI library for Haskell. It is
  built on top of wxWidgets, a comprehensive C++ library that is
  portable across all major GUI platforms, including GTK, Windows,
  X11, and MacOS X. This version works with wxWidgets 2.8 only.
homepage:     http://haskell.org/haskellwiki/WxHaskell

cabal-version: >= 1.2
build-type:    Custom

extra-tmp-files:
  src/haskell/Graphics/UI/WXCore/WxcClassInfo.hs
  src/haskell/Graphics/UI/WXCore/WxcClassTypes.hs
  src/haskell/Graphics/UI/WXCore/WxcClasses.hs
  src/haskell/Graphics/UI/WXCore/WxcClassesAL.hs
  src/haskell/Graphics/UI/WXCore/WxcClassesMZ.hs
  src/haskell/Graphics/UI/WXCore/WxcDefs.hs

extra-source-files:
  src/cpp/stc_gen.cpp
  src/eiffel/wx_defs.e
  src/eiffel/wxc_defs.e
  src/eiffel/stc.e
  src/include/db.h
  src/include/dragimage.h
  src/include/eljgrid.h
  src/include/ewxw_def.h
  src/include/graphicscontext.h
  src/include/managed.h
  src/include/mediactrl.h
  src/include/previewframe.h
  src/include/printout.h
  src/include/sound.h
  src/include/stc.h
  src/include/stc_gen.h
  src/include/textstream.h
  src/include/wrapper.h
  src/include/wxc.h
  src/include/wxc_glue.h
  src/include/wxc_types.h

flag splitBase
  description:  use new split base
  default:      True

library
  hs-source-dirs:
    src/haskell

  include-dirs:
    src/include
  
  c-sources:
    src/cpp/apppath.cpp
    src/cpp/db.cpp
    src/cpp/dragimage.cpp
    src/cpp/eljaccelerator.cpp
    src/cpp/eljartprov.cpp
    src/cpp/eljbitmap.cpp
    src/cpp/eljbrush.cpp
    src/cpp/eljbusyinfo.cpp
    src/cpp/eljbutton.cpp
    src/cpp/eljcalendarctrl.cpp
    src/cpp/eljcaret.cpp
    src/cpp/eljcheckbox.cpp
    src/cpp/eljchecklistbox.cpp
    src/cpp/eljchoice.cpp
    src/cpp/eljclipboard.cpp
    src/cpp/eljcoldata.cpp
    src/cpp/eljcolour.cpp
    src/cpp/eljcolourdlg.cpp
    src/cpp/eljcombobox.cpp
    src/cpp/eljconfigbase.cpp
    src/cpp/eljcontrol.cpp
    src/cpp/eljctxhelp.cpp
    src/cpp/eljcursor.cpp
    src/cpp/eljdataformat.cpp
    src/cpp/eljdatetime.cpp
    src/cpp/eljdc.cpp
    src/cpp/eljdcsvg.cpp
    src/cpp/eljdialog.cpp
    src/cpp/eljdirdlg.cpp
    src/cpp/eljdnd.cpp
    src/cpp/eljdrawing.cpp
    src/cpp/eljevent.cpp
    src/cpp/eljfiledialog.cpp
    src/cpp/eljfilehist.cpp
    src/cpp/eljfindrepldlg.cpp
    src/cpp/eljfont.cpp
    src/cpp/eljfontdata.cpp
    src/cpp/eljfontdlg.cpp
    src/cpp/eljframe.cpp
    src/cpp/eljgauge.cpp
    src/cpp/eljgrid.cpp
    src/cpp/eljhelpcontroller.cpp
    src/cpp/eljicnbndl.cpp
    src/cpp/eljicon.cpp
    src/cpp/eljimage.cpp
    src/cpp/eljimagelist.cpp
    src/cpp/eljlayoutconstraints.cpp
    src/cpp/eljlistbox.cpp
    src/cpp/eljlistctrl.cpp
    src/cpp/eljlocale.cpp
    src/cpp/eljlog.cpp
    src/cpp/eljmask.cpp
    src/cpp/eljmdi.cpp
    src/cpp/eljmenu.cpp
    src/cpp/eljmenubar.cpp
    src/cpp/eljmessagedialog.cpp
    src/cpp/eljmime.cpp
    src/cpp/eljminiframe.cpp
    src/cpp/eljnotebook.cpp
    src/cpp/eljpalette.cpp
    src/cpp/eljpanel.cpp
    src/cpp/eljpen.cpp
    src/cpp/eljprintdlg.cpp
    src/cpp/eljprinting.cpp
    src/cpp/eljprocess.cpp
    src/cpp/eljradiobox.cpp
    src/cpp/eljradiobutton.cpp
    src/cpp/eljrc.cpp
    src/cpp/eljregion.cpp
    src/cpp/eljregioniter.cpp
    src/cpp/eljsash.cpp
    src/cpp/eljscrollbar.cpp
    src/cpp/eljscrolledwindow.cpp
    src/cpp/eljsingleinst.cpp
    src/cpp/eljsizer.cpp
    src/cpp/eljslider.cpp
    src/cpp/eljspinctrl.cpp
    src/cpp/eljsplitterwindow.cpp
    src/cpp/eljstaticbox.cpp
    src/cpp/eljstaticline.cpp
    src/cpp/eljstatictext.cpp
    src/cpp/eljstatusbar.cpp
    src/cpp/eljsystemsettings.cpp
    src/cpp/eljtextctrl.cpp
    src/cpp/eljtimer.cpp
    src/cpp/eljtipwnd.cpp
    src/cpp/eljtoolbar.cpp
    src/cpp/eljvalidator.cpp
    src/cpp/eljwindow.cpp
    src/cpp/eljwizard.cpp
    src/cpp/ewxw_main.cpp
    src/cpp/extra.cpp
    src/cpp/graphicscontext.cpp
    src/cpp/image.cpp
    src/cpp/managed.cpp
    src/cpp/mediactrl.cpp
    src/cpp/previewframe.cpp
    src/cpp/printout.cpp
    src/cpp/sckaddr.cpp
    src/cpp/socket.cpp
    src/cpp/sound.cpp
    src/cpp/stc.cpp
    src/cpp/std.cpp
    src/cpp/taskbaricon.cpp
    src/cpp/textstream.cpp
    src/cpp/treectrl.cpp
    src/cpp/wrapper.cpp

  exposed-modules:
    Graphics.UI.WXCore
    Graphics.UI.WXCore.Controls
    Graphics.UI.WXCore.Db
    Graphics.UI.WXCore.Defines
    Graphics.UI.WXCore.Dialogs
    Graphics.UI.WXCore.DragAndDrop
    Graphics.UI.WXCore.Draw
    Graphics.UI.WXCore.Events
    Graphics.UI.WXCore.Frame
    Graphics.UI.WXCore.Image
    Graphics.UI.WXCore.Layout
    Graphics.UI.WXCore.Print
    Graphics.UI.WXCore.Process
    Graphics.UI.WXCore.Types
    Graphics.UI.WXCore.WxcClassInfo
    Graphics.UI.WXCore.WxcClassTypes
    Graphics.UI.WXCore.WxcClasses
    Graphics.UI.WXCore.WxcClassesAL
    Graphics.UI.WXCore.WxcClassesMZ
    Graphics.UI.WXCore.WxcDefs
    Graphics.UI.WXCore.WxcObject
    Graphics.UI.WXCore.WxcTypes

  build-depends:
    bytestring,
    filepath,
    parsec,
    stm,
    wxdirect >= 0.12.1.3,
    directory,
    old-time,
    time

  if flag(splitBase)
    build-depends:
      array >= 0.2 && < 0.4,
      base >= 4 && < 5,
      containers >= 0.2 && < 0.5
  else
    build-depends:
      array >= 0.1 && < 0.3,
      base >= 3 && < 4,
      containers >= 0.1 && < 0.3