From 0d2ce07081a4aab6cb062ddb75ed040f542fc137 Mon Sep 17 00:00:00 2001 From: Adam Chlipala Date: Sun, 30 Jul 2006 15:28:27 +0000 Subject: [PATCH] Compile-time configuration infrastructure --- .cvsignore | 2 ++ Makefile | 18 ++++++++++++++++++ configDefault/.cvsignore | 3 +++ configDefault/domtool.cfg | 1 + configDefault/domtool.cfs | 3 +++ src/config.sig.footer | 2 ++ src/config.sig.header | 4 ++++ src/config.sml | 5 +++++ src/configDefault.sml.footer | 2 ++ src/configDefault.sml.header | 4 ++++ src/domtool.cm | 5 +++++ 11 files changed, 49 insertions(+) create mode 100644 .cvsignore create mode 100644 Makefile create mode 100644 configDefault/.cvsignore create mode 100644 configDefault/domtool.cfg create mode 100644 configDefault/domtool.cfs create mode 100644 src/config.sig.footer create mode 100644 src/config.sig.header create mode 100644 src/config.sml create mode 100644 src/configDefault.sml.footer create mode 100644 src/configDefault.sml.header diff --git a/.cvsignore b/.cvsignore new file mode 100644 index 0000000..badbb3a --- /dev/null +++ b/.cvsignore @@ -0,0 +1,2 @@ +.cm +config.sml diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..4f173d4 --- /dev/null +++ b/Makefile @@ -0,0 +1,18 @@ +all: configDefault/config.sig configDefault/configDefault.sml + +.PHONY: all + +configDefault/config.sig: src/config.sig.header \ + configDefault/*.cfs src/config.sig.footer + cat src/config.sig.header \ + configDefault/*.cfs \ + src/config.sig.footer \ + >configDefault/config.sig + +configDefault/configDefault.sml: src/configDefault.sml.header \ + configDefault/*.cfg src/configDefault.sml.footer + cat src/configDefault.sml.header \ + configDefault/*.cfg \ + src/configDefault.sml.footer \ + >configDefault/configDefault.sml + diff --git a/configDefault/.cvsignore b/configDefault/.cvsignore new file mode 100644 index 0000000..99b2ae3 --- /dev/null +++ b/configDefault/.cvsignore @@ -0,0 +1,3 @@ +.cm +config.sig +configDefault.sml diff --git a/configDefault/domtool.cfg b/configDefault/domtool.cfg new file mode 100644 index 0000000..4fdde33 --- /dev/null +++ b/configDefault/domtool.cfg @@ -0,0 +1 @@ +val configRoot = "/home/adamc/domtool" diff --git a/configDefault/domtool.cfs b/configDefault/domtool.cfs new file mode 100644 index 0000000..7d9aecc --- /dev/null +++ b/configDefault/domtool.cfs @@ -0,0 +1,3 @@ +val configRoot : string +(* Root directory for a directory hierarchy corresponding to domain structure, + * where each node contains files related to that domain's configuration. *) diff --git a/src/config.sig.footer b/src/config.sig.footer new file mode 100644 index 0000000..7f2d065 --- /dev/null +++ b/src/config.sig.footer @@ -0,0 +1,2 @@ + +end diff --git a/src/config.sig.header b/src/config.sig.header new file mode 100644 index 0000000..41860d9 --- /dev/null +++ b/src/config.sig.header @@ -0,0 +1,4 @@ +(* Types of configuration parameters *) + +signature CONFIG = sig + diff --git a/src/config.sml b/src/config.sml new file mode 100644 index 0000000..cf3f048 --- /dev/null +++ b/src/config.sml @@ -0,0 +1,5 @@ +structure Config :> CONFIG = struct + +open ConfigDefault + +end diff --git a/src/configDefault.sml.footer b/src/configDefault.sml.footer new file mode 100644 index 0000000..7f2d065 --- /dev/null +++ b/src/configDefault.sml.footer @@ -0,0 +1,2 @@ + +end diff --git a/src/configDefault.sml.header b/src/configDefault.sml.header new file mode 100644 index 0000000..1841036 --- /dev/null +++ b/src/configDefault.sml.header @@ -0,0 +1,4 @@ +(* Default configuration settings *) + +structure ConfigDefault :> CONFIG = struct + diff --git a/src/domtool.cm b/src/domtool.cm index df4938b..34b52fc 100644 --- a/src/domtool.cm +++ b/src/domtool.cm @@ -12,6 +12,11 @@ dataStructures.sml ast.sml +../configDefault/config.sig +../configDefault/configDefault.sml + +../config.sml + domtool.lex domtool.grm -- 2.20.1