2024-07-29 07:26:47 +02:00
|
|
|
cabal-version: 3.4
|
|
|
|
name: elna
|
|
|
|
version: 0.1.0.0
|
2024-07-21 16:15:17 +02:00
|
|
|
synopsis:
|
|
|
|
Elna programming language compiles simple mathematical operations to RISC-V code
|
|
|
|
|
|
|
|
-- description:
|
|
|
|
license: MPL-2.0
|
|
|
|
license-file: LICENSE
|
|
|
|
author: Eugen Wissner
|
|
|
|
maintainer: belka@caraus.de
|
|
|
|
-- copyright:
|
|
|
|
category: Language
|
|
|
|
build-type: Simple
|
|
|
|
extra-doc-files: TODO README
|
|
|
|
|
|
|
|
common warnings
|
2024-07-23 22:44:42 +02:00
|
|
|
build-depends:
|
2024-07-29 07:26:47 +02:00
|
|
|
base >=4.7 && <5,
|
2024-09-04 21:50:13 +02:00
|
|
|
bytestring ^>= 0.12.1,
|
2024-07-23 22:44:42 +02:00
|
|
|
megaparsec ^>= 9.6,
|
2024-09-05 23:18:48 +02:00
|
|
|
optparse-applicative ^>= 0.18.1,
|
2024-09-04 21:50:13 +02:00
|
|
|
vector ^>= 0.13.1,
|
2024-07-23 22:44:42 +02:00
|
|
|
text ^>= 2.0
|
2024-07-21 16:15:17 +02:00
|
|
|
ghc-options: -Wall
|
2024-07-23 22:44:42 +02:00
|
|
|
default-extensions:
|
2024-08-27 14:21:50 +02:00
|
|
|
DataKinds,
|
2024-07-23 22:44:42 +02:00
|
|
|
ExplicitForAll,
|
2024-08-07 22:47:35 +02:00
|
|
|
LambdaCase,
|
2024-08-08 19:11:24 +02:00
|
|
|
OverloadedStrings,
|
2024-09-04 21:50:13 +02:00
|
|
|
DuplicateRecordFields,
|
2024-08-08 19:11:24 +02:00
|
|
|
RecordWildCards
|
2024-07-29 07:26:47 +02:00
|
|
|
default-language: GHC2021
|
2024-07-21 16:15:17 +02:00
|
|
|
|
2024-07-23 22:44:42 +02:00
|
|
|
library elna-internal
|
|
|
|
import: warnings
|
|
|
|
exposed-modules:
|
2024-09-05 23:18:48 +02:00
|
|
|
Language.Elna.Architecture.RiscV
|
2024-10-02 22:56:15 +02:00
|
|
|
Language.Elna.Backend.Allocator
|
|
|
|
Language.Elna.Backend.Intermediate
|
2024-09-08 02:08:13 +02:00
|
|
|
Language.Elna.CommandLine
|
2024-10-02 22:56:15 +02:00
|
|
|
Language.Elna.Frontend.AST
|
|
|
|
Language.Elna.Frontend.NameAnalysis
|
|
|
|
Language.Elna.Frontend.Parser
|
|
|
|
Language.Elna.Frontend.SymbolTable
|
|
|
|
Language.Elna.Frontend.TypeAnalysis
|
|
|
|
Language.Elna.Frontend.Types
|
|
|
|
Language.Elna.Glue
|
2024-07-26 12:22:07 +02:00
|
|
|
Language.Elna.Location
|
2024-09-04 21:50:13 +02:00
|
|
|
Language.Elna.Object.Elf
|
2024-10-02 22:56:15 +02:00
|
|
|
Language.Elna.RiscV.CodeGenerator
|
|
|
|
Language.Elna.RiscV.ElfWriter
|
2024-07-21 16:15:17 +02:00
|
|
|
build-depends:
|
2024-07-30 23:49:16 +02:00
|
|
|
exceptions ^>= 0.10,
|
2024-07-26 12:22:07 +02:00
|
|
|
hashable ^>= 1.4.3,
|
|
|
|
parser-combinators ^>= 1.3,
|
2024-07-29 07:26:47 +02:00
|
|
|
transformers ^>= 0.6.1,
|
2024-07-26 12:22:07 +02:00
|
|
|
unordered-containers ^>= 0.2.20
|
2024-07-23 22:44:42 +02:00
|
|
|
hs-source-dirs: lib
|
|
|
|
|
|
|
|
executable elna
|
|
|
|
import: warnings
|
|
|
|
main-is: Main.hs
|
|
|
|
build-depends:
|
2024-09-05 23:18:48 +02:00
|
|
|
elna:elna-internal,
|
|
|
|
filepath ^>= 1.5.3
|
2024-07-23 22:44:42 +02:00
|
|
|
hs-source-dirs: src
|
|
|
|
|
|
|
|
test-suite elna-test
|
|
|
|
import: warnings
|
|
|
|
type: exitcode-stdio-1.0
|
|
|
|
main-is: Spec.hs
|
|
|
|
other-modules:
|
2024-07-30 23:49:16 +02:00
|
|
|
Language.Elna.NameAnalysisSpec
|
2024-07-23 22:44:42 +02:00
|
|
|
Language.Elna.ParserSpec
|
|
|
|
hs-source-dirs:
|
|
|
|
tests
|
|
|
|
ghc-options: -threaded -rtsopts -with-rtsopts=-N -Wall
|
|
|
|
|
|
|
|
build-depends:
|
2024-07-29 07:26:47 +02:00
|
|
|
elna:elna-internal,
|
2024-07-23 22:44:42 +02:00
|
|
|
hspec >= 2.10.9 && < 2.12,
|
|
|
|
hspec-expectations ^>= 0.8.2,
|
|
|
|
hspec-megaparsec ^>= 2.2.0,
|
2024-07-24 01:22:20 +02:00
|
|
|
text
|
2024-07-23 22:44:42 +02:00
|
|
|
build-tool-depends:
|
|
|
|
hspec-discover:hspec-discover
|