Hello,

I try to keep one tree of stable source (on a NAS), and build releases
for various architectures from that source tree.

I've learned the hard way that the best(only) way to build a release
is to create a shadow directory for the src using lndir, which makes
symlinks to the target files in a new shadow directory tree.  This
works well for me.

I then tried to build xenocara (installed as /usr/src/xenocara ), and
ran into problems.

On the first machine, I had the stable cvs update of the xenocara
tree.  I created the shadow directory tree, cd'ed into it, and did the
makes per the FAQ.  It worked fine.
Then I build an X release, again using the instructions in the FAQ, so
far so good.

Then I copied the original xenocara source tree to my NAS.

On a machine with a different architecture (i386 vs amd64), I then NFS
mounted the xenocara source tree, and made another shadow source tree
(using lndir) but this time the target files being shadowed where on
the NAS, not a local disk).

When I went to build xenocara,

    make bootstrap
    make obj

worked OK, but

    make build

failed, when it went into ./utils/macros it needed to write a file
that was actually a symlink to my read-only source tree, and the make
died.

So, I believe there is a problem in the xenocara build process.

In order to work around this problem, I copied my xenocara src tree to
the local machine, and again built a shadow directory to it.
This build works, because root can write to the local source
directory, although IMHO, it really shouldn't need to.

Don

Reply via email to