summaryrefslogtreecommitdiffstats
path: root/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* gcc-9: silence 'address-of-packed-member' warningSascha Hauer2019-09-121-0/+2
| | | | | | | | As done in the Linux Kernel. Most of the packed structures we have are optimized to not generate any unaligned accesses, so this warning produces a lot of false positives which are hard to fix in the code. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/fsanitize'Sascha Hauer2019-09-121-0/+4
|\
| * common: add generic CONFIG_UBSAN plumbingAhmad Fatoum2019-09-091-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | -fsanitize=undefined allows compile-time instrumentation of code to detect some classes of runtime undefined behavior. In preparation for allowing arches to provide infrastructure in support of this feature, add some generic UBSAN options and associated plumbing. These are only shown in the debug menu when the arch selects the appropriate symbol. The option is named equally to their Linux counterparts. Signed-off-by: Ahmad Fatoum <ahmad@a3f.at> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | Release v2019.09.0v2019.09.0Sascha Hauer2019-09-091-1/+1
|/ | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Makefile: we are on 2019.08Sascha Hauer2019-08-211-1/+1
| | | | | | | I forgot to increase the version in the Makefile for the last release. Increase the version now. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* kbuild: use -fmacro-prefix-map to make __FILE__ a relative pathMasahiro Yamada2019-08-121-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Linux commit a73619a845d5625079cc1b3b820f44c899618388 The __FILE__ macro is used everywhere in the kernel to locate the file printing the log message, such as WARN_ON(), etc. If the kernel is built out of tree, this can be a long absolute path, like this: WARNING: CPU: 1 PID: 1 at /path/to/build/directory/arch/arm64/kernel/foo.c:... This is because Kbuild runs in the objtree instead of the srctree, then __FILE__ is expanded to a file path prefixed with $(srctree)/. Commit 9da0763bdd82 ("kbuild: Use relative path when building in a subdir of the source tree") improved this to some extent; $(srctree) becomes ".." if the objtree is a child of the srctree. For other cases of out-of-tree build, __FILE__ is still the absolute path. It also means the kernel image depends on where it was built. A brand-new option from GCC, -fmacro-prefix-map, solves this problem. If your compiler supports it, __FILE__ is the relative path from the srctree regardless of O= option. This provides more readable log and more reproducible builds. Please note __FILE__ is always an absolute path for external modules. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/Kconfig'Sascha Hauer2019-07-121-17/+24
|\
| * kconfig: update to Linux 5.2-rc4Masahiro Yamada2019-06-191-17/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous sync was Linux 4.20. This updates Kconfig to Linux 5.2-rc4. I adjusted the top Makefile as well because Linux commit 058507195b53 ("kbuild: move ".config not found!" message from Kconfig to Makefile") moved the .config check from Kconfig to Makefile. I also made auto.conf a mandatory include file, and remove it from the prerequisites of other targets. We are safe because Make is immediately terminated when syncconfig fails to generate auto.conf. Highlights: - The parser has no more shift/reduce conflicts - The lexer was rewritten more simply - The token lookup table was deleted - Replace license boilerplates with SPDX - Compile C files as separate units - Do not overwrite .config when the content was not changed - Lots of bug-fixes and cleanups Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | Release v2019.07.0v2019.07.0Sascha Hauer2019-07-111-1/+1
|/ | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/misc'Sascha Hauer2019-06-111-6/+3
|\
| * remove CONFIG_DEBUG_INFOOleksij Rempel2019-06-071-3/+1
| | | | | | | | | | | | | | | | The ELF file should have debug symbols, the binary should have no symbols any way. Signed-off-by: Oleksij Rempel <linux@rempel-privat.de> Signed-off-by: Rouven Czerwinski <r.czerwinski@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * kbuild: remove unneeded patterns from distcleanMasahiro Yamada2019-05-281-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Drop the following patterns based on Linux. [1] -size 0 Linux commit f4b129f519f1bbd191dca2bf17d1137edf941fd1 [2] '.*.cmd' Linux commit a03fcb50e816a69acffb13b5e56db75063aeba8a [3] (second) '.*.orig' '.*.rej' Linux commit f78271dfb77353c4d045f9735deebe21839fb2ed Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | Merge branch 'for-next/macos'Sascha Hauer2019-06-111-3/+3
|\ \
| * | kbuild: suppress warnings from 'getconf LFS_*'Masahiro Yamada2019-05-281-3/+3
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Suppress warnings for systems that do not recognize LFS_*. getconf: no such configuration parameter `LFS_CFLAGS' getconf: no such configuration parameter `LFS_LDFLAGS' getconf: no such configuration parameter `LFS_LIBS' Fixes: d7f14c66c273 ("kbuild: Enable Large File Support for hostprogs") Reported-by: Chen Feng <puck.chen@hisilicon.com> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* / Release v2019.06.0v2019.06.0Sascha Hauer2019-06-111-1/+1
|/ | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2019.05.0v2019.05.0Sascha Hauer2019-05-101-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2019.04.0v2019.04.0Sascha Hauer2019-04-051-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2019.03.0v2019.03.0Sascha Hauer2019-03-071-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/kbuild'Sascha Hauer2019-02-131-36/+29
|\
| * kbuild: cherry-pick changes from Linux v5.0-rc3Masahiro Yamada2019-01-221-36/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Not synced completely. Just cherry-picking low-hanging fruits. 0b35786d77ba kbuild: call make once for all targets when O=.. is used 5e54d5e5fbc1 kbuild: kill EXTRA_ARFLAGS 836caba77c29 kbuild: kill backward compatibility checks 3156fd0529b5 kbuild: fix some minor typoes b8b0618cf6fa kbuild: remove extra ifdef/endif of top Makefile 16f890988114 kbuild: Remove reference to uninitialised variable 9319f4539c18 kbuild: support simultaneous "make %config" and "make all" 9d5db8949f1e scripts/Makefile.clean: clean also $(extra-m) and $(extra-) a4954fd7724c kbuild: remove obj-n and lib-n handling 371fdc77af44 kbuild: collect shorthands into scripts/Kbuild.include a29b82326ed4 kbuild: Remove duplicate $(cmd) definition in Makefile.clean a1e7b7bb1ab5 Makefile: sort list of defconfig targets in make help output 34948e0bbf98 kbuild: Drop support for clean-rule 4218affdf57f kbuild: remove warning about "make depend" 9c8fa9bc08f6 kbuild: fix if_change and friends to consider argument order 39a33ff80a25 kbuild: remove cc-option-align a7f924190924 kbuild: add %.dtb.S and %.dtb to 'targets' automatically 54a702f70589 kbuild: mark $(targets) as .SECONDARY and remove .PRECIOUS markers 9564a8cf422d Kbuild: fix # escaping in .cmd files for future Make bd412d81b7ea kbuild: .PHONY is not a variable, but PHONY is 6916162c7308 kbuild: remove duplicated comments about PHONY d6c6ab93e17f kbuild: remove deprecated host-progs variable 7d0ea2524202 kbuild: use 'else ifeq' for checksrc to improve readability 3f80babd9ca4 kbuild: remove unused cc-fullversion variable bd352a739fde kbuild: remove unused baseprereq b421b8a6cb87 kbuild: remove unused archmrproper Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | Release v2019.02.0v2019.02.0Sascha Hauer2019-02-131-1/+1
|/ | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/kconfig'Sascha Hauer2019-01-151-10/+11
|\
| * kconfig: sync to Linux 4.20Masahiro Yamada2019-01-031-10/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous sync was commit 18895514dc5e ("kconfig: update to v3.18-rc6"). Some commits were applied on top of that since then, but equivalent fixups were done in Linux. So, this commit overwrites everything scripts/kconfig/ with the one from Linux 4.20 Highlights: - 'silentoldconfig' has been renamed to 'syncconfig' (the top Makefile needs to be adjusted) - 'testconfig' target has been added for unit-tests (the top Makefile needs to export PYTHON3 because the test frame relies on Python3 and pytest) - The perfect hash table generated by gperf has been removed - The localization support has been removed - The 'option env=VAR' has been replaced with more generic variable reference syntax $(VAR) (./Kconfig and common/Kconfig need to be adjusted) Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * kbuild: generate lexer and parser during build instead of shippingMasahiro Yamada2019-01-031-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Recent kernel versions run flex and bison to generate lexers and parsers from real source files such as *.l and *.y . This provides better maintainability than version-controlling pre-generated C files with a "_shipped" suffix. This commit imports flex and bison rules from Linux, and deletes pre-generated parsers and lexers. Refer to the following commits in Linux: - 033dba2ec06c ("kbuild: prepare to remove C files pre-generated by flex and bison") - 29c833061c1d ("kconfig: generate lexer and parser during build instead of shipping") - e039139be8c2 ("scripts/dtc: generate lexer and parser during build instead of shipping") Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * kbuild: clean up *.lex.c and *.tab.[ch] patterns from top-level MakefileMasahiro Yamada2019-01-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Linux commit 9a8dfb394c046742b2ac7444ba42272e11e9989d Files suffixed by .lex.c, .tab.[ch] are generated lexers, parsers, respectively. Clean them up globally from the top Makefile. Some of the final host programs those lexer/parser are linked into are necessary for building external modules, but the intermediates are unneeded. They can be cleaned away by 'make clean' instead of 'make mrproper'. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | Release v2019.01.0v2019.01.0Sascha Hauer2019-01-141-2/+2
|/ | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/missing-prototypes'Sascha Hauer2018-12-071-1/+1
|\
| * Make: Add -Wmissing-prototypesSascha Hauer2018-11-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | -Wmissing-prototypes is a useful warning, so add it to the build. With this we can detect conflicting function prototypes. When a file implements a function but doesn't include the header file which provides the prototype for it then conflicting prototypes would go unnoticed without this warning. MIPS already had that warning, so we can remove it from the MIPS Makefile. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | Release v2018.12.0v2018.12.0Sascha Hauer2018-12-071-1/+1
|/ | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/misc'Sascha Hauer2018-11-091-1/+1
|\
| * Display barebox instead of kernel in build messageClément Leger2018-11-021-1/+1
| | | | | | | | | | | | | | | | Build script are coming from the kernel and as such, refers to the sources as "kernel". For the sake of correctness, display "barebox" instead. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | Release v2018.11.0v2018.11.0Sascha Hauer2018-11-091-1/+1
|/ | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2018.10.0v2018.10.0Sascha Hauer2018-10-081-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2018.09.0v2018.09.0Sascha Hauer2018-09-111-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2018.08.0v2018.08.0Sascha Hauer2018-08-131-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2018.07.0v2018.07.0Sascha Hauer2018-07-091-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/misc'Sascha Hauer2018-06-111-1/+1
|\
| * Add builtin firmware supportSascha Hauer2018-06-081-1/+1
| | | | | | | | | | | | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> [andrew.smirnov@gmail.com: Add dummy.o in case directory is empty] Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | Release v2018.06.0v2018.06.0Sascha Hauer2018-06-081-1/+1
|/ | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2018.05.0v2018.05.0Sascha Hauer2018-05-091-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2018.04.0v2018.04.0Sascha Hauer2018-04-061-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2018.03.0v2018.03.0Sascha Hauer2018-03-051-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2018.02.0v2018.02.0Sascha Hauer2018-02-061-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2018.01.0v2018.01.0Sascha Hauer2018-01-221-2/+2
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2017.12.0v2017.12.0Sascha Hauer2017-12-141-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2017.11.0v2017.11.0Sascha Hauer2017-11-131-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2017.10.0v2017.10.0Sascha Hauer2017-10-061-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2017.09.0v2017.09.0Sascha Hauer2017-09-081-1/+1
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Release v2017.08.0v2017.08.0Lucas Stach2017-07-311-1/+1
| | | | Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
* Merge branch 'for-next/misc'Sascha Hauer2017-06-301-3/+9
|\