ghcide/BUILD.bazel

90 lines
1.9 KiB
Python
Raw Normal View History

2019-04-04 11:33:38 +03:00
# Copyright (c) 2019 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
load("//bazel_tools:haskell.bzl", "da_haskell_binary", "da_haskell_library")
load("@os_info//:os_info.bzl", "is_windows")
2019-04-04 11:33:38 +03:00
depends = [
"aeson",
"base",
"binary",
"bytestring",
"containers",
"deepseq",
"directory",
"either",
"extra",
"filepath",
"hashable",
"haskell-lsp",
"haskell-lsp-types",
"mtl",
"network-uri",
"pretty",
"rope-utf16-splay",
"safe-exceptions",
"sorted-list",
"shake",
"stm",
"syb",
"text",
"time",
"transformers",
"uniplate",
"unordered-containers",
"uri-encode",
]
2019-04-04 11:33:38 +03:00
da_haskell_library(
name = "haskell-ide-core",
srcs = glob(["src/**/*.hs"]),
hazel_deps = depends + [
"ghc-lib",
"ghc-lib-parser",
],
src_strip_prefix = "src",
visibility = ["//visibility:public"],
deps = [
"//libs-haskell/prettyprinter-syntax",
],
)
da_haskell_library(
name = "haskell-ide-core-public",
srcs = glob(["src/**/*.hs"]),
compiler_flags = ["-DGHC_STABLE"],
hazel_deps = depends + [
"ghc",
"ghc-boot",
"ghc-boot-th",
],
src_strip_prefix = "src",
visibility = ["//visibility:public"],
deps = [
"//libs-haskell/prettyprinter-syntax",
],
2019-04-04 11:33:38 +03:00
)
da_haskell_binary(
name = "haskell-ide-core-demo",
srcs = glob(["test/**/*.hs"]),
hazel_deps = [
"base",
"containers",
"extra",
"filepath",
"ghc-paths",
"ghc",
"haskell-lsp",
"shake",
"text",
],
main_function = "Demo.main",
src_strip_prefix = "test",
visibility = ["//visibility:public"],
deps = [
"haskell-ide-core-public",
"//libs-haskell/prettyprinter-syntax",
],
) if not is_windows else None # Disable on Windows until ghc-paths is fixed upstream