arch: drop now useless support for FDPIC

Message ID 20180521161706.3151-1-yann.morin.1998@free.fr
State New
Headers show
Series
  • arch: drop now useless support for FDPIC
Related show

Commit Message

Yann E. MORIN May 21, 2018, 4:17 p.m.
Now that we dropped support for blackfin, we no longer have any
architecture that supports FDPIC, so BR2_ARCH_HAS_FDPIC_SUPPORT
is never selected, so we can't select BR2_BINFMT_FDPIC.

Drop all of that now.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
 arch/Config.in           | 14 --------------
 package/uclibc/uclibc.mk |  8 --------
 2 files changed, 22 deletions(-)

Comments

Baruch Siach May 21, 2018, 4:33 p.m. | #1
Hi Yann,

On Mon, May 21, 2018 at 06:17:06PM +0200, Yann E. MORIN wrote:
> Now that we dropped support for blackfin, we no longer have any
> architecture that supports FDPIC, so BR2_ARCH_HAS_FDPIC_SUPPORT
> is never selected, so we can't select BR2_BINFMT_FDPIC.
> 
> Drop all of that now.
> 
> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> ---

[snip]

>  # noMMU binary formats
> -ifeq ($(BR2_BINFMT_FDPIC),y)
> -define UCLIBC_BINFMT_CONFIG
> -	$(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT,$(@D)/.config)
> -	$(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT_SEP_DATA,$(@D)/.config)
> -	$(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_SHARED_FLAT,$(@D)/.config)
> -	$(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_FDPIC_ELF,$(@D)/.config)

Maybe also remove disable of UCLIBC_FORMAT_FDPIC_ELF below? This uClibc config 
symbol depends on bfin or frv. Both are not supported in Buildroot.

> -endef
> -endif
>  ifeq ($(BR2_BINFMT_FLAT_ONE),y)
>  define UCLIBC_BINFMT_CONFIG
>  	$(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_FLAT,$(@D)/.config)

baruch
Waldemar Brodkorb May 21, 2018, 7:56 p.m. | #2
Hi,
there might be support for sh2 or arm fdpic in the future. Does it harm to keep it?

Binutils arm fdpic is upstream now.

best regards
 Waldemar


