Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] libnss: Enable for MIPS64 n32 platforms
@ 2014-05-22 10:02 Vicente Olivert Riera
  2014-05-22 10:10 ` Baruch Siach
  2014-05-22 10:10 ` Thomas Petazzoni
  0 siblings, 2 replies; 6+ messages in thread
From: Vicente Olivert Riera @ 2014-05-22 10:02 UTC (permalink / raw)
  To: buildroot

After talking with upstream we concluded that MIPS64 n32 is treated as a
32-bit architecture by libnss because it has 32-bit pointers, so
USE_64=1 should not be set in that case.

Upstream bug:
   https://bugzilla.mozilla.org/show_bug.cgi?id=1010730

WRT:
   http://git.buildroot.net/buildroot/commit/?id=73e6ae0fe6a69f88183ae33401f2314088b5f799

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
---
 package/libnss/Config.in |    1 -
 package/libnss/libnss.mk |    2 +-
 2 files changed, 1 insertions(+), 2 deletions(-)

diff --git a/package/libnss/Config.in b/package/libnss/Config.in
index 9a1668c..0401a67 100644
--- a/package/libnss/Config.in
+++ b/package/libnss/Config.in
@@ -6,7 +6,6 @@ config BR2_PACKAGE_LIBNSS
 	depends on BR2_LARGEFILE
 	depends on BR2_TOOLCHAIN_HAS_THREADS # libnspr
 	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT # libnspr
-	depends on !BR2_MIPS_NABI32
 	help
 	  Network Security Services (NSS) is a set of libraries designed
 	  to support development of security-enabled client and server
diff --git a/package/libnss/libnss.mk b/package/libnss/libnss.mk
index 666df74..b07cb6f 100644
--- a/package/libnss/libnss.mk
+++ b/package/libnss/libnss.mk
@@ -29,7 +29,7 @@ LIBNSS_BUILD_VARS = MOZILLA_CLIENT=1 \
 		OS_RELEASE="2.6" \
 		OS_TEST="$(ARCH)"
 
-ifeq ($(BR2_ARCH_IS_64),y)
+ifeq ($(BR2_ARCH_IS_64)$(BR2_MIPS_NABI32),yn)
 LIBNSS_BUILD_VARS += USE_64=1
 endif
 
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] libnss: Enable for MIPS64 n32 platforms
  2014-05-22 10:02 [Buildroot] [PATCH] libnss: Enable for MIPS64 n32 platforms Vicente Olivert Riera
@ 2014-05-22 10:10 ` Baruch Siach
  2014-05-22 10:10 ` Thomas Petazzoni
  1 sibling, 0 replies; 6+ messages in thread
From: Baruch Siach @ 2014-05-22 10:10 UTC (permalink / raw)
  To: buildroot

Hi Vicente,

On Thu, May 22, 2014 at 11:02:23AM +0100, Vicente Olivert Riera wrote:
> After talking with upstream we concluded that MIPS64 n32 is treated as a
> 32-bit architecture by libnss because it has 32-bit pointers, so
> USE_64=1 should not be set in that case.
> 
> Upstream bug:
>    https://bugzilla.mozilla.org/show_bug.cgi?id=1010730
> 
> WRT:
>    http://git.buildroot.net/buildroot/commit/?id=73e6ae0fe6a69f88183ae33401f2314088b5f799
> 
> Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
> ---
>  package/libnss/Config.in |    1 -
>  package/libnss/libnss.mk |    2 +-
>  2 files changed, 1 insertions(+), 2 deletions(-)
> 
> diff --git a/package/libnss/Config.in b/package/libnss/Config.in
> index 9a1668c..0401a67 100644
> --- a/package/libnss/Config.in
> +++ b/package/libnss/Config.in
> @@ -6,7 +6,6 @@ config BR2_PACKAGE_LIBNSS
>  	depends on BR2_LARGEFILE
>  	depends on BR2_TOOLCHAIN_HAS_THREADS # libnspr
>  	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT # libnspr
> -	depends on !BR2_MIPS_NABI32

Please update the comment dependency accordingly.

baruch

>  	help
>  	  Network Security Services (NSS) is a set of libraries designed
>  	  to support development of security-enabled client and server
> diff --git a/package/libnss/libnss.mk b/package/libnss/libnss.mk
> index 666df74..b07cb6f 100644
> --- a/package/libnss/libnss.mk
> +++ b/package/libnss/libnss.mk
> @@ -29,7 +29,7 @@ LIBNSS_BUILD_VARS = MOZILLA_CLIENT=1 \
>  		OS_RELEASE="2.6" \
>  		OS_TEST="$(ARCH)"
>  
> -ifeq ($(BR2_ARCH_IS_64),y)
> +ifeq ($(BR2_ARCH_IS_64)$(BR2_MIPS_NABI32),yn)
>  LIBNSS_BUILD_VARS += USE_64=1
>  endif

