From: Adam Chlipala Date: Sun, 30 Jul 2006 15:28:27 +0000 (+0000) Subject: Compile-time configuration infrastructure X-Git-Tag: release_2010-11-19~383 X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/commitdiff_plain/0d2ce07081a4aab6cb062ddb75ed040f542fc137 Compile-time configuration infrastructure --- 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