04 Apr, 2018

1 commit

  • Pull Kconfig updates from Masahiro Yamada:

    - improve checkpatch for more precise Kconfig code checking

    - clarify effective selects by grouping reverse dependencies in help

    - do not write out '# CONFIG_FOO is not set' from invisible symbols

    - make oldconfig as silent as it should be

    - rename 'silentoldconfig' to 'syncconfig'

    - add unit-test framework and several test cases

    - warn unmet dependency of tristate symbols

    - make unmet dependency warnings readable, removing false positives

    - improve recursive include detection

    - use yylineno to simplify the line number tracking

    - misc cleanups

    * tag 'kconfig-v4.17' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (30 commits)
    kconfig: use yylineno option instead of manual lineno increments
    kconfig: detect recursive inclusion earlier
    kconfig: remove duplicated file name and lineno of recursive inclusion
    kconfig: do not include both curses.h and ncurses.h for nconfig
    kconfig: make unmet dependency warnings readable
    kconfig: warn unmet direct dependency of tristate symbols selected by y
    kconfig: tests: test if recursive inclusion is detected
    kconfig: tests: test if recursive dependencies are detected
    kconfig: tests: test randconfig for choice in choice
    kconfig: tests: test defconfig when two choices interact
    kconfig: tests: check visibility of tristate choice values in y choice
    kconfig: tests: check unneeded "is not set" with unmet dependency
    kconfig: tests: test if new symbols in choice are asked
    kconfig: tests: test automatic submenu creation
    kconfig: tests: add basic choice tests
    kconfig: tests: add framework for Kconfig unit testing
    kbuild: add PYTHON2 and PYTHON3 variables
    kconfig: remove redundant streamline_config.pl prerequisite
    kconfig: rename silentoldconfig to syncconfig
    kconfig: invoke oldconfig instead of silentoldconfig from local*config
    ...

    Linus Torvalds
     

26 Mar, 2018

