public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
From: Dave Chinner <david@fromorbit.com>
To: Rich Johnston <rjohnston@sgi.com>
Cc: Eric Sandeen <sandeen@sandeen.net>, xfs@oss.sgi.com
Subject: Re: [PATCH] xfsprogs: libhandle/Makefile - fix make install
Date: Thu, 23 May 2013 09:04:30 +1000	[thread overview]
Message-ID: <20130522230430.GM29466@dastard> (raw)
In-Reply-To: <519D4136.6080908@sgi.com>

On Wed, May 22, 2013 at 05:05:42PM -0500, Rich Johnston wrote:
> On 05/22/2013 04:22 PM, Eric Sandeen wrote:
> >On 5/22/13 3:58 PM, rjohnston@sgi.com wrote:
> >>In the default section of libhandle/Makefile, ltdepend prevented
> >>libhandle.so from being installed properly so remove it.
> >
> >Can you explain how it prevented it?
> >
> >[sandeen@sandeen xfsprogs]$ grep ltdepend */Makefile
> >libdisk/Makefile:default: ltdepend $(LTLIBRARY)
> >libhandle/Makefile:default: ltdepend $(LTLIBRARY)
> >libxcmd/Makefile:default: ltdepend $(LTLIBRARY)
> >libxfs/Makefile:default: crc32selftest ltdepend $(LTLIBRARY)
> >libxlog/Makefile:default: ltdepend $(LTLIBRARY)
> >
> >seems to exist in every subdir, why is this one causing trouble?
> Because libhandle is the only one that is installed. ;)

So, after you've done a builds what does libhandle/.libs contain?
it shoul dlook something lik ethis:

$ ls -l libhandle/.libs/ total 180
-rw-r--r-- 1 dave dave 39416 May 23 08:50 handle.o
-rw-r--r-- 1 dave dave 21936 May 23 08:50 jdm.o
-rw-r--r-- 1 dave dave 61834 May 23 08:50 libhandle.a
lrwxrwxrwx 1 dave dave    15 May 23 08:50 libhandle.la -> ../libhandle.la
-rw-r--r-- 1 dave dave   938 May 23 08:50 libhandle.lai
lrwxrwxrwx 1 dave dave    18 May 23 08:50 libhandle.so -> libhandle.so.1.0.3
lrwxrwxrwx 1 dave dave    18 May 23 08:50 libhandle.so.1 -> libhandle.so.1.0.3
-rwxr-xr-x 1 dave dave 45667 May 23 08:50 libhandle.so.1.0.3
$

And the libhandle.lai should contain:

$ cat libhandle/.libs/libhandle.lai
libhandle.la - a libtool library file
# Generated by libtool (GNU libtool) 2.4.2 Debian-2.4.2-1.1
#
# Please DO NOT delete this file!
# It is necessary for linking the library.

# The name that we can dlopen(3).
dlname='libhandle.so.1'

# Names of this library.
library_names='libhandle.so.1.0.3 libhandle.so.1 libhandle.so'

# The name of the static archive.
old_library='libhandle.a'

# Linker flags that can not go in dependency_libs.
inherited_linker_flags=''

# Libraries that this one depends upon.
dependency_libs=''

# Names of additional weak libraries provided by this library
weak_library_names=''

# Version information for libhandle.
current=1
age=0
revision=3

# Is this an already installed library?
installed=yes

# Should we warn about portability when linking against -modules?
shouldnotlink=no

# Files to dlopen/dlpreopen
dlopen=''
dlpreopen=''

# Directory that this library needs to be installed in:
libdir='/lib'
$

See $library_names? That should be all the names that are created,
and there are three. The are set up via 'install-sh -T so_????'
options.

So, look at the install rules being run:

> cd ../libhandle/.libs;

Obvious.

> ../../install-sh -o root -g root -m 755 -d /lib64;

Setting owner/perms on /lib64.

> ../../install-sh -o root -g root -m 755 -T so_dot_version libhandle.lai /lib64;

"-T so_dot_version" is supposed to copy libhandle.so.1.0.3 to
/lib64/libhandle.so.1.0.3. i.e. install the current library.

> ../../install-sh -o root -g root -T so_dot_current libhandle.lai /lib64

That's supposed to set up the /lib64/libhandle.so.1 link back to
/lib64/libhandle.so.1.0.3.

And that's it. So, what's missing? 

Right - there's nothing that sets up /lib64/libhandle.so i.e.
this is missing:

../../install-sh -o root -g root -T so_base libhandle.lai /lib64

which would set up the /lib64/libhandle.so link to
/lib64/libhandle.so.1.

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

  reply	other threads:[~2013-05-22 23:04 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-22 20:58 [PATCH] xfsprogs: libhandle/Makefile - fix make install rjohnston
2013-05-22 21:22 ` Eric Sandeen
2013-05-22 22:05   ` Rich Johnston
2013-05-22 23:04     ` Dave Chinner [this message]
2013-05-22 22:16 ` Dave Chinner
2013-05-23 13:52 ` [PATCH V2] xfsprogs: libhandle/Makefile - fix make install-dev rjohnston
2013-05-23 15:37 ` [PATCH V3] " rjohnston

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=20130522230430.GM29466@dastard \
    --to=david@fromorbit.com \
    --cc=rjohnston@sgi.com \
    --cc=sandeen@sandeen.net \
    --cc=xfs@oss.sgi.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