gcc: fix Objective-C support

This commit fixes the Objective-C support in the gcc package by making
sure that the runtime Objective-C library is properly installed to the
target.

It also takes this opportunity to slightly reword the Config.in option
help text to have a more meaningful explanation.

Finally, it fixes the gcc-final.mk code to use the correct
BR2_INSTALL_OBJC option rather than the non-existing
BR2_GCC_CROSS_OBJC option, to decide whether Objective-C support
should be enabled or not in the cross-compiler.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
Thomas Petazzoni 2013-09-02 18:06:31 +02:00 committed by Peter Korsgaard
parent 69a534b2aa
commit cd04552e89
2 changed files with 9 additions and 3 deletions

View File

@ -113,10 +113,12 @@ config BR2_EXTRA_GCC_CONFIG_OPTIONS
initial, gcc intermediate and gcc final passes.
config BR2_INSTALL_OBJC
bool "Build/install Objective-C compiler and runtime?"
bool "Enable Objective-C support"
depends on !BR2_avr32
help
Build/install Objective-C compiler and runtime?
Enable the support for the Objective-C language in the
cross-compiler, and install the Objective-C runtime to the
target.
config BR2_INSTALL_FORTRAN
bool "Enable Fortran support"

View File

@ -35,7 +35,7 @@ HOST_GCC_FINAL_PRE_CONFIGURE_HOOKS += HOST_GCC_FINAL_CONFIGURE_SYMLINK
GCC_FINAL_CROSS_LANGUAGES-y = c
GCC_FINAL_CROSS_LANGUAGES-$(BR2_INSTALL_LIBSTDCPP) += c++
GCC_FINAL_CROSS_LANGUAGES-$(BR2_INSTALL_FORTRAN) += fortran
GCC_FINAL_CROSS_LANGUAGES-$(BR2_GCC_CROSS_OBJC) += objc
GCC_FINAL_CROSS_LANGUAGES-$(BR2_INSTALL_OBJC) += objc
GCC_FINAL_CROSS_LANGUAGES = $(subst $(space),$(comma),$(GCC_FINAL_CROSS_LANGUAGES-y))
HOST_GCC_FINAL_CONF_OPT = \
@ -120,6 +120,10 @@ ifeq ($(BR2_INSTALL_FORTRAN),y)
HOST_GCC_FINAL_USR_LIBS += libgfortran
endif
ifeq ($(BR2_INSTALL_OBJC),y)
HOST_GCC_FINAL_USR_LIBS += libobjc
endif
ifneq ($(HOST_GCC_FINAL_USR_LIBS),)
define HOST_GCC_FINAL_INSTALL_USR_LIBS
mkdir -p $(TARGET_DIR)/usr/lib