From: Ian Campbell <Ian.Campbell@citrix.com>
To: Olaf Hering <olaf@aepfle.de>
Cc: "xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>
Subject: Re: libxenstore.so Makefile dependency issue
Date: Tue, 21 Feb 2012 11:21:31 +0000 [thread overview]
Message-ID: <1329823291.25232.94.camel@dagon.hellion.org.uk> (raw)
In-Reply-To: <20120220192655.GA8280@aepfle.de>
On Mon, 2012-02-20 at 19:26 +0000, Olaf Hering wrote:
> This is the second time I run into this linking issue. A few days ago it
> happend with a make -j 4 or 8 during automated rpm package build. Now it
> happend with a fresh tree. My local system is openSuSE 11.4 with make
> 3.82, the failed automated build was either openSUSE 11.4 or 12.1.
>
> For some reason the libxenstore.so symlink is created after
> init-xenstore-domain is about to be linked. The ln command is not
> visible in this output, I saw the ln invocation in the rpm build log.
>
> Hmm, and for some reason the symlink was not created anyway in my local
> build. A second make run worked ok, libxenstore.so was created. It
> looks like I can reproduce it by running make clean in tools/xenstore.
>
> Looking at the Makefile, init-xenstore-domain depends on LIBXENSTORE,
> and libxenstore.so is also a target. So its not clear to me how make can
> miss that, or how the dependencies should be listed.
>
> Any idea whats going on here?
It's pretty odd isn't it.
I tried:
$ make -C tools/xenstore/ clean
$ make -C tools/xenstore/ -j12
and couldn't reproduce. I see the ln before the link lines, even with
bigger and smaller -jN.
"make -d" will tell you make's thought processes, might give a hint?
Could it be your filesystem? Something odd to do with timestamps on
symlinks which upsets your version of make perhaps? (I'm on ext3)
I'm really grasping at straws there...
The chain of rules for making the symlinks is a bit convoluted. I'd be
inclined to have:
libxenstore.so libxenstore.so.$(MAJOR) libxenstore.so.$(MAJOR).$(MINOR): xs.opic xs_lib.opic
$(CC)....
ln -sf libxenstore.so.$(MAJOR).$(MINOR) libxenstore.so.$(MAJOR)
ln -sf libxenstore.so.$(MAJOR) libxenstore.so
But I don't see why it would help or matter in practice.
Ian.
next prev parent reply other threads:[~2012-02-21 11:21 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-20 19:26 libxenstore.so Makefile dependency issue Olaf Hering
2012-02-20 19:54 ` Olaf Hering
2012-02-21 11:21 ` Ian Campbell [this message]
2012-02-21 14:34 ` Olaf Hering
2012-02-21 14:49 ` Olaf Hering
2012-02-21 18:24 ` Ian Jackson
2012-02-21 18:30 ` Olaf Hering
2012-02-21 18:33 ` Ian Jackson
2012-02-21 22:01 ` Olaf Hering
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1329823291.25232.94.camel@dagon.hellion.org.uk \
--to=ian.campbell@citrix.com \
--cc=olaf@aepfle.de \
--cc=xen-devel@lists.xensource.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).