GNU bug report logs - #15276
libtool.mk incorrectly resolves lt_sysroot?

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: libtool; Reported by: Hans Beckérus <hans.beckerus@HIDDEN>; dated Thu, 5 Sep 2013 15:34:04 UTC; Maintainer for libtool is bug-libtool@HIDDEN.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 14 Sep 2013 10:29:23 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Sep 14 06:29:23 2013
Received: from localhost ([127.0.0.1]:35879 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.80)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1VKn6Q-0007yr-IR
	for submit <at> debbugs.gnu.org; Sat, 14 Sep 2013 06:29:22 -0400
Received: from eggs.gnu.org ([208.118.235.92]:57382)
 by debbugs.gnu.org with esmtp (Exim 4.80)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VKn6N-0007yY-Nv
 for submit <at> debbugs.gnu.org; Sat, 14 Sep 2013 06:29:20 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VKn69-0004Sk-Vd
 for submit <at> debbugs.gnu.org; Sat, 14 Sep 2013 06:29:14 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM,
 T_DKIM_INVALID autolearn=disabled version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:58488)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VKn69-0004Sg-S8
 for submit <at> debbugs.gnu.org; Sat, 14 Sep 2013 06:29:05 -0400
Received: from eggs.gnu.org ([2001:4830:134:3::10]:59062)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VKn61-0006Fd-EV
 for bug-libtool@HIDDEN; Sat, 14 Sep 2013 06:29:05 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VKn5t-0004Pi-1Q
 for bug-libtool@HIDDEN; Sat, 14 Sep 2013 06:28:57 -0400
Received: from mail-la0-x22c.google.com ([2a00:1450:4010:c03::22c]:38247)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VKn5s-0004PW-Ow
 for bug-libtool@HIDDEN; Sat, 14 Sep 2013 06:28:48 -0400
Received: by mail-la0-f44.google.com with SMTP id eo20so1773542lab.31
 for <bug-libtool@HIDDEN>; Sat, 14 Sep 2013 03:28:47 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=message-id:date:from:user-agent:mime-version:to:subject:references
 :in-reply-to:content-type:content-transfer-encoding;
 bh=lbA6JtzPJg6vB6S0UAzhPhPeKk7av/0W1LEdsPz0AHA=;
 b=O0dfb4g7gQlKdiTLj3XExfx/Qpvu8tS5B9rOboNU99dGkg/2YlFn1mFbEQZCw9aAqS
 hDgI8hd8PQmgto5quEf2ajZ/slEE6pgnwvMnPyoxgLselByP/CTQ1aOgl9pfQZrLx2L1
 nyu0k5tQtA1c29Rmp98IA03/oKE18POa0WjhFZsKVBMzXB4itdf2HurU1fYSAqJ4SqSH
 MXvf9rOSCgbWDRMOSLK8mON2JGYmAr+iB+WqtDxqYR/6bhQZ66ZY3oF1gf/cwSi+lzNu
 BThu4UWms0EH5o7cPywCQFWbrR2yJbplPZ30nuDWQ0zhXh9wZO4jkpauJqtiRk2qzBkL
 9Saw==
X-Received: by 10.112.198.39 with SMTP id iz7mr15709676lbc.24.1379154527129;
 Sat, 14 Sep 2013 03:28:47 -0700 (PDT)
Received: from [192.168.0.10] (h135n8-rny-a12.ias.bredband.telia.com.
 [217.209.54.135])
 by mx.google.com with ESMTPSA id e4sm8158914lba.15.1969.12.31.16.00.00
 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128);
 Sat, 14 Sep 2013 03:28:46 -0700 (PDT)
Message-ID: <52343A5B.2060107@HIDDEN>
Date: Sat, 14 Sep 2013 12:28:43 +0200
From: Hans Beckerus <hans.beckerus@HIDDEN>
User-Agent: Mozilla/5.0 (Windows NT 6.2;
 rv:17.0) Gecko/20130801 Thunderbird/17.0.8
MIME-Version: 1.0
To: bug-libtool@HIDDEN
Subject: Re: libtool.m4 incorrectly resolves lt_sysroot?
References: <CAFyqS9ropQZrcXwS_j7p=0k6=mgV=-RwqmOTCWPEwJbq-sS=5w@HIDDEN>
 <CAFyqS9rfmfF85BrX9D3Jyaz=O0CTF3F+G2MU3kwZ0btkEbu4jA@HIDDEN>
 <5228C69B.7010102@HIDDEN> <5228C908.6020402@HIDDEN>
In-Reply-To: <5228C908.6020402@HIDDEN>
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address
 (bad octet value).
X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address
 (bad octet value).
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -4.0 (----)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -4.0 (----)

The previous suggested patch was no good. Due to some unknown reason some distributions of gcc reports the built-in sysroot as "/" and some does
not report a sysroot at all. Both should work in equal ways. However, on some hosts libtool does not seem to like having "/" as sysroot and that results in build failures. If sysroot is left unset it works fine. This patch has now been updated to workaround also this behavior by detecting a simple "/" and
unset lt_sysroot if that is the case.  Still note that this patch is not written for upstream version of libtool, it only shows what changes have been suggested so far in oe-core.

Thanks.
Hans

---

diff -ur libtool-2.4.2.orig/libltdl/m4/libtool.m4 libtool-2.4.2/libltdl/m4/libtool.m4
--- libtool-2.4.2.orig/libltdl/m4/libtool.m4    2013-09-13 22:37:43.647282945 +0200
+++ libtool-2.4.2/libltdl/m4/libtool.m4 2013-09-14 10:27:37.168178605 +0200
@@ -1234,16 +1234,21 @@
 dnl in case the user passed a directory name.
 lt_sysroot=
 case ${with_libtool_sysroot} in #(
- yes)
+ no)
    if test "$GCC" = yes; then
      lt_sysroot=`$CC --print-sysroot 2>/dev/null`
+     # Treat "/" the same a an unset sysroot. It seems to be more
+     # compatible across host platforms that way!?
+     if test "$lt_sysroot" = /; then
+       lt_sysroot=
+     fi
    fi
    ;; #(
