diff options
-rw-r--r-- | .travis.sh | 45 | ||||
-rw-r--r-- | .travis.yml | 51 | ||||
-rw-r--r-- | README | 29 | ||||
-rw-r--r-- | README.md | 38 | ||||
-rw-r--r-- | config/companion_libs/isl.in | 11 | ||||
-rw-r--r-- | samples/arm-cortex_a8-linux-gnueabi/crosstool.config | 1 | ||||
-rw-r--r-- | samples/arm-cortexa5-linux-uclibcgnueabihf/crosstool.config | 1 | ||||
-rw-r--r-- | samples/arm-unknown-linux-gnueabi/crosstool.config | 1 | ||||
-rw-r--r-- | samples/arm-unknown-linux-uclibcgnueabi/crosstool.config | 1 | ||||
-rw-r--r-- | samples/arm-unknown-linux-uclibcgnueabihf/crosstool.config | 1 | ||||
-rw-r--r-- | samples/armeb-unknown-linux-gnueabi/crosstool.config | 1 | ||||
-rw-r--r-- | samples/i686-nptl-linux-gnu/crosstool.config | 1 | ||||
-rw-r--r-- | scripts/build/cc/100-gcc.sh | 16 |
13 files changed, 149 insertions, 48 deletions
diff --git a/.travis.sh b/.travis.sh new file mode 100644 index 0000000..90a439b --- /dev/null +++ b/.travis.sh @@ -0,0 +1,45 @@ +# Add current directory to PATH +export PATH="$(pwd):$PATH" + +# Manage the travis build +ct-ng_travis_build() +{ + # Override the log behaviour + sed -i -e 's/^.*\(CT_LOG_ERROR\).*$/# \1 is not set/' \ + -e 's/^.*\(CT_LOG_WARN\).*$/# \1 is not set/' \ + -e 's/^.*\(CT_LOG_INFO\).*$/# \1 is not set/' \ + -e 's/^.*\(CT_LOG_EXTRA\).*$/\1=y/' \ + -e 's/^.*\(CT_LOG_ALL\).*$/# \1 is not set/' \ + -e 's/^.*\(CT_LOG_DEBUG\).*$/# \1 is not set/' \ + -e 's/^.*\(CT_LOG_LEVEL_MAX\).*$/\1="EXTRA"/' \ + -e 's/^.*\(CT_LOG_PROGRESS_BAR\).*$/# \1 is not set/' \ + -e 's/^.*\(CT_LOCAL_TARBALLS_DIR\).*$/\1="${HOME}\/src"/' \ + -e 's/^.*\(CT_SAVE_TARBALLS\).*$/\1=y/' \ + .config + + # Build the sample + ct-ng build.2 & + local build_pid=$! + + # Start a runner task to print a "still running" line every 5 minutes + # to avoid travis to think that the build is stuck + { + while true + do + sleep 300 + printf "Crosstool-NG is still running ...\r" + done + } & + local runner_pid=$! + + # Wait for the build to finish and get the result + wait $build_pid 2>/dev/null + local result=$? + + # Stop the runner task + kill $runner_pid + wait $runner_pid 2>/dev/null + + # Return the result + return $result +} diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..e175024 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,51 @@ +# Using container-based infrastructure +sudo: false + +# 'bash' will define a generic environment without interfering environment +# settings like "CC=gcc" +language: bash + +# Only build the master branch +branches: + only: + - master + +# Caching the downloaded src packages between several builds to save travis-ci +# download time and bandwidth +cache: + directories: + - $HOME/src + +# Installing needed dependencies +addons: + apt: + packages: + - bison + - flex + - gperf + - libncurses5-dev + - texinfo + +# Building crosstool-NG core +install: + - ./bootstrap + - ./configure --enable-local + - make + +# Here is the list of all the standard samples tracked +# by the continuous integration system +env: + - CT_SAMPLE=arm-unknown-eabi + - CT_SAMPLE=armeb-unknown-eabi + - CT_SAMPLE=arm-unknown-linux-gnueabi + - CT_SAMPLE=armeb-unknown-linux-gnueabi + +# Building the standard samples +script: + - . ./.travis.sh # Load the travis environment + - ct-ng $CT_SAMPLE # Configure the build + - ct-ng_travis_build # Build the sample + +# On failure displaying the last lines of the log file +after_failure: + - tail -n 1000 build.log @@ -1,29 +0,0 @@ -This is the README for crosstool-NG - -Crosstool-NG follows the autoconf dance. So, to get you -kick-started, just run: - ./configure --help - -If you are using a development snapshot, you'll have to -create the configure script, first. Just run: - ./bootstrap - -You will find the documentation in the directory 'docs'. -Here is a quick overview of what you'll find there: - 0 - Table of content - 1 - Introduction - 2 - Installing crosstool-NG - 3 - Configuring a toolchain - 4 - Building the toolchain - 5 - Using the toolchain - 6 - Toolchain types - 7 - Contributing - 8 - Internals - A - Credits - B - Known issues - C - Misc. tutorials - -You can also point your browser at: - http://crosstool-ng.org/ - -Aloha! diff --git a/README.md b/README.md new file mode 100644 index 0000000..2858138 --- /dev/null +++ b/README.md @@ -0,0 +1,38 @@ +# Crosstool-NG [![Build Status][travis-status]][travis] + +Crosstool-NG follows the `autoconf` dance. So, to get you +kick-started, just run: + + ./configure --help + +If you are using a development snapshot, you'll have to +create the configure script, first. Just run: + + ./bootstrap + +You will find the documentation in the directory `docs`. +Here is a quick overview of what you'll find there: + +<ol start="0"> + <li>Table of content</li> + <li>Introduction</li> + <li>Installing crosstool-NG</li> + <li>Configuring a toolchain</li> + <li>Building the toolchain</li> + <li>Using the toolchain</li> + <li>Toolchain types</li> + <li>Contributing</li> + <li>Internals</li> +</ol> +<ol type="A"> + <li>Credits</li> + <li>Known issues</li> + <li>Misc. tutorials</li> +</ol> + +You can also point your browser at: http://crosstool-ng.org + +Aloha! + +[travis-status]: https://travis-ci.org/crosstool-ng/crosstool-ng.svg +[travis]: https://travis-ci.org/crosstool-ng/crosstool-ng diff --git a/config/companion_libs/isl.in b/config/companion_libs/isl.in index 1db51b3..19a27cc 100644 --- a/config/companion_libs/isl.in +++ b/config/companion_libs/isl.in @@ -6,12 +6,6 @@ choice # Don't remove next line # CT_INSERT_VERSION_BELOW -config ISL_V_0_15 - bool - prompt "0.15" - depends on CC_GCC_5_1_or_later - select ISL_V_0_15_or_later - config ISL_V_0_14 bool prompt "0.14" @@ -32,10 +26,6 @@ config ISL_V_0_11_1 endchoice -config ISL_V_0_15_or_later - bool - select ISL_V_0_14_or_later - config ISL_V_0_14_or_later bool select ISL_V_0_12_or_later @@ -47,7 +37,6 @@ config ISL_VERSION string # Don't remove next line # CT_INSERT_VERSION_STRING_BELOW - default "0.15" if ISL_V_0_15 default "0.14" if ISL_V_0_14 default "0.12.2" if ISL_V_0_12_2 default "0.11.1" if ISL_V_0_11_1 diff --git a/samples/arm-cortex_a8-linux-gnueabi/crosstool.config b/samples/arm-cortex_a8-linux-gnueabi/crosstool.config index 3680597..b9c424c 100644 --- a/samples/arm-cortex_a8-linux-gnueabi/crosstool.config +++ b/samples/arm-cortex_a8-linux-gnueabi/crosstool.config @@ -20,5 +20,4 @@ CT_DEBUG_gdb=y # CT_GDB_CROSS_PYTHON is not set CT_GDB_NATIVE=y CT_GDB_NATIVE_STATIC=y -CT_DEBUG_ltrace=y CT_DEBUG_strace=y diff --git a/samples/arm-cortexa5-linux-uclibcgnueabihf/crosstool.config b/samples/arm-cortexa5-linux-uclibcgnueabihf/crosstool.config index a64912c..54c6d8f 100644 --- a/samples/arm-cortexa5-linux-uclibcgnueabihf/crosstool.config +++ b/samples/arm-cortexa5-linux-uclibcgnueabihf/crosstool.config @@ -25,5 +25,4 @@ CT_DEBUG_duma=y CT_DEBUG_gdb=y CT_GDB_CROSS_STATIC=y CT_GDB_NATIVE=y -CT_DEBUG_ltrace=y CT_DEBUG_strace=y diff --git a/samples/arm-unknown-linux-gnueabi/crosstool.config b/samples/arm-unknown-linux-gnueabi/crosstool.config index 9105b6f..9f98caf 100644 --- a/samples/arm-unknown-linux-gnueabi/crosstool.config +++ b/samples/arm-unknown-linux-gnueabi/crosstool.config @@ -17,5 +17,4 @@ CT_DEBUG_duma=y CT_DEBUG_gdb=y # CT_GDB_CROSS_PYTHON is not set CT_GDB_NATIVE=y -CT_DEBUG_ltrace=y CT_DEBUG_strace=y diff --git a/samples/arm-unknown-linux-uclibcgnueabi/crosstool.config b/samples/arm-unknown-linux-uclibcgnueabi/crosstool.config index 06b279f..486c091 100644 --- a/samples/arm-unknown-linux-uclibcgnueabi/crosstool.config +++ b/samples/arm-unknown-linux-uclibcgnueabi/crosstool.config @@ -20,5 +20,4 @@ CT_DEBUG_gdb=y CT_GDB_CROSS_STATIC=y CT_GDB_NATIVE=y CT_GDB_NATIVE_STATIC=y -CT_DEBUG_ltrace=y CT_DEBUG_strace=y diff --git a/samples/arm-unknown-linux-uclibcgnueabihf/crosstool.config b/samples/arm-unknown-linux-uclibcgnueabihf/crosstool.config index f3162f8..bbb503b 100644 --- a/samples/arm-unknown-linux-uclibcgnueabihf/crosstool.config +++ b/samples/arm-unknown-linux-uclibcgnueabihf/crosstool.config @@ -23,5 +23,4 @@ CT_DEBUG_gdb=y CT_GDB_CROSS_STATIC=y CT_GDB_NATIVE=y CT_GDB_NATIVE_STATIC=y -CT_DEBUG_ltrace=y CT_DEBUG_strace=y diff --git a/samples/armeb-unknown-linux-gnueabi/crosstool.config b/samples/armeb-unknown-linux-gnueabi/crosstool.config index a16a867..6c10fd7 100644 --- a/samples/armeb-unknown-linux-gnueabi/crosstool.config +++ b/samples/armeb-unknown-linux-gnueabi/crosstool.config @@ -18,5 +18,4 @@ CT_DEBUG_duma=y CT_DEBUG_gdb=y # CT_GDB_CROSS_PYTHON is not set CT_GDB_NATIVE=y -CT_DEBUG_ltrace=y CT_DEBUG_strace=y diff --git a/samples/i686-nptl-linux-gnu/crosstool.config b/samples/i686-nptl-linux-gnu/crosstool.config index 78ab500..668881a 100644 --- a/samples/i686-nptl-linux-gnu/crosstool.config +++ b/samples/i686-nptl-linux-gnu/crosstool.config @@ -16,5 +16,4 @@ CT_DEBUG_duma=y CT_DEBUG_gdb=y # CT_GDB_CROSS_PYTHON is not set CT_GDB_NATIVE=y -CT_DEBUG_ltrace=y CT_DEBUG_strace=y diff --git a/scripts/build/cc/100-gcc.sh b/scripts/build/cc/100-gcc.sh index c98ce4f..5d1b1b8 100644 --- a/scripts/build/cc/100-gcc.sh +++ b/scripts/build/cc/100-gcc.sh @@ -363,6 +363,21 @@ do_gcc_core_backend() { extra_config+=(--disable-libgomp) extra_config+=(--disable-libmudflap) + if [ "${CT_CC_GCC_LIBSSP}" = "y" ]; then + extra_config+=(--enable-libssp) + else + extra_config+=(--disable-libssp) + fi + if [ "${CT_CC_GCC_HAS_LIBQUADMATH}" = "y" ]; then + if [ "${CT_CC_GCC_LIBQUADMATH}" = "y" ]; then + extra_config+=(--enable-libquadmath) + extra_config+=(--enable-libquadmath-support) + else + extra_config+=(--disable-libquadmath) + extra_config+=(--disable-libquadmath-support) + fi + fi + [ "${CT_TOOLCHAIN_ENABLE_NLS}" != "y" ] && extra_config+=("--disable-nls") [ "${CT_CC_GCC_DISABLE_PCH}" = "y" ] && extra_config+=("--disable-libstdcxx-pch") @@ -395,7 +410,6 @@ do_gcc_core_backend() { --target=${CT_TARGET} \ --prefix="${prefix}" \ --with-local-prefix="${CT_SYSROOT_DIR}" \ - --disable-libmudflap \ ${CC_CORE_SYSROOT_ARG} \ "${extra_config[@]}" \ --enable-languages="${lang_list}" \ |