OCaml Forge

Detail: [#742] PreDistCleanCommand is not "cumulative"

Bugs: Browse | Download .csv | Monitor

[#742] PreDistCleanCommand is not "cumulative"

Date:
2010-09-08 09:56
Priority:
3
State:
Open
Submitted by:
ygrek (ygrek)
Assigned to:
Sylvain Le Gall (gildor-admin)
Product:
OASIS
Due in version:
None
Resolution:
None
Severity:
normal
Version:
0.2.0
Component:
OASIS
Operating System:
None
 
URL:
Summary:
PreDistCleanCommand is not "cumulative"

Detailed description
i.e. after specifying several PreDistCleanCommand entries 'make distclean' will execute only the last one. The same goes for PostDistClean. And by the way it looks like both PreDistClean and PostDistClean are run _after_ actual distclean :

$ cat _oasis |grep DistClean
PreDistCleanCommand: $rm src/config.h
PostDistCleanCommand: $rm src/config.ml
$ OASIS setup
[...]
$ make distclean
ocaml setup.ml -distclean
I: Running command '/usr/bin/ocamlc.opt -config > /tmp/oasis-a29b67.txt'
I: Running command '/usr/bin/ocamlbuild -clean -tag debug'
Finished, 0 targets (0 cached) in 00:00:00.
00:00:00 0 (0 ) STARTING -------- |I: Remove '/home/ygrek/work/local/extunix/setup.log'
I: Running command 'rm -f src/config.h'
I: Running command 'rm -f src/config.ml'

Removing setup.log is part of distclean, and my predistclean is run after it.

And one more minor nitpick : generate Makefile has target for setup.dat and '.PHONY: configure' but no target for configure - is it ok?

Followup

Message
Date: 2010-09-10 14:57
Sender: Sylvain Le Gall

Why not, i need to think about it further.

(and in the same idea, we should replace $: by : for boolean fields)
Date: 2010-09-10 12:40
Sender: ygrek

Actually the proposed solution doesn't work - I get :

E: OASISValues.Not_combinable

I think that _oasis should follow declarative spirit and "+:" is not needed at all - i.e. all fields are broken into two classes - those that can be appended and "immutable" ones. OASIS should complain if "immutable" is declared twice, and should treat ":" as append for other fields (e.g. PostDistCleanCommand)
Date: 2010-09-08 12:04
Sender: ygrek

Ok, thanks. Though somewhat counterintuitive IMHO.
Date: 2010-09-08 10:37
Sender: Sylvain Le Gall

Use "+:".

PostDistCleanCommand: $rm src/config.ml;
PostDistCleanCommand+: $rm src/config.mli;

Basically ":" is for assignement and "+:" for appending.

Attached Files:

Changes:

Field Old Value Date By
summaryPreDistCleanCommand is not "cumulative"2010-09-10 14:57gildor-admin
assigned_tonone2010-09-08 13:23gildor-admin
summaryPreDistCleanCommand is not "cumulative"2010-09-08 10:37gildor-admin