aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/program/compositor/cli.lux
diff options
context:
space:
mode:
Diffstat (limited to 'stdlib/source/program/compositor/cli.lux')
-rw-r--r--stdlib/source/program/compositor/cli.lux40
1 files changed, 23 insertions, 17 deletions
diff --git a/stdlib/source/program/compositor/cli.lux b/stdlib/source/program/compositor/cli.lux
index d3b61640b..f0fdb80be 100644
--- a/stdlib/source/program/compositor/cli.lux
+++ b/stdlib/source/program/compositor/cli.lux
@@ -16,6 +16,9 @@
(type: #export Source
Path)
+(type: #export Host_Dependency
+ Path)
+
(type: #export Library
Path)
@@ -23,7 +26,7 @@
Path)
(type: #export Compilation
- [(List Source) (List Library) Target Module])
+ [(List Source) (List Host_Dependency) (List Library) Target Module])
(type: #export Export
[(List Source) Target])
@@ -38,10 +41,11 @@
(Parser <type>)
(cli.named <long> cli.any))]
- [^source "--source" Source]
- [^library "--library" Library]
- [^target "--target" Target]
- [^module "--module" Module]
+ [source_parser "--source" Source]
+ [host_dependency_parser "--host_dependency" Host_Dependency]
+ [library_parser "--library" Library]
+ [target_parser "--target" Target]
+ [module_parser "--module" Module]
)
(def: #export service
@@ -49,25 +53,27 @@
($_ <>.or
(<>.after (cli.this "build")
($_ <>.and
- (<>.some ..^source)
- (<>.some ..^library)
- ..^target
- ..^module))
+ (<>.some ..source_parser)
+ (<>.some ..host_dependency_parser)
+ (<>.some ..library_parser)
+ ..target_parser
+ ..module_parser))
(<>.after (cli.this "repl")
($_ <>.and
- (<>.some ..^source)
- (<>.some ..^library)
- ..^target
- ..^module))
+ (<>.some ..source_parser)
+ (<>.some ..host_dependency_parser)
+ (<>.some ..library_parser)
+ ..target_parser
+ ..module_parser))
(<>.after (cli.this "export")
($_ <>.and
- (<>.some ..^source)
- ..^target))
+ (<>.some ..source_parser)
+ ..target_parser))
))
(def: #export target
(-> Service Target)
- (|>> (case> (^or (#Compilation [sources libraries target module])
- (#Interpretation [sources libraries target module])
+ (|>> (case> (^or (#Compilation [sources host_dependencies libraries target module])
+ (#Interpretation [sources host_dependencies libraries target module])
(#Export [sources target]))
target)))