-- 
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] libnss: Enable for MIPS64 n32 platforms
  2014-05-22 10:02 [Buildroot] [PATCH] libnss: Enable for MIPS64 n32 platforms Vicente Olivert Riera
  2014-05-22 10:10 ` Baruch Siach
@ 2014-05-22 10:10 ` Thomas Petazzoni
  2014-05-22 10:11   ` Vicente Olivert Riera
  1 sibling, 1 reply; 6+ messages in thread
From: Thomas Petazzoni @ 2014-05-22 10:10 UTC (permalink / raw)
  To: buildroot

Dear Vicente Olivert Riera,

On Thu, 22 May 2014 11:02:23 +0100, Vicente Olivert Riera wrote:

> -ifeq ($(BR2_ARCH_IS_64),y)
> +ifeq ($(BR2_ARCH_IS_64)$(BR2_MIPS_NABI32),yn)

This cannot work: when an option is disabled, its value is empty, not
'n'.

So:

# a comment here that explains the exception for MIPS_NABI32
ifeq ($(BR2_ARCH_IS_64),y)
ifeq ($(BR2_MIPS_NABI32),)
...
endif
endif

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] libnss: Enable for MIPS64 n32 platforms
  2014-05-22 10:10 ` Thomas Petazzoni
@ 2014-05-22 10:11   ` Vicente Olivert Riera
  2014-05-22 10:46     ` Thomas Petazzoni
  0 siblings, 1 reply; 6+ messages in thread
From: Vicente Olivert Riera @ 2014-05-22 10:11 UTC (permalink / raw)
  To: buildroot

On 05/22/2014 11:10 AM, Thomas Petazzoni wrote:
> Dear Vicente Olivert Riera,
>
> On Thu, 22 May 2014 11:02:23 +0100, Vicente Olivert Riera wrote:
>
>> -ifeq ($(BR2_ARCH_IS_64),y)
>> +ifeq ($(BR2_ARCH_IS_64)$(BR2_MIPS_NABI32),yn)
>
> This cannot work: when an option is disabled, its value is empty, not
> 'n'.
>
> So:
>
> # a comment here that explains the exception for MIPS_NABI32
> ifeq ($(BR2_ARCH_IS_64),y)
> ifeq ($(BR2_MIPS_NABI32),)
> ...
> endif
> endif
>
> Thanks!
>
> Thomas
>

I tried it and it worked.

-- 
Vincent

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] libnss: Enable for MIPS64 n32 platforms
  2014-05-22 10:11   ` Vicente Olivert Riera
@ 2014-05-22 10:46     ` Thomas Petazzoni
  2014-05-22 10:47       ` Vicente Olivert Riera
  0 siblings, 1 reply; 6+ messages in thread
From: Thomas Petazzoni @ 2014-05-22 10:46 UTC (permalink / raw)
  To: buildroot

Dear Vicente Olivert Riera,

On Thu, 22 May 2014 11:11:52 +0100, Vicente Olivert Riera wrote:

> >> -ifeq ($(BR2_ARCH_IS_64),y)
> >> +ifeq ($(BR2_ARCH_IS_64)$(BR2_MIPS_NABI32),yn)
> >
> > This cannot work: when an option is disabled, its value is empty, not
> > 'n'.
> >
> > So:
> >
> > # a comment here that explains the exception for MIPS_NABI32
> > ifeq ($(BR2_ARCH_IS_64),y)
> > ifeq ($(BR2_MIPS_NABI32),)
> > ...
> > endif
> > endif
> >
> > Thanks!
> >
> > Thomas
> >
> 
> I tried it and it worked.

Yes, it worked in your case, because the condition had to be false in
your case. But with your implementation, the condition will *always* be
false, so the USE_64 thing will no longer be passed for BR2_ARCH_IS_64
situations that are *not* BR2_MIPS_NABI32.

Thomsa
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] libnss: Enable for MIPS64 n32 platforms
  2014-05-22 10:46     ` Thomas Petazzoni
@ 2014-05-22 10:47       ` Vicente Olivert Riera
  0 siblings, 0 replies; 6+ messages in thread
From: Vicente Olivert Riera @ 2014-05-22 10:47 UTC (permalink / raw)
  To: buildroot

On 05/22/2014 11:46 AM, Thomas Petazzoni wrote:
> Dear Vicente Olivert Riera,
>
> On Thu, 22 May 2014 11:11:52 +0100, Vicente Olivert Riera wrote:
>
>>>> -ifeq ($(BR2_ARCH_IS_64),y)
>>>> +ifeq ($(BR2_ARCH_IS_64)$(BR2_MIPS_NABI32),yn)
>>>
>>> This cannot work: when an option is disabled, its value is empty, not
>>> 'n'.
>>>
>>> So:
>>>
>>> # a comment here that explains the exception for MIPS_NABI32
>>> ifeq ($(BR2_ARCH_IS_64),y)
>>> ifeq ($(BR2_MIPS_NABI32),)
>>> ...
>>> endif
>>> endif
>>>
>>> Thanks!
>>>
>>> Thomas
>>>
>>
>> I tried it and it worked.
>
> Yes, it worked in your case, because the condition had to be false in
> your case. But with your implementation, the condition will *always* be
> false, so the USE_64 thing will no longer be passed for BR2_ARCH_IS_64
> situations that are *not* BR2_MIPS_NABI32.
>
> Thomsa
>

Ok, understood.

The v2 patch was already sent and it has all the changes you and Baruch 
suggested.

-- 
Vincent

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-05-22 10:47 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-22 10:02 [Buildroot] [PATCH] libnss: Enable for MIPS64 n32 platforms Vicente Olivert Riera
2014-05-22 10:10 ` Baruch Siach
2014-05-22 10:10 ` Thomas Petazzoni
2014-05-22 10:11   ` Vicente Olivert Riera
2014-05-22 10:46     ` Thomas Petazzoni
2014-05-22 10:47       ` Vicente Olivert Riera

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox