regarding Re: [Radiance-dev] Makefile inconsistency:
which you didn't really answer.
Your question was:
"Does dmake cause the build to fail with the current make files, or
does this just make things slightly more efficient?"
It's 2 questions.
Ans 1 No dmake does not "cause" it to fail.  Parallel build does fail
but the problem is latent.  The makefiles ask for a file to be created
and for it to be destroyed which can't be satisfied consistently or at
the same time.
Ans 2. A 10 fold increase is not slight, so no it does not make it
slightly more efficient, it makes it many times more effective.
I expect gmake could fail similarly.  I prefer dmake over gmake because
it dynamically sets and varies the number of jobs depending on the system
load.  dmake is "Distributed Make" and can spawn jobs on other machines
for greater parallelism.  It's really handy for creating many radiance
images, I create makefiles to define the work and let dmake farm it
out.  This is less important nowadays that one physical machine houses
several virtual machines which already share all the resources.
I do want to respond to the other issues you mentioned, though:
> As I'm building a radiance package I have to rebuild multiple times
> because:
> + The package includes multiple architecture isaexec versions of the key
> executables and the complete compile is done for each.
I'm not really familiar with Solaris, but on other systems (like OS X)
you can compile in the different architectures in one go.  Even that is
a pain, so I sympathize.
I need to compile in multiple architectures.  My package contains several
versions of rpict.  The package has to run on many different CPUs.  The
laziest solution and a usual one is to use the lowest common denominator
arch.  For a CPU hog it's worth providing several speed optimised
binaries for different arches and letting isaexec pick the best one for
whichever machine is running the one package.  For trivial utilities a
space optimised solution is best so I do another build for those.  A
similar thing is done with libraries and the link loader uses the dynamic
token $ISALIST to pick the best libraries.
It's my usual technique: don't fight a build system, let it think it's
helping.  Build multiple times and pick the needed parts for the package.
It's typically the easiest way to build both 32 and 64 bit libraries.
> not relocatable "define DEFMAPFILE \"/usr/local/lib/ray/lib/arch.map\"
I actually didn't know about this because it's in a program that no one
(as far as I know) uses anymore, arch2rad.  The build for it should
probably be disabled, rather than carrying whatever problems it has
into the next release.  I will do that.
I've never used it either but if it's in my package it should work.  I
edit the value to the location of arch.map in /opt but perhaps the code
should have used the env var RAYPATH.
> timegm
There is a replacement implementation for this GNU extension in
src/common/timegm.c, which I assume you found.
No, it's not there:
$ ls src/common/timegm.c
src/common/timegm.c: No such file or directory
$ find . -name \*gm\*
./src/meta/segment.c
...not it...
$ grep -l timegm **/*
src/common/header.c
...and that's it being used...
$ grep timegm **/*
src/common/header.c:    *tloc = timegm(&tms);
> the ambient bug
Could you be more specific?  Unless this is the recurring problem
with the NFS lock manager, which I didn't think an issue under
Solaris.
rpict: fatal - bad ambient file
It's fixable by using src/rt/ambient.c from the HEAD distribution.
Given it's a known crash bug, pretty please, how about a release 4.1
with a fix?
> version still wrong
??
I see you've fixed this in the new 4R0, I was using an older 4R0.  The
problems of not issuing 4.0.1!
> examples broken by hdr renaming
I am sorry about that.  If you can point to specific documents that need
fixing, I will fix them.
I've edited my examples and they look good except I've still a problem
with the cabin:
$ make
oconv -b -100 -100 -100 225 -r 8192 \
pattmats cabin bathroom furniture winpanes.rad mirrors.rad > cabin.oct
oconv -f -r 8192 -i cabin.oct summerday landscape lights.off \
daywindows > summercabin.oct
rvu -vf vf/plan -av .1 .1 .1 summercabin.oct
rvu: fatal - cannot find picture file "pinebark.pic"
*** Error code 1
make: Fatal error: Command failed for target `view'
but I can't find any references to pinebark.  I'll keep looking.
Thanks for your help and your feedback, James.  I understand your job is
not an easy one, and not always fun.
Radiance is always fun.  If you want to get me steamed up tell me libtool
is good.
James.
···
On 29/11/10, 16:40:01, Gregory "J." Ward <[email protected]> wrote