Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2006-03-11 12:38:42 -0800 (Sat, 11 Mar 2006)
Revision: 8871
Log message:
osh should not have a persistent .omakedb.
Changes | Path |
+16 -16 | omake-branches/0.9.6.x/src/ir/omake_cache.ml |
+2 -35 | omake-branches/0.9.6.x/src/main/omake_shell.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2006-03-11 12:51:27 -0800 (Sat, 11 Mar 2006)
Revision: 8872
Log message:
Do not allow exports from .SUBDIRS OMakefiles.
Changes | Path |
+5 -1 | omake-branches/0.9.6.x/src/build/omake_rule.ml |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-11 19:37:47 -0800 (Sat, 11 Mar 2006)
Revision: 8873
Log message:
Added a "PID" built-in variable.
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2006-03-12 16:42:43 -0800 (Sun, 12 Mar 2006)
Revision: 8877
Log message:
Branching.
Changes | Path |
Copied | omake-branches/0.9.6.shell |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2006-03-12 16:49:22 -0800 (Sun, 12 Mar 2006)
Revision: 8878
Log message:
Working on eliminating string flattening. This branch does not compile,
but I have to commit before I move some files around.
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2006-03-12 16:58:36 -0800 (Sun, 12 Mar 2006)
Revision: 8879
Log message:
Update to match the Lm_glob changes in libmojave.
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-12 17:54:22 -0800 (Sun, 12 Mar 2006)
Revision: 8880
Log message:
Since there are a number of generated .mli in the project, we need to use
filter-targets instead of filter-exists in mk/make_gen
Changes | Path |
+4 -4 | omake-branches/0.9.6.x/mk/make_gen |
+1 -1 | omake-branches/0.9.6.x/src/Makefile |
+1 -1 | omake-branches/0.9.6.x/src/Makefile.nt |
+0 -7 | omake-branches/0.9.6.x/src/OMakefile |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-12 17:57:18 -0800 (Sun, 12 Mar 2006)
Revision: 8881
Log message:
Changed USE_OCAMLFIND to be always false by default.
Changes | Path |
+3 -3 | omake-branches/0.9.6.x/lib/build/OCaml.om |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-14 18:02:54 -0800 (Tue, 14 Mar 2006)
Revision: 8885
Log message:
Implemented Erick Tryzelaar's idea of having *Program and *Library functions
return the array with all the targets that it have defined the rules for, so
that one can do things like
.DEFAULT: $(CProgram foo, a b c)"
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2006-03-15 12:32:45 -0800 (Wed, 15 Mar 2006)
Revision: 8887
Log message:
Figured I would clean up on the command-line-parsing branch.
This preserves quoting of command-line vars.
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2006-03-15 12:42:59 -0800 (Wed, 15 Mar 2006)
Revision: 8888
Log message:
Should have quoted the array arguments. For example,
osh> X[] =
echo
*
osh> $X
*
Changes | Path |
+1 -1 | omake-branches/0.9.6.shell/src/eval/omake_eval.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2006-03-15 13:42:13 -0800 (Wed, 15 Mar 2006)
Revision: 8889
Log message:
Fix redirect globbing.
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-15 15:36:17 -0800 (Wed, 15 Mar 2006)
Revision: 8890
Log message:
Reverting rev 8790 in preparation for a "proper" merge.
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-15 16:13:02 -0800 (Wed, 15 Mar 2006)
Revision: 8891
Log message:
Partial merge of the 0.9.6.x branch (before the src/buid directory was split
into build and builtin):
svn merge -r 8287:8544 svn+ssh://svn.metaprl.org/svnroot/mojave/omake-branches/0.9.6.x
(with lots of manual editing)
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-15 16:25:23 -0800 (Wed, 15 Mar 2006)
Revision: 8892
Log message:
Fixing a typo.
Changes | Path |
+1 -1 | omake-branches/0.9.6.x/src/main/omake_main.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2006-03-15 16:45:12 -0800 (Wed, 15 Mar 2006)
Revision: 8894
Log message:
"Fixed" treatment of quoted strings.
Now that we treat quotations properly, there is a question about
how we should handle normal quotations. For example, if you
write the following, there is only one file, but it has quotes
in the filename.
X = $(file "hello world")
We could instead give "<string>" exactly the same meaning as $"<string>".
I don't see any surprises if we do so, we should think about doing it.
This commit does not do so. Instead we create an explicit value for
such strings and strip the quotes in the command-line tokenizer.
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-15 17:44:51 -0800 (Wed, 15 Mar 2006)
Revision: 8895
Log message:
When creating and/or locking the .omc fails, print a warning and keep going
(w/o a cache) instead of aborting.
Changes | Path |
+76 -94 | omake-branches/0.9.6.x/src/env/omake_env.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2006-03-15 19:51:16 -0800 (Wed, 15 Mar 2006)
Revision: 8897
Log message:
This completes the initial version of strict
command-line quoting. The main property here is that
atomic values and array elements are preserved on the
command line. The only things that can be split are
normal strings.
Non-compatible changes:
- globbing and shell tokens are only allowed in
normal strings. All other values are quoted.
osh> X[] = echo * > /dev/null
osh> $X
* > /dev/null
osh> Y = echo * > /dev/null
$Y
osh>
TODO:
- add an "unquote" function, so for example
the following would echo the * into /dev/null
osh> $(unquote $(X))
- Review the code for performance.
- Decide whether strings should be quoted
eagerly. Probably not, because we have such
things like this, where we have expected the
quotes to be included in the file.
println(foo.txt, "Hello world")
- Do the related changes to rule targets/sources
in the same way (including implicit rules).
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-15 20:25:28 -0800 (Wed, 15 Mar 2006)
Revision: 8898
Log message:
Merged the step I of the build/builtin directory split from the 0.9.6.x
branch:
svn merge -r 8544:8548 svn+ssh://svn.metaprl.org/svnroot/mojave/omake-branches/0.9.6.x
with some hand copying of things.
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-15 20:39:40 -0800 (Wed, 15 Mar 2006)
Revision: 8899
Log message:
Merged the step II of the "src/build -> src/build and src/builtin" split from
the 0.9.6.x branch (rev 8548:8549).
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-15 20:59:06 -0800 (Wed, 15 Mar 2006)
Revision: 8900
Log message:
Incremental merge from the 0.9.6.x branch:
svn merge -r 8549:8567 svn+ssh://svn.metaprl.org/svnroot/mojave/omake-branches/0.9.6.x
with a little hand-editing.
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-15 21:59:19 -0800 (Wed, 15 Mar 2006)
Revision: 8901
Log message:
Adding a missing export in a few places.
Changes | Path |
+4 -0 | omake-branches/omake_0_9_7_ref/lib/parse/C/Dll.om |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-15 22:16:02 -0800 (Wed, 15 Mar 2006)
Revision: 8902
Log message:
Added a type constraint on the return value for an Obj.magic call to avoid
getting a bogus OCaml warning.
Changes | Path |
+1 -1 | omake-branches/omake_0_9_7_ref/lib/parse/C/Dll.om |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-15 22:17:12 -0800 (Wed, 15 Mar 2006)
Revision: 8903
Log message:
Getting rid of an OCaml warning.
Changes | Path |
+1 -1 | omake-branches/omake_0_9_7_ref/contrib/gtk/test.ml |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-15 22:34:01 -0800 (Wed, 15 Mar 2006)
Revision: 8904
Log message:
Fixing a typo.
Changes | Path |
+1 -1 | omake-branches/0.9.6.x/lib/build/C.om |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-15 23:12:26 -0800 (Wed, 15 Mar 2006)
Revision: 8906
Log message:
Incremental merge from the 0.9.6.x branch:
svn merge -r 8567:8757 svn+ssh://svn.metaprl.org/svnroot/mojave/omake-branches/0.9.6.x
with lots of manual editing.
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-16 00:57:47 -0800 (Thu, 16 Mar 2006)
Revision: 8908
Log message:
Merged the rev 8757:8789 from the 0.9.6.x branch (mostly by re-applying the
rev 8790 from the 0.9.7 branch, where Jason have already done the porting of
his "auto-rehadh" commit).
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-16 00:59:32 -0800 (Thu, 16 Mar 2006)
Revision: 8909
Log message:
Incremental merge from the 0,9.6.x branch:
svn merge -r 8789:8871 svn+ssh://svn.metaprl.org/svnroot/mojave/omake-branches/0.9.6.x
Changes | Path |
+2 -35 | omake-branches/omake_0_9_7_ref/src/main/omake_shell.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2006-03-16 10:37:32 -0800 (Thu, 16 Mar 2006)
Revision: 8910
Log message:
Cleaning up.
In rule definitions, squash the targets to strings only if
they are not nodes. This doesn't change much really.
Probably need more aggressive quoting, so that the following
is not an implicit rule (it is now).
TARGET[] =
%.o
$(TARGET): %.c
OTOH, the following is not an implicit rule.
$(file %.o): $(file %.c)
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2006-03-16 11:30:00 -0800 (Thu, 16 Mar 2006)
Revision: 8911
Log message:
NOTE, this is a change to the semantics of implicit rules,
addressing bug#456.
Implicit rules now apply only to targets in the current
directory. That is, within directory foo/, implicit rules
cannot be used to build targets in some other directory bar/.
For example, suppose you have the following implicit rule.
%: ../%
cp $< $@
This rule will not trigger recursively. [Unless
you are in the root directory...]
In addition, target patterns outside the current directory
are illegal.
../%.x: %.y
cp $< $@
*** omake error:
File OMakefile: line 1, characters 0-11
filename pattern is a path: ../%.x
Note that rules of the following form will still loop forever.
I'm not sure what, if anything, to do about this case. I think
the problem is in general undecidable whether a sequence of
rewrites is terminating, even for simple ones like these.
%: %.foo
Changes | Path |
+50 -35 | omake-branches/0.9.6.shell/src/env/omake_env.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2006-03-16 12:35:22 -0800 (Thu, 16 Mar 2006)
Revision: 8913
Log message:
Addressed .INCLUDE :value: dependencies.
Changes | Path |
+5 -6 | omake-branches/0.9.6.x/src/build/omake_rule.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2006-03-16 14:59:25 -0800 (Thu, 16 Mar 2006)
Revision: 8914
Log message:
Addressed bug#533, where Omake_cache.is_dir was computing digests.
Now a node can be in a "PartialStats" state, where the Unix.stat
information has been computed, but the digest has not.
Changes | Path |
+98 -10 | omake-branches/0.9.6.x/src/ir/omake_cache.ml |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-16 16:36:23 -0800 (Thu, 16 Mar 2006)
Revision: 8915
Log message:
Fixing a typo in Jason's new PartialStats code.
Changes | Path |
+4 -3 | omake-branches/0.9.6.x/src/ir/omake_cache.ml |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-16 16:51:19 -0800 (Thu, 16 Mar 2006)
Revision: 8917
Log message:
Regenerated the documentation.
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2006-03-16 16:52:33 -0800 (Thu, 16 Mar 2006)
Revision: 8918
Log message:
Added a short section on "value"
Changes | Path |
+15 -0 | omake-branches/0.9.6.x/doc/src/omake-language.tex |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-16 17:43:46 -0800 (Thu, 16 Mar 2006)
Revision: 8919
Log message:
SImplified things slightly.
Changes | Path |
+2 -6 | omake-branches/0.9.6.x/OMakefile |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-16 17:47:07 -0800 (Thu, 16 Mar 2006)
Revision: 8920
Log message:
Incremental 0.9.6.x branch merge:
svn merge -r 8872:8892 svn+ssh://svn.metaprl.org/svnroot/mojave/omake-branches/0.9.6.x
(with some hand editing).
Note: rev 8872 did not have to be merged because the .SUBDIRS environment was
already handled correctly.
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-16 17:53:44 -0800 (Thu, 16 Mar 2006)
Revision: 8921
Log message:
Investigating enforcing the strict mode when building OMake itself (commented
out for now).
Changes | Path |
+4 -0 | omake-branches/omake_0_9_7_ref/OMakeroot |
+5 -0 | omake-branches/omake_0_9_7_ref/mk/defaults |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-16 18:28:26 -0800 (Thu, 16 Mar 2006)
Revision: 8922
Log message:
Hand-merged the "optional .omc locking" change (rev 8892:8895) from the
0.9.6.x branch.
Changes | Path |
+77 -103 | omake-branches/omake_0_9_7_ref/src/env/omake_env.ml |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-16 18:37:25 -0800 (Thu, 16 Mar 2006)
Revision: 8923
Log message:
Merged the latest 0.9.6.x branch changes (so now this branch is finally fully
merged!):
svn merge -r 8895:8922 svn+ssh://svn.metaprl.org/svnroot/mojave/omake-branches/0.9.6.x
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2006-03-16 18:38:49 -0800 (Thu, 16 Mar 2006)
Revision: 8924
Log message:
OMake's own build file now all pass the "strict" mode test.
Changes | Path |
+1 -1 | omake-branches/omake_0_9_7_ref/OMakefile |
+1 -1 | omake-branches/omake_0_9_7_ref/OMakeroot |