From 864b2331ce372a43d241e82008054f689d680b84 Mon Sep 17 00:00:00 2001 From: Markham Date: Sun, 18 Mar 2018 23:04:53 +0100 Subject: [PATCH] add crosstool for armbox/hd51 --- Makefile | 1 + .../900-pull-socket_type-h-from-eglibc.patch | 0 ...day.c-use-the-same-type-as-in-header.patch | 0 .../ct-ng-1.20.0-1-glibc.config | 0 .../ct-ng-1.20.0-1.config | 0 .../ct-ng-1.20.0-2.config | 0 .../ct-ng-1.20.0-3.config | 0 .../ct-ng-1.21.0-1.config | 0 .../ct-ng-1.21.0-2.config | 0 .../ct-ng-coolstream_hd1.config | 0 .../ct-ng/ct-ng-git-1dbb06f2-arm-hd51.config | 539 ++++++++++++++++++ .../ct-ng-nevis-1.20.0-1.config | 0 .../ct-ng-uClibc-0.9.33.2.config | 0 .../ct-ng-uClibc-ng-1.0.1.config | 0 ...of-check-for-empty-string-in-ubsan.c.patch | 11 + .../libstdc++_configure_patch.tar.xz | Bin make/archives.mk | 4 + make/crosstool-arm.mk | 67 +++ make/crosstool.mk | 27 +- make/custom.mk | 1 + make/environment.mk | 12 +- make/versions.mk | 1 + 22 files changed, 647 insertions(+), 16 deletions(-) rename archive-patches/{ct-ng-1.20 => ct-ng}/900-pull-socket_type-h-from-eglibc.patch (100%) rename archive-patches/{ct-ng-1.20 => ct-ng}/901-gettimeofday.c-use-the-same-type-as-in-header.patch (100%) rename archive-patches/{ct-ng-1.20 => ct-ng}/ct-ng-1.20.0-1-glibc.config (100%) rename archive-patches/{ct-ng-1.20 => ct-ng}/ct-ng-1.20.0-1.config (100%) rename archive-patches/{ct-ng-1.20 => ct-ng}/ct-ng-1.20.0-2.config (100%) rename archive-patches/{ct-ng-1.20 => ct-ng}/ct-ng-1.20.0-3.config (100%) rename archive-patches/{ct-ng-1.20 => ct-ng}/ct-ng-1.21.0-1.config (100%) rename archive-patches/{ct-ng-1.20 => ct-ng}/ct-ng-1.21.0-2.config (100%) rename archive-patches/{ct-ng-1.20 => ct-ng}/ct-ng-coolstream_hd1.config (100%) create mode 100644 archive-patches/ct-ng/ct-ng-git-1dbb06f2-arm-hd51.config rename archive-patches/{ct-ng-1.20 => ct-ng}/ct-ng-nevis-1.20.0-1.config (100%) rename archive-patches/{ct-ng-1.20 => ct-ng}/ct-ng-uClibc-0.9.33.2.config (100%) rename archive-patches/{ct-ng-1.20 => ct-ng}/ct-ng-uClibc-ng-1.0.1.config (100%) create mode 100644 archive-patches/ct-ng/gcc-6.3-backport-fix-of-check-for-empty-string-in-ubsan.c.patch rename archive-patches/{ct-ng-1.20 => ct-ng}/libstdc++_configure_patch.tar.xz (100%) create mode 100644 make/crosstool-arm.mk create mode 120000 make/custom.mk diff --git a/Makefile b/Makefile index 330b864..a928da7 100755 --- a/Makefile +++ b/Makefile @@ -7,6 +7,7 @@ include make/versions.mk include make/prerequisites.mk include make/bootstrap.mk include make/crosstool.mk +include make/crosstool-arm.mk include make/neutrino.mk include make/libraries.mk include make/applications.mk diff --git a/archive-patches/ct-ng-1.20/900-pull-socket_type-h-from-eglibc.patch b/archive-patches/ct-ng/900-pull-socket_type-h-from-eglibc.patch similarity index 100% rename from archive-patches/ct-ng-1.20/900-pull-socket_type-h-from-eglibc.patch rename to archive-patches/ct-ng/900-pull-socket_type-h-from-eglibc.patch diff --git a/archive-patches/ct-ng-1.20/901-gettimeofday.c-use-the-same-type-as-in-header.patch b/archive-patches/ct-ng/901-gettimeofday.c-use-the-same-type-as-in-header.patch similarity index 100% rename from archive-patches/ct-ng-1.20/901-gettimeofday.c-use-the-same-type-as-in-header.patch rename to archive-patches/ct-ng/901-gettimeofday.c-use-the-same-type-as-in-header.patch diff --git a/archive-patches/ct-ng-1.20/ct-ng-1.20.0-1-glibc.config b/archive-patches/ct-ng/ct-ng-1.20.0-1-glibc.config similarity index 100% rename from archive-patches/ct-ng-1.20/ct-ng-1.20.0-1-glibc.config rename to archive-patches/ct-ng/ct-ng-1.20.0-1-glibc.config diff --git a/archive-patches/ct-ng-1.20/ct-ng-1.20.0-1.config b/archive-patches/ct-ng/ct-ng-1.20.0-1.config similarity index 100% rename from archive-patches/ct-ng-1.20/ct-ng-1.20.0-1.config rename to archive-patches/ct-ng/ct-ng-1.20.0-1.config diff --git a/archive-patches/ct-ng-1.20/ct-ng-1.20.0-2.config b/archive-patches/ct-ng/ct-ng-1.20.0-2.config similarity index 100% rename from archive-patches/ct-ng-1.20/ct-ng-1.20.0-2.config rename to archive-patches/ct-ng/ct-ng-1.20.0-2.config diff --git a/archive-patches/ct-ng-1.20/ct-ng-1.20.0-3.config b/archive-patches/ct-ng/ct-ng-1.20.0-3.config similarity index 100% rename from archive-patches/ct-ng-1.20/ct-ng-1.20.0-3.config rename to archive-patches/ct-ng/ct-ng-1.20.0-3.config diff --git a/archive-patches/ct-ng-1.20/ct-ng-1.21.0-1.config b/archive-patches/ct-ng/ct-ng-1.21.0-1.config similarity index 100% rename from archive-patches/ct-ng-1.20/ct-ng-1.21.0-1.config rename to archive-patches/ct-ng/ct-ng-1.21.0-1.config diff --git a/archive-patches/ct-ng-1.20/ct-ng-1.21.0-2.config b/archive-patches/ct-ng/ct-ng-1.21.0-2.config similarity index 100% rename from archive-patches/ct-ng-1.20/ct-ng-1.21.0-2.config rename to archive-patches/ct-ng/ct-ng-1.21.0-2.config diff --git a/archive-patches/ct-ng-1.20/ct-ng-coolstream_hd1.config b/archive-patches/ct-ng/ct-ng-coolstream_hd1.config similarity index 100% rename from archive-patches/ct-ng-1.20/ct-ng-coolstream_hd1.config rename to archive-patches/ct-ng/ct-ng-coolstream_hd1.config diff --git a/archive-patches/ct-ng/ct-ng-git-1dbb06f2-arm-hd51.config b/archive-patches/ct-ng/ct-ng-git-1dbb06f2-arm-hd51.config new file mode 100644 index 0000000..ab4036d --- /dev/null +++ b/archive-patches/ct-ng/ct-ng-git-1dbb06f2-arm-hd51.config @@ -0,0 +1,539 @@ +# +# Automatically generated file; DO NOT EDIT. +# Crosstool-NG Configuration +# +CT_CONFIGURE_has_static_link=y +CT_CONFIGURE_has_wget=y +CT_CONFIGURE_has_stat_flavor_GNU=y +CT_CONFIGURE_has_make_3_81_or_newer=y +CT_CONFIGURE_has_libtool_2_4_or_newer=y +CT_CONFIGURE_has_libtoolize_2_4_or_newer=y +CT_CONFIGURE_has_autoconf_2_63_or_newer=y +CT_CONFIGURE_has_autoreconf_2_63_or_newer=y +CT_CONFIGURE_has_automake_1_15_or_newer=y +CT_CONFIGURE_has_gnu_m4_1_4_12_or_newer=y +CT_CONFIGURE_has_svn=y +CT_CONFIGURE_has_git=y +CT_MODULES=y + +# +# Paths and misc options +# + +# +# crosstool-NG behavior +# +CT_OBSOLETE=y +CT_EXPERIMENTAL=y +# CT_ALLOW_BUILD_AS_ROOT is not set +# CT_DEBUG_CT is not set + +# +# Paths +# +CT_LOCAL_TARBALLS_DIR="${CT_NG_ARCHIVE}" +CT_SAVE_TARBALLS=y +CT_WORK_DIR="${CT_TOP_DIR}/targets" +CT_BUILD_TOP_DIR="${CT_WORK_DIR}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}" +CT_PREFIX_DIR="${CT_NG_BASE_DIR}" +CT_RM_RF_PREFIX_DIR=y +# CT_REMOVE_DOCS is not set +# CT_BUILD_MANUALS is not set +CT_PREFIX_DIR_RO=y +CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES=y +# CT_STRIP_TARGET_TOOLCHAIN_EXECUTABLES is not set + +# +# Downloading +# +CT_DOWNLOAD_AGENT_WGET=y +# CT_DOWNLOAD_AGENT_CURL is not set +# CT_DOWNLOAD_AGENT_NONE is not set +# CT_FORBID_DOWNLOAD is not set +# CT_FORCE_DOWNLOAD is not set +CT_CONNECT_TIMEOUT=20 +CT_DOWNLOAD_WGET_OPTIONS="--passive-ftp --tries=3 -nc --progress=dot:binary" +# CT_ONLY_DOWNLOAD is not set +# CT_USE_MIRROR is not set + +# +# Extracting +# +# CT_FORCE_EXTRACT is not set +CT_OVERRIDE_CONFIG_GUESS_SUB=y +# CT_ONLY_EXTRACT is not set +CT_PATCH_BUNDLED=y +# CT_PATCH_LOCAL is not set +# CT_PATCH_BUNDLED_LOCAL is not set +# CT_PATCH_LOCAL_BUNDLED is not set +# CT_PATCH_BUNDLED_FALLBACK_LOCAL is not set +# CT_PATCH_LOCAL_FALLBACK_BUNDLED is not set +# CT_PATCH_NONE is not set +CT_PATCH_ORDER="bundled" + +# +# Build behavior +# +CT_PARALLEL_JOBS=8 +CT_LOAD="" +CT_USE_PIPES=y +CT_EXTRA_CFLAGS_FOR_BUILD="" +CT_EXTRA_LDFLAGS_FOR_BUILD="" +CT_EXTRA_CFLAGS_FOR_HOST="" +CT_EXTRA_LDFLAGS_FOR_HOST="" +# CT_CONFIG_SHELL_SH is not set +# CT_CONFIG_SHELL_ASH is not set +CT_CONFIG_SHELL_BASH=y +# CT_CONFIG_SHELL_CUSTOM is not set +CT_CONFIG_SHELL="${bash}" + +# +# Logging +# +# CT_LOG_ERROR is not set +# CT_LOG_WARN is not set +CT_LOG_INFO=y +# CT_LOG_EXTRA is not set +# CT_LOG_ALL is not set +# CT_LOG_DEBUG is not set +CT_LOG_LEVEL_MAX="INFO" +# CT_LOG_SEE_TOOLS_WARN is not set +CT_LOG_PROGRESS_BAR=y +CT_LOG_TO_FILE=y +CT_LOG_FILE_COMPRESS=y + +# +# Target options +# +CT_ARCH="arm" +# CT_ARCH_alpha is not set +CT_ARCH_arm=y +# CT_ARCH_avr is not set +# CT_ARCH_m68k is not set +# CT_ARCH_microblaze is not set +# CT_ARCH_mips is not set +# CT_ARCH_nios2 is not set +# CT_ARCH_powerpc is not set +# CT_ARCH_s390 is not set +# CT_ARCH_sh is not set +# CT_ARCH_sparc is not set +# CT_ARCH_x86 is not set +# CT_ARCH_xtensa is not set +CT_ARCH_SUFFIX="" + +# +# Generic target options +# +# CT_MULTILIB is not set +CT_DEMULTILIB=y +CT_ARCH_SUPPORTS_BOTH_MMU=y +CT_ARCH_DEFAULT_HAS_MMU=y +CT_ARCH_USE_MMU=y +CT_ARCH_SUPPORTS_BOTH_ENDIAN=y +CT_ARCH_DEFAULT_LE=y +# CT_ARCH_BE is not set +CT_ARCH_LE=y +CT_ARCH_ENDIAN="little" +CT_ARCH_SUPPORTS_32=y +CT_ARCH_SUPPORTS_64=y +CT_ARCH_DEFAULT_32=y +CT_ARCH_BITNESS=32 +CT_ARCH_32=y +# CT_ARCH_64 is not set + +# +# Target optimisations +# +CT_ARCH_SUPPORTS_WITH_ARCH=y +CT_ARCH_SUPPORTS_WITH_CPU=y +CT_ARCH_SUPPORTS_WITH_TUNE=y +CT_ARCH_SUPPORTS_WITH_FLOAT=y +CT_ARCH_SUPPORTS_WITH_FPU=y +CT_ARCH_SUPPORTS_SOFTFP=y +CT_ARCH_EXCLUSIVE_WITH_CPU=y +CT_ARCH_ARCH="armv7ve" +CT_ARCH_CPU="" +CT_ARCH_TUNE="cortex-a15" +CT_ARCH_FPU="neon-vfpv4" +# CT_ARCH_FLOAT_AUTO is not set +CT_ARCH_FLOAT_HW=y +# CT_ARCH_FLOAT_SOFTFP is not set +# CT_ARCH_FLOAT_SW is not set +CT_TARGET_CFLAGS="" +CT_TARGET_LDFLAGS="" +CT_ARCH_FLOAT="hard" + +# +# arm other options +# +CT_ARCH_ARM_MODE="arm" +CT_ARCH_ARM_MODE_ARM=y +# CT_ARCH_ARM_MODE_THUMB is not set +# CT_ARCH_ARM_INTERWORKING is not set +CT_ARCH_ARM_EABI=y +CT_ARCH_ARM_TUPLE_USE_EABIHF=y + +# +# Toolchain options +# + +# +# General toolchain options +# +CT_USE_SYSROOT=y +CT_SYSROOT_NAME="sys-root" +CT_SYSROOT_DIR_PREFIX="" +CT_WANTS_STATIC_LINK=y +CT_WANTS_STATIC_LINK_CXX=y +# CT_STATIC_TOOLCHAIN is not set +CT_TOOLCHAIN_PKGVERSION="" +CT_TOOLCHAIN_BUGURL="" + +# +# Tuple completion and aliasing +# +CT_TARGET_VENDOR="cortex" +CT_TARGET_ALIAS_SED_EXPR="s/-cortex-/-/" +CT_TARGET_ALIAS="arm-linux" + +# +# Toolchain type +# +# CT_NATIVE is not set +CT_CROSS=y +# CT_CROSS_NATIVE is not set +# CT_CANADIAN is not set +CT_TOOLCHAIN_TYPE="cross" + +# +# Build system +# +CT_BUILD="" +CT_BUILD_PREFIX="" +CT_BUILD_SUFFIX="" + +# +# Misc options +# +CT_TOOLCHAIN_ENABLE_NLS=y + +# +# Operating System +# +CT_KERNEL_SUPPORTS_SHARED_LIBS=y +CT_KERNEL="linux" +CT_KERNEL_VERSION="${CT_NG_CUSTOM_KERNEL_VER}" +# CT_KERNEL_bare_metal is not set +CT_KERNEL_linux=y +CT_KERNEL_LINUX_CUSTOM=y +CT_KERNEL_LINUX_CUSTOM_LOCATION="${CT_NG_CUSTOM_KERNEL}" +CT_KERNEL_LINUX_CUSTOM_VERSION="${CT_NG_CUSTOM_KERNEL_VER}" + +# +# Common kernel options +# +CT_SHARED_LIBS=y + +# +# linux other options +# +CT_KERNEL_LINUX_VERBOSITY_0=y +# CT_KERNEL_LINUX_VERBOSITY_1 is not set +# CT_KERNEL_LINUX_VERBOSITY_2 is not set +CT_KERNEL_LINUX_VERBOSE_LEVEL=0 +CT_KERNEL_LINUX_INSTALL_CHECK=y + +# +# Binary utilities +# +CT_ARCH_BINFMT_ELF=y +CT_BINUTILS="binutils" +CT_BINUTILS_binutils=y + +# +# GNU binutils +# +# CT_BINUTILS_CUSTOM is not set +CT_BINUTILS_VERSION="2.28" +# CT_BINUTILS_SHOW_LINARO is not set +CT_BINUTILS_V_2_28=y +# CT_BINUTILS_V_2_27 is not set +# CT_BINUTILS_V_2_26 is not set +# CT_BINUTILS_V_2_25_1 is not set +# CT_BINUTILS_V_2_24 is not set +# CT_BINUTILS_V_2_23_2 is not set +CT_BINUTILS_2_27_or_later=y +CT_BINUTILS_2_26_or_later=y +CT_BINUTILS_2_25_1_or_later=y +CT_BINUTILS_2_25_or_later=y +CT_BINUTILS_2_24_or_later=y +CT_BINUTILS_2_23_2_or_later=y +CT_BINUTILS_HAS_HASH_STYLE=y +CT_BINUTILS_HAS_GOLD=y +CT_BINUTILS_GOLD_SUPPORTS_ARCH=y +CT_BINUTILS_GOLD_SUPPORT=y +CT_BINUTILS_HAS_PLUGINS=y +CT_BINUTILS_HAS_PKGVERSION_BUGURL=y +CT_BINUTILS_FORCE_LD_BFD_DEFAULT=y +CT_BINUTILS_LINKER_LD=y +# CT_BINUTILS_LINKER_LD_GOLD is not set +# CT_BINUTILS_LINKER_GOLD_LD is not set +CT_BINUTILS_LINKERS_LIST="ld" +CT_BINUTILS_LINKER_DEFAULT="bfd" +# CT_BINUTILS_PLUGINS is not set +CT_BINUTILS_EXTRA_CONFIG_ARRAY="" +CT_BINUTILS_FOR_TARGET=y +CT_BINUTILS_FOR_TARGET_IBERTY=y +CT_BINUTILS_FOR_TARGET_BFD=y + +# +# binutils other options +# + +# +# C-library +# +CT_LIBC="glibc" +CT_LIBC_VERSION="2.23" +# CT_LIBC_bionic is not set +CT_LIBC_glibc=y +# CT_LIBC_musl is not set +# CT_LIBC_uClibc is not set +CT_THREADS="nptl" +# CT_LIBC_GLIBC_CUSTOM is not set +# CT_CC_GLIBC_SHOW_LINARO is not set +# CT_LIBC_GLIBC_V_2_25 is not set +# CT_LIBC_GLIBC_V_2_24 is not set +CT_LIBC_GLIBC_V_2_23=y +# CT_LIBC_GLIBC_V_2_22 is not set +# CT_LIBC_GLIBC_V_2_21 is not set +# CT_LIBC_GLIBC_V_2_20 is not set +# CT_LIBC_GLIBC_V_2_19 is not set +# CT_LIBC_GLIBC_V_2_18 is not set +# CT_LIBC_GLIBC_V_2_17 is not set +# CT_LIBC_GLIBC_V_2_16_0 is not set +# CT_LIBC_GLIBC_V_2_15 is not set +# CT_LIBC_GLIBC_V_2_14_1 is not set +# CT_LIBC_GLIBC_V_2_14 is not set +# CT_LIBC_GLIBC_V_2_13 is not set +# CT_LIBC_GLIBC_V_2_12_1 is not set +CT_LIBC_GLIBC_2_23_or_later=y +CT_LIBC_GLIBC_2_20_or_later=y +CT_LIBC_GLIBC_2_17_or_later=y +CT_LIBC_SUPPORT_THREADS_ANY=y +CT_LIBC_SUPPORT_THREADS_NATIVE=y + +# +# Common C library options +# +CT_THREADS_NATIVE=y +# CT_CREATE_LDSO_CONF is not set +CT_LIBC_XLDD=y + +# +# glibc other options +# +CT_LIBC_GLIBC_NEEDS_PORTS=y +CT_LIBC_glibc_family=y +CT_LIBC_GLIBC_EXTRA_CONFIG_ARRAY="" +CT_LIBC_GLIBC_CONFIGPARMS="" +CT_LIBC_GLIBC_EXTRA_CFLAGS="" +# CT_LIBC_ENABLE_FORTIFIED_BUILD is not set +# CT_LIBC_DISABLE_VERSIONING is not set +CT_LIBC_OLDEST_ABI="" +CT_LIBC_GLIBC_FORCE_UNWIND=y +CT_LIBC_ADDONS_LIST="" +# CT_LIBC_LOCALES is not set +# CT_LIBC_GLIBC_KERNEL_VERSION_NONE is not set +CT_LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS=y +# CT_LIBC_GLIBC_KERNEL_VERSION_CHOSEN is not set +CT_LIBC_GLIBC_MIN_KERNEL="${CT_NG_CUSTOM_KERNEL_VER}" + +# +# C compiler +# +CT_CC="gcc" +CT_CC_CORE_PASSES_NEEDED=y +CT_CC_CORE_PASS_1_NEEDED=y +CT_CC_CORE_PASS_2_NEEDED=y +CT_CC_gcc=y +# CT_CC_GCC_CUSTOM is not set +CT_CC_GCC_VERSION="linaro-6.3-2017.02" +CT_CC_GCC_SHOW_LINARO=y +# CT_CC_GCC_V_7_1_0 is not set +CT_CC_GCC_V_linaro_6_3=y +# CT_CC_GCC_V_6_3_0 is not set +# CT_CC_GCC_V_linaro_5_4 is not set +# CT_CC_GCC_V_5_4_0 is not set +# CT_CC_GCC_V_linaro_4_9 is not set +# CT_CC_GCC_V_4_9_4 is not set +# CT_CC_GCC_V_linaro_4_8 is not set +# CT_CC_GCC_V_4_8_5 is not set +CT_CC_GCC_4_8_or_later=y +CT_CC_GCC_4_9_or_later=y +CT_CC_GCC_5_or_later=y +CT_CC_GCC_6=y +CT_CC_GCC_6_or_later=y +CT_CC_GCC_HAS_LIBMPX=y +CT_CC_GCC_ENABLE_CXX_FLAGS="" +CT_CC_GCC_CORE_EXTRA_CONFIG_ARRAY="--with-float=hard" +CT_CC_GCC_EXTRA_CONFIG_ARRAY="--with-float=hard" +CT_CC_GCC_STATIC_LIBSTDCXX=y +# CT_CC_GCC_SYSTEM_ZLIB is not set +CT_CC_GCC_CONFIG_TLS=m + +# +# Optimisation features +# +CT_CC_GCC_USE_GRAPHITE=y +CT_CC_GCC_USE_LTO=y + +# +# Settings for libraries running on target +# +CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y +# CT_CC_GCC_LIBMUDFLAP is not set +# CT_CC_GCC_LIBGOMP is not set +# CT_CC_GCC_LIBSSP is not set +# CT_CC_GCC_LIBQUADMATH is not set +# CT_CC_GCC_LIBSANITIZER is not set + +# +# Misc. obscure options. +# +CT_CC_CXA_ATEXIT=y +# CT_CC_GCC_DISABLE_PCH is not set +CT_CC_GCC_SJLJ_EXCEPTIONS=m +CT_CC_GCC_LDBL_128=m +# CT_CC_GCC_BUILD_ID is not set +CT_CC_GCC_LNK_HASH_STYLE_DEFAULT=y +# CT_CC_GCC_LNK_HASH_STYLE_SYSV is not set +# CT_CC_GCC_LNK_HASH_STYLE_GNU is not set +# CT_CC_GCC_LNK_HASH_STYLE_BOTH is not set +CT_CC_GCC_LNK_HASH_STYLE="" +CT_CC_GCC_DEC_FLOAT_AUTO=y +# CT_CC_GCC_DEC_FLOAT_BID is not set +# CT_CC_GCC_DEC_FLOAT_DPD is not set +# CT_CC_GCC_DEC_FLOATS_NO is not set +CT_CC_SUPPORT_CXX=y +CT_CC_SUPPORT_FORTRAN=y +CT_CC_SUPPORT_ADA=y +CT_CC_SUPPORT_OBJC=y +CT_CC_SUPPORT_OBJCXX=y +CT_CC_SUPPORT_GOLANG=y + +# +# Additional supported languages: +# +CT_CC_LANG_CXX=y +# CT_CC_LANG_FORTRAN is not set +# CT_CC_LANG_ADA is not set +# CT_CC_LANG_OBJC is not set +# CT_CC_LANG_OBJCXX is not set +# CT_CC_LANG_GOLANG is not set +CT_CC_LANG_OTHERS="" + +# +# Debug facilities +# +# CT_DEBUG_duma is not set +# CT_DEBUG_gdb is not set +# CT_DEBUG_ltrace is not set +# CT_DEBUG_strace is not set + +# +# Companion libraries +# +CT_COMPLIBS_NEEDED=y +CT_LIBICONV_NEEDED=y +CT_GETTEXT_NEEDED=y +CT_GMP_NEEDED=y +CT_MPFR_NEEDED=y +CT_ISL_NEEDED=y +CT_MPC_NEEDED=y +CT_NCURSES_NEEDED=y +CT_COMPLIBS=y +CT_LIBICONV=y +CT_GETTEXT=y +CT_GMP=y +CT_MPFR=y +CT_ISL=y +CT_MPC=y +CT_NCURSES=y +# CT_ZLIB is not set +CT_LIBICONV_V_1_15=y +# CT_LIBICONV_V_1_14 is not set +CT_LIBICONV_VERSION="1.15" +CT_GETTEXT_V_0_19_8_1=y +# CT_GETTEXT_V_0_19_7 is not set +CT_GETTEXT_VERSION="0.19.8.1" +CT_GMP_V_6_1_2=y +# CT_GMP_V_6_1_0 is not set +# CT_GMP_V_6_0_0 is not set +# CT_GMP_V_5_1_3 is not set +# CT_GMP_V_5_1_1 is not set +# CT_GMP_V_5_0_2 is not set +# CT_GMP_V_5_0_1 is not set +# CT_GMP_V_4_3_2 is not set +# CT_GMP_V_4_3_1 is not set +# CT_GMP_V_4_3_0 is not set +CT_GMP_5_0_2_or_later=y +CT_GMP_VERSION="6.1.2" +CT_MPFR_V_3_1_5=y +# CT_MPFR_V_3_1_3 is not set +# CT_MPFR_V_3_1_2 is not set +# CT_MPFR_V_3_1_0 is not set +# CT_MPFR_V_3_0_1 is not set +# CT_MPFR_V_3_0_0 is not set +# CT_MPFR_V_2_4_2 is not set +# CT_MPFR_V_2_4_1 is not set +# CT_MPFR_V_2_4_0 is not set +CT_MPFR_VERSION="3.1.5" +CT_ISL_V_0_18=y +# CT_ISL_V_0_17_1 is not set +# CT_ISL_V_0_16_1 is not set +# CT_ISL_V_0_15 is not set +# CT_ISL_V_0_14 is not set +CT_ISL_V_0_16_or_later=y +CT_ISL_V_0_15_or_later=y +CT_ISL_V_0_14_or_later=y +CT_ISL_V_0_12_or_later=y +CT_ISL_VERSION="0.18" +CT_MPC_V_1_0_3=y +# CT_MPC_V_1_0_2 is not set +# CT_MPC_V_1_0_1 is not set +# CT_MPC_V_1_0 is not set +# CT_MPC_V_0_9 is not set +# CT_MPC_V_0_8_2 is not set +# CT_MPC_V_0_8_1 is not set +# CT_MPC_V_0_7 is not set +CT_MPC_VERSION="1.0.3" +CT_NCURSES_V_6_0=y +CT_NCURSES_VERSION="6.0" +# CT_NCURSES_NEW_ABI is not set +CT_NCURSES_HOST_CONFIG_ARGS="" +CT_NCURSES_HOST_DISABLE_DB=y +CT_NCURSES_HOST_FALLBACKS="linux,xterm,xterm-color,xterm-256color,vt100" +CT_NCURSES_TARGET_CONFIG_ARGS="" +# CT_NCURSES_TARGET_DISABLE_DB is not set +CT_NCURSES_TARGET_FALLBACKS="" + +# +# Companion libraries common options +# +# CT_COMPLIBS_CHECK is not set + +# +# Companion tools +# +# CT_COMP_TOOLS_FOR_HOST is not set +# CT_COMP_TOOLS_autoconf is not set +# CT_COMP_TOOLS_automake is not set +# CT_COMP_TOOLS_libtool is not set +# CT_COMP_TOOLS_m4 is not set +# CT_COMP_TOOLS_make is not set + +# +# Test suite +# +# CT_TEST_SUITE_GCC is not set diff --git a/archive-patches/ct-ng-1.20/ct-ng-nevis-1.20.0-1.config b/archive-patches/ct-ng/ct-ng-nevis-1.20.0-1.config similarity index 100% rename from archive-patches/ct-ng-1.20/ct-ng-nevis-1.20.0-1.config rename to archive-patches/ct-ng/ct-ng-nevis-1.20.0-1.config diff --git a/archive-patches/ct-ng-1.20/ct-ng-uClibc-0.9.33.2.config b/archive-patches/ct-ng/ct-ng-uClibc-0.9.33.2.config similarity index 100% rename from archive-patches/ct-ng-1.20/ct-ng-uClibc-0.9.33.2.config rename to archive-patches/ct-ng/ct-ng-uClibc-0.9.33.2.config diff --git a/archive-patches/ct-ng-1.20/ct-ng-uClibc-ng-1.0.1.config b/archive-patches/ct-ng/ct-ng-uClibc-ng-1.0.1.config similarity index 100% rename from archive-patches/ct-ng-1.20/ct-ng-uClibc-ng-1.0.1.config rename to archive-patches/ct-ng/ct-ng-uClibc-ng-1.0.1.config diff --git a/archive-patches/ct-ng/gcc-6.3-backport-fix-of-check-for-empty-string-in-ubsan.c.patch b/archive-patches/ct-ng/gcc-6.3-backport-fix-of-check-for-empty-string-in-ubsan.c.patch new file mode 100644 index 0000000..72d86c1 --- /dev/null +++ b/archive-patches/ct-ng/gcc-6.3-backport-fix-of-check-for-empty-string-in-ubsan.c.patch @@ -0,0 +1,11 @@ +--- a/gcc/ubsan.c ++++ b/gcc/ubsan.c +@@ -1471,7 +1471,7 @@ ubsan_use_new_style_p (location_t loc) + + expanded_location xloc = expand_location (loc); + if (xloc.file == NULL || strncmp (xloc.file, "\1", 2) == 0 +- || xloc.file == '\0' || xloc.file[0] == '\xff' ++ || xloc.file[0] == '\0' || xloc.file[0] == '\xff' + || xloc.file[1] == '\xff') + return false; + diff --git a/archive-patches/ct-ng-1.20/libstdc++_configure_patch.tar.xz b/archive-patches/ct-ng/libstdc++_configure_patch.tar.xz similarity index 100% rename from archive-patches/ct-ng-1.20/libstdc++_configure_patch.tar.xz rename to archive-patches/ct-ng/libstdc++_configure_patch.tar.xz diff --git a/make/archives.mk b/make/archives.mk index 7cd60e0..72bef05 100755 --- a/make/archives.mk +++ b/make/archives.mk @@ -306,3 +306,7 @@ $(ARCHIVE)/crosstool-ng-git-$(CROSSTOOL_NG_VER).tar.gz: tar cvpzf $@ crosstool-ng-git-$(CROSSTOOL_NG_VER) $(REMOVE)/crosstool-ng-git-$(CROSSTOOL_NG_VER) +$(ARCHIVE)/$(KERNEL_SRC): + $(WGET) $(KERNEL_URL)/$(KERNEL_SRC) + + diff --git a/make/crosstool-arm.mk b/make/crosstool-arm.mk new file mode 100644 index 0000000..15045a1 --- /dev/null +++ b/make/crosstool-arm.mk @@ -0,0 +1,67 @@ +# makefile to build crosstools + +# +# crosstool-ng +# +ifeq ($(BOXTYPE), armbox) +CROSSTOOL_NG_VER = $(CT_NG_VER_ARM) +CROSSTOOL_NG_SOURCE = crosstool-ng-git-$(CROSSTOOL_NG_VER).tar.gz + + +CUSTOM_KERNEL = $(ARCHIVE)/$(KERNEL_SRC) +ifeq ($(BOXSERIES), hd51) +CUSTOM_KERNEL_VER = $(KERNEL_VER)-arm +endif + +ifeq ($(wildcard $(CROSS_BASE)/build.log.bz2),) +CROSSTOOL = crosstool +crosstool: + make MAKEFLAGS=--no-print-directory crosstool-ng + +crosstool-ng: $(ARCHIVE)/$(KERNEL_SRC) $(ARCHIVE)/$(CROSSTOOL_NG_SOURCE) + make $(BUILD_TMP) + if [ ! -e $(CROSS_BASE) ]; then \ + mkdir -p $(CROSS_BASE); \ + fi; + $(REMOVE)/crosstool-ng-$(CROSSTOOL_NG_VER) + $(UNTAR)/$(CROSSTOOL_NG_SOURCE) + unset CONFIG_SITE LIBRARY_PATH CPATH C_INCLUDE_PATH PKG_CONFIG_PATH CPLUS_INCLUDE_PATH INCLUDE; \ + set -e; cd $(BUILD_TMP)/crosstool-ng-git-$(CROSSTOOL_NG_VER); \ + cp -a $(PATCHES)/ct-ng/ct-ng-git-$(CROSSTOOL_NG_VER)-arm-$(BOXSERIES).config .config; \ + NUM_CPUS=$$(expr `getconf _NPROCESSORS_ONLN` \* 2); \ + MEM_512M=$$(awk '/MemTotal/ {M=int($$2/1024/512); print M==0?1:M}' /proc/meminfo); \ + test $$NUM_CPUS -gt $$MEM_512M && NUM_CPUS=$$MEM_512M; \ + test $$NUM_CPUS = 0 && NUM_CPUS=1; \ + sed -i "s@^CT_PARALLEL_JOBS=.*@CT_PARALLEL_JOBS=$$NUM_CPUS@" .config; \ + \ + cp $(PATCHES)/ct-ng/gcc-6.3-backport-fix-of-check-for-empty-string-in-ubsan.c.patch patches/gcc/linaro-6.3-2017.02; \ + \ + export CT_NG_ARCHIVE=$(ARCHIVE); \ + export CT_NG_BASE_DIR=$(CROSS_BASE); \ + export CT_NG_CUSTOM_KERNEL=$(CUSTOM_KERNEL); \ + export CT_NG_CUSTOM_KERNEL_VER=$(CUSTOM_KERNEL_VER); \ + export LD_LIBRARY_PATH=; \ + test -f ./configure || ./bootstrap && \ + ./configure --enable-local; \ + MAKELEVEL=0 make; \ + chmod 0755 ct-ng; \ + ./ct-ng oldconfig; \ + ./ct-ng build + chmod -R +w $(CROSS_BASE) + test -e $(CROSS_BASE)/$(TARGET)/lib || ln -sf sys-root/lib $(CROSS_BASE)/$(TARGET)/ + rm -f $(CROSS_BASE)/$(TARGET)/sys-root/lib/libstdc++.so.6.0.20-gdb.py + $(REMOVE)/crosstool-ng-git-$(CROSSTOOL_NG_VER) +endif + +crossmenuconfig: directories $(ARCHIVE)/$(CROSSTOOL_NG_SOURCE) + $(REMOVE)/crosstool-ng-$(CROSSTOOL_NG_VER) + $(UNTAR)/$(CROSSTOOL_NG_SOURCE) + set -e; unset CONFIG_SITE; cd $(BUILD_TMP)/crosstool-ng-$(CROSSTOOL_NG_VER); \ + cp -a $(PATCHES)/ct-ng/ct-ng-git-$(CROSSTOOL_NG_VER)-arm-$(BOXSERIES).config .config; \ + test -f ./configure || ./bootstrap && \ + ./configure --enable-local; \ + MAKELEVEL=0 make; \ + chmod 0755 ct-ng; \ + ./ct-ng menuconfig +endif +### diff --git a/make/crosstool.mk b/make/crosstool.mk index 5c22c24..21e8506 100755 --- a/make/crosstool.mk +++ b/make/crosstool.mk @@ -13,8 +13,8 @@ endif CUSTOM_GCC = $(ARCHIVE)/gcc-$(CUSTOM_GCC_VER).tar.xz #LINARO_GCC_ARCHIVE = $(ARCHIVE)/gcc-$(LINARO_GCC_VER).tar.xz -ifeq ($(PLATFORM), nevis) ## Platform nevis -CT_NG_CONFIG = $(PATCHES)/ct-ng-1.20/ct-ng-coolstream_hd1.config +ifeq ($(BOXSERIES), hd1) ## Platform nevis +CT_NG_CONFIG = $(PATCHES)/ct-ng/ct-ng-coolstream_hd1.config crosstool: prerequisites | $(ARCHIVE)/crosstool-ng-git-$(CROSSTOOL_NG_VER).tar.gz $(START_BUILD) @@ -50,20 +50,20 @@ crosstool: prerequisites | $(ARCHIVE)/crosstool-ng-git-$(CROSSTOOL_NG_VER).tar.g @echo -e " \033[32mmake crosstool done\033[0m" @echo " ============================================================================== " -else ## ifeq ($(PLATFORM), nevis) +else ifeq ($(BOXSERIES), hd2) ## apollo / kronos crosstool ############################################### ifeq ($(UCLIBC_BUILD), 1) ifeq ($(USE_UCLIBC_NG), 1) ## build apollo/kronos uClibc-ng -CT_NG_CONFIG = $(PATCHES)/ct-ng-1.20/ct-ng-1.20.0-3.config +CT_NG_CONFIG = $(PATCHES)/ct-ng/ct-ng-1.20.0-3.config else ## build apollo/kronos uClibc -CT_NG_CONFIG = $(PATCHES)/ct-ng-1.20/ct-ng-1.21.0-2.config +CT_NG_CONFIG = $(PATCHES)/ct-ng/ct-ng-1.21.0-2.config endif ## ($(USE_UCLIBC_NG), 1) else ## build apollo/kronos eglibc -CT_NG_CONFIG = $(PATCHES)/ct-ng-1.20/ct-ng-1.20.0-1-glibc.config +CT_NG_CONFIG = $(PATCHES)/ct-ng/ct-ng-1.20.0-1-glibc.config endif ## ifeq ($(UCLIBC_BUILD), 1) crosstool: prerequisites | $(CUSTOM_GCC) $(ARCHIVE)/crosstool-ng-git-$(CROSSTOOL_NG_VER).tar.gz @@ -73,7 +73,7 @@ crosstool: prerequisites | $(CUSTOM_GCC) $(ARCHIVE)/crosstool-ng-git-$(CROSSTOOL mkdir -p $(BUILD_TMP)/crosstool-ng-git-$(CROSSTOOL_NG_VER)/targets/src # Don't patch a custom source from ct-ng, it's custom! cd $(BUILD_TMP)/crosstool-ng-git-$(CROSSTOOL_NG_VER)/targets; \ - tar -xf $(PATCHES)/ct-ng-1.20/libstdc++_configure_patch.tar.xz; \ + tar -xf $(PATCHES)/ct-ng/libstdc++_configure_patch.tar.xz; \ cd src; \ touch .gcc-$(CUSTOM_GCC_VER).extracting; \ tar -xf $(CUSTOM_GCC); \ @@ -94,12 +94,12 @@ crosstool: prerequisites | $(CUSTOM_GCC) $(ARCHIVE)/crosstool-ng-git-$(CROSSTOOL sed -i "s@^CT_PARALLEL_JOBS=.*@CT_PARALLEL_JOBS=$$NUM_CPUS@" .config; \ \ if [ "$(UCLIBC_BUILD)" = "1" ]; then \ - cp $(PATCHES)/ct-ng-1.20/900-pull-socket_type-h-from-eglibc.patch patches/uClibc/0.9.33.2; \ - cp $(PATCHES)/ct-ng-1.20/901-gettimeofday.c-use-the-same-type-as-in-header.patch patches/uClibc/0.9.33.2; \ + cp $(PATCHES)/ct-ng/900-pull-socket_type-h-from-eglibc.patch patches/uClibc/0.9.33.2; \ + cp $(PATCHES)/ct-ng/901-gettimeofday.c-use-the-same-type-as-in-header.patch patches/uClibc/0.9.33.2; \ if [ "$(USE_UCLIBC_NG)" = "1" ]; then \ - export CST_UCLIBC_CONFIG="$(PATCHES)/ct-ng-1.20/ct-ng-uClibc-ng-1.0.1.config"; \ + export CST_UCLIBC_CONFIG="$(PATCHES)/ct-ng/ct-ng-uClibc-ng-1.0.1.config"; \ else \ - export CST_UCLIBC_CONFIG="$(PATCHES)/ct-ng-1.20/ct-ng-uClibc-0.9.33.2.config"; \ + export CST_UCLIBC_CONFIG="$(PATCHES)/ct-ng/ct-ng-uClibc-0.9.33.2.config"; \ fi;\ fi; \ \ @@ -123,8 +123,8 @@ crosstool: prerequisites | $(CUSTOM_GCC) $(ARCHIVE)/crosstool-ng-git-$(CROSSTOOL endif # ifeq ($(PLATFORM), nevis) - -# Crosstool configuration +# Crosstool configuration +ifeq ($(BOXTYPE), coolstream) crossmenuconfig: $(ARCHIVE)/crosstool-ng-$(CROSSTOOL_NG_VER).tar.bz2 $(START_BUILD) make $(BUILD_TMP) @@ -143,3 +143,4 @@ uclibcmenuconfig: $(ARCHIVE)/uClibc-$(UCLIBC_VER).tar.xz mv $(BUILD_TMP)/uClibc-$(UCLIBC_VER) $(BUILD_TMP)/uClibc-$(UCLIBC_VER)_mc set -e; cd $(BUILD_TMP)/uClibc-$(UCLIBC_VER)_mc; \ make menuconfig +endif # ifeq ($(BOXTYPE), coolstream) diff --git a/make/custom.mk b/make/custom.mk new file mode 120000 index 0000000..37963b5 --- /dev/null +++ b/make/custom.mk @@ -0,0 +1 @@ +/home/image/cs-kw/custom/custom.mk \ No newline at end of file diff --git a/make/environment.mk b/make/environment.mk index d62c352..4126500 100755 --- a/make/environment.mk +++ b/make/environment.mk @@ -65,9 +65,15 @@ else ifeq ($(BOXMODEL), hd51) TARGET ?= arm-cortex-linux-gnueabihf PLATFORM = bcm7251s DRIVER_DIR ?= $(PLATFORM) - CST_KERNEL_VERSION ?= 4.10.12 - KVERSION_FULL = $(CST_KERNEL_VERSION)-nevis - KBRANCH ?= $(CST_KERNEL_VERSION)-cnxt + KERNEL_VER = 4.10.12 + KERNEL_DATE = 20171103 + KERNEL_TYPE = hd51 + KERNEL_SRC = linux-$(KERNEL_VER)-arm.tar.gz + KERNEL_URL = http://source.mynonpublic.com/gfutures + KERNEL_CONFIG = hd51_defconfig + KERNEL_DIR = $(BUILD_TMP)/linux-$(KERNEL_VER) + KERNEL_PATCHES_ARM = $(HD51_PATCHES) + KERNEL_DTB_VER = bcm7445-bcm97445svmb.dtb else $(error $(BOXTYPE) BOXMODEL $(BOXMODEL) not supported) endif diff --git a/make/versions.mk b/make/versions.mk index 0650c3b..ba85c61 100644 --- a/make/versions.mk +++ b/make/versions.mk @@ -11,6 +11,7 @@ CRTXSTR_GIT=48fd30c # crosstool-ng versions CT_NG_VER_HD1 = 1894239 CT_NG_VER_HD2 = a0d58f4 +CT_NG_VER_ARM = 1dbb06f2 # Linaro GCC Versions GCC_VER_HD1 = linaro-4.9-2017.01 -- 2.39.5