summaryrefslogtreecommitdiff
path: root/scripts/build/kernel
AgeCommit message (Collapse)AuthorFilesLines
2017-02-14Determine whether -E/-r option selects extended regexpAlexey Neyman1-1/+1
... and then use the right option. See the note in scripts/functions on where we should use ${foo} and where just 'foo'; this boils down to whether we can expect the build tools override to be in effect (e.g. in the actual build scripts) or not (i.e. outside of scripts/build). While running in scripts/functions, or in scripts/crosstool-NG.sh the build tools override directory (.build/tools/bin) may have not been set up (yet, or at all). Also, modify the installed scripts (populate, xldd) accordingly. Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-12Remove 'relocs' from archscripts being builtAlexey Neyman1-0/+11
... it is not needed to install headers and causes build failures in more than one setup (cygwin, macos). Signed-off-by: Alexey Neyman <stilor@att.net>
2016-11-21Partially revert 6f8e89cb5ca061e899bf3feaaf3fecf30d366c3e.Alexey Neyman1-2/+2
The referenced commit replaced 'make' with '${make}' everywhere. This is wrong for at least the utilities that we may build as companion tools (make, libtool): this will always invoke the version detected by configure by supplying the absolute path. In other words, the wrappers in .build/tools/bin are not fallbacks - they are either temporary (in case a respective companion tool is built) or permanent redirectors. This is the reason why the PATH= has .build/*/buildtools/bin at higher precedence than .build/tools/bin; the latter has the versions detected by configure and the former has the versions built as companion tools. Revert the rest of the gang (grep/sed/...) for consistency. After all, we may decide to supply some of them as well (awk, for instance). Signed-off-by: Alexey Neyman <stilor@att.net>
2016-01-13linux: allow `arm*` to build headers for no-mmuBryan Hundven1-0/+1
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-12-08scripts: Update usage of CT_GetCustomBryan Hundven1-5/+2
This commit updates the build scripts to match the new usage of CT_GetCustom from the previous change. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-12-08Linux: Remove obsolete Linux custom headersBryan Hundven1-47/+3
This option allowed you to use a custom headers directory/tarball to use in your sysroot. Not to be confused with using a custom source, that option is the preferred method. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2015-11-17consistency: Use exported variables of required toolsBryan Hundven1-2/+2
We check for apps: * make * sed * grep * awk * libtool/libtoolize * install * patch * and more ...during configure. Our scripts should be consistent about using the variables that define where the found tool was found. Of course, we do hard-link these tools in buildtools, but that should be a backup for the components we are building. Our scripts should always use the tools we find. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-10blackfin: Remove blackfin supportBryan Hundven1-3/+2
This commit removes blackfin support. I'm open to re-adding blackfin after crosstool-1.23.0 is released, but it is currently too difficult to port forward to newer versions of gcc and uclibc. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-03linux: Set CROSS_COMPILE while building/checking headersBryan Hundven1-0/+2
Some architectures, like arc and blackfin set CROSS_COMPILE to a default if it is not set on the command-line. Since we are building the cross-compiler, we need to ALWAYS set CROSS_COMPILE, since building/checking headers is done after the GCC PASS1 step. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-04-27kernel: Update kernel versionsBryan Hundven1-4/+5
This commit adds support for 4.x and updates longterm versions. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-08scripts: Update download locationsBryan Hundven1-1/+1
This change updates the download locations to default to the official download site. For gcc and gdb, also separate out the linaro download locations so that if you are downloading the linaro variant, it skips trying to download from the official gcc mirror. This commit closes #3 Signed-off-by: Bryan Hundven <bryanhundven@gmail.com> Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-01-01kernel/linux: fix fall-out due to arm64 special caseYann E. MORIN"1-3/+3
Cset 3b61be3d7aa6 (prepare for arch whose kenel name is not the standard name) failed to name a variable consistently, so all archs but arm64 were broken. Fix that by renaming the variable in a consistent way. Reported-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2013-12-30arch/arm: add support for AArch64Yann E. MORIN"1-0/+4
AArch64 id the 64-bit variant for ARM. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Zhenqiang Chen <zhenqiang.chen@linaro.org> Cc: Michael Hope <michael.hope@linaro.org>
2013-12-30kernel/linux: prepare for arch whose kenel name is not the standard nameYann E. MORIN"1-2/+5
For some architectures, the kernel architecture name is not the common name of the architecture for other tools. For example: ARM 64-bit is commonly referenced as aarch64, but the kernel calls it arm64. Signed-off-by: Michael Hope <michael.hope@linaro.org> Signed-off-by: Zhenqiang Chen <zhenqiang.chen@linaro.org> [yann.morin.1998@free.fr: split out of the aarch64 patch] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2013-03-21kernel/linux: add xz-ed linux tarballsJerzy Grzegorek"1-0/+1
Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net> Message-Id: <f249828223fc75313bee.1363860871@NX5000> Patchwork-Id: 229618
2012-11-14libc/mingw: replace mingw32 with generic mingwYann Diorcet2-27/+22
Replace the 32-bit-only mingw32 with mingw-w64 that is capable of building toolchains for both 32-bit and 64-bit Windows. kernel/mingw: replace mingw32 with generic Windows kernel/windows: New windows kernel supporting 32 and 64 bit arch libc/mingw: Remove old options patches: Remove old mingw libc options' patches Signed-off-by: "Yann Diorcet" <diorcet.yann@gmail.com> [yann.morin.1998@free.fr: array var in libc/mingw.sh, typos] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Message-Id: <b045ac08fc9eac2e5ee3.1352898499@blackmint> Patchwork-Id: 198901
2012-10-17kernel/linux: fix missing 'then'Yann E. MORIN"1-1/+1
Reported-by: David Holsgrove <david.holsgrove@xilinx.com> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-10-16kernel/linux: fix using custom locationYann E. MORIN"1-4/+16
Currently, extract and patch are skipped as thus: - using a custom directory of pre-installed headers - a correctly named directory already exists Otherwise, extract and patch are done. The current second condition is wrong, because it allows the following sequence to happen: - a non-custom kernel is used - a previous build only partially extracted the non-custom sources - that p[revious build broke during extraction (eg. incomplete tarball...) - a subsequent build will find a properly named directory, and will thus skip extract and patch, which is wrong Fix that by following the conditions in this table: Type | Extract | Patch ----------------------+---------+------- Pre-installed headers | N | N custom directory | N | N custom tarball | Y | N mainstream tarball | Y | Y Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: David Holsgrove <david.holsgrove@xilinx.com>
2012-10-11kernel/linux: use generic custom infrastructureDavid Holsgrove1-20/+5
Config options remain the same as before, just generalised to be used by other components also. Signed-off-by: "David Holsgrove" <david.holsgrove@xilinx.com> [yann.morin.1998@free.fr: fix indentation, fix comment] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Message-Id: <50674fe47431174aab80.1349931193@localhost.localdomain> PatchWork-Id: 190786
2012-09-26kernel/linux: change m68k/no-mmu linux arch tuple to use -uclinuxEsben Haabendal1-6/+8
GCC requires m68k arch tuples to be *-*-uclinux-* to support Linux on no-mmu m68k (ColdFire) cpus. Blackfin arch tuple must be *-*-linux-uclibc for FD_PIC_ELF toolchains, so we cannot just switch to uclinux for no-mmu Linux toolchains. Signed-off-by: "Esben Haabendal" <esben@haabendal.dk> Message-Id: <876271s1ee.fsf@arh128.prevas.dk> PatchWork-Id: 186976
2012-09-23kernel/linux: symlink custom kernel source dir with '-f'Jang, Bongseo1-1/+1
build fails to symlink to custom kernel dir when the build is not the first time because of 'ln -s' without '-f' option. Signed-off-by: "Jang, Bongseo" <graycells@gmail.com> Message-ID: <543e2981f2b723ecd850.1348370892@localhost.localdomain> PatchWork-ID: 186178
2011-12-12kernel/linux: fix missing quoteBenoît Thébaudeau"1-1/+1
Signed-off-by: "Benoît Thébaudeau" <benoit.thebaudeau@advansee.com>
2011-12-11kernel/linux: add alternate download locationsYann E. MORIN"1-4/+4
Some longterm versions are not in the usual directory. Account for these new locations. Get rid of the mirror location, now that the main kernel site is (almost) back to normal operations. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-09-26kernel/linux: prepare for 3.1 and aboveYann E. MORIN"1-9/+11
The real upstream location is not in the '3.0' directory, but in the '3.x' directory. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-09-22kernel/linux: use a custom kernel source directoryYann E. MORIN"1-12/+20
Allows using either a tarball or a directory as the custom kernel source location. Signed-off-by: Vincent BENOIT <sinseman44@gmail.com> [yann.morin.1998@anciens.enib.fr: fix space damage, detailed commit message] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-09-21kernel/linux: add alternate download locationsYann E. MORIN"1-1/+5
Since kernel.org is dead, and there is no announced or known estimated time or return to normality, it is impossible to download any kernel at this time. Add a known-working mirror. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-16kernel/linux: fix using custom tarballYann E. MORIN"1-1/+1
The custom-tarball symlink was created in CT_SRC_DIR, when it should be created in CT_TARBALLS_DIR. Reported-by: Guylhem Aznar <crossgcc@guylhem.net> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-14kernel/linux: remove check for lzma tarballsYann E. MORIN"1-1/+0
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-14kernel/linux: simplify custom tarball handlingYann E. MORIN"1-43/+27
Simplify the way the custom tarball is handled: - fake version="custom" - at download, simply link the custom tarball to: "linux-custom.${custom_extension}" - at extract, the above allows to simply extract "linux-${LINUX_VERSION}" where LINUX_VERISON is set to the fake version="custom" Not that much convoluted, in fact... :-/ Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-07-31libc/mingw: fix mingw source dirsYann E. MORIN"1-1/+1
Someof the mingw32 source tarballs have an appended '-src' after the version. Since changeset #6e1412ba8da9 (scripts/functions: force extract folder to archive basename), it means mingw tarballs get extracted in a directory ending with '-src'. Fix that. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-07-22kernel/linux: prepare to handle 3.xYann E. MORIN"1-6/+12
The place to get 3.x has changed; the version scheme has changed. No need to be overkill, just support 3.x; 4.x is not even dreamt of. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-14kernel/linux: simplify the download URLYann E. MORIN"1-2/+3
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-14kernel/linux: longterm kernel location changedYann E. MORIN"1-1/+11
The location of the longterm Linux kernels on FTP has changed. Here is a simple (but not very versatile) fix. Signed-off-by: "Björn A. Herwig" <herwig@gdsys.de> [yann.morin.1998@anciens.enib.fr: make it generic/versatile] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-12-22kernel/linux: Cleanup unneeded files from 'headers_check' and 'headers_install'Yann E. MORIN"1-1/+9
headers_install makes .install and ..install.cmd files. headers_check makes .check and ..check.cmd files. Remove these files uncoditionaly after installing (and checking) header files into the sys-root. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com> [Yann E. MORIN: reformat the patch, move hunk out of headers_check conditional] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-14kernel/mingw32: use pre-set headers dirEsben Haabendal1-3/+3
There is a variable that contains the headers directory, so there's no need to re-compute it again. [Yann E. MORIN: split the original patch]
2010-07-11kernel: add mingwYann E. MORIN"1-0/+27
Add the option to build a cross-compiler for kernel type 'mingw'. The resulting cross-compiler can be used to build applications on a Linux host that can be run on a Windows target. Compiler is build using the mingwrt and w32-api packages aviable from the MinGW project (http://sourceforge.net/projects/mingw). The windows headers (w32-api package) are extracting with the kernel_headers step The libraries and other headers from both packages are build and installed in the various steps of libc Signed-off-by: Bart vdr Meulen <bartvdrmeulen@gmail.com> [yann.morin.1998@anciens.enib.fr: fix kernel headers comment, don't "return 0"] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-06-17kernel/linux: allow headers from full custom source treeYann E. MORIN"1-8/+49
Accept a local tarball name as the source of the Linux kernel headers, rather than forcing the user to use either an upstream tarball, or a local pre-installed headers tree.
2010-06-15kernel/linux: reorder upstream/custom-tree handlingYann E. MORIN"1-7/+5
2010-04-07Add basic support for the Blackfin architectureThomas Petazzoni1-1/+6
For uClibc, the name of the Blackfin architecture is 'bfin'. Actually, the naming of the architecture is quite messy: for toolchain tuples and uClibc, it's bfin, but for the kernel, it's blackfin. We've arbitraly choosen to name it "blackfin" in Crosstool-NG. Add Blackfin-related uClibc patch to fix a build failure related to fork() being used in unistd/daemon.c. Yann E. MORIN: Apply the patch to the kernel/linux build script to use 'linux' in the noMMU tuples. See: http://sourceware.org/ml/crossgcc/2010-04/msg00010.html
2010-04-11scripts/functions: make CT_Patch dumberYann E. MORIN"1-1/+1
It is the responsibility of the caller to split the package name from its version. It already knows that.
2010-01-29kernel/linux: remove legacy checkYann E. MORIN"1-5/+0
Now, we only support building with Linux >=2.6.27. Get rid of the code that depended on <2.6.18.
2010-01-23kernel/linux: use CT_ARCH, in place of CT_KERNEL_ARCHYann E. MORIN"1-2/+2
Since we merged the 32/64-bit archs, and we explicitly used the Linux kernel arch name, we can get rid of CT_KERNEL_ARCH.
2009-05-20Merge the uClinux/noMMU stuff back to /trunk:Yann E. MORIN"3-101/+102
- merge Linux and uClinux back to a single kernel - add ARCH_USE_MMU and acquainted config options that architectures can auto-select - make binutils and elf2flt two "Binary utilities" that go in a single common sub-{menu,directory} structure -------- diffstat follows -------- /trunk/scripts/build/kernel/uclinux.sh | 2 0 2 0 - /trunk/scripts/build/kernel/linux.sh | 206 204 2 0 +++++++++++++++++++++++++++++ /trunk/scripts/build/kernel/linux-common.sh | 198 0 198 0 ---------------------------- /trunk/scripts/build/binutils.sh | 232 0 232 0 -------------------------------- /trunk/scripts/build/elf2flt.sh | 150 0 150 0 --------------------- /trunk/scripts/crosstool-NG.sh.in | 6 4 2 0 + /trunk/config/kernel/linux.in | 249 249 0 0 +++++++++++++++++++++++++++++++++++ /trunk/config/kernel/linux.in-common | 252 0 252 0 ----------------------------------- /trunk/config/kernel/uclinux.in | 21 0 21 0 --- /trunk/config/target.in | 23 22 1 0 +++ /trunk/config/elf2flt.in | 49 0 49 0 ------- /trunk/config/libc/glibc.in | 2 1 1 0 /trunk/config/libc/eglibc.in | 2 1 1 0 /trunk/config/config.in | 1 0 1 0 - /trunk/config/arch/sh.in | 1 1 0 0 + /trunk/config/arch/arm.in | 2 1 1 0 /trunk/config/arch/powerpc.in | 1 1 0 0 + /trunk/config/arch/ia64.in | 1 1 0 0 + /trunk/config/arch/alpha.in | 1 1 0 0 + /trunk/config/arch/x86.in | 1 1 0 0 + /trunk/config/arch/mips.in | 1 1 0 0 + /trunk/config/arch/powerpc64.in | 1 1 0 0 + 22 files changed, 489 insertions(+), 913 deletions(-)
2009-05-13Merge the /deve/uclinux branch back to /trunk:Yann E. MORIN"3-99/+101
- add support for uClinux, the MMU-less ports of Linux. -------- diffstat follows -------- /trunk/scripts/build/kernel/linux.sh | 100 1 99 0 --------------- /trunk/steps.mk | 1 1 0 0 + /trunk/config/kernel/linux.in | 247 0 247 0 ------------------------------------- /trunk/config/kernel.in | 2 1 1 0 /trunk/config/libc/glibc.in | 2 1 1 0 /trunk/config/libc/eglibc.in | 2 1 1 0 /trunk/config/libc/glibc-eglibc.in-common | 5 5 0 0 + /trunk/config/config.in | 1 1 0 0 + 8 files changed, 11 insertions(+), 349 deletions(-)
2009-04-20There's no longer any reason to require GNU awk:Yann E. MORIN"1-1/+1
- the only part that required it (socks proxy settings) is gone, - all remaining awk scripts are POSIXly correct (or should be). -------- diffstat follows -------- /trunk/configure | 5 2 3 0 ++--- /trunk/Makefile.in | 2 0 2 0 -- /trunk/scripts/build/kernel/linux.sh | 2 1 1 0 +- /trunk/scripts/build/internals.sh | 1 0 1 0 - /trunk/scripts/build/mpfr.sh | 2 1 1 0 +- /trunk/scripts/functions | 4 2 2 0 ++-- /trunk/scripts/saveSample.sh.in | 4 2 2 0 ++-- 7 files changed, 8 insertions(+), 12 deletions(-)
2009-04-06Use "${awk}", not gawk.Yann E. MORIN"1-1/+1
/trunk/scripts/build/kernel/linux.sh | 2 1 1 0 +- /trunk/scripts/build/mpfr.sh | 2 1 1 0 +- /trunk/scripts/functions | 4 2 2 0 ++-- 3 files changed, 4 insertions(+), 4 deletions(-)
2009-03-03Rename the custom header option.Yann E. MORIN"1-6/+6
/trunk/scripts/build/kernel/linux.sh | 12 6 6 0 ++++++------ /trunk/config/kernel/linux.in | 4 2 2 0 ++-- 2 files changed, 8 insertions(+), 8 deletions(-)
2009-03-03When using custom Linux kernel headers, allow using a tarball.Yann E. MORIN"1-3/+16
/trunk/scripts/build/kernel/linux.sh | 19 16 3 0 ++++++++++++++++--- /trunk/config/kernel/linux.in | 35 26 9 0 ++++++++++++++++++++++++++--------- 2 files changed, 42 insertions(+), 12 deletions(-)
2009-01-05Split CT_ExtractAndPatch in two: CT_Extract and CT_Patch:Yann E. MORIN"1-1/+2
- it is unworkable to have CT_ExtactAndPAtch cope with all those silly glibc addons: - they can have 'short' (as 'ports') or 'long' (as glibc-ports-2.7) names - patches are against eithe the short or long name, but non-uniformly use one or the other - it is the reposibility of the component (glibc in this case) to handle corner cases such as those - update all components to use the new functions /trunk/scripts/build/tools/000-template.sh | 3 2 1 0 +- /trunk/scripts/build/tools/100-libelf.sh | 3 2 1 0 +- /trunk/scripts/build/tools/200-sstrip.sh | 3 2 1 0 +- /trunk/scripts/build/kernel/linux.sh | 3 2 1 0 +- /trunk/scripts/build/binutils.sh | 3 2 1 0 +- /trunk/scripts/build/cc/gcc.sh | 3 2 1 0 +- /trunk/scripts/build/debug/000-template.sh | 3 2 1 0 +- /trunk/scripts/build/debug/100-dmalloc.sh | 3 2 1 0 +- /trunk/scripts/build/debug/400-ltrace.sh | 3 2 1 0 +- /trunk/scripts/build/debug/300-gdb.sh | 9 6 3 0 +++-- /trunk/scripts/build/debug/500-strace.sh | 7 3 4 0 ++-- /trunk/scripts/build/debug/200-duma.sh | 19 8 11 0 ++++------ /trunk/scripts/build/libc/glibc.sh | 14 12 2 0 ++++++- /trunk/scripts/build/libc/uClibc.sh | 13 9 4 0 +++++-- /trunk/scripts/build/libc/eglibc.sh | 14 12 2 0 ++++++- /trunk/scripts/build/gmp.sh | 3 2 1 0 +- /trunk/scripts/build/mpfr.sh | 3 2 1 0 +- /trunk/scripts/functions | 68 36 32 0 +++++++++++++++++++----------------- 18 files changed, 108 insertions(+), 69 deletions(-)
2009-01-04A small layout enhancement in the Linux kernel build script.Yann E. MORIN"1-1/+2
/trunk/scripts/build/kernel/linux.sh | 3 2 1 0 ++- 1 file changed, 2 insertions(+), 1 deletion(-)