+ yes|''|/)
+   ;; #(
  /*)
    lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
    ;; #(
- no|'')
-   ;; #(
  *)
    AC_MSG_RESULT([${with_libtool_sysroot}])
    AC_MSG_ERROR([The sysroot must be an absolute path.])





Information forwarded to bug-libtool@HIDDEN:
bug#15276; Package libtool. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 5 Sep 2013 18:10:56 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 14:10:56 2013
Received: from localhost ([127.0.0.1]:42232 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.80)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1VHe19-0008HG-Ae
	for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 14:10:56 -0400
Received: from eggs.gnu.org ([208.118.235.92]:33064)
 by debbugs.gnu.org with esmtp (Exim 4.80)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHe15-0008Gz-OU
 for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 14:10:53 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHe0s-0008HH-74
 for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 14:10:46 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM,
 T_DKIM_INVALID autolearn=disabled version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:59459)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHe0r-0008Gu-KH
 for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 14:10:37 -0400
Received: from eggs.gnu.org ([2001:4830:134:3::10]:34462)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHe0i-0003OW-Cm
 for bug-libtool@HIDDEN; Thu, 05 Sep 2013 14:10:37 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHe0b-000889-Nm
 for bug-libtool@HIDDEN; Thu, 05 Sep 2013 14:10:28 -0400
Received: from mail-lb0-x22d.google.com ([2a00:1450:4010:c04::22d]:64610)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHe0b-00087q-At
 for bug-libtool@HIDDEN; Thu, 05 Sep 2013 14:10:21 -0400
Received: by mail-lb0-f173.google.com with SMTP id o14so1976421lbi.18
 for <bug-libtool@HIDDEN>; Thu, 05 Sep 2013 11:10:20 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=message-id:date:from:user-agent:mime-version:to:subject:references
 :in-reply-to:content-type:content-transfer-encoding;
 bh=7lTN1dRgrJCU30nvQNaei2TJ7VlFaEQv1T1tzoe0KQ8=;
 b=yM8vfUooDan3IJwGNL8fZ7+qlC1T8vFZjM4JcIjkzw1WWYeCeacwvDTRPu94rIijbM
 cgSpt6tj/qEnsMGYL+fkCFNQxf3QNULvNm/v2VAsTFjkgYoN2AtNCD6+u2LKNabYqGKX
 GYumA5DA0toJQ/Z72wXHzId1+FoVW7KmTXR0tzrfr4L/jIPr3MpAi3o5qOtdweT4Uxge
 AqRlg7MljNnAlnvMuIyzC28hJ/eUgLlc1Fyrmimfn1526z/Pojjem2azY/5CLh/LJhe/
 lc5YN1pVwXSHyT7+hlmF0hc6+VCwGVMbB+CcEHDq4oL5KdhhSvx9aleH4jQJhjrdUtY+
 NnDg==
X-Received: by 10.152.8.12 with SMTP id n12mr8541250laa.10.1378404619959;
 Thu, 05 Sep 2013 11:10:19 -0700 (PDT)
Received: from [192.168.0.10] (h135n8-rny-a12.ias.bredband.telia.com.
 [217.209.54.135])
 by mx.google.com with ESMTPSA id vo1sm13487242lbb.1.1969.12.31.16.00.00
 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128);
 Thu, 05 Sep 2013 11:10:19 -0700 (PDT)
Message-ID: <5228C908.6020402@HIDDEN>
Date: Thu, 05 Sep 2013 20:10:16 +0200
From: Hans Beckerus <hans.beckerus@HIDDEN>
User-Agent: Mozilla/5.0 (Windows NT 6.2;
 rv:17.0) Gecko/20130801 Thunderbird/17.0.8
MIME-Version: 1.0
To: bug-libtool@HIDDEN
Subject: Re: libtool.m4 incorrectly resolves lt_sysroot?
References: <CAFyqS9ropQZrcXwS_j7p=0k6=mgV=-RwqmOTCWPEwJbq-sS=5w@HIDDEN>
 <CAFyqS9rfmfF85BrX9D3Jyaz=O0CTF3F+G2MU3kwZ0btkEbu4jA@HIDDEN>
 <5228C69B.7010102@HIDDEN>
In-Reply-To: <5228C69B.7010102@HIDDEN>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit
X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address
 (bad octet value).
X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address
 (bad octet value).
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -2.4 (--)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.4 (--)

On 2013-09-05 7:59, Hans Beckerus wrote:
> On 2013-09-05 2:33, Hans Beckérus wrote:
>> Sorry for the typo in previous mail, libtool,mk should of course be
>> libtool.m4. Nothing else.
>>
>> Thanks.
>> Hans
>>
>>
>> On Thu, Sep 5, 2013 at 2:19 PM, Hans Beckérus 
>> <hans.beckerus@HIDDEN> wrote:
>>> I am having problem running a SDK cross-compilation toolchain built
>>> through Yocto.
>>> After some digging I discovered that the root cause of the problem is
>>> the fact that the sysroot is incorrectly resolved if --with-sysroot is
>>> not specified when running configure. Actually in Yocto --with-sysroot
>>> is replaced by -with-libtool-sysroot but that is irrelevant in this
>>> case. I believe the error is in libtool.mk. Specifically the following
>>> piece of code:
>>>
>>> # _LT_WITH_SYSROOT
>>> # ----------------
>>> AC_DEFUN([_LT_WITH_SYSROOT],
>>> [AC_MSG_CHECKING([for sysroot])
>>> AC_ARG_WITH([sysroot],
>>> [  --with-sysroot[=DIR] Search for dependent libraries within DIR
>>>                          (or the compiler's sysroot if not 
>>> specified).],
>>> [], [with_sysroot=no])
>>>
>>> dnl lt_sysroot will always be passed unquoted.  We quote it here
>>> dnl in case the user passed a directory name.
>>> lt_sysroot=
>>> case ${with_sysroot} in #(
>>>   yes)
>>>     if test "$GCC" = yes; then
>>>       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
>>>     fi
>>>     ;; #(
>>>   /*)
>>>     lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
>>>     ;; #(
>>>   no|'')
>>>     ;; #(
>>>   *)
>>>     AC_MSG_RESULT([${with_sysroot}])
>>>     AC_MSG_ERROR([The sysroot must be an absolute path.])
>>>     ;;
>>> esac
>>>
>>> If --with-sysroot is *not* set it should be picked-up from the
>>> compiler. But the switch statement above is wrong since the yes) and
>>> no) cases are swapped.
>>>
>>> Here is my configuration:
>>>
>>>          host-triplet: arm-poky-linux-gnueabi
>>>          shell: /bin/sh
>>>          compiler: arm-poky-linux-gnueabi-gcc  -march=armv7-a
>>> -mthumb-interwork -mfloat-abi=softfp -mtune=cortex-a9
>>> --sysroot=/proj/nci_up/cpri_splitter/poky-chris/1.4+snapshot/sysroots/cortexa9-vfp-poky-linux-gnueabi 
>>>
>>>          compiler flags: -O2 -pipe -g -feliminate-unused-debug-types
>>>          linker: arm-poky-linux-gnueabi-ld
>>> --sysroot=/proj/nci_up/cpri_splitter/poky-chris/1.4+snapshot/sysroots/cortexa9-vfp-poky-linux-gnueabi 
>>>
>>> (gnu? yes)
>>>          arm-poky-linux-gnueabi-libtool: (GNU libtool) 2.4.2
>>>          automake: automake (GNU automake) 1.12.6
>>>          autoconf: autoconf (GNU Autoconf) 2.69
>>>
>>> Thanks.
>>> Hans
> Here is a patch that corrects the problem. This patch has also been 
> sent to Yocto for review.
> Thanks.
> Hans
>
> -- 
>
> diff -ur libtool-2.4.2.orig/configure libtool-2.4.2/configure
> --- libtool-2.4.2.orig/configure 2013-09-05 10:37:50.982677000 +0200
> +++ libtool-2.4.2/configure 2013-09-05 10:12:24.551681000 +0200
> @@ -6814,7 +6814,7 @@
>
>  lt_sysroot=
>  case ${with_libtool_sysroot} in #(
> - yes)
> + no)
>     if test "$GCC" = yes; then
>       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
>     fi
> @@ -6822,7 +6822,7 @@
>   /*)
>     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
>     ;; #(
> - no|'')
> + yes|'')
>     ;; #(
>   *)
>     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
> ${with_libtool_sysroot}" >&5
> diff -ur libtool-2.4.2.orig/libltdl/configure 
> libtool-2.4.2/libltdl/configure
> --- libtool-2.4.2.orig/libltdl/configure 2013-09-05 10:37:24.738048000 
> +0200
> +++ libtool-2.4.2/libltdl/configure 2013-09-05 10:38:44.540026000 +0200
> @@ -6027,7 +6027,7 @@
>
>  lt_sysroot=
>  case ${with_libtool_sysroot} in #(
> - yes)
> + no)
>     if test "$GCC" = yes; then
>       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
>     fi
> @@ -6035,7 +6035,7 @@
>   /*)
>     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
>     ;; #(
> - no|'')
> + yes|'')
>     ;; #(
>   *)
>     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
> ${with_libtool_sysroot}" >&5
> diff -ur libtool-2.4.2.orig/libltdl/m4/libtool.m4
> libtool-2.4.2/libltdl/m4/libtool.m4
> --- libtool-2.4.2.orig/libltdl/m4/libtool.m4 2013-09-05 
> 10:37:24.690013000 +0200
> +++ libtool-2.4.2/libltdl/m4/libtool.m4 2013-09-05 12:05:51.560281000 
> +0200
> @@ -1234,7 +1234,7 @@
>  dnl in case the user passed a directory name.
>  lt_sysroot=
>  case ${with_libtool_sysroot} in #(
> - yes)
> + no)
>     if test "$GCC" = yes; then
>       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
>     fi
> @@ -1242,7 +1242,7 @@
>   /*)
>     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
>     ;; #(
> - no|'')
> + yes|'')
>     ;; #(
>   *)
>     AC_MSG_RESULT([${with_libtool_sysroot}])
> diff -ur libtool-2.4.2.orig/tests/cdemo/configure
> libtool-2.4.2/tests/cdemo/configure
> --- libtool-2.4.2.orig/tests/cdemo/configure 2013-09-05 
> 10:37:24.793021000 +0200
> +++ libtool-2.4.2/tests/cdemo/configure 2013-09-05 10:39:01.039463000 
> +0200
> @@ -5907,7 +5907,7 @@
>
>  lt_sysroot=
>  case ${with_libtool_sysroot} in #(
> - yes)
> + no)
>     if test "$GCC" = yes; then
>       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
>     fi
> @@ -5915,7 +5915,7 @@
>   /*)
>     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
>     ;; #(
> - no|'')
> + yes|'')
>     ;; #(
>   *)
>     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
> ${with_libtool_sysroot}" >&5
> diff -ur libtool-2.4.2.orig/tests/demo/configure
> libtool-2.4.2/tests/demo/configure
> --- libtool-2.4.2.orig/tests/demo/configure 2013-09-05 
> 10:37:24.878048000 +0200
> +++ libtool-2.4.2/tests/demo/configure 2013-09-05 10:39:15.357833000 
> +0200
> @@ -5905,7 +5905,7 @@
>
>  lt_sysroot=
>  case ${with_libtool_sysroot} in #(
> - yes)
> + no)
>     if test "$GCC" = yes; then
>       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
>     fi
> @@ -5913,7 +5913,7 @@
>   /*)
>     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
>     ;; #(
> - no|'')
> + yes|'')
>     ;; #(
>   *)
>     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
> ${with_libtool_sysroot}" >&5
> diff -ur libtool-2.4.2.orig/tests/depdemo/configure
> libtool-2.4.2/tests/depdemo/configure
> --- libtool-2.4.2.orig/tests/depdemo/configure 2013-09-05
> 10:37:25.003086000 +0200
> +++ libtool-2.4.2/tests/depdemo/configure 2013-09-05 
> 10:39:33.424217000 +0200
> @@ -5902,7 +5902,7 @@
>
>  lt_sysroot=
>  case ${with_libtool_sysroot} in #(
> - yes)
> + no)
>     if test "$GCC" = yes; then
>       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
>     fi
> @@ -5910,7 +5910,7 @@
>   /*)
>     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
>     ;; #(
> - no|'')
> + yes|'')
>     ;; #(
>   *)
>     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
> ${with_libtool_sysroot}" >&5
> diff -ur libtool-2.4.2.orig/tests/f77demo/configure
> libtool-2.4.2/tests/f77demo/configure
> --- libtool-2.4.2.orig/tests/f77demo/configure 2013-09-05
> 10:37:25.232029000 +0200
> +++ libtool-2.4.2/tests/f77demo/configure 2013-09-05 
> 12:02:54.749911000 +0200
> @@ -6887,7 +6887,7 @@
>
>  lt_sysroot=
>  case ${with_libtool_sysroot} in #(
> - yes)
> + no)
>     if test "$GCC" = yes; then
>       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
>     fi
> @@ -6895,7 +6895,7 @@
>   /*)
>     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
>     ;; #(
> - no|'')
> + yes|'')
>     ;; #(
>   *)
>     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
> ${with_libtool_sysroot}" >&5
> diff -ur libtool-2.4.2.orig/tests/fcdemo/configure
> libtool-2.4.2/tests/fcdemo/configure
> --- libtool-2.4.2.orig/tests/fcdemo/configure 2013-09-05
> 10:37:25.320032000 +0200
> +++ libtool-2.4.2/tests/fcdemo/configure 2013-09-05 12:03:34.350859000 
> +0200
> @@ -6986,7 +6986,7 @@
>
>  lt_sysroot=
>  case ${with_libtool_sysroot} in #(
> - yes)
> + no)
>     if test "$GCC" = yes; then
>       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
>     fi
> @@ -6994,7 +6994,7 @@
>   /*)
>     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
>     ;; #(
> - no|'')
> + yes|'')
>     ;; #(
>   *)
>     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
> ${with_libtool_sysroot}" >&5
> diff -ur libtool-2.4.2.orig/tests/mdemo/configure
> libtool-2.4.2/tests/mdemo/configure
> --- libtool-2.4.2.orig/tests/mdemo/configure 2013-09-05 
> 10:37:25.458028000 +0200
> +++ libtool-2.4.2/tests/mdemo/configure 2013-09-05 12:04:04.233622000 
> +0200
> @@ -5934,7 +5934,7 @@
>
>  lt_sysroot=
>  case ${with_libtool_sysroot} in #(
> - yes)
> + no)
>     if test "$GCC" = yes; then
>       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
>     fi
> @@ -5942,7 +5942,7 @@
>   /*)
>     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
>     ;; #(
> - no|'')
> + yes|'')
>     ;; #(
>   *)
>     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
> ${with_libtool_sysroot}" >&5
> diff -ur libtool-2.4.2.orig/tests/mdemo2/configure
> libtool-2.4.2/tests/mdemo2/configure
> --- libtool-2.4.2.orig/tests/mdemo2/configure 2013-09-05
> 10:37:25.564096000 +0200
> +++ libtool-2.4.2/tests/mdemo2/configure 2013-09-05 12:04:36.688447000 
> +0200
> @@ -5907,7 +5907,7 @@
>
>  lt_sysroot=
>  case ${with_libtool_sysroot} in #(
> - yes)
> + no)
>     if test "$GCC" = yes; then
>       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
>     fi
> @@ -5915,7 +5915,7 @@
>   /*)
>     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
>     ;; #(
> - no|'')
> + yes|'')
>     ;; #(
>   *)
>     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
> ${with_libtool_sysroot}" >&5
> diff -ur libtool-2.4.2.orig/tests/pdemo/configure
> libtool-2.4.2/tests/pdemo/configure
> --- libtool-2.4.2.orig/tests/pdemo/configure 2013-09-05 
> 10:37:25.619085000 +0200
> +++ libtool-2.4.2/tests/pdemo/configure 2013-09-05 12:04:50.578801000 
> +0200
> @@ -5910,7 +5910,7 @@
>
>  lt_sysroot=
>  case ${with_libtool_sysroot} in #(
> - yes)
> + no)
>     if test "$GCC" = yes; then
>       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
>     fi
> @@ -5918,7 +5918,7 @@
>   /*)
>     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
>     ;; #(
> - no|'')
> + yes|'')
>     ;; #(
>   *)
>     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
> ${with_libtool_sysroot}" >&5
> diff -ur libtool-2.4.2.orig/tests/tagdemo/configure
> libtool-2.4.2/tests/tagdemo/configure
> --- libtool-2.4.2.orig/tests/tagdemo/configure 2013-09-05
> 10:37:25.727040000 +0200
> +++ libtool-2.4.2/tests/tagdemo/configure 2013-09-05 
> 12:05:11.896353000 +0200
> @@ -6926,7 +6926,7 @@
>
>  lt_sysroot=
>  case ${with_libtool_sysroot} in #(
> - yes)
> + no)
>     if test "$GCC" = yes; then
>       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
>     fi
> @@ -6934,7 +6934,7 @@
>   /*)
>     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
>     ;; #(
> - no|'')
> + yes|'')
>     ;; #(
>   *)
>     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
> ${with_libtool_sysroot}" >&5
>
>
And oh, note that this patch is based on the Yocto baseline which means 
"with_sysroot" was replaced with "with_libtool_sysroot" and thus can not 
be applied directly on upstream libtool.

Thanks.
Hans





Information forwarded to bug-libtool@HIDDEN:
bug#15276; Package libtool. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 5 Sep 2013 18:00:33 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 14:00:33 2013
Received: from localhost ([127.0.0.1]:42228 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.80)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1VHdr5-000824-IZ
	for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 14:00:32 -0400
Received: from eggs.gnu.org ([208.118.235.92]:59467)
 by debbugs.gnu.org with esmtp (Exim 4.80)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHdr2-00081n-Hi
 for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 14:00:29 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHdqq-0005SX-L2
 for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 14:00:23 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM,
 T_DKIM_INVALID autolearn=disabled version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:54278)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHdqq-0005SN-Hx
 for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 14:00:16 -0400
Received: from eggs.gnu.org ([2001:4830:134:3::10]:32924)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHdqj-0007Mn-SE
 for bug-libtool@HIDDEN; Thu, 05 Sep 2013 14:00:16 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHdqb-000595-35
 for bug-libtool@HIDDEN; Thu, 05 Sep 2013 14:00:09 -0400
Received: from mail-lb0-x22d.google.com ([2a00:1450:4010:c04::22d]:42003)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHdqa-00058W-Mw
 for bug-libtool@HIDDEN; Thu, 05 Sep 2013 14:00:01 -0400
Received: by mail-lb0-f173.google.com with SMTP id o14so1961341lbi.4
 for <bug-libtool@HIDDEN>; Thu, 05 Sep 2013 10:59:59 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=message-id:date:from:user-agent:mime-version:to:subject:references
 :in-reply-to:content-type:content-transfer-encoding;
 bh=wHat1JoRVZsgSseFOBQPzPfEiE3qPNCHJSUK4ZK7X1k=;
 b=iyk0pKwELIxbNTNT6vJxCbzBlFpdnk2OtSYrtHv7j0p4sCCpYfjKyqTG5vJi2o5F6S
 eLDfgaDx7Q/YFD6y2/jxZQWqZ1gLjvDao/JkSrC8osdVYyZBvjv6o62eh2bKuHXML0MF
 sm9GdAhPdYdJHBevn6psu7XtXxEV/9v6OKECSTzDxGAM5ALZxus1rVPc+zjtIrdTenoM
 BFaMPYz8PK/JTwkrF5lHKQWQ7hSvoeYNM3Qx0Jh21XsWMzqFEjg1vcY5BZR+iHGbkmnE
 VkkxT+ztg7zrcp7HznzSVc2f+Pv9ZTt53fKiVU4mFBij9c04Ft16HPTcjrJfrEkBOk1R
 5HLA==
X-Received: by 10.152.36.98 with SMTP id p2mr8453742laj.14.1378403999492;
 Thu, 05 Sep 2013 10:59:59 -0700 (PDT)
Received: from [192.168.0.10] (h135n8-rny-a12.ias.bredband.telia.com.
 [217.209.54.135])
 by mx.google.com with ESMTPSA id vs11sm14697679lac.3.1969.12.31.16.00.00
 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128);
 Thu, 05 Sep 2013 10:59:58 -0700 (PDT)
Message-ID: <5228C69B.7010102@HIDDEN>
Date: Thu, 05 Sep 2013 19:59:55 +0200
From: Hans Beckerus <hans.beckerus@HIDDEN>
User-Agent: Mozilla/5.0 (Windows NT 6.2;
 rv:17.0) Gecko/20130801 Thunderbird/17.0.8
MIME-Version: 1.0
To: bug-libtool@HIDDEN
Subject: Re: libtool.m4 incorrectly resolves lt_sysroot?
References: <CAFyqS9ropQZrcXwS_j7p=0k6=mgV=-RwqmOTCWPEwJbq-sS=5w@HIDDEN>
 <CAFyqS9rfmfF85BrX9D3Jyaz=O0CTF3F+G2MU3kwZ0btkEbu4jA@HIDDEN>
In-Reply-To: <CAFyqS9rfmfF85BrX9D3Jyaz=O0CTF3F+G2MU3kwZ0btkEbu4jA@HIDDEN>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit
X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address
 (bad octet value).
X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address
 (bad octet value).
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -2.4 (--)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.4 (--)

On 2013-09-05 2:33, Hans Beckérus wrote:
> Sorry for the typo in previous mail, libtool,mk should of course be
> libtool.m4. Nothing else.
>
> Thanks.
> Hans
>
>
> On Thu, Sep 5, 2013 at 2:19 PM, Hans Beckérus <hans.beckerus@HIDDEN> wrote:
>> I am having problem running a SDK cross-compilation toolchain built
>> through Yocto.
>> After some digging I discovered that the root cause of the problem is
>> the fact that the sysroot is incorrectly resolved if --with-sysroot is
>> not specified when running configure. Actually in Yocto --with-sysroot
>> is replaced by -with-libtool-sysroot but that is irrelevant in this
>> case. I believe the error is in libtool.mk. Specifically the following
>> piece of code:
>>
>> # _LT_WITH_SYSROOT
>> # ----------------
>> AC_DEFUN([_LT_WITH_SYSROOT],
>> [AC_MSG_CHECKING([for sysroot])
>> AC_ARG_WITH([sysroot],
>> [  --with-sysroot[=DIR] Search for dependent libraries within DIR
>>                          (or the compiler's sysroot if not specified).],
>> [], [with_sysroot=no])
>>
>> dnl lt_sysroot will always be passed unquoted.  We quote it here
>> dnl in case the user passed a directory name.
>> lt_sysroot=
>> case ${with_sysroot} in #(
>>   yes)
>>     if test "$GCC" = yes; then
>>       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
>>     fi
>>     ;; #(
>>   /*)
>>     lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
>>     ;; #(
>>   no|'')
>>     ;; #(
>>   *)
>>     AC_MSG_RESULT([${with_sysroot}])
>>     AC_MSG_ERROR([The sysroot must be an absolute path.])
>>     ;;
>> esac
>>
>> If --with-sysroot is *not* set it should be picked-up from the
>> compiler. But the switch statement above is wrong since the yes) and
>> no) cases are swapped.
>>
>> Here is my configuration:
>>
>>          host-triplet: arm-poky-linux-gnueabi
>>          shell: /bin/sh
>>          compiler: arm-poky-linux-gnueabi-gcc  -march=armv7-a
>> -mthumb-interwork -mfloat-abi=softfp -mtune=cortex-a9
>> --sysroot=/proj/nci_up/cpri_splitter/poky-chris/1.4+snapshot/sysroots/cortexa9-vfp-poky-linux-gnueabi
>>          compiler flags: -O2 -pipe -g -feliminate-unused-debug-types
>>          linker: arm-poky-linux-gnueabi-ld
>> --sysroot=/proj/nci_up/cpri_splitter/poky-chris/1.4+snapshot/sysroots/cortexa9-vfp-poky-linux-gnueabi
>> (gnu? yes)
>>          arm-poky-linux-gnueabi-libtool: (GNU libtool) 2.4.2
>>          automake: automake (GNU automake) 1.12.6
>>          autoconf: autoconf (GNU Autoconf) 2.69
>>
>> Thanks.
>> Hans
Here is a patch that corrects the problem. This patch has also been sent 
to Yocto for review.
Thanks.
Hans

--

diff -ur libtool-2.4.2.orig/configure libtool-2.4.2/configure
--- libtool-2.4.2.orig/configure 2013-09-05 10:37:50.982677000 +0200
+++ libtool-2.4.2/configure 2013-09-05 10:12:24.551681000 +0200
@@ -6814,7 +6814,7 @@

  lt_sysroot=
  case ${with_libtool_sysroot} in #(
- yes)
+ no)
     if test "$GCC" = yes; then
       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
     fi
@@ -6822,7 +6822,7 @@
   /*)
     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
     ;; #(
- no|'')
+ yes|'')
     ;; #(
   *)
     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
${with_libtool_sysroot}" >&5
diff -ur libtool-2.4.2.orig/libltdl/configure libtool-2.4.2/libltdl/configure
--- libtool-2.4.2.orig/libltdl/configure 2013-09-05 10:37:24.738048000 +0200
+++ libtool-2.4.2/libltdl/configure 2013-09-05 10:38:44.540026000 +0200
@@ -6027,7 +6027,7 @@

  lt_sysroot=
  case ${with_libtool_sysroot} in #(
- yes)
+ no)
     if test "$GCC" = yes; then
       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
     fi
@@ -6035,7 +6035,7 @@
   /*)
     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
     ;; #(
- no|'')
+ yes|'')
     ;; #(
   *)
     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
${with_libtool_sysroot}" >&5
diff -ur libtool-2.4.2.orig/libltdl/m4/libtool.m4
libtool-2.4.2/libltdl/m4/libtool.m4
--- libtool-2.4.2.orig/libltdl/m4/libtool.m4 2013-09-05 10:37:24.690013000 +0200
+++ libtool-2.4.2/libltdl/m4/libtool.m4 2013-09-05 12:05:51.560281000 +0200
@@ -1234,7 +1234,7 @@
  dnl in case the user passed a directory name.
  lt_sysroot=
  case ${with_libtool_sysroot} in #(
- yes)
+ no)
     if test "$GCC" = yes; then
       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
     fi
@@ -1242,7 +1242,7 @@
   /*)
     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
     ;; #(
- no|'')
+ yes|'')
     ;; #(
   *)
     AC_MSG_RESULT([${with_libtool_sysroot}])
diff -ur libtool-2.4.2.orig/tests/cdemo/configure
libtool-2.4.2/tests/cdemo/configure
--- libtool-2.4.2.orig/tests/cdemo/configure 2013-09-05 10:37:24.793021000 +0200
+++ libtool-2.4.2/tests/cdemo/configure 2013-09-05 10:39:01.039463000 +0200
@@ -5907,7 +5907,7 @@

  lt_sysroot=
  case ${with_libtool_sysroot} in #(
- yes)
+ no)
     if test "$GCC" = yes; then
       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
     fi
@@ -5915,7 +5915,7 @@
   /*)
     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
     ;; #(
- no|'')
+ yes|'')
     ;; #(
   *)
     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
${with_libtool_sysroot}" >&5
diff -ur libtool-2.4.2.orig/tests/demo/configure
libtool-2.4.2/tests/demo/configure
--- libtool-2.4.2.orig/tests/demo/configure 2013-09-05 10:37:24.878048000 +0200
+++ libtool-2.4.2/tests/demo/configure 2013-09-05 10:39:15.357833000 +0200
@@ -5905,7 +5905,7 @@

  lt_sysroot=
  case ${with_libtool_sysroot} in #(
- yes)
+ no)
     if test "$GCC" = yes; then
       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
     fi
@@ -5913,7 +5913,7 @@
   /*)
     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
     ;; #(
- no|'')
+ yes|'')
     ;; #(
   *)
     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
${with_libtool_sysroot}" >&5
diff -ur libtool-2.4.2.orig/tests/depdemo/configure
libtool-2.4.2/tests/depdemo/configure
--- libtool-2.4.2.orig/tests/depdemo/configure 2013-09-05
10:37:25.003086000 +0200
+++ libtool-2.4.2/tests/depdemo/configure 2013-09-05 10:39:33.424217000 +0200
@@ -5902,7 +5902,7 @@

  lt_sysroot=
  case ${with_libtool_sysroot} in #(
- yes)
+ no)
     if test "$GCC" = yes; then
       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
     fi
@@ -5910,7 +5910,7 @@
   /*)
     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
     ;; #(
- no|'')
+ yes|'')
     ;; #(
   *)
     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
${with_libtool_sysroot}" >&5
diff -ur libtool-2.4.2.orig/tests/f77demo/configure
libtool-2.4.2/tests/f77demo/configure
--- libtool-2.4.2.orig/tests/f77demo/configure 2013-09-05
10:37:25.232029000 +0200
+++ libtool-2.4.2/tests/f77demo/configure 2013-09-05 12:02:54.749911000 +0200
@@ -6887,7 +6887,7 @@

  lt_sysroot=
  case ${with_libtool_sysroot} in #(
- yes)
+ no)
     if test "$GCC" = yes; then
       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
     fi
@@ -6895,7 +6895,7 @@
   /*)
     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
     ;; #(
- no|'')
+ yes|'')
     ;; #(
   *)
     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
${with_libtool_sysroot}" >&5
diff -ur libtool-2.4.2.orig/tests/fcdemo/configure
libtool-2.4.2/tests/fcdemo/configure
--- libtool-2.4.2.orig/tests/fcdemo/configure 2013-09-05
10:37:25.320032000 +0200
+++ libtool-2.4.2/tests/fcdemo/configure 2013-09-05 12:03:34.350859000 +0200
@@ -6986,7 +6986,7 @@

  lt_sysroot=
  case ${with_libtool_sysroot} in #(
- yes)
+ no)
     if test "$GCC" = yes; then
       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
     fi
@@ -6994,7 +6994,7 @@
   /*)
     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
     ;; #(
- no|'')
+ yes|'')
     ;; #(
   *)
     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
${with_libtool_sysroot}" >&5
diff -ur libtool-2.4.2.orig/tests/mdemo/configure
libtool-2.4.2/tests/mdemo/configure
--- libtool-2.4.2.orig/tests/mdemo/configure 2013-09-05 10:37:25.458028000 +0200
+++ libtool-2.4.2/tests/mdemo/configure 2013-09-05 12:04:04.233622000 +0200
@@ -5934,7 +5934,7 @@

  lt_sysroot=
  case ${with_libtool_sysroot} in #(
- yes)
+ no)
     if test "$GCC" = yes; then
       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
     fi
@@ -5942,7 +5942,7 @@
   /*)
     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
     ;; #(
- no|'')
+ yes|'')
     ;; #(
   *)
     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
${with_libtool_sysroot}" >&5
diff -ur libtool-2.4.2.orig/tests/mdemo2/configure
libtool-2.4.2/tests/mdemo2/configure
--- libtool-2.4.2.orig/tests/mdemo2/configure 2013-09-05
10:37:25.564096000 +0200
+++ libtool-2.4.2/tests/mdemo2/configure 2013-09-05 12:04:36.688447000 +0200
@@ -5907,7 +5907,7 @@

  lt_sysroot=
  case ${with_libtool_sysroot} in #(
- yes)
+ no)
     if test "$GCC" = yes; then
       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
     fi
@@ -5915,7 +5915,7 @@
   /*)
     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
     ;; #(
- no|'')
+ yes|'')
     ;; #(
   *)
     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
${with_libtool_sysroot}" >&5
diff -ur libtool-2.4.2.orig/tests/pdemo/configure
libtool-2.4.2/tests/pdemo/configure
--- libtool-2.4.2.orig/tests/pdemo/configure 2013-09-05 10:37:25.619085000 +0200
+++ libtool-2.4.2/tests/pdemo/configure 2013-09-05 12:04:50.578801000 +0200
@@ -5910,7 +5910,7 @@

  lt_sysroot=
  case ${with_libtool_sysroot} in #(
- yes)
+ no)
     if test "$GCC" = yes; then
       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
     fi
@@ -5918,7 +5918,7 @@
   /*)
     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
     ;; #(
- no|'')
+ yes|'')
     ;; #(
   *)
     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
${with_libtool_sysroot}" >&5
diff -ur libtool-2.4.2.orig/tests/tagdemo/configure
libtool-2.4.2/tests/tagdemo/configure
--- libtool-2.4.2.orig/tests/tagdemo/configure 2013-09-05
10:37:25.727040000 +0200
+++ libtool-2.4.2/tests/tagdemo/configure 2013-09-05 12:05:11.896353000 +0200
@@ -6926,7 +6926,7 @@

  lt_sysroot=
  case ${with_libtool_sysroot} in #(
- yes)
+ no)
     if test "$GCC" = yes; then
       lt_sysroot=`$CC --print-sysroot 2>/dev/null`
     fi
@@ -6934,7 +6934,7 @@
   /*)
     lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
     ;; #(
- no|'')
+ yes|'')
     ;; #(
   *)
     { $as_echo "$as_me:${as_lineno-$LINENO}: result:
${with_libtool_sysroot}" >&5






Information forwarded to bug-libtool@HIDDEN:
bug#15276; Package libtool. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 5 Sep 2013 15:44:14 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 11:44:14 2013
Received: from localhost ([127.0.0.1]:42039 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.80)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1VHbjB-0003Wm-FC
	for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 11:44:13 -0400
Received: from eggs.gnu.org ([208.118.235.92]:33445)
 by debbugs.gnu.org with esmtp (Exim 4.80)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHYkd-0006tw-Dk
 for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 08:33:31 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHYkW-0002cs-Pj
 for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 08:33:26 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM,
 T_DKIM_INVALID autolearn=disabled version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:37955)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHYkW-0002co-Mx
 for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 08:33:24 -0400
Received: from eggs.gnu.org ([2001:4830:134:3::10]:35155)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHYkV-0008KI-1c
 for bug-libtool@HIDDEN; Thu, 05 Sep 2013 08:33:24 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHYkT-0002bH-N1
 for bug-libtool@HIDDEN; Thu, 05 Sep 2013 08:33:22 -0400
Received: from mail-ob0-x234.google.com ([2607:f8b0:4003:c01::234]:48805)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHYkT-0002bD-IL
 for bug-libtool@HIDDEN; Thu, 05 Sep 2013 08:33:21 -0400
Received: by mail-ob0-f180.google.com with SMTP id v19so1876934obq.11
 for <bug-libtool@HIDDEN>; Thu, 05 Sep 2013 05:33:21 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=mime-version:in-reply-to:references:date:message-id:subject:from:to
 :content-type:content-transfer-encoding;
 bh=mytl66zY9/FS7wr2eguHbN0+tKCmsIiiHDehLzcB1dA=;
 b=saq+P2F2uVeq/9OJXFxhR/nqHct3AScZZMeu2mvCPxCjY/wHkY+1qGrpAwlwFIi5e5
 Sagw1i98OIxUbBvsNuMKsyTjRIyFsJ3zt+YeJuFZS+WeoZiOeAOwKX/wd8FI7ieWDbiz
 0nv/ux7g4B4f5QWa6ndjSfnswwpzMVPfb5+yn47pL5V9KucID22f0+ItSQOGX5iLqNDa
 Vkw4Cay1S9QlkgHsHAtOtC9bLqYuO82QblsIEGSpGBaN3ulm9Rf90zFt0eu1+nMMSz/o
 3V1NoMGZGHzQtWoUtaDbMRBfeVTeVjbV8YDckM1I7Z6up/2PbhXyn/B5FI/8e/E/SgA0
 JXRQ==
MIME-Version: 1.0
X-Received: by 10.182.73.136 with SMTP id l8mr6145883obv.53.1378384401023;
 Thu, 05 Sep 2013 05:33:21 -0700 (PDT)
Received: by 10.182.44.8 with HTTP; Thu, 5 Sep 2013 05:33:20 -0700 (PDT)
In-Reply-To: <CAFyqS9ropQZrcXwS_j7p=0k6=mgV=-RwqmOTCWPEwJbq-sS=5w@HIDDEN>
References: <CAFyqS9ropQZrcXwS_j7p=0k6=mgV=-RwqmOTCWPEwJbq-sS=5w@HIDDEN>
Date: Thu, 5 Sep 2013 14:33:20 +0200
Message-ID: <CAFyqS9rfmfF85BrX9D3Jyaz=O0CTF3F+G2MU3kwZ0btkEbu4jA@HIDDEN>
Subject: Re: libtool.mk incorrectly resolves lt_sysroot?
From: =?ISO-8859-1?Q?Hans_Beck=E9rus?= <hans.beckerus@HIDDEN>
To: bug-libtool@HIDDEN
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address
 (bad octet value).
X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address
 (bad octet value).
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -2.4 (--)
X-Debbugs-Envelope-To: submit
X-Mailman-Approved-At: Thu, 05 Sep 2013 11:44:11 -0400
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.4 (--)

Sorry for the typo in previous mail, libtool,mk should of course be
libtool.m4. Nothing else.

Thanks.
Hans


On Thu, Sep 5, 2013 at 2:19 PM, Hans Beck=E9rus <hans.beckerus@HIDDEN> w=
rote:
> I am having problem running a SDK cross-compilation toolchain built
> through Yocto.
> After some digging I discovered that the root cause of the problem is
> the fact that the sysroot is incorrectly resolved if --with-sysroot is
> not specified when running configure. Actually in Yocto --with-sysroot
> is replaced by -with-libtool-sysroot but that is irrelevant in this
> case. I believe the error is in libtool.mk. Specifically the following
> piece of code:
>
> # _LT_WITH_SYSROOT
> # ----------------
> AC_DEFUN([_LT_WITH_SYSROOT],
> [AC_MSG_CHECKING([for sysroot])
> AC_ARG_WITH([sysroot],
> [  --with-sysroot[=3DDIR] Search for dependent libraries within DIR
>                         (or the compiler's sysroot if not specified).],
> [], [with_sysroot=3Dno])
>
> dnl lt_sysroot will always be passed unquoted.  We quote it here
> dnl in case the user passed a directory name.
> lt_sysroot=3D
> case ${with_sysroot} in #(
>  yes)
>    if test "$GCC" =3D yes; then
>      lt_sysroot=3D`$CC --print-sysroot 2>/dev/null`
>    fi
>    ;; #(
>  /*)
>    lt_sysroot=3D`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
>    ;; #(
>  no|'')
>    ;; #(
>  *)
>    AC_MSG_RESULT([${with_sysroot}])
>    AC_MSG_ERROR([The sysroot must be an absolute path.])
>    ;;
> esac
>
> If --with-sysroot is *not* set it should be picked-up from the
> compiler. But the switch statement above is wrong since the yes) and
> no) cases are swapped.
>
> Here is my configuration:
>
>         host-triplet: arm-poky-linux-gnueabi
>         shell: /bin/sh
>         compiler: arm-poky-linux-gnueabi-gcc  -march=3Darmv7-a
> -mthumb-interwork -mfloat-abi=3Dsoftfp -mtune=3Dcortex-a9
> --sysroot=3D/proj/nci_up/cpri_splitter/poky-chris/1.4+snapshot/sysroots/c=
ortexa9-vfp-poky-linux-gnueabi
>         compiler flags: -O2 -pipe -g -feliminate-unused-debug-types
>         linker: arm-poky-linux-gnueabi-ld
> --sysroot=3D/proj/nci_up/cpri_splitter/poky-chris/1.4+snapshot/sysroots/c=
ortexa9-vfp-poky-linux-gnueabi
> (gnu? yes)
>         arm-poky-linux-gnueabi-libtool: (GNU libtool) 2.4.2
>         automake: automake (GNU automake) 1.12.6
>         autoconf: autoconf (GNU Autoconf) 2.69
>
> Thanks.
> Hans




Information forwarded to bug-libtool@HIDDEN:
bug#15276; Package libtool. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 5 Sep 2013 15:33:45 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 11:33:45 2013
Received: from localhost ([127.0.0.1]:42024 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.80)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1VHbZ2-00039h-IQ
	for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 11:33:45 -0400
Received: from eggs.gnu.org ([208.118.235.92]:57556)
 by debbugs.gnu.org with esmtp (Exim 4.80)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHYX6-0006YF-8W
 for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 08:19:32 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHYWz-0006RR-U5
 for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 08:19:26 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM,
 T_DKIM_INVALID autolearn=disabled version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:49457)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHYWz-0006RM-RL
 for submit <at> debbugs.gnu.org; Thu, 05 Sep 2013 08:19:25 -0400
Received: from eggs.gnu.org ([2001:4830:134:3::10]:59275)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHYWy-00011H-OZ
 for bug-libtool@HIDDEN; Thu, 05 Sep 2013 08:19:25 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHYWx-0006R3-JF
 for bug-libtool@HIDDEN; Thu, 05 Sep 2013 08:19:24 -0400
Received: from mail-oa0-x230.google.com ([2607:f8b0:4003:c02::230]:59598)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <hans.beckerus@HIDDEN>) id 1VHYWx-0006Qc-E7
 for bug-libtool@HIDDEN; Thu, 05 Sep 2013 08:19:23 -0400
Received: by mail-oa0-f48.google.com with SMTP id o17so2027948oag.7
 for <bug-libtool@HIDDEN>; Thu, 05 Sep 2013 05:19:22 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=mime-version:date:message-id:subject:from:to:content-type;
 bh=vm0qRTaxtpkw52iDIEcXHEUeEuGlMm4RLOWHWbDMNbg=;
 b=lIho5jeEkE2lJu96e5JP83C7FfTf2TkzztpIWOmPVgazZ4FexRjhO832SAvuek2OGR
 7Yw0IRi7yNtuUcj7GKJkOEnDniH+17AV1MvBzvBv5d8HnJcHCWJqRYF8RTKYFHoxpcmq
 mJeg79w4aGnHCOJVGzgjhPzkmI9FA7InC9d1es0pldlkIvugb71xuZJ0QoOMgNJ0rjz4
 oJ48mOYfQzyIN9Mdw+rTP7i8onWO+xIqBj/PpAcJMi2CraH12edhFXDVRRZJdb7UECx7
 HZsMucHnBCBuYJxbU9yYuTBS76XDKEJsB4pC+tPnuPvechCDuzyxD8qrL/LhEsTLPKgJ
 yiBQ==
MIME-Version: 1.0
X-Received: by 10.182.73.136 with SMTP id l8mr6103817obv.53.1378383562415;
 Thu, 05 Sep 2013 05:19:22 -0700 (PDT)
Received: by 10.182.44.8 with HTTP; Thu, 5 Sep 2013 05:19:22 -0700 (PDT)
Date: Thu, 5 Sep 2013 14:19:22 +0200
Message-ID: <CAFyqS9ropQZrcXwS_j7p=0k6=mgV=-RwqmOTCWPEwJbq-sS=5w@HIDDEN>
Subject: libtool.mk incorrectly resolves lt_sysroot?
From: =?ISO-8859-1?Q?Hans_Beck=E9rus?= <hans.beckerus@HIDDEN>
To: bug-libtool@HIDDEN
Content-Type: text/plain; charset=ISO-8859-1
X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address
 (bad octet value).
X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address
 (bad octet value).
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -2.4 (--)
X-Debbugs-Envelope-To: submit
X-Mailman-Approved-At: Thu, 05 Sep 2013 11:33:43 -0400
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.4 (--)

I am having problem running a SDK cross-compilation toolchain built
through Yocto.
After some digging I discovered that the root cause of the problem is
the fact that the sysroot is incorrectly resolved if --with-sysroot is
not specified when running configure. Actually in Yocto --with-sysroot
is replaced by -with-libtool-sysroot but that is irrelevant in this
case. I believe the error is in libtool.mk. Specifically the following
piece of code:

# _LT_WITH_SYSROOT
# ----------------
AC_DEFUN([_LT_WITH_SYSROOT],
[AC_MSG_CHECKING([for sysroot])
AC_ARG_WITH([sysroot],
[  --with-sysroot[=DIR] Search for dependent libraries within DIR
                        (or the compiler's sysroot if not specified).],
[], [with_sysroot=no])

dnl lt_sysroot will always be passed unquoted.  We quote it here
dnl in case the user passed a directory name.
lt_sysroot=
case ${with_sysroot} in #(
 yes)
   if test "$GCC" = yes; then
     lt_sysroot=`$CC --print-sysroot 2>/dev/null`
   fi
   ;; #(
 /*)
   lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
   ;; #(
 no|'')
   ;; #(
 *)
   AC_MSG_RESULT([${with_sysroot}])
   AC_MSG_ERROR([The sysroot must be an absolute path.])
   ;;
esac

If --with-sysroot is *not* set it should be picked-up from the
compiler. But the switch statement above is wrong since the yes) and
no) cases are swapped.

Here is my configuration:

        host-triplet: arm-poky-linux-gnueabi
        shell: /bin/sh
        compiler: arm-poky-linux-gnueabi-gcc  -march=armv7-a
-mthumb-interwork -mfloat-abi=softfp -mtune=cortex-a9
--sysroot=/proj/nci_up/cpri_splitter/poky-chris/1.4+snapshot/sysroots/cortexa9-vfp-poky-linux-gnueabi
        compiler flags: -O2 -pipe -g -feliminate-unused-debug-types
        linker: arm-poky-linux-gnueabi-ld
--sysroot=/proj/nci_up/cpri_splitter/poky-chris/1.4+snapshot/sysroots/cortexa9-vfp-poky-linux-gnueabi
(gnu? yes)
        arm-poky-linux-gnueabi-libtool: (GNU libtool) 2.4.2
        automake: automake (GNU automake) 1.12.6
        autoconf: autoconf (GNU Autoconf) 2.69

Thanks.
Hans




Acknowledgement sent to Hans Beckérus <hans.beckerus@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-libtool@HIDDEN. Full text available.
Report forwarded to bug-libtool@HIDDEN:
bug#15276; Package libtool. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 25 Nov 2019 12:00:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.