summaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)AuthorFilesLines
2019-12-21kbuild: fix single target build for external moduleMasahiro Yamada1-8/+3
[ Upstream commit e07db28eea38ed4e332b3a89f3995c86b713cb5b ] Building a single target in an external module fails due to missing .tmp_versions directory. For example, $ make -C /lib/modules/$(uname -r)/build M=$PWD foo.o will fail in the following way: CC [M] /home/masahiro/foo/foo.o /bin/sh: 1: cannot create /home/masahiro/foo/.tmp_versions/foo.mod: Directory nonexistent This is because $(cmd_crmodverdir) is executed only before building /, %/, %.ko single targets of external modules. Create .tmp_versions in the 'prepare' target. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-12-05Linux 4.4.206v4.4.206Greg Kroah-Hartman1-1/+1
2019-11-29Linux 4.4.205v4.4.205Greg Kroah-Hartman1-1/+1
2019-11-28Linux 4.4.204v4.4.204Greg Kroah-Hartman1-1/+1
2019-11-25Linux 4.4.203v4.4.203Greg Kroah-Hartman1-1/+1
2019-11-16Linux 4.4.202v4.4.202Greg Kroah-Hartman1-1/+1
2019-11-12Linux 4.4.201v4.4.201Greg Kroah-Hartman1-1/+1
2019-11-10Linux 4.4.200v4.4.200Greg Kroah-Hartman1-1/+1
2019-11-10kbuild: add -fcf-protection=none when using retpoline flagsSeth Forshee1-0/+6
[ Upstream commit 29be86d7f9cb18df4123f309ac7857570513e8bc ] The gcc -fcf-protection=branch option is not compatible with -mindirect-branch=thunk-extern. The latter is used when CONFIG_RETPOLINE is selected, and this will fail to build with a gcc which has -fcf-protection=branch enabled by default. Adding -fcf-protection=none when building with retpoline enabled prevents such build failures. Signed-off-by: Seth Forshee <seth.forshee@canonical.com> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-11-06Linux 4.4.199v4.4.199Greg Kroah-Hartman1-1/+1
2019-10-29Linux 4.4.198v4.4.198Greg Kroah-Hartman1-1/+1
2019-10-17Linux 4.4.197v4.4.197Greg Kroah-Hartman1-1/+1
2019-10-07Linux 4.4.196v4.4.196Greg Kroah-Hartman1-1/+1
2019-10-05Linux 4.4.195v4.4.195Greg Kroah-Hartman1-1/+1
2019-09-21Linux 4.4.194v4.4.194Greg Kroah-Hartman1-1/+1
2019-09-16Linux 4.4.193v4.4.193Greg Kroah-Hartman1-1/+1
2019-09-10Linux 4.4.192v4.4.192Greg Kroah-Hartman1-1/+1
2019-09-06Linux 4.4.191v4.4.191Greg Kroah-Hartman1-1/+1
2019-08-25Linux 4.4.190v4.4.190Greg Kroah-Hartman1-1/+1
2019-08-11Linux 4.4.189v4.4.189Greg Kroah-Hartman1-1/+1
2019-08-06Linux 4.4.188v4.4.188Greg Kroah-Hartman1-1/+1
2019-08-04Linux 4.4.187v4.4.187Greg Kroah-Hartman1-1/+1
2019-07-21Linux 4.4.186v4.4.186Greg Kroah-Hartman1-1/+1
2019-07-10Linux 4.4.185v4.4.185Greg Kroah-Hartman1-1/+1
2019-07-10gcc-9: silence 'address-of-packed-member' warningLinus Torvalds1-1/+1
commit 6f303d60534c46aa1a239f29c321f95c83dda748 upstream. We already did this for clang, but now gcc has that warning too. Yes, yes, the address may be unaligned. And that's kind of the point. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-06-27Linux 4.4.184v4.4.184Greg Kroah-Hartman1-1/+1
2019-06-22Linux 4.4.183v4.4.183Greg Kroah-Hartman1-1/+1
2019-06-17Linux 4.4.182v4.4.182Greg Kroah-Hartman1-1/+1
2019-06-11Linux 4.4.181v4.4.181Greg Kroah-Hartman1-1/+1
2019-05-16Linux 4.4.180v4.4.180Greg Kroah-Hartman1-1/+1
2019-04-27Linux 4.4.179v4.4.179Greg Kroah-Hartman1-1/+1
2019-04-27Revert "kbuild: use -Oz instead of -Os when using clang"Matthias Kaehlcke1-1/+1
commit a75bb4eb9e565b9f5115e2e8c07377ce32cbe69a upstream. The clang option -Oz enables *aggressive* optimization for size, which doesn't necessarily result in smaller images, but can have negative impact on performance. Switch back to the less aggressive -Os. This reverts commit 6748cb3c299de1ffbe56733647b01dbcc398c419. Suggested-by: Peter Zijlstra <peterz@infradead.org> Signed-off-by: Matthias Kaehlcke <mka@chromium.org> Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Nathan Chancellor <natechancellor@gmail.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-04-27kbuild: clang: choose GCC_TOOLCHAIN_DIR not on LDNick Desaulniers1-1/+1
commit ad15006cc78459d059af56729c4d9bed7c7fd860 upstream. This causes an issue when trying to build with `make LD=ld.lld` if ld.lld and the rest of your cross tools aren't in the same directory (ex. /usr/local/bin) (as is the case for Android's build system), as the GCC_TOOLCHAIN_DIR then gets set based on `which $(LD)` which will point where LLVM tools are, not GCC/binutils tools are located. Instead, select the GCC_TOOLCHAIN_DIR based on another tool provided by binutils for which LLVM does not provide a substitute for, such as elfedit. Fixes: 785f11aa595b ("kbuild: Add better clang cross build support") Link: https://github.com/ClangBuiltLinux/linux/issues/341 Suggested-by: Nathan Chancellor <natechancellor@gmail.com> Reviewed-by: Nathan Chancellor <natechancellor@gmail.com> Tested-by: Nathan Chancellor <natechancellor@gmail.com> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Nathan Chancellor <natechancellor@gmail.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-04-03Linux 4.4.178v4.4.178Greg Kroah-Hartman1-1/+1
2019-03-23Linux 4.4.177v4.4.177Greg Kroah-Hartman1-1/+1
2019-02-23Linux 4.4.176v4.4.176Greg Kroah-Hartman1-1/+1
2019-02-20Linux 4.4.175v4.4.175Greg Kroah-Hartman1-1/+1
2019-02-08Linux 4.4.174v4.4.174Greg Kroah-Hartman1-1/+1
2019-02-06Linux 4.4.173v4.4.173Greg Kroah-Hartman1-1/+1
2019-01-26Linux 4.4.172v4.4.172Greg Kroah-Hartman1-1/+1
2019-01-17Linux 4.4.171v4.4.171Greg Kroah-Hartman1-1/+1
2019-01-13Linux 4.4.170v4.4.170Greg Kroah-Hartman1-1/+1
2018-12-21Linux 4.4.169v4.4.169Greg Kroah-Hartman1-1/+1
2018-12-17Linux 4.4.168v4.4.168Greg Kroah-Hartman1-1/+1
2018-12-13Linux 4.4.167v4.4.167Greg Kroah-Hartman1-1/+1
2018-12-13disable stringop truncation warnings for nowStephen Rothwell1-0/+3
commit 217c3e0196758662aa0429863b09d1c13da1c5d6 upstream. They are too noisy Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-12-01Linux 4.4.166v4.4.166Greg Kroah-Hartman1-1/+1
2018-11-27Linux 4.4.165v4.4.165Greg Kroah-Hartman1-1/+1
2018-11-27kbuild: Add __cc-option macroMatthias Kaehlcke1-1/+1
commit 9f3f1fd299768782465cb32cdf0dd4528d11f26b upstream. cc-option uses KBUILD_CFLAGS and KBUILD_CPPFLAGS when it determines whether an option is supported or not. This is fine for options used to build the kernel itself, however some components like the x86 boot code use a different set of flags. Add the new macro __cc-option which is a more generic version of cc-option with additional parameters. One parameter is the compiler with which the check should be performed, the other the compiler options to be used instead KBUILD_C*FLAGS. Refactor cc-option and hostcc-option to use __cc-option and move hostcc-option to scripts/Kbuild.include. Suggested-by: Arnd Bergmann <arnd@arndb.de> Suggested-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Matthias Kaehlcke <mka@chromium.org> Acked-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Michal Marek <mmarek@suse.com> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> [nc: Fix conflicts due to lack of CC_OPTION_CFLAGS and hostcc-option wasn't added until v4.8 so no point including it in this tree] Signed-off-by: Nathan Chancellor <natechancellor@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-11-27kbuild: allow to use GCC toolchain not in Clang search pathStefan Agner1-3/+5
commit ef8c4ed9db80261f397f0c0bf723684601ae3b52 upstream. When using a GCC cross toolchain which is not in a compiled in Clang search path, Clang reverts to the system assembler and linker. This leads to assembler or linker errors, depending on which tool is first used for a given architecture. It seems that Clang is not searching $PATH for a matching assembler or linker. Make sure that Clang picks up the correct assembler or linker by passing the cross compilers bin directory as search path. This allows to use Clang provided by distributions with GCC toolchains not in /usr/bin. Link: https://github.com/ClangBuiltLinux/linux/issues/78 Signed-off-by: Stefan Agner <stefan@agner.ch> Reviewed-and-tested-by: Nick Desaulniers <ndesaulniers@google.com> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> [nc: Adjust context] Signed-off-by: Nathan Chancellor <natechancellor@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>