Ken Moffat wrote:
On Wed, Aug 10, 2016 at 08:40:48PM -0500, Bruce Dubbs wrote:
Ken Moffat wrote:
On Wed, Aug 10, 2016 at 06:04:29PM -0500, Bruce Dubbs wrote:
Ken Moffat wrote:
I added the sed for ltmain.sh-12.0.1 because it is used
unconditionally.  But it breaks my build (I fail on any error,
except when running certain conditional local options)  because the
file is now in the bin/ directory.

I'll fix this in my next commit unless anybody objects.

The sed in the book is wrong.  It should be:

sed -i "/seems to be moved/s/^/: #/" ltmain.sh

It needs the colon (:) before the hash as in

if [ "$x" = "1" ]; then
: #abcd
fi

Are you sure ?  I hadn't looked at the logs once it no longer
errored, but I've looked now and I do not see any "seems to be
moved".

Pretty sure.  Douglas made most of the changes.  Take a look at guile.xml
for instance.  An alternative is in ImageMagick.

For mesalb, the file is bin/ltmain.sh (the book has bin/ missing).

For mesalib, the file has:
----
else
   eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
   test -z "$libdir" && \
     func_fatal_error "'$deplib' is not a valid libtool archive"
   test "$absdir" != "$libdir" && \
     func_warning "'$deplib' seems to be moved"

   path=-L$absdir
------
So replacing the line with func_warning with only a comment is wrong.  It
should be replaced with either 'true' or ':'

There are other ways to fix it though.   I like to use the colon to replace
the commented line because it is basically a no-op instead of a null line.
An 'if' or 'case' statement must have something before it is terminated and
the colon will do.  In this case it is a part of a && joined list of
instructions so, depending on what follows, the && woks on the wrong thing.

   -- Bruce

Bruce,

I've totally failed to follow what you wrote.

In my mesa script I have:

sed -i "/seems to be moved/s/^/#/" bin/ltmain.sh

and that matches the book apart from adding 'bin/', doesn't it ?

Yes.  Your script is right.  The book needs an update.

But there is no 'seems to be moved' in my log:

Yes, but the logic in the script is changed by the sed. It is probably harmless and does what is intended,

>>    test "$absdir" != "$libdir" && \
>>      func_warning "'$deplib' seems to be moved"
>>
>>    path=-L$absdir

however after the sed, the line 'path=-L$absdir' will only be executed when the test succeeds instead of being executed unconditionally.

  -- Bruce

--
http://lists.linuxfromscratch.org/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to