[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Problem with pcons-2.2
From: |
VictNr |
Subject: |
Problem with pcons-2.2 |
Date: |
Wed, 19 Nov 2003 09:55:12 -0500 |
RV (and anyone else out there who is listening),
Here at Marconi (the birthplace of cons!) we are still using cons, and it works
well for us. However, I have been investigating the use of pcons, and we are
having a problem with it. What I did was to take our version of cons-2.2 (it
has a few minor changes to it), and I applied the pcons.diff to it (pcons.diff
comes from http://www.baldmt.com/parallel-cons/). Then, I tried to compile our
tree with -j10 -- i.e., up to 10 parallel compiles. The problem is that we
have a few places where a target depends on a single file, via two different
branches. I've reproduced the problem in a very small Construct, which follows:
$cons = new cons();
Default(end);
Command $cons "step1", "start",
qq(sleep 3 && cp %< %>);
Command $cons "step2", "step1",
qq(sleep 2 && cat %< > %> && echo " -> %>" >> %>);
Command $cons "step3", "step2",
qq(sleep 2 && cat %< > %> && echo " -> %>" >> %>);
# NOTE: this works and produces this output in file "end":
# start
# -> step2
# -> step3
# start
#
# Command $cons "end", "step3", "step1",
# qq( cat %< > %> );
#
# NOTE: this doesn't work: it produces "cat: cannot open step1". The output
# looks like this:
#
# pluto:~/cons-2.2/test
# 93 > ~/pcons-2.2
# sleep 3 && cp start step1
# sleep 2 && cat step1 > step2 && echo " -> step2" >> step2
# cat: cannot open step1
# waited: step2 on: 2952parent
# pcons-2.2: *** [step2] Error 2
# pcons-2.2: errors constructing step2
#
# What we want to see is a "waited" message after the "sleep 3 ..." line, and
# before the "sleep 2" line.
#
Command $cons "end", "step1", "step3",
qq( cat %< > %> );
------- end of Construct file -------
So, you can see that this is a very simple example. And, if we can get pcons
to work with this, we can significantly speed up our build process.
Now, I know that cons is dead. SCons is where it is at. Yes, yes, I know all
this. But, we are just not going to switch to SCons for a while -- no one here
knows Python, and we have literally hundreds of Construct/Conscript files in
place that work, and some of which are not simple. So, SCons just isn't going
to happen.
I was wondering if anyone out there understood the obfuscated Perl code that is
Cons, and could take a quick look and make a fix so that the above Construct
file works properly. I'm attaching our version of pcons.
Thanks.
Vic Norman
__________________________________________________________________
McAfee VirusScan Online from the Netscape Network.
Comprehensive protection for your entire computer. Get your free trial today!
http://channels.netscape.com/ns/computing/mcafee/index.jsp?promo=393397
Get AOL Instant Messenger 5.1 free of charge. Download Now!
http://aim.aol.com/aimnew/Aim/register.adp?promo=380455
old-pcons
Description: old-pcons
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Problem with pcons-2.2,
VictNr <=