Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] arch/x86: remove support for i386
@ 2016-03-31 19:39 Thomas Petazzoni
  2016-04-02 21:22 ` Arnout Vandecappelle
  2016-04-14  2:50 ` Waldemar Brodkorb
  0 siblings, 2 replies; 3+ messages in thread
From: Thomas Petazzoni @ 2016-03-31 19:39 UTC (permalink / raw)
  To: buildroot

The Linux kernel doesn't even support i386 anymore, there is no NPTL
support for i386 and uClibc-ng only supports NPTL on x86, so there is
essentially no usable thread implementation. Most likely glibc and
musl also don't support i386 either. So it's time to remove the
support for this architecture variant.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 .defconfig                             | 1 -
 arch/Config.in.x86                     | 5 -----
 package/openssl/openssl.mk             | 5 -----
 package/uclibc/Config.in               | 3 +--
 toolchain/toolchain-common.in          | 3 ---
 toolchain/toolchain-external/Config.in | 3 +--
 6 files changed, 2 insertions(+), 18 deletions(-)

diff --git a/.defconfig b/.defconfig
index 585be55..037647e 100644
--- a/.defconfig
+++ b/.defconfig
@@ -19,7 +19,6 @@ BR2_i386=y
 # BR2_sparc is not set
 # BR2_sparc64 is not set
 # BR2_x86_64 is not set
-# BR2_x86_i386 is not set
 # BR2_x86_i486 is not set
 # BR2_x86_i586 is not set
 BR2_x86_i686=y
diff --git a/arch/Config.in.x86 b/arch/Config.in.x86
index 7be814b..4039db8 100644
--- a/arch/Config.in.x86
+++ b/arch/Config.in.x86
@@ -25,9 +25,6 @@ choice
 	help
 	  Specific CPU variant to use
 
-config BR2_x86_i386
-	bool "i386"
-	depends on !BR2_x86_64
 config BR2_x86_i486
 	bool "i486"
 	depends on !BR2_x86_64
@@ -210,7 +207,6 @@ config BR2_x86_winchip2
 endchoice
 
 config BR2_ARCH
-	default "i386"		if BR2_x86_i386
 	default "i486"		if BR2_x86_i486
 	default "i586"		if BR2_x86_i586
 	default "i586"		if BR2_x86_x1000
@@ -246,7 +242,6 @@ config BR2_ENDIAN
 	default "LITTLE"
 
 config BR2_GCC_TARGET_ARCH
-	default "i386"		if BR2_x86_i386
 	default "i486"		if BR2_x86_i486
 	default "i586"		if BR2_x86_i586
 	default "i586"		if BR2_x86_x1000
diff --git a/package/openssl/openssl.mk b/package/openssl/openssl.mk
index 30dfe31..3b8e525 100644
--- a/package/openssl/openssl.mk
+++ b/package/openssl/openssl.mk
@@ -53,11 +53,6 @@ ifeq ($(ARCH),x86_64)
 OPENSSL_TARGET_ARCH = x86_64
 endif
 
