@@ -81,6 +81,8 @@ Library
8181 ProjectM36.AtomFunction,
8282 ProjectM36.Key,
8383 ProjectM36.DatabaseContext,
84+ ProjectM36.DateExamples,
85+ ProjectM36.AtomFunctionBody,
8486 ProjectM36.RelationalExpression,
8587 ProjectM36.Relation.Show.HTML,
8688 ProjectM36.StaticOptimizer,
@@ -109,15 +111,16 @@ Library
109111 ProjectM36.Transaction.Persist,
110112 ProjectM36.TypeConstructor,
111113 ProjectM36.TypeConstructorDef,
112− ProjectM36.TransactionGraph.Merge,
113− Database.Persist.ProjectM36
114+ ProjectM36.TransactionGraph.Merge
114115 GHC-Options: -Wall -rtsopts
115116 if os(windows)
116117 Build-Depends: Win32 >= 2.3 && < 2.4
117118 Other-Modules: ProjectM36.Win32Handle
118119 else
119− C-sources: ProjectM36/DirectoryFsync.c
120+ C-sources: cbits/DirectoryFsync.c
120121 Build-Depends: unix
122+ CC-Options: -fPIC
123+ Hs-Source-Dirs: ./src/lib
121124 Default-Language: Haskell2010
122125 Default-Extensions: OverloadedStrings
123126
@@ -125,6 +128,7 @@ Executable tutd
125128 Build-Depends: base >=4.8 && <4.9,
126129 ghc >= 7.8 && <= 8.0.1,
127130 ghc-paths,
131+ project-m36,
128132 containers,
129133 unordered-containers,
130134 hashable,
@@ -162,55 +166,13 @@ Executable tutd
162166 attoparsec,
163167 stm-containers,
164168 list-t
165− Other-Modules: ProjectM36.Error,
166− ProjectM36.Base,
167− ProjectM36.RelationalExpression,
168− ProjectM36.Transaction,
169− TutorialD.Interpreter,
169+ Other-Modules: TutorialD.Interpreter,
170170 TutorialD.Interpreter.Base,
171171 TutorialD.Interpreter.DatabaseContextExpr,
172172 TutorialD.Interpreter.RODatabaseContextOperator,
173173 TutorialD.Interpreter.TransactionGraphOperator,
174174 TutorialD.Interpreter.DataTypes.Interval,
175175 TutorialD.Interpreter.DataTypes.DateTime,
176− ProjectM36.Atom,
177− ProjectM36.AtomFunction,
178− ProjectM36.AtomFunctions.Basic,
179− ProjectM36.AtomFunctions.Primitive,
180− ProjectM36.AtomType,
181− ProjectM36.Attribute,
182− ProjectM36.AttributeNames,
183− ProjectM36.Client,
184− ProjectM36.ConcreteTypeRep,
185− ProjectM36.DataConstructorDef,
186− ProjectM36.DataTypes.Basic,
187− ProjectM36.DataTypes.Day,
188− ProjectM36.DataTypes.Either,
189− ProjectM36.DataTypes.Maybe,
190− ProjectM36.DataTypes.Primitive,
191− ProjectM36.DatabaseContext,
192− ProjectM36.Key,
193− ProjectM36.MiscUtils,
194− ProjectM36.Notifications,
195− ProjectM36.Persist,
196− ProjectM36.Relation,
197− ProjectM36.Relation.Parse.CSV,
198− ProjectM36.Relation.Show.CSV,
199− ProjectM36.Relation.Show.Gnuplot,
200− ProjectM36.Relation.Show.Term,
201− ProjectM36.Server.RemoteCallTypes,
202− ProjectM36.Session,
203− ProjectM36.Sessions,
204− ProjectM36.StaticOptimizer,
205− ProjectM36.Transaction.Persist,
206− ProjectM36.TransactionGraph,
207− ProjectM36.TransactionGraph.Persist,
208− ProjectM36.Tuple,
209− ProjectM36.TupleSet,
210− ProjectM36.TypeConstructor,
211− ProjectM36.TypeConstructorDef,
212− ProjectM36.TransactionGraph.Merge,
213− ProjectM36.DateExamples,
214176 TutorialD.Interpreter.Import.BasicExamples,
215177 TutorialD.Interpreter.InformationOperator,
216178 TutorialD.Interpreter.Export.Base,
@@ -224,18 +186,21 @@ Executable tutd
224186 CPP-Options: -DPROJECTM36_VERSION="v0.1"
225187 CC-Options: -fPIC
226188 GHC-Options: -Wall
189+ Hs-Source-Dirs: ./src/bin
227190 Default-Language: Haskell2010
228191 Default-Extensions: OverloadedStrings
229− if os(windows)
230− Build-Depends: Win32 >= 2.3 && < 2.4
231− Other-Modules: ProjectM36.Win32Handle
232− else
233− C-sources: ProjectM36/DirectoryFsync.c
234− Build-Depends: unix
192+-- if os(windows)
193+-- Build-Depends: Win32 >= 2.3 && < 2.4
194+-- Other-Modules: ProjectM36.Win32Handle
195+-- else
196+-- C-sources: ProjectM36/DirectoryFsync.c
197+-- Build-Depends: unix
235198
236199
237200Executable project-m36-server
238201 Build-Depends: base,
202+ ghc >= 7.8 && <= 8.0.1,
203+ ghc-paths,
239204 distributed-process-client-server,
240205 distributed-process-extras,
241206 distributed-process-async,
@@ -326,7 +291,7 @@ Executable project-m36-server
326291Executable bigrel
327292 Default-Language: Haskell2010
328293 Default-Extensions: OverloadedStrings
329− Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, network-transport-tcp, distributed-process, distributed-process-extras, distributed-process-client-server, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, parsec, text, base64-bytestring, data-interval, filepath, optparse-applicative, stm-containers, list-t
294+ Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, network-transport-tcp, distributed-process, distributed-process-extras, distributed-process-client-server, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, parsec, text, base64-bytestring, data-interval, filepath, optparse-applicative, stm-containers, list-t, ghc, ghc-paths, transformers
330295 Other-Modules: ProjectM36.Base,
331296 ProjectM36.Relation
332297 ProjectM36.Tuple,
@@ -515,12 +480,10 @@ Test-Suite test-server
515480 C-sources: ProjectM36/DirectoryFsync.c
516481 Build-Depends: unix
517482
518−
519−
520483Executable Example-SimpleClient
521484 Default-Language: Haskell2010
522485 Default-Extensions: OverloadedStrings
523− Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, network-transport-tcp, distributed-process, distributed-process-extras, distributed-process-client-server, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, parsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t
486+ Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, network-transport-tcp, distributed-process, distributed-process-extras, distributed-process-client-server, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, parsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t, ghc, ghc-paths
524487 Main-Is: examples/SimpleClient.hs
525488 GHC-Options: -Wall
526489 CPP-Options: -DPROJECTM36_VERSION="v0.1"
@@ -573,7 +536,7 @@ Executable Example-SimpleClient
573536Executable Example-PersistClient
574537 Default-Language: Haskell2010
575538 Default-Extensions: OverloadedStrings
576− Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, network-transport-tcp, distributed-process, distributed-process-extras, distributed-process-client-server, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, parsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t, persistent, aeson, path-pieces, either, conduit, http-api-data, template-haskell, persistent-template
539+ Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, network-transport-tcp, distributed-process, distributed-process-extras, distributed-process-client-server, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, parsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t, persistent, aeson, path-pieces, either, conduit, http-api-data, template-haskell, persistent-template, ghc, ghc-paths
577540 Main-Is: examples/PersistClient.hs
578541 GHC-Options: -Wall
579542 CPP-Options: -DPROJECTM36_VERSION="v0.1"
@@ -637,16 +600,9 @@ Test-Suite test-scripts
637600 C-sources: ProjectM36/DirectoryFsync.c
638601 Build-Depends: unix
639602
640−Executable dud
641− Default-Language: Haskell2010
642− Build-Depends: ghc >= 7.8 && <= 8.0.1, base, ghc-paths, mtl, haskeline
643− Main-Is: test.hs
644− GHC-Options: -Wall
645− CPP-Options: -DGHCI
646−
647603Executable project-m36-websocket-server
648604 Default-Language: Haskell2010
649− Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, network-transport-tcp, distributed-process, distributed-process-extras, distributed-process-client-server, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, parsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t, persistent, aeson, path-pieces, either, conduit, http-api-data, template-haskell, persistent-template, websockets, aeson, uuid-aeson, optparse-applicative
605+ Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, network-transport-tcp, distributed-process, distributed-process-extras, distributed-process-client-server, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, parsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t, persistent, aeson, path-pieces, either, conduit, http-api-data, template-haskell, persistent-template, websockets, aeson, uuid-aeson, optparse-applicative, ghc, ghc-paths
650606 Other-Modules: ProjectM36.Atom, ProjectM36.AtomFunction, ProjectM36.AtomFunctions.Basic, ProjectM36.AtomFunctions.Primitive, ProjectM36.AtomType, ProjectM36.Attribute, ProjectM36.AttributeNames, ProjectM36.Base, ProjectM36.Client, ProjectM36.Client.Json, ProjectM36.ConcreteTypeRep, ProjectM36.DataConstructorDef, ProjectM36.DataTypes.Basic, ProjectM36.DataTypes.Day, ProjectM36.DataTypes.Either, ProjectM36.DataTypes.Maybe, ProjectM36.DataTypes.Primitive, ProjectM36.DatabaseContext, ProjectM36.DateExamples, ProjectM36.Error, ProjectM36.Key, ProjectM36.MiscUtils, ProjectM36.Notifications, ProjectM36.Persist, ProjectM36.Relation, ProjectM36.Relation.Parse.CSV, ProjectM36.Relation.Show.CSV, ProjectM36.Relation.Show.Gnuplot, ProjectM36.Relation.Show.Term, ProjectM36.RelationalExpression, ProjectM36.Server, ProjectM36.Server.Config, ProjectM36.Server.EntryPoints, ProjectM36.Server.ParseArgs, ProjectM36.Server.RemoteCallTypes, ProjectM36.Server.RemoteCallTypes.Json, ProjectM36.Server.WebSocket, ProjectM36.Session, ProjectM36.Sessions, ProjectM36.StaticOptimizer, ProjectM36.Transaction, ProjectM36.Transaction.Persist, ProjectM36.TransactionGraph, ProjectM36.TransactionGraph.Merge, ProjectM36.TransactionGraph.Persist, ProjectM36.Tuple, ProjectM36.TupleSet, ProjectM36.TypeConstructor, ProjectM36.TypeConstructorDef, TutorialD.Interpreter, TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.Export.Base, TutorialD.Interpreter.Export.CSV, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Interpreter.Import.CSV, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.InformationOperator, TutorialD.Interpreter.RODatabaseContextOperator, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.TransactionGraphOperator, TutorialD.Interpreter.Types
651607 Main-Is: ProjectM36/Server/WebSocket/Main.hs
652608 GHC-Options: -Wall