diff options
-rw-r--r-- | package/uclibc-ng/Makefile | 2 | ||||
-rw-r--r-- | target/config/Config.in.archopts | 15 | ||||
-rw-r--r-- | target/config/Config.in.cpu | 6 | ||||
-rw-r--r-- | target/mips/uclibc-ng.config | 8 | ||||
-rw-r--r-- | target/mips64/uclibc-ng.config | 8 | ||||
-rw-r--r-- | toolchain/gcc/Makefile | 4 | ||||
-rw-r--r-- | toolchain/uclibc-ng/Makefile | 11 |
7 files changed, 51 insertions, 3 deletions
diff --git a/package/uclibc-ng/Makefile b/package/uclibc-ng/Makefile index 8f26201de..6385ad96f 100644 --- a/package/uclibc-ng/Makefile +++ b/package/uclibc-ng/Makefile @@ -40,7 +40,7 @@ ifneq ($(ADK_TARGET_USE_STATIC_LIBS)$(ADK_TARGET_BINFMT_FLAT),y) $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH) $(CP) $(STAGING_TARGET_DIR)/lib/ld*-uClibc-*.so \ $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH) - $(CP) $(STAGING_TARGET_DIR)/lib/ld*-uClibc.so.* $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH) + $(CP) $(STAGING_TARGET_DIR)/lib/ld*-uClibc*.so.* $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH) -for file in libcrypt libdl libm libnsl libresolv libutil libuargp; do \ $(CP) $(STAGING_TARGET_DIR)/lib/$$file.so* $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH); \ $(CP) $(STAGING_TARGET_DIR)/lib/$$file-*.so \ diff --git a/target/config/Config.in.archopts b/target/config/Config.in.archopts index a5f2bc08d..6401384b9 100644 --- a/target/config/Config.in.archopts +++ b/target/config/Config.in.archopts @@ -21,6 +21,21 @@ config ADK_TARGET_INSTRUCTION_SET default "arm" if ADK_TARGET_ARCH_ARM_WITH_ARM default "thumb" if ADK_TARGET_ARCH_ARM_WITH_THUMB +config ADK_TARGET_ARCH_MIPS_WITH_NAN_LEGACY + bool + depends on ADK_TARGET_ARCH_MIPS \ + || ADK_TARGET_ARCH_MIPS64 + +config ADK_TARGET_ARCH_MIPS_WITH_NAN_2008 + bool + depends on ADK_TARGET_ARCH_MIPS \ + || ADK_TARGET_ARCH_MIPS64 + +config ADK_TARGET_NAN_MODE + string + default "legacy" if ADK_TARGET_ARCH_MIPS_WITH_NAN_LEGACY + default "2008" if ADK_TARGET_ARCH_MIPS_WITH_NAN_2008 + config ADK_TARGET_WITH_DEVICETREE bool depends on ADK_TARGET_ARCH_ARM diff --git a/target/config/Config.in.cpu b/target/config/Config.in.cpu index 8375c7ee3..f42777a9b 100644 --- a/target/config/Config.in.cpu +++ b/target/config/Config.in.cpu @@ -670,6 +670,7 @@ config ADK_TARGET_CPU_MIPS_MIPS32 select ADK_TARGET_WITH_MMU select ADK_TARGET_CPU_WITH_FPU select ADK_KERNEL_CPU_MIPS32_R1 + select ADK_TARGET_ARCH_MIPS_WITH_NAN_LEGACY depends on ADK_TARGET_ARCH_MIPS config ADK_TARGET_CPU_MIPS_MIPS32R2 @@ -678,6 +679,7 @@ config ADK_TARGET_CPU_MIPS_MIPS32R2 select ADK_TARGET_WITH_MMU select ADK_TARGET_CPU_WITH_FPU select ADK_KERNEL_CPU_MIPS32_R2 + select ADK_TARGET_ARCH_MIPS_WITH_NAN_LEGACY depends on ADK_TARGET_ARCH_MIPS config ADK_TARGET_CPU_MIPS_MIPS32R6 @@ -686,6 +688,7 @@ config ADK_TARGET_CPU_MIPS_MIPS32R6 select ADK_TARGET_WITH_MMU select ADK_TARGET_CPU_WITH_FPU select ADK_KERNEL_CPU_MIPS32_R6 + select ADK_TARGET_ARCH_MIPS_WITH_NAN_2008 depends on ADK_TARGET_ARCH_MIPS # mips64 @@ -694,6 +697,7 @@ config ADK_TARGET_CPU_MIPS64_MIPS64 select ADK_LINUX_64 select ADK_TARGET_WITH_NPTL select ADK_TARGET_WITH_MMU + select ADK_TARGET_ARCH_MIPS_WITH_NAN_LEGACY depends on ADK_TARGET_ARCH_MIPS64 config ADK_TARGET_CPU_MIPS64_MIPS64R2 @@ -701,6 +705,7 @@ config ADK_TARGET_CPU_MIPS64_MIPS64R2 select ADK_LINUX_64 select ADK_TARGET_WITH_NPTL select ADK_TARGET_WITH_MMU + select ADK_TARGET_ARCH_MIPS_WITH_NAN_LEGACY depends on ADK_TARGET_ARCH_MIPS64 config ADK_TARGET_CPU_MIPS64_MIPS64R6 @@ -708,6 +713,7 @@ config ADK_TARGET_CPU_MIPS64_MIPS64R6 select ADK_LINUX_64 select ADK_TARGET_WITH_NPTL select ADK_TARGET_WITH_MMU + select ADK_TARGET_ARCH_MIPS_WITH_NAN_2008 depends on ADK_TARGET_ARCH_MIPS64 config ADK_TARGET_CPU_MIPS64_LOONGSON2F diff --git a/target/mips/uclibc-ng.config b/target/mips/uclibc-ng.config index 95562c472..1cc90e89f 100644 --- a/target/mips/uclibc-ng.config +++ b/target/mips/uclibc-ng.config @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# uClibc-ng 1.0.10 C Library Configuration +# uClibc-ng 1.0.17 C Library Configuration # # TARGET_alpha is not set # TARGET_arc is not set @@ -9,7 +9,9 @@ # TARGET_bfin is not set # TARGET_c6x is not set # TARGET_cris is not set +# TARGET_frv is not set # TARGET_h8300 is not set +# TARGET_hppa is not set # TARGET_i386 is not set # TARGET_ia64 is not set # TARGET_lm32 is not set @@ -17,6 +19,7 @@ # TARGET_metag is not set # TARGET_microblaze is not set TARGET_mips=y +# TARGET_nds32 is not set # TARGET_nios2 is not set # TARGET_or1k is not set # TARGET_powerpc is not set @@ -33,6 +36,9 @@ FORCE_OPTIONS_FOR_ARCH=y CONFIG_MIPS_O32_ABI=y # CONFIG_MIPS_N32_ABI is not set # CONFIG_MIPS_N64_ABI is not set +CONFIG_MIPS_NAN_LEGACY=y +# CONFIG_MIPS_NAN_2008 is not set +UCLIBC_USE_MIPS_PREFETCH=y TARGET_SUBARCH="" # diff --git a/target/mips64/uclibc-ng.config b/target/mips64/uclibc-ng.config index b885e6c71..577b78ab5 100644 --- a/target/mips64/uclibc-ng.config +++ b/target/mips64/uclibc-ng.config @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# uClibc-ng 1.0.10 C Library Configuration +# uClibc-ng 1.0.17 C Library Configuration # # TARGET_alpha is not set # TARGET_arc is not set @@ -9,7 +9,9 @@ # TARGET_bfin is not set # TARGET_c6x is not set # TARGET_cris is not set +# TARGET_frv is not set # TARGET_h8300 is not set +# TARGET_hppa is not set # TARGET_i386 is not set # TARGET_ia64 is not set # TARGET_lm32 is not set @@ -17,6 +19,7 @@ # TARGET_metag is not set # TARGET_microblaze is not set TARGET_mips=y +# TARGET_nds32 is not set # TARGET_nios2 is not set # TARGET_or1k is not set # TARGET_powerpc is not set @@ -33,6 +36,9 @@ FORCE_OPTIONS_FOR_ARCH=y # CONFIG_MIPS_O32_ABI is not set # CONFIG_MIPS_N32_ABI is not set CONFIG_MIPS_N64_ABI=y +CONFIG_MIPS_NAN_LEGACY=y +# CONFIG_MIPS_NAN_2008 is not set +UCLIBC_USE_MIPS_PREFETCH=y TARGET_SUBARCH="" # diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile index 01f4f4a96..0495cce4c 100644 --- a/toolchain/gcc/Makefile +++ b/toolchain/gcc/Makefile @@ -115,6 +115,10 @@ ifneq ($(ADK_TARGET_INSTRUCTION_SET),) GCC_CONFOPTS+= --with-mode=$(ADK_TARGET_INSTRUCTION_SET) endif +ifneq ($(ADK_TARGET_NAN_MODE),) +GCC_CONFOPTS+= --with-nan=$(ADK_TARGET_NAN_MODE) +endif + # .symver is broken for Blackfin, simple C++ apps fail to link ifeq ($(ADK_TARGET_ARCH_BFIN),y) GCC_CONFOPTS+= --disable-symvers diff --git a/toolchain/uclibc-ng/Makefile b/toolchain/uclibc-ng/Makefile index d22f44a8e..2970c3ffb 100644 --- a/toolchain/uclibc-ng/Makefile +++ b/toolchain/uclibc-ng/Makefile @@ -244,6 +244,7 @@ ifeq ($(ADK_TARGET_CPU_X86_I686),y) endif endif +# m68k ifeq ($(ADK_TARGET_ARCH_M68K),y) ifeq ($(ADK_TARGET_WITHOUT_MMU),y) ifeq ($(ADK_TARGET_BINFMT_FLAT_ONE)$(ADK_TARGET_BINFMT_FLAT_SEP_DATA),y) @@ -252,6 +253,16 @@ endif endif endif +# mips/mips64 NaN +ifeq ($(ADK_TARGET_ARCH_MIPS_WITH_NAN_2008),y) + $(SED) 's/.*\(CONFIG_MIPS_NAN_LEGACY\).*/# \1 is not set/' ${WRKBUILD}/.config + $(SED) 's/.*\(CONFIG_MIPS_NAN_2008\).*/\1=y/' ${WRKBUILD}/.config +endif +ifeq ($(ADK_TARGET_ARCH_MIPS_WITH_NAN_LEGACY),y) + $(SED) 's/.*\(CONFIG_MIPS_NAN_2008\).*/# \1 is not set/' ${WRKBUILD}/.config + $(SED) 's/.*\(CONFIG_MIPS_NAN_LEGACY\).*/\1=y/' ${WRKBUILD}/.config +endif + # mips64 abi ifeq ($(ADK_TARGET_ARCH_MIPS64),y) ifeq ($(ADK_TARGET_ABI_N64),y) |