
Maybe two executables, the "third" is actually straight C... the line of
interest is "other-modules:" I guess.
Hope that helps.
Sean.
On 9 May 2013 16:38, emacstheviking
Harry,
Here is a complete cabal file for something I am working on now... it contains some libraries and three executables that use the library. It's a WIP for me BUt it works and I can even use it from Leksah by creating a workspace and adding this hexwax.cabal file as a Package.
It's long but concise!
---- -- Initial hexwax.cabal generated by cabal init. For further -- documentation, see http://haskell.org/cabal/users-guide/
-- The name of the package. name: hexwax
-- The package version. See the Haskell package versioning policy (PVP) -- for standards guiding when and how versions should be incremented. -- http://www.haskell.org/haskellwiki/Package_versioning_policy -- PVP summary: +-+------- breaking API changes -- | | +----- non-breaking API additions -- | | | +--- code changes with no API change version: 0.1.0.0
-- A short (one-line) description of the package. synopsis: Hexwax ExnapdIO-USB wrapper
-- A longer description of the package. -- description:
-- The license under which the package is released. license: LGPL-3
-- The file containing the license text. license-file: LICENSE
-- The package author(s). author: Sean Charles
-- An email address to which users can send suggestions, bug reports, and -- patches. maintainer: sean@objitsu.com
-- A copyright notice. -- copyright:
category: Hardware Interfacing
build-type: Simple
-- Constraint on the version of Cabal needed to build this package. cabal-version: >=1.8
executable hexwax -- .hs or .lhs file containing the Main module. main-is: usb1.hs -- Modules included in this executable, other than Main. other-modules: Hexwax -- Other library packages from which modules are imported. build-depends: base ==4.5.*, MissingM ==0.0.*, bytestring ==0.9.*, vector ==0.10.*, usb ==1.2.*
-- -- This is the STEPPER MOTOR CONTROLLER program as I want to create -- separate little utilities rather than one big monolithic command -- line bloated application. -- executable smc -- .hs or .lhs file containing the Main module. main-is: stepper.hs -- Modules included in this executable, other than Main. other-modules: Hexwax -- Other library packages from which modules are imported. build-depends: base ==4.5.*, MissingM ==0.0.*, bytestring ==0.9.*, vector ==0.10.*, usb ==1.2.*, transformers
-- -- PULSE-WIDTH-MODULATION controller experiment... two leds on the board are -- connected to CCP1 and CCP2, this will try to make them do something -- interesting. executable pwm -- executable pwm -- .hs or .lhs file containing the Main module. main-is: pwm.hs -- Modules included in this executable, other than Main. other-modules: Hexwax -- Other library packages from which modules are imported. build-depends: base ==4.5.*, MissingM ==0.0.*, bytestring ==0.9.*, vector ==0.10.*, usb ==1.2.*, transformers
On 9 May 2013 16:24, harry
wrote: I've written a library, and a simple program to demonstrate it. I can write the cabal file for the library, but I can't get the executable section right. How can I tell it to use the library defined herein?
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners