80 lines
2.7 KiB
Plaintext
80 lines
2.7 KiB
Plaintext
cabal-version: 2.4
|
||
|
||
name: chusql-server
|
||
version: 1.0.0
|
||
synopsis: ChuSQL 数据库服务器:TCP 端点 + 自家协议 + SQL 会话
|
||
description: ChuSQL 的数据库服务器。负责监听 TCP、一行一条 JSON 的自家协议、
|
||
登录与限流,并把用户 SQL 转交给 chusql-core-engine(存储则由进程内
|
||
的 chusql_core_storage 动态库承担)。Web 管理端与命令行客户端都只
|
||
通过这条 TCP 连接访问数据库。
|
||
build-type: Simple
|
||
|
||
library
|
||
hs-source-dirs: src
|
||
exposed-modules: ChuSQL.Server.Accounts
|
||
ChuSQL.Server.Backend
|
||
ChuSQL.Server.Policy
|
||
ChuSQL.Server.Privileges
|
||
ChuSQL.Server.Session
|
||
ChuSQL.Server.TCP
|
||
build-depends: base >= 4.14 && < 5
|
||
, aeson
|
||
, bytestring
|
||
, chusql-core-engine
|
||
, chusql-core-model
|
||
, chusql-interface
|
||
, containers
|
||
, crypton
|
||
, directory
|
||
, filepath
|
||
, memory
|
||
, network
|
||
, scientific
|
||
, text
|
||
, time
|
||
, vector
|
||
default-language: Haskell2010
|
||
ghc-options: -Wall
|
||
|
||
executable chusql-server
|
||
main-is: Main.hs
|
||
hs-source-dirs: app
|
||
build-depends: base
|
||
, chusql-core-engine
|
||
, chusql-core-model
|
||
, chusql-interface
|
||
, chusql-server
|
||
, containers
|
||
, filepath
|
||
, text
|
||
, time
|
||
default-language: Haskell2010
|
||
ghc-options: -Wall -threaded
|
||
-- 运行期找 libchusql_core_storage.so:$ORIGIN 让二进制与动态库同目录即可
|
||
if os(linux)
|
||
ld-options: -Wl,-rpath,$ORIGIN
|
||
if os(osx)
|
||
ld-options: -Wl,-rpath,@loader_path
|
||
|
||
test-suite chusql-server-test
|
||
type: exitcode-stdio-1.0
|
||
main-is: Spec.hs
|
||
hs-source-dirs: test
|
||
build-depends: base
|
||
, aeson
|
||
, bytestring
|
||
, chusql-core-engine
|
||
, chusql-core-model
|
||
, chusql-interface
|
||
, chusql-server
|
||
, containers
|
||
, directory
|
||
, filepath
|
||
, hspec
|
||
, network
|
||
, text
|
||
, time
|
||
, vector
|
||
default-language: Haskell2010
|
||
ghc-options: -Wall -threaded
|