-# Workaround for bug #3445
-ifeq ($(BR2_x86_i386),y)
-OPENSSL_TARGET_ARCH = generic32 386
-endif
-
 define HOST_OPENSSL_CONFIGURE_CMDS
 	(cd $(@D); \
 		$(HOST_CONFIGURE_OPTS) \
diff --git a/package/uclibc/Config.in b/package/uclibc/Config.in
index eac5d05..efa84e9 100644
--- a/package/uclibc/Config.in
+++ b/package/uclibc/Config.in
@@ -71,7 +71,7 @@ choice
 		select BR2_TOOLCHAIN_HAS_THREADS
 		select BR2_TOOLCHAIN_HAS_THREADS_NPTL
 		depends on BR2_USE_MMU
-		depends on !BR2_m68k && !BR2_x86_i386
+		depends on !BR2_m68k
 endchoice
 
 config BR2_PTHREAD_DEBUG
@@ -176,7 +176,6 @@ config BR2_UCLIBC_POWERPC_TYPE
 config BR2_UCLIBC_X86_TYPE
 	string
 	depends on BR2_UCLIBC_TARGET_ARCH = "i386"
-	default "386"        if BR2_x86_i386
 	default "486"        if BR2_x86_i486
 	default "586"        if BR2_x86_i586
 	default "586MMX"     if BR2_x86_pentium_mmx
diff --git a/toolchain/toolchain-common.in b/toolchain/toolchain-common.in
index 0907c5e..7ad1c05 100644
--- a/toolchain/toolchain-common.in
+++ b/toolchain/toolchain-common.in
@@ -316,7 +316,6 @@ config BR2_TOOLCHAIN_GCC_AT_LEAST
 config BR2_TOOLCHAIN_HAS_SYNC_1
 	bool
 	default y
-	depends on !BR2_x86_i386
 	depends on !BR2_bfin
 	depends on !BR2_microblaze
 	depends on !BR2_sparc
@@ -330,7 +329,6 @@ config BR2_TOOLCHAIN_HAS_SYNC_4
 	bool
 	default y
 	depends on !BR2_sparc
-	depends on !BR2_x86_i386
 	depends on !(BR2_arc && !BR2_ARC_ATOMIC_EXT)
 
 # The availability of __sync for 8-byte types on ARM is somewhat
@@ -362,7 +360,6 @@ config BR2_TOOLCHAIN_X86_HAS_SYNC_8
 	bool
 	default y
 	depends on BR2_i386
-	depends on !BR2_x86_i386
 	depends on !BR2_x86_i486
 	depends on !BR2_x86_c3
 	depends on !BR2_x86_winchip_c6
diff --git a/toolchain/toolchain-external/Config.in b/toolchain/toolchain-external/Config.in
index ff759a0..d6f57a1 100644
--- a/toolchain/toolchain-external/Config.in
+++ b/toolchain/toolchain-external/Config.in
@@ -615,8 +615,7 @@ config BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS
 	bool "Musl 1.1.12 toolchain (experimental)"
 	depends on (BR2_arm && BR2_ARM_EABI) || \
 		(BR2_arm && BR2_ARM_EABIHF && !BR2_ARM_CPU_ARMV4) || \
-		(BR2_armeb && BR2_ARM_EABI) || \
-		(BR2_i386 && !BR2_x86_i386) || \
+		(BR2_armeb && BR2_ARM_EABI) || BR2_i386 || \
 		(BR2_mips && !BR2_SOFT_FLOAT) || \
 		BR2_mipsel || (BR2_powerpc && BR2_powerpc_CLASSIC) || \
 		BR2_sh4 || BR2_sh4eb || \
-- 
2.6.4

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

* [Buildroot] [PATCH] arch/x86: remove support for i386
  2016-03-31 19:39 [Buildroot] [PATCH] arch/x86: remove support for i386 Thomas Petazzoni
@ 2016-04-02 21:22 ` Arnout Vandecappelle
  2016-04-14  2:50 ` Waldemar Brodkorb
  1 sibling, 0 replies; 3+ messages in thread
From: Arnout Vandecappelle @ 2016-04-02 21:22 UTC (permalink / raw)
  To: buildroot

On 03/31/16 21:39, Thomas Petazzoni wrote:
> The Linux kernel doesn't even support i386 anymore, there is no NPTL
> support for i386 and uClibc-ng only supports NPTL on x86, so there is
> essentially no usable thread implementation. Most likely glibc and
> musl also don't support i386 either. So it's time to remove the
> support for this architecture variant.
>
> Signed-off-by: Thomas Petazzoni<thomas.petazzoni@free-electrons.com>

Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>

  However, I think there is also a line in qemu.mk that should be removed 
(describing the mapping from BR arches to qemu arches).


  Also, perhaps add a legacy entry? Even though BR2_x86_i386 is a member of a 
choice, that fact is not visible in the .config so it can be added as a normal 
bool option to the Config.in.legacy.

  Regards,
  Arnout

> ---
>   .defconfig                             | 1 -
>   arch/Config.in.x86                     | 5 -----
>   package/openssl/openssl.mk             | 5 -----
>   package/uclibc/Config.in               | 3 +--
>   toolchain/toolchain-common.in          | 3 ---
>   toolchain/toolchain-external/Config.in | 3 +--
>   6 files changed, 2 insertions(+), 18 deletions(-)
[snip]

-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

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

* [Buildroot] [PATCH] arch/x86: remove support for i386
  2016-03-31 19:39 [Buildroot] [PATCH] arch/x86: remove support for i386 Thomas Petazzoni
  2016-04-02 21:22 ` Arnout Vandecappelle
@ 2016-04-14  2:50 ` Waldemar Brodkorb
  1 sibling, 0 replies; 3+ messages in thread
From: Waldemar Brodkorb @ 2016-04-14  2:50 UTC (permalink / raw)
  To: buildroot

Hi,
Thomas Petazzoni wrote,

> The Linux kernel doesn't even support i386 anymore, there is no NPTL
> support for i386 and uClibc-ng only supports NPTL on x86, so there is
> essentially no usable thread implementation. Most likely glibc and
> musl also don't support i386 either. So it's time to remove the
> support for this architecture variant.
> 
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

Looks good to me,
Reviewed-by: Waldemar Brodkorb <wbx@openadk.org>

best regards
 Waldemar

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

end of thread, other threads:[~2016-04-14  2:50 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-31 19:39 [Buildroot] [PATCH] arch/x86: remove support for i386 Thomas Petazzoni
2016-04-02 21:22 ` Arnout Vandecappelle
2016-04-14  2:50 ` Waldemar Brodkorb

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