> Am 21.05.2018 um 18:33 schrieb Baruch Siach <baruch@tkos.co.il>:
> 
> Hi Yann,
> 
>> On Mon, May 21, 2018 at 06:17:06PM +0200, Yann E. MORIN wrote:
>> Now that we dropped support for blackfin, we no longer have any
>> architecture that supports FDPIC, so BR2_ARCH_HAS_FDPIC_SUPPORT
>> is never selected, so we can't select BR2_BINFMT_FDPIC.
>> 
>> Drop all of that now.
>> 
>> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
>> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
>> ---
> 
> [snip]
> 
>> # noMMU binary formats
>> -ifeq ($(BR2_BINFMT_FDPIC),y)
>> -define UCLIBC_BINFMT_CONFIG
>> -    $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT,$(@D)/.config)
>> -    $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT_SEP_DATA,$(@D)/.config)
>> -    $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_SHARED_FLAT,$(@D)/.config)
>> -    $(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_FDPIC_ELF,$(@D)/.config)
> 
> Maybe also remove disable of UCLIBC_FORMAT_FDPIC_ELF below? This uClibc config 
> symbol depends on bfin or frv. Both are not supported in Buildroot.
> 
>> -endef
>> -endif
>> ifeq ($(BR2_BINFMT_FLAT_ONE),y)
>> define UCLIBC_BINFMT_CONFIG
>>    $(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_FLAT,$(@D)/.config)
> 
> baruch
> 
> -- 
>     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
> =}------------------------------------------------ooO--U--Ooo------------{=
>   - baruch@tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
>
Thomas Petazzoni May 21, 2018, 7:58 p.m. | #3
Hello,

On Mon, 21 May 2018 18:17:06 +0200, Yann E. MORIN wrote:
> Now that we dropped support for blackfin, we no longer have any
> architecture that supports FDPIC, so BR2_ARCH_HAS_FDPIC_SUPPORT
> is never selected, so we can't select BR2_BINFMT_FDPIC.
> 
> Drop all of that now.
> 
> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

When I dropped Blackfin support, I wondered about dropping FDPIC
support. But I know people are working on FDPIC support on ARM, so I
wasn't sure it was useful to drop it now, and re-add it later on.

Thomas
Yann E. MORIN May 21, 2018, 8:22 p.m. | #4
Thomas, All,

On 2018-05-21 21:58 +0200, Thomas Petazzoni spake thusly:
> On Mon, 21 May 2018 18:17:06 +0200, Yann E. MORIN wrote:
> > Now that we dropped support for blackfin, we no longer have any
> > architecture that supports FDPIC, so BR2_ARCH_HAS_FDPIC_SUPPORT
> > is never selected, so we can't select BR2_BINFMT_FDPIC.
> > 
> > Drop all of that now.
> > 
> > Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> > Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> 
> When I dropped Blackfin support, I wondered about dropping FDPIC
> support. But I know people are working on FDPIC support on ARM, so I
> wasn't sure it was useful to drop it now, and re-add it later on.

Oh, well, I was just "Eh, this is dead code, it's gonna birot. Better
burry it now  sit does not stink too much yet..." ;-)

But we can always git-revert that code later when/if FDPIC gets
resurected for another arch...

Regards,
Yann E. MORIN.

Patch

diff --git a/arch/Config.in b/arch/Config.in
index a66ea0d03b..96d1ab1220 100644
--- a/arch/Config.in
+++ b/arch/Config.in
@@ -15,9 +15,6 @@  config BR2_ARCH_HAS_MMU_MANDATORY
 config BR2_ARCH_HAS_MMU_OPTIONAL
 	bool
 
-config BR2_ARCH_HAS_FDPIC_SUPPORT
-	bool
-
 choice
 	prompt "Target Architecture"
 	default BR2_i386
@@ -340,7 +337,6 @@  config BR2_READELF_ARCH_NAME
 choice
 	prompt "Target Binary Format"
 	default BR2_BINFMT_ELF if BR2_USE_MMU
-	default BR2_BINFMT_FDPIC if BR2_ARCH_HAS_FDPIC_SUPPORT
 	default BR2_BINFMT_FLAT
 
 config BR2_BINFMT_ELF
@@ -352,16 +348,6 @@  config BR2_BINFMT_ELF
 	  and executables used across different architectures and
 	  operating systems.
 
-config BR2_BINFMT_FDPIC
-	bool "FDPIC"
-	depends on BR2_ARCH_HAS_FDPIC_SUPPORT
-	select BR2_BINFMT_SUPPORTS_SHARED
-	help
-	  ELF FDPIC binaries are based on ELF, but allow the individual
-	  load segments of a binary to be located in memory
-	  independently of each other. This makes this format ideal for
-	  use in environments where no MMU is available.
-
 config BR2_BINFMT_FLAT
 	bool "FLAT"
 	depends on !BR2_USE_MMU
diff --git a/package/uclibc/uclibc.mk b/package/uclibc/uclibc.mk
index 7de9219873..d61e3e89ae 100644
--- a/package/uclibc/uclibc.mk
+++ b/package/uclibc/uclibc.mk
@@ -52,14 +52,6 @@  UCLIBC_LOCALES = \
 endif
 
 # noMMU binary formats
-ifeq ($(BR2_BINFMT_FDPIC),y)
-define UCLIBC_BINFMT_CONFIG
-	$(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT,$(@D)/.config)
-	$(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT_SEP_DATA,$(@D)/.config)
-	$(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_SHARED_FLAT,$(@D)/.config)
-	$(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_FDPIC_ELF,$(@D)/.config)
-endef
-endif
 ifeq ($(BR2_BINFMT_FLAT_ONE),y)
 define UCLIBC_BINFMT_CONFIG
 	$(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_FLAT,$(@D)/.config)