add gfortran compiler support (#9600, patch from Xiangfu Liu via Qi hardware)

SVN-Revision: 27262
This commit is contained in:
Jo-Philipp Wich 2011-06-23 11:46:24 +00:00
parent a56dab661a
commit 28fbd7470d
3 changed files with 49 additions and 1 deletions

View File

@ -247,6 +247,32 @@ define Package/librt/config
endef endef
define Package/libgfortran
$(call Package/gcc/Default)
TITLE:=GFortran support library
DEPENDS+=@!(TARGET_avr32||TARGET_coldfire) @INSTALL_GFORTRAN
endef
define Package/libgfortran/config
menu "Configuration"
depends EXTERNAL_TOOLCHAIN && PACKAGE_libgfortran
config LIBGFORTRAN_ROOT_DIR
string
prompt "libgfortran shared library base directory"
depends EXTERNAL_TOOLCHAIN && PACKAGE_libgfortran
default TOOLCHAIN_ROOT if !NATIVE_TOOLCHAIN
default "/" if NATIVE_TOOLCHAIN
config LIBGFORTRAN_FILE_SPEC
string
prompt "libgfortran shared library files (use wildcards)"
depends EXTERNAL_TOOLCHAIN && PACKAGE_libgfortran
default "./usr/lib/libgfortran.so.*"
endmenu
endef
define Package/ldd define Package/ldd
$(call Package/libc/Default) $(call Package/libc/Default)
SECTION:=utils SECTION:=utils
@ -466,6 +492,11 @@ ifeq ($(CONFIG_EXTERNAL_TOOLCHAIN),)
$(CP) $(PKG_BUILD_DIR)/libgcc_s.so.* $(1)/lib/ $(CP) $(PKG_BUILD_DIR)/libgcc_s.so.* $(1)/lib/
endef endef
define Package/libgfortran/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(TOOLCHAIN_DIR)/lib/libgfortran.so.* $(1)/usr/lib/
endef
define Package/libssp/install define Package/libssp/install
$(INSTALL_DIR) $(1)/lib $(INSTALL_DIR) $(1)/lib
$(CP) $(TOOLCHAIN_DIR)/lib/libssp.so.* $(1)/lib/ $(CP) $(TOOLCHAIN_DIR)/lib/libssp.so.* $(1)/lib/
@ -581,6 +612,14 @@ else
exit 0 exit 0
endef endef
define Package/libgfortran/install
for file in $(call qstrip,$(CONFIG_LIBGFORTRAN_FILE_SPEC)); do \
dir=`dirname $$$$file` ; \
$(INSTALL_DIR) $(1)/$$$$dir ; \
$(CP) $(call qstrip,$(CONFIG_LIBGFORTRAN_ROOT_DIR))/$$$$file $(1)/$$$$dir/ ; \
done
endef
define Package/libssp/install define Package/libssp/install
for file in $(call qstrip,$(CONFIG_LIBSSP_FILE_SPEC)); do \ for file in $(call qstrip,$(CONFIG_LIBSSP_FILE_SPEC)); do \
dir=`dirname $$$$file` ; \ dir=`dirname $$$$file` ; \
@ -657,5 +696,6 @@ $(eval $(call BuildPackage,libssp))
$(eval $(call BuildPackage,libstdcpp)) $(eval $(call BuildPackage,libstdcpp))
$(eval $(call BuildPackage,libpthread)) $(eval $(call BuildPackage,libpthread))
$(eval $(call BuildPackage,librt)) $(eval $(call BuildPackage,librt))
$(eval $(call BuildPackage,libgfortran))
$(eval $(call BuildPackage,ldd)) $(eval $(call BuildPackage,ldd))
$(eval $(call BuildPackage,ldconfig)) $(eval $(call BuildPackage,ldconfig))

View File

@ -89,3 +89,11 @@ config INSTALL_LIBGCJ
default n default n
help help
Build/install java compiler and GNU classpath ? Build/install java compiler and GNU classpath ?
config INSTALL_GFORTRAN
bool
prompt "Build/install fortran compiler?" if TOOLCHAINOPTS
default n
help
Build/install GNU fortran compiler ?

View File

@ -86,7 +86,7 @@ HOST_STAMP_CONFIGURED:=$(GCC_BUILD_DIR)/.configured
HOST_STAMP_INSTALLED:=$(STAGING_DIR_HOST)/stamp/.gcc_$(GCC_VARIANT)_installed HOST_STAMP_INSTALLED:=$(STAGING_DIR_HOST)/stamp/.gcc_$(GCC_VARIANT)_installed
SEP:=, SEP:=,
TARGET_LANGUAGES:="c$(if $(CONFIG_INSTALL_LIBSTDCPP),$(SEP)c++)$(if $(CONFIG_INSTALL_LIBGCJ),$(SEP)java)" TARGET_LANGUAGES:="c$(if $(CONFIG_INSTALL_LIBSTDCPP),$(SEP)c++)$(if $(CONFIG_INSTALL_LIBGCJ),$(SEP)java)$(if $(CONFIG_INSTALL_GFORTRAN),$(SEP)fortran)"
export libgcc_cv_fixed_point=no export libgcc_cv_fixed_point=no
ifdef CONFIG_USE_UCLIBC ifdef CONFIG_USE_UCLIBC