5 commits

  • As commit cedd55d49dee ("kconfig: Remove silentoldconfig from help
    and docs; fix kconfig/conf's help") mentioned, 'silentoldconfig' is a
    historical misnomer. That commit removed it from help and docs since
    it is an internal interface. If so, it should be allowed to rename
    it to something more intuitive. 'syncconfig' is the one I came up
    with because it updates the .config if necessary, then synchronize
    include/generated/autoconf.h and include/config/* with it.

    You should not manually invoke 'silentoldcofig'. Display warning if
    used in case existing scripts are doing wrong.

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Ulf Magnusson

    Masahiro Yamada
     
  • Documentation/kbuild/makefiles.txt lists variables used in Makefile
    whereas Documentation/kbuild/kbuild.txt describes user assignable
    parameters given via environments or the command line.

    The top Makefile and arch/*/Makefile accumulate proper linker flags to
    LDFLAGS_vmlinux. So, users can not override it from the command line.
    Generally, per-file options are not supposed to be user-assignable.
    Remove the misleading entry from kbuild.txt.

    If we need a way to append user-specific flags for linking the kernel,
    LDFLAGS_KERNEL would be a consistent choice because we already expose
    LDFLAGS_MODULE counter-part to users.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • Documentation/kbuild/makefiles.txt lists variables used in Makefile
    whereas Documentation/kbuild/kbuild.txt describes user assignable
    parameters given via environments or the command line.

    LDFLAGS_MODULE is a command line interface, so it should be dropped
    from makefiles.txt.

    Some lines below in this file, it is clearly explained that
    KBUILD_LDFLAGS_MODULE is the right one for the internal use:

    KBUILD_LDFLAGS_MODULE Options for $(LD) when linking modules

    $(KBUILD_LDFLAGS_MODULE) is used to add arch-specific options
    used when linking modules. This is often a linker script.
    From commandline LDFLAGS_MODULE shall be used (see kbuild.txt).

    Then, kbuild.txt explains LDFLAGS_MODULE, like follows:

    LDFLAGS_MODULE
    --------------------------------------------------
    Additional options used for $(LD) when linking modules.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • Incremental linking is gone, so rename built-in.o to built-in.a, which
    is the usual extension for archive files.

    This patch does two things, first is a simple search/replace:

    git grep -l 'built-in\.o' | xargs sed -i 's/built-in\.o/built-in\.a/g'

    The second is to invert nesting of nested text manipulations to avoid
    filtering built-in.a out from libs-y2:

    -libs-y2 := $(filter-out %.a, $(patsubst %/, %/built-in.a, $(libs-y)))
    +libs-y2 := $(patsubst %/, %/built-in.a, $(filter-out %.a, $(libs-y)))

    Signed-off-by: Nicholas Piggin
    Signed-off-by: Masahiro Yamada

    Nicholas Piggin
     
  • This removes the old `ld -r` incremental link option, which has not
    been selected by any architecture since June 2017.

    Signed-off-by: Nicholas Piggin
    Signed-off-by: Masahiro Yamada

    Nicholas Piggin
     

01 Feb, 2018

1 commit

  • Pull documentation updates from Jonathan Corbet:
    "Documentation updates for 4.16.

    New stuff includes refcount_t documentation, errseq documentation,
    kernel-doc support for nested structure definitions, the removal of
    lots of crufty kernel-doc support for unused formats, SPDX tag
    documentation, the beginnings of a manual for subsystem maintainers,
    and lots of fixes and updates.

    As usual, some of the changesets reach outside of Documentation/ to
    effect kerneldoc comment fixes. It also adds the new LICENSES
    directory, of which Thomas promises I do not need to be the
    maintainer"

    * tag 'docs-4.16' of git://git.lwn.net/linux: (65 commits)
    linux-next: docs-rst: Fix typos in kfigure.py
    linux-next: DOC: HWPOISON: Fix path to debugfs in hwpoison.txt
    Documentation: Fix misconversion of #if
    docs: add index entry for networking/msg_zerocopy
    Documentation: security/credentials.rst: explain need to sort group_list
    LICENSES: Add MPL-1.1 license
    LICENSES: Add the GPL 1.0 license
    LICENSES: Add Linux syscall note exception
    LICENSES: Add the MIT license
    LICENSES: Add the BSD-3-clause "Clear" license
    LICENSES: Add the BSD 3-clause "New" or "Revised" License
    LICENSES: Add the BSD 2-clause "Simplified" license
    LICENSES: Add the LGPL-2.1 license
    LICENSES: Add the LGPL 2.0 license
    LICENSES: Add the GPL 2.0 license
    Documentation: Add license-rules.rst to describe how to properly identify file licenses
    scripts: kernel_doc: better handle show warnings logic
    fs/*/Kconfig: drop links to 404-compliant http://acl.bestbits.at
    doc: md: Fix a file name to md-fault.c in fault-injection.txt
    errseq: Add to documentation tree
    ...

    Linus Torvalds
     

06 Jan, 2018

1 commit

  • Since commit 31847b67bec0 ("kconfig: allow use of relations other than
    (in)equality") it is possible to use relational operators in Kconfig
    statements. However, those operators give unexpected results when
    applied to bool/tristate values:

    (n < y) = y (correct)
    (m < y) = y (correct)
    (n < m) = n (wrong)

    This happens because relational operators process bool and tristate
    symbols as strings and m sorts before n. It makes little sense to do a
    lexicographical compare on bool and tristate values though.

    Documentation/kbuild/kconfig-language.txt states that expression can have
    a value of 'n', 'm' or 'y' (or 0, 1, 2 respectively for calculations).
    Let's make it so for relational comparisons with bool/tristate
    expressions as well and document them. If at least one symbol is an
    actual string then the lexicographical compare works just as before.

    Signed-off-by: Nicolas Pitre
    Acked-by: Randy Dunlap
    Tested-by: Randy Dunlap
    Signed-off-by: Masahiro Yamada

    Nicolas Pitre
     

12 Dec, 2017

1 commit

  • Document the preference [1] for new CONFIG options to "default n" (or
    not use default at all) in order to minimizes changes to the config,
    especially to avoid "make oldconfig" growing unnecessarily from release
    to release.

    Document the exceptions where it is acceptable to use "default y/m" for
    new CONFIG options.

    1. https://lkml.org/lkml/2017/11/18/257

    Cc: "Yann E. MORIN"
    Cc: Masahiro Yamada
    Cc: Michal Marek
    Cc: Jonathan Corbet
    Cc: linux-kbuild@vger.kernel.org
    Cc: linux-doc@vger.kernel.org
    Signed-off-by: Darren Hart (VMware)
    Signed-off-by: Jonathan Corbet

    Darren Hart (VMware)
     

15 Nov, 2017

1 commit

  • Pull DeviceTree updates from Rob Herring:
    "A bigger diffstat than usual with the kbuild changes and a tree wide
    fix in the binding documentation.

    Summary:

    - kbuild cleanups and improvements for dtbs

    - Code clean-up of overlay code and fixing for some long standing
    memory leak and race condition in applying overlays

    - Improvements to DT memory usage making sysfs/kobjects optional and
    skipping unflattening of disabled nodes. This is part of kernel
    tinification efforts.

    - Final piece of removing storing the full path for every DT node.
    The prerequisite conversion of printk's to use device_node format
    specifier happened in 4.14.

    - Sync with current upstream dtc. This brings additional checks to
    dtb compiling.

    - Binding doc tree wide removal of leading 0s from examples

    - RTC binding documentation adding missing devices and some
    consolidation of duplicated bindings

    - Vendor prefix documentation for nutsboard, Silicon Storage
    Technology, shimafuji, Tecon Microprocessor Technologies, DH
    electronics GmbH, Opal Kelly, and Next Thing"

    * tag 'devicetree-for-4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (55 commits)
    dt-bindings: usb: add #phy-cells to usb-nop-xceiv
    dt-bindings: Remove leading zeros from bindings notation
    kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
    MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
    kbuild: clean up *.dtb and *.dtb.S patterns from top-level Makefile
    .gitignore: move *.dtb and *.dtb.S patterns to the top-level .gitignore
    .gitignore: sort normal pattern rules alphabetically
    dt-bindings: add vendor prefix for Next Thing Co.
    scripts/dtc: Update to upstream version v1.4.5-6-gc1e55a5513e9
    of: dynamic: fix memory leak related to properties of __of_node_dup
    of: overlay: make pr_err() string unique
    of: overlay: pr_err from return NOTIFY_OK to overlay apply/remove
    of: overlay: remove unneeded check for NULL kbasename()
    of: overlay: remove a dependency on device node full_name
    of: overlay: simplify applying symbols from an overlay
    of: overlay: avoid race condition between applying multiple overlays
    of: overlay: loosen overly strict phandle clash check
    of: overlay: expand check of whether overlay changeset can be removed
    of: overlay: detect cases where device tree may become corrupt
    of: overlay: minor restructuring
    ...

    Linus Torvalds
     

09 Nov, 2017

1 commit


24 Oct, 2017

1 commit

  • It does several fixes:
    1. move the displaced ld example to its reasonable place.
    2. add new example for command gzip.
    3. fix 2 number errors.
    4. fix format of chapter 7.x, make it looks the same as other chapters.

    Signed-off-by: Cao jin
    Signed-off-by: Masahiro Yamada

    Cao jin
     

08 Aug, 2017

1 commit


08 Jul, 2017

2 commits

  • …/masahiroy/linux-kbuild

    Pull Kbuild thin archives updates from Masahiro Yamada:
    "Thin archives migration by Nicholas Piggin.

    THIN_ARCHIVES has been available for a while as an optional feature
    only for PowerPC architecture, but we do not need two different
    intermediate-artifact schemes.

    Using thin archives instead of conventional incremental linking has
    various advantages:

    - save disk space for builds

    - speed-up building a little

    - fix some link issues (for example, allyesconfig on ARM) due to more
    flexibility for the final linking

    - work better with dead code elimination we are planning

    As discussed before, this migration has been done unconditionally so
    that any problems caused by this will show up with "git bisect".

    With testing with 0-day and linux-next, some architectures actually
    showed up problems, but they were trivial and all fixed now"

    * tag 'kbuild-thinar-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
    tile: remove unneeded extra-y in Makefile
    kbuild: thin archives make default for all archs
    x86/um: thin archives build fix
    tile: thin archives fix linking
    ia64: thin archives fix linking
    sh: thin archives fix linking
    kbuild: handle libs-y archives separately from built-in.o archives
    kbuild: thin archives use P option to ar
    kbuild: thin archives final link close --whole-archives option
    ia64: remove unneeded extra-y in Makefile.gate
    tile: fix dependency and .*.cmd inclusion for incremental build
    sparc64: Use indirect calls in hamming weight stubs

    Linus Torvalds
     
  • Pull Kbuild updates from Masahiro Yamada:

    - Clean up Makefiles and scripts

    - Improve clang support

    - Remove unneeded genhdr-y syntax

    - Remove unneeded cc-option-align macro

    - Introduce __cc-option macro and use it to fix x86 boot code compiler
    flags

    * tag 'kbuild-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
    kbuild: improve comments on KBUILD_SRC
    x86/build: Specify stack alignment for clang
    x86/build: Use __cc-option for boot code compiler options
    kbuild: Add __cc-option macro
    kbuild: remove cc-option-align
    kbuild: replace genhdr-y with generated-y
    kbuild: clang: Disable 'address-of-packed-member' warning
    kbuild: remove duplicated arch/*/include/generated/uapi include path
    kbuild: speed up checksyscalls.sh
    kbuild: simplify silent build (-s) detection

    Linus Torvalds
     

30 Jun, 2017

1 commit

  • The thin archives build currently puts all lib.a and built-in.o
    files together and links them with --whole-archive.

    This works because thin archives can recursively refer to thin
    archives. However some architectures include libgcc.a, which may
    not be a thin archive, or it may not be constructed with the "P"
    option, in which case its contents do not get linked correctly.

    So don't pull .a libs into the root built-in.o archive. These
    libs should already have symbol tables and indexes built, so they
    can be direct linker inputs. Move them out of the --whole-archive
    option, which restore the conditional linking behaviour of lib.a
    to thin archives builds.

    Signed-off-by: Nicholas Piggin
    Signed-off-by: Masahiro Yamada

    Nicholas Piggin
     

25 Jun, 2017

1 commit

  • Documentation/kbuild/makefiles.txt says the change for align options
    occurred at GCC 3.0, and Documentation/process/changes.rst says the
    minimal supported GCC version is 3.2, so it should be safe to hard-code
    -falign* options.

    Fix the only user arch/x86/Makefile_32.cpu and remove cc-option-align.

    Signed-off-by: Masahiro Yamada
    Acked-by: Ingo Molnar

    Masahiro Yamada
     

22 Jun, 2017

1 commit

  • Originally, generated-y and genhdr-y had different meaning, like
    follows:

    - generated-y: generated headers (other than asm-generic wrappers)
    - header-y : headers to be exported
    - genhdr-y : generated headers to be exported (generated-y + header-y)

    Since commit fcc8487d477a ("uapi: export all headers under uapi
    directories"), headers under UAPI directories are all exported.
    So, there is no more difference between generated-y and genhdr-y.

    We see two users of genhdr-y, arch/{arm,x86}/include/uapi/asm/Kbuild.
    They generate some headers in arch/{arm,x86}/include/generated/uapi/asm
    directories, which are obviously exported.

    Replace them with generated-y, and abolish genhdr-y.

    Signed-off-by: Masahiro Yamada
    Acked-by: Nicolas Dichtel

    Masahiro Yamada
     

19 May, 2017

1 commit


10 May, 2017

3 commits

  • This patch removes the need of subdir-y. Now all files/directories under
    arch//include/uapi/ are exported.

    The only change for userland is the layout of the command 'make
    headers_install_all': directories asm- are replaced by arch-/.
    Those new directories contains all files/directories of the specified arch.

    Note that only cris and tile have more directories than only asm:
    - arch-v[10|32] for cris;
    - arch for tile.

    Signed-off-by: Nicolas Dichtel
    Signed-off-by: Masahiro Yamada

    Nicolas Dichtel
     
  • Regularly, when a new header is created in include/uapi/, the developer
    forgets to add it in the corresponding Kbuild file. This error is usually
    detected after the release is out.

    In fact, all headers under uapi directories should be exported, thus it's
    useless to have an exhaustive list.

    After this patch, the following files, which were not exported, are now
    exported (with make headers_install_all):
    asm-arc/kvm_para.h
    asm-arc/ucontext.h
    asm-blackfin/shmparam.h
    asm-blackfin/ucontext.h
    asm-c6x/shmparam.h
    asm-c6x/ucontext.h
    asm-cris/kvm_para.h
    asm-h8300/shmparam.h
    asm-h8300/ucontext.h
    asm-hexagon/shmparam.h
    asm-m32r/kvm_para.h
    asm-m68k/kvm_para.h
    asm-m68k/shmparam.h
    asm-metag/kvm_para.h
    asm-metag/shmparam.h
    asm-metag/ucontext.h
    asm-mips/hwcap.h
    asm-mips/reg.h
    asm-mips/ucontext.h
    asm-nios2/kvm_para.h
    asm-nios2/ucontext.h
    asm-openrisc/shmparam.h
    asm-parisc/kvm_para.h
    asm-powerpc/perf_regs.h
    asm-sh/kvm_para.h
    asm-sh/ucontext.h
    asm-tile/shmparam.h
    asm-unicore32/shmparam.h
    asm-unicore32/ucontext.h
    asm-x86/hwcap2.h
    asm-xtensa/kvm_para.h
    drm/armada_drm.h
    drm/etnaviv_drm.h
    drm/vgem_drm.h
    linux/aspeed-lpc-ctrl.h
    linux/auto_dev-ioctl.h
    linux/bcache.h
    linux/btrfs_tree.h
    linux/can/vxcan.h
    linux/cifs/cifs_mount.h
    linux/coresight-stm.h
    linux/cryptouser.h
    linux/fsmap.h
    linux/genwqe/genwqe_card.h
    linux/hash_info.h
    linux/kcm.h
    linux/kcov.h
    linux/kfd_ioctl.h
    linux/lightnvm.h
    linux/module.h
    linux/nbd-netlink.h
    linux/nilfs2_api.h
    linux/nilfs2_ondisk.h
    linux/nsfs.h
    linux/pr.h
    linux/qrtr.h
    linux/rpmsg.h
    linux/sched/types.h
    linux/sed-opal.h
    linux/smc.h
    linux/smc_diag.h
    linux/stm.h
    linux/switchtec_ioctl.h
    linux/vfio_ccw.h
    linux/wil6210_uapi.h
    rdma/bnxt_re-abi.h

    Note that I have removed from this list the files which are generated in every
    exported directories (like .install or .install.cmd).

    Thanks to Julien Floret for the tip to get all
    subdirs with a pure makefile command.

    For the record, note that exported files for asm directories are a mix of
    files listed by:
    - include/uapi/asm-generic/Kbuild.asm;
    - arch//include/uapi/asm/Kbuild;
    - arch//include/asm/Kbuild.

    Signed-off-by: Nicolas Dichtel
    Acked-by: Daniel Vetter
    Acked-by: Russell King
    Acked-by: Mark Salter
    Acked-by: Michael Ellerman (powerpc)
    Signed-off-by: Masahiro Yamada

    Nicolas Dichtel
     
  • This option was added in commit c7bb349e7c25 ("kbuild: introduce destination-y
    for exported headers") but never used in-tree.

    Signed-off-by: Nicolas Dichtel
    Acked-by: Paul Bolle
    Signed-off-by: Masahiro Yamada

    Nicolas Dichtel
     

16 Nov, 2016

1 commit

  • The "imply" keyword is a weak version of "select" where the target
    config symbol can still be turned off, avoiding those pitfalls that come
    with the "select" keyword.

    This is useful e.g. with multiple drivers that want to indicate their
    ability to hook into a secondary subsystem while allowing the user to
    configure that subsystem out without also having to unset these drivers.

    Currently, the same effect can almost be achieved with:

    config DRIVER_A
    tristate

    config DRIVER_B
    tristate

    config DRIVER_C
    tristate

    config DRIVER_D
    tristate

    [...]

    config SUBSYSTEM_X
    tristate
    default DRIVER_A || DRIVER_B || DRIVER_C || DRIVER_D || [...]

    This is unwieldy to maintain especially with a large number of drivers.
    Furthermore, there is no easy way to restrict the choice for SUBSYSTEM_X
    to y or n, excluding m, when some drivers are built-in. The "select"
    keyword allows for excluding m, but it excludes n as well. Hence
    this "imply" keyword. The above becomes:

    config DRIVER_A
    tristate
    imply SUBSYSTEM_X

    config DRIVER_B
    tristate
    imply SUBSYSTEM_X

    [...]

    config SUBSYSTEM_X
    tristate

    This is much cleaner, and way more flexible than "select". SUBSYSTEM_X
    can still be configured out, and it can be set as a module when none of
    the drivers are configured in or all of them are modular.

    Signed-off-by: Nicolas Pitre
    Acked-by: Richard Cochran
    Acked-by: Thomas Gleixner
    Acked-by: John Stultz
    Reviewed-by: Josh Triplett
    Cc: Paul Bolle
    Cc: linux-kbuild@vger.kernel.org
    Cc: netdev@vger.kernel.org
    Cc: Michal Marek
    Cc: Edward Cree
    Link: http://lkml.kernel.org/r/1478841010-28605-2-git-send-email-nicolas.pitre@linaro.org
    Signed-off-by: Thomas Gleixner

    Nicolas Pitre
     

15 Oct, 2016

1 commit

  • Pull kbuild updates from Michal Marek:

    - EXPORT_SYMBOL for asm source by Al Viro.

    This does bring a regression, because genksyms no longer generates
    checksums for these symbols (CONFIG_MODVERSIONS). Nick Piggin is
    working on a patch to fix this.

    Plus, we are talking about functions like strcpy(), which rarely
    change prototypes.

    - Fixes for PPC fallout of the above by Stephen Rothwell and Nick
    Piggin

    - fixdep speedup by Alexey Dobriyan.

    - preparatory work by Nick Piggin to allow architectures to build with
    -ffunction-sections, -fdata-sections and --gc-sections

    - CONFIG_THIN_ARCHIVES support by Stephen Rothwell

    - fix for filenames with colons in the initramfs source by me.

    * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild: (22 commits)
    initramfs: Escape colons in depfile
    ppc: there is no clear_pages to export
    powerpc/64: whitelist unresolved modversions CRCs
    kbuild: -ffunction-sections fix for archs with conflicting sections
    kbuild: add arch specific post-link Makefile
    kbuild: allow archs to select link dead code/data elimination
    kbuild: allow architectures to use thin archives instead of ld -r
    kbuild: Regenerate genksyms lexer
    kbuild: genksyms fix for typeof handling
    fixdep: faster CONFIG_ search
    ia64: move exports to definitions
    sparc32: debride memcpy.S a bit
    [sparc] unify 32bit and 64bit string.h
    sparc: move exports to definitions
    ppc: move exports to definitions
    arm: move exports to definitions
    s390: move exports to definitions
    m68k: move exports to definitions
    alpha: move exports to actual definitions
    x86: move exports to actual definitions
    ...

    Linus Torvalds
     

09 Sep, 2016

1 commit

  • Allow architectures to create arch/xxx/Makefile.postlink with targets
    for vmlinux, modules.ko, and clean, which will be invoked after final
    linking of vmlinux and modules.

    powerpc will use this to check vmlinux linker relocations for sanity,
    and may use it to fix up alternate instruction patch branch addresses.

    Signed-off-by: Nicholas Piggin
    Signed-off-by: Michal Marek

    Nicholas Piggin
     

19 Aug, 2016

1 commit

  • Improper menuconfig usage leads to empty menu entries.
    zconfdump() is able to reveal some real-life examples:
    - menuconfig VFIO_NOIOMMU
    - menuconfig RESET_CONTROLLER
    - menuconfig SND_ARM

    To avoid future occurrences of those, improve the menuconfig syntax
    description.

    Signed-off-by: Eugeniu Rosca
    Signed-off-by: Jonathan Corbet

    Eugeniu Rosca
     

07 Jul, 2016

1 commit

  • Track generated header files which aren't already in genhdr-y, alongside
    generic-y wrappers in the */include/generated/[uapi/]asm/ directories.
    Currently only x86 generates extra headers in these directories, for the
    purposes of enumerating system calls for different ABIs, and xen
    hypercalls.

    This will allow the asm-generic wrapper handling code to remove stale
    wrappers when files are removed from generic-y, without also removing
    these headers which are generated separately.

    Reported-by: kbuild test robot
    Signed-off-by: James Hogan
    Acked-by: Arnd Bergmann
    Cc: Jonathan Corbet
    Cc: linux-kbuild@vger.kernel.org
    Cc: linux-doc@vger.kernel.org
    Cc: Michal Marek
    Link: http://lkml.kernel.org/r/1466808144-23209-2-git-send-email-james.hogan@imgtec.com
    Signed-off-by: Thomas Gleixner

    James Hogan
     

10 May, 2016

2 commits


08 Oct, 2015

1 commit

  • Recursive dependency issues with kconfig are unavoidable due to
    some limitations with kconfig, since these issues are recurring
    provide a hint to the user how they can resolve these dependency
    issues and also document why such limitation exists.

    While at it also document a bit of future prospects of ways to
    enhance Kconfig, including providing formal semantics and evaluation
    of use of a SAT solver. If you're interested in this work or prospects
    of it check out the kconfig-sat project wiki [0] and mailing list [1].

    [0] http://kernelnewbies.org/KernelProjects/kconfig-sat
    [1] https://groups.google.com/d/forum/kconfig-sat

    Cc: Geert Uytterhoeven
    Cc: James Bottomley
    Cc: Josh Triplett
    Cc: Paul Bolle
    Cc: Herbert Xu
    Cc: Takashi Iwai
    Cc: "Yann E. MORIN"
    Cc: Jonathan Corbet
    Cc: Mate Soos
    Signed-off-by: Luis R. Rodriguez
    Signed-off-by: Michal Marek

    Luis R. Rodriguez
     

07 Aug, 2015

1 commit

  • We don't want this in the Kconfig since it might then get exposed in
    /proc/config.gz. So make it a parameter to Kbuild instead. This also
    means we don't have to jump through hoops to strip quotes from it, as
    we would if it was a config option.

    Signed-off-by: David Woodhouse
    Signed-off-by: David Howells
    Reviewed-by: Mimi Zohar

    David Woodhouse
     

06 Jul, 2015

1 commit

  • Since commit a1c48bb1 (Makefile: Fix unrecognized cross-compiler command
    line options), the arch Makefile is included earlier by the main
    Makefile, preventing the arc architecture to set its -O3 compiler
    option. Since there might be more use cases for an arch Makefile to
    fine-tune the options, add support for ARCH_CPPFLAGS, ARCH_AFLAGS and
    ARCH_CFLAGS variables that are appended to the respective kbuild
    variables. The user still has the final say via the KCPPFLAGS, KAFLAGS
    and KCFLAGS variables.

    Reported-by: Vineet Gupta
    Cc: stable@vger.kernel.org # 3.16+
    Signed-off-by: Michal Marek

    Michal Marek
     

22 Jun, 2015

1 commit

  • The header install makefile creates an 'include' directory inside
    INSTALL_HDR_PATH and appending include to the path results in headers
    being installed to include/include.

    Don't recommend appending include to the path as makefile already does
    this.

    Signed-off-by: Anish Bhatt
    Signed-off-by: Jonathan Corbet

    Anish Bhatt
     

09 Jun, 2015

1 commit


20 Feb, 2015

1 commit

  • Pull misc kbuild changes from Michal Marek:
    "Just a few non-critical kbuild changes:

    - builddeb adds the actual distribution name in the changelog
    - documentation fixes"

    * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    kbuild: trivial - fix the help doc of CONFIG_CC_OPTIMIZE_FOR_SIZE
    kbuild: Update documentation of clean-files and clean-dirs
    builddeb: Try to determine distribution
    builddeb: Update year and git repository URL in debian/copyright

    Linus Torvalds
     

10 Jan, 2015

2 commits


08 Jan, 2015

1 commit


19 Aug, 2014

2 commits