19 Aug, 2014

4 commits


15 Aug, 2014

2 commits

  • Pull misc kbuild updates from Michal Marek:
    "This is the non-critical part of kbuild for 3.17-rc1:

    - make help hint to use make -s with make kernelrelease et al.
    - moved a kbuild document to Documentation/kbuild where it belongs
    - four new Coccinelle scripts, one dropped and one fixed
    - new make kselftest target to run various tests on the kernel"

    * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    kbuild: kselftest - new make target to build and run kernel selftests
    Coccinelle: Script to replace if and BUG with BUG_ON
    Coccinelle: Script to detect incorrect argument to sizeof
    Coccinelle: Script to use ARRAY_SIZE instead of division of two sizeofs
    Coccinelle: Script to detect cast after memory allocation
    coccinelle/null: solve parse error
    Documentation: headers_install.txt is part of kbuild
    kbuild: make -s should be used with kernelrelease/kernelversion/image_name

    Linus Torvalds
     
  • Pull kbuild updates from Michal Marek:
    - make clean also considers $(extra-m) and $(extra-) to be consistent
    - cleanup and fixes in scripts/Makefile.host
    - allow to override the name of the Python 2 executable with make
    PYTHON=... (only needed for ia64 in practice)
    - option to split debugingo into *.dwo files to save disk space if the
    compiler supports it (CONFIG_DEBUG_INFO_SPLIT)
    - option to use dwarf4 debuginfo if the compiler supports it
    (CONFIG_DEBUG_INFO_DWARF4)
    - fix for disabling certain warnings with clang
    - fix for unneeded rebuild with dash when a command contains
    backslashes

    * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    kbuild: Fix handling of backslashes in *.cmd files
    kbuild, LLVMLinux: Supress warnings unless W=1-3
    Kbuild: Add a option to enable dwarf4 v2
    kbuild: Support split debug info v4
    kbuild: allow to override Python command name
    kbuild: clean-up and bug fix of scripts/Makefile.host
    kbuild: clean up scripts/Makefile.host
    kbuild: drop shared library support from Makefile.host
    kbuild: fix a bug of C++ host program handling
    kbuild: fix a typo in scripts/Makefile.host
    scripts/Makefile.clean: clean also $(extra-m) and $(extra-)

    Linus Torvalds
     

05 Aug, 2014

1 commit

  • 'headers_install.txt' from Documentation/make/ is related to Kbuild
    so it must be moved in Documentation/kbuild/ directory.

    As Documentation/make/ directory has only one file, it will be removed
    as a consequence of moving 'headers_install.txt'.

    Cc: Kirill A. Shutemov
    Cc: David Woodhouse
    Cc: Rob Landley
    Signed-off-by: Yann Droneaud
    Acked-by: Sam Ravnborg
    Signed-off-by: Michal Marek

    Yann Droneaud
     

16 Jul, 2014

1 commit

  • The shared library feature in Makefile.host is no longer used.
    Rip it off to keep the build infrastucture simple.

    Update Documentation/kbuild/makefiles.txt too.
    The section "4.3 Definition shared libraries" should be removed
    and the following sections should be re-numbered.

    Signed-off-by: Masahiro Yamada
    Suggested-by: Sam Ravnborg
    Signed-off-by: Michal Marek

    Masahiro Yamada
     

19 Jun, 2014

1 commit


10 Jun, 2014

1 commit


08 Apr, 2014

1 commit

  • "make allnoconfig" exists to ease testing of minimal configurations.
    Documentation/SubmitChecklist includes a note to test with allnoconfig.
    This helps catch missing dependencies on common-but-not-required
    functionality, which might otherwise go unnoticed.

    However, allnoconfig still leaves many symbols enabled, because they're
    hidden behind CONFIG_EMBEDDED or CONFIG_EXPERT. For instance, allnoconfig
    still has CONFIG_PRINTK and CONFIG_BLOCK enabled, so drivers don't
    typically get build-tested with those disabled.

    To address this, introduce a new Kconfig option "allnoconfig_y", used on
    symbols which only exist to hide other symbols. Set it on CONFIG_EMBEDDED
    (which then selects CONFIG_EXPERT). allnoconfig will then disable all the
    symbols hidden behind those.

    Signed-off-by: Josh Triplett
    Tested-by: Paul E. McKenney
    Cc: Michal Marek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Josh Triplett
     

09 Oct, 2013

1 commit


05 Sep, 2013

1 commit

  • Previously, it was possible to have more than one symbol with the
    'option modules' attached to them, although only the last one would
    in fact control tristates.

    Since this does not make much sense, only allow at most one symbol to
    control tristates.

    Note: it is still possible to have more than one symbol that control
    tristates, but indirectly:

    config MOD1
    bool "mod1"
    select MODULES
    config MOD2
    bool "mod2"
    select MODULES
    config MODULES
    bool
    option modules

    Signed-off-by: "Yann E. MORIN"
    Cc: Sam Ravnborg
    Signed-off-by: Michal Marek

    Yann E. MORIN
     

23 Jul, 2013

1 commit


17 Jul, 2013

1 commit


11 Jul, 2013

1 commit

  • Pull kconfig updates from Michal Marek:
    - dependency solver fix for make defconfig
    - randconfig fixes, one of which had to be reverted again
    - more user-friendly sorting of search results
    - hex and range keywords support longs
    - fix for [mn]conf not to rely on particular behavior of the LINES and
    COLS variables
    - cleanup of magic constants in kconfig/lxdialog
    - [mn]conf formatting fixes
    - fix for scripts/config's help text in out-of-tree usage (under a
    different name)

    * 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    kconfig: allow "hex" and "range" to support longs
    Revert "kconfig: fix randomising choice entries in presence of KCONFIG_ALLCONFIG"
    kconfig: fix randomising choice entries in presence of KCONFIG_ALLCONFIG
    kconfig: loop as long as we changed some symbols in randconfig
    kconfig/[mn]conf: make it explicit in the search box that a regexp is possible
    kconfig: sort found symbols by relevance
    kconfig/conf: print the seed used to initialise the RNG for randconfig
    kconfig/conf: accept a base-16 seed for randconfig
    kconfig/conf: fix randconfig setting multiple symbols in a choice
    scripts/config: replace hard-coded script name by a dynamic value
    mconf/nconf: mark empty menus/menuconfigs different from non-empty ones
    nconf: use function calls instead of ncurses' variables LINES and COLS
    mconf: use function calls instead of ncurses' variables LINES and COLS
    kconfig/lxdialog: handle newline characters in print_autowrap()
    kconfig/lxdialog: Use new mininimum resize definitions in conf_choice()
    kconfig/lxdialog: Add definitions for mininimum (re)size values
    kconfig: Fix defconfig when one choice menu selects options that another choice menu depends on

    Linus Torvalds
     

25 Jun, 2013

1 commit

  • When searching for symbols, return the symbols sorted by relevance.

    Sorting is done as thus:
    - first, symbols that match exactly
    - then, alphabetical sort

    Since the search can be a regexp, it is possible that more than one symbol
    matches exactly. In this case, we can't decide which to sort first, so we
    fallback to alphabeticall sort.

    Explain this (new!) sorting heuristic in the documentation.

    Reported-by: Jean Delvare
    Signed-off-by: "Yann E. MORIN"
    Cc: Jean Delvare
    Cc: Michal Marek
    Cc: Roland Eggner
    Cc: Wang YanQing

    --
    Changes v1->v2:
    - drop the previous, complex heuristic in favour of a simpler heuristic
    that is both easier to understand, *and* to maintain (Jean)
    - explain sorting heuristic in the doc (Jean)

    Yann E. MORIN
     

04 Jun, 2013

1 commit

  • Ever since commit 45f035ab9b8f ("CONFIG_HOTPLUG should be always on"),
    it has been basically impossible to build a kernel with CONFIG_HOTPLUG
    turned off. Remove all the remaining references to it.

    Cc: Russell King
    Cc: Doug Thompson
    Cc: Bjorn Helgaas
    Cc: Steven Whitehouse
    Cc: Arnd Bergmann
    Cc: Pavel Machek
    Cc: "Rafael J. Wysocki"
    Cc: Andrew Morton
    Signed-off-by: Stephen Rothwell
    Acked-by: Mauro Carvalho Chehab
    Acked-by: Hans Verkuil
    Signed-off-by: Greg Kroah-Hartman

    Stephen Rothwell
     

07 May, 2013

2 commits

  • Pull misc kbuild updates from Michal Marek:
    "Non-critical kbuild changes:

    - make coccicheck improvements, but no new semantic patches this time

    - make rpm improvements

    - make tar-pkg change to include the architecture in the filename.

    This is a deliberate incompatibility, but nobody has complained so
    far and it is useful if you build for different architectures. It
    also matches what the deb-pkg and rpm-pkg targets produce.

    - kbuild documentation fix"

    * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    rpm-pkg: Remove pointless set -e statements
    rpm-pkg: Always regenerate the specfile
    rpm-pkg: Do not write to the parent directory
    rpm-pkg: Do not package the whole source directory
    buildtar: Add ARCH to the archive name
    Coccinelle: Fix patch output when coccicheck is used with M= and C=
    Coccinelle: Add support to the SPFLAGS variable
    Coccinelle: Cleanup the setting of the FLAGS and OPTIONS variables
    Coccinelle: Restore coccicheck verbosity in ONLINE mode (C=1 or C=2)
    scripts/package/Makefile: compare objtree with srctree instead of test KBUILD_OUTPUT
    doc: change example to existing Makefile fragment
    scripts/tags.sh: Add magic for OFFSET and DEFINE

    Linus Torvalds
     
  • Pull kconfig updates from Michal Marek:
    - use pkg-config to detect curses libraries
    - clean up the way curses headers are searched
    - Some randconfig fixes, of which one had to be reverted
    - KCONFIG_SEED for randconfig debugging
    - memuconfig memory leak plugged
    - menuconfig > breadcrumbs > navigation
    - xconfig compilation fix
    - Other minor fixes

    * 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    kconfig: fix lists definition for C++
    Revert "kconfig: fix randomising choice entries in presence of KCONFIG_ALLCONFIG"
    kconfig: implement KCONFIG_PROBABILITY for randconfig
    kconfig: allow specifying the seed for randconfig
    kconfig: fix randomising choice entries in presence of KCONFIG_ALLCONFIG
    kconfig: do not override symbols already set
    kconfig: fix randconfig tristate detection
    kconfig/lxdialog: rationalise the include paths where to find {.n}curses{,w}.h
    menuconfig: Add "breadcrumbs" navigation aid
    menuconfig: Fix memory leak introduced by jump keys feature
    merge_config.sh: Avoid creating unnessary source softlinks
    kconfig: optionally use pkg-config to detect ncurses libs
    menuconfig: optionally use pkg-config to detect ncurses libs

    Linus Torvalds
     

25 Apr, 2013

2 commits

  • Currently the odds to set each symbol is (rounded):
    booleans: y: 50% n: 50%
    tristates: y: 33% m: 33% n: 33%

    Introduce a KCONFIG_PROBABILITY environment variable to tweak the
    probabilities (in percentage), as such:
    KCONFIG_PROBABILITY y:n split y:m:n split
    -----------------------------------------------------------------
    [1] unset or empty 50 : 50 33 : 33 : 34
    [2] N N : 100-N N/2 : N/2 : 100-N
    N:M N+M : 100-(N+M) N : M : 100-(N+M)
    N:M:L N : 100-N M : L : 100-(M+L)

    [1] The current behaviour is kept as default, for backward compatibility
    [2] The solution initially implemented by Peter for Buildroot, see:
    http://git.buildroot.org/buildroot/commit/?id=3435c1afb5

    Signed-off-by: Peter Korsgaard
    [yann.morin.1998@free.fr: add to Documentation/]
    Signed-off-by: "Yann E. MORIN"

    Yann E. MORIN
     
  • For reproducibility, it can be useful to be able to specify the
    seed to use to seed the RNG.

    Add a new KCONFIG_SEED environment variable which can be set to
    the seed to use:
    $ make KCONFIG_SEED=42 randconfig
    $ sha1sum .config
    70a128c8dcc61303069e1be352cce64114dfcbca .config
    $ make KCONFIG_SEED=42 randconfig
    $ sha1sum .config
    70a128c8dcc61303069e1be352cce64114dfcbca .config

    It's very usefull for eg. debugging the kconfig parser.

    Signed-off-by: "Yann E. MORIN"

    Yann E. MORIN
     

08 Apr, 2013

2 commits

  • Signed-off-by: Paul Bolle
    Acked-by: Rob Landley
    Signed-off-by: Michal Marek

    Paul Bolle
     
  • The kbuild's ld-option function is broken because
    the command
    $(CC) /dev/null -c -o "$$TMPO"
    does not create object file!

    I have used a relatively old mips gcc 3.4.6 cross-compiler
    and a relatively new gcc 4.7.2 to check this fact
    but the results are the same.

    EXAMPLE:
    $ rm /tmp/1.o
    $ mips-linux-gcc /dev/null -c -o /tmp/1.o
    mips-linux-gcc: /dev/null: linker input file unused because linking not done
    $ ls -la /tmp/1.o
    ls: cannot access /tmp/1.o: No such file or directory

    We can easily fix the problem by adding
    the '-x c' compiler option.

    EXAMPLE:
    $ rm /tmp/1.o
    $ mips-linux-gcc -x c /dev/null -c -o /tmp/1.o
    $ ls -la /tmp/1.o
    -rw-r--r-- 1 antony antony 778 Apr 2 20:40 /tmp/1.o

    Also fix wrong ld-option example.

    Signed-off-by: Antony Pavlov
    Signed-off-by: Michal Marek

    Antony Pavlov
     

28 Feb, 2013

1 commit

  • Pull kconfig changes from Michal Marek:
    "I forgot to send a pull request in time for the v3.8-rc1 merge window,
    so the list is a bit longer this time:

    - menuconfig enables extended colors in ncurses if the wide-character
    version is used.

    - CONFIG_ prefix can be specified in the environment to make life
    easier for people using kconfig multiple times in a single tree (no
    functional change in the kernel kconfig usage).

    - kconfig aborts on OOM.

    - inputboxes in menuconfig allow to move the cursor.

    - menuconfig has Save/Load buttons now.

    - xconfig build fix with new g++ and Qt3.

    - nconfig color scheme fix and help text update.

    - make oldconfig prints newlines when output is redirected.

    - some other minor fixes."

    * 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    kbuild: Fix missing '\n' for NEW symbols in yes "" | make oldconfig >conf.new
    kconfig: nconf: rewrite labels of function keys line
    kconfig: nconf: rewrite help texts
    kconfig: fix a compiliation error when using make xconfig
    nconf: function keys line, change background color for better readability
    menuconfig: Get rid of the top-level entries for "Load an Alternate/Save an Alternate"
    menuconfig: Add Save/Load buttons
    kconfig:lxdialog: remove duplicate code
    menuconfig:inputbox: support navigate input position
    kconfig: document use of CONFIG_ environment variable
    scripts/kconfig: ensure we use proper CONFIG_ prefix
    merge_config.sh: Add option to specify output dir
    Revert "kconfig-language: add to hints"
    kconfig: Regenerate lexer
    kconfig: Fix malloc handling in conf tools
    kconfig: get CONFIG_ prefix from the environment
    kconfig: add a function to get the CONFIG_ prefix
    kconfig: remove CONFIG_ from string constants
    menuconfig: fix extended colors ncurses support

    Linus Torvalds
     

26 Feb, 2013

1 commit


08 Feb, 2013

1 commit

  • Create cmd_dtc_cpp to run the C pre-processor on *.dts file before
    passing them to dtc for final compilation. This allows the use of #define
    and #include within the .dts file.

    Acked-by: Simon Glass
    Acked-by: Jean-Christophe PLAGNIOL-VILLARD
    Acked-by: Michal Marek
    Acked-by: Srinivas Kandagatla
    Signed-off-by: Stephen Warren
    Signed-off-by: Grant Likely

    Stephen Warren
     

26 Dec, 2012

1 commit


14 Dec, 2012

1 commit

  • Pull trivial branch from Jiri Kosina:
    "Usual stuff -- comment/printk typo fixes, documentation updates, dead
    code elimination."

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (39 commits)
    HOWTO: fix double words typo
    x86 mtrr: fix comment typo in mtrr_bp_init
    propagate name change to comments in kernel source
    doc: Update the name of profiling based on sysfs
    treewide: Fix typos in various drivers
    treewide: Fix typos in various Kconfig
    wireless: mwifiex: Fix typo in wireless/mwifiex driver
    messages: i2o: Fix typo in messages/i2o
    scripts/kernel-doc: check that non-void fcts describe their return value
    Kernel-doc: Convention: Use a "Return" section to describe return values
    radeon: Fix typo and copy/paste error in comments
    doc: Remove unnecessary declarations from Documentation/accounting/getdelays.c
    various: Fix spelling of "asynchronous" in comments.
    Fix misspellings of "whether" in comments.
    eisa: Fix spelling of "asynchronous".
    various: Fix spelling of "registered" in comments.
    doc: fix quite a few typos within Documentation
    target: iscsi: fix comment typos in target/iscsi drivers
    treewide: fix typo of "suport" in various comments and Kconfig
    treewide: fix typo of "suppport" in various comments
    ...

    Linus Torvalds
     

06 Dec, 2012

1 commit

  • This reverts commit 64b81ed7fb1e45c914317b20316f32827bc6444b.

    As Martin says about this paragraph:
    However, I can not reproduce this. The attached file contains both
    cases. [...] AFAICS, both versions behave equivalently. I suggest
    changing the documentation accordingly.

    [in http://marc.info/?l=linux-kbuild&m=134987006202410&w=2]

    Reported-by: Martin Walch
    Cc: Martin Walch
    Signed-off-by: "Yann E. MORIN"
    Signed-off-by: Michal Marek

    Yann E. MORIN
     

01 Dec, 2012

1 commit

  • All architectures that use cmd_dtc do so in almost the same way. Create
    a central build rule to avoid duplication. The one difference is that
    most current uses of dtc build $(obj)/%.dtb from $(src)/dts/%.dts rather
    than building the .dtb in the same directory as the .dts file. This
    difference will be eliminated arch-by-arch in future patches.

    MIPS is the exception here; it already uses the exact same rule as the
    new common rule, so the duplicate is removed in this patch to avoid any
    conflict. arch/mips changes courtesy of Ralf Baechle.

    Update Documentation/kbuild to remove the explicit call to cmd_dtc from
    the example, now that the rule exists in a centralized location.

    Cc: Arnd Bergmann
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: Olof Johansson
    Cc: Russell King
    Acked-by: Catalin Marinas
    Cc: Jonas Bonn
    Cc: linux@lists.openrisc.net
    Cc: Aurelien Jacquiot
    Cc: linux-c6x-dev@linux-c6x.org
    Cc: Mark Salter
    Cc: Michal Simek
    Cc: microblaze-uclinux@itee.uq.edu.au
    Cc: Chris Zankel
    Cc: linux-xtensa@linux-xtensa.org
    Cc: Max Filippov
    Signed-off-by: Ralf Baechle
    Signed-off-by: Stephen Warren
    Signed-off-by: Rob Herring

    Stephen Warren
     

19 Nov, 2012

1 commit


03 Oct, 2012

1 commit


29 May, 2012

1 commit

  • Pull kconfig changes from Michal Marek:

    - Error handling for make KCONFIG_ALLCONFIG= all*config plus a fix
    for a bug that was exposed by this

    - Fix for the script/config utility.

    * 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    scripts/config: properly report and set string options
    kbuild: all{no,yes,mod,def,rand}config only read files when instructed to.
    kconfig: Add error handling to KCONFIG_ALLCONFIG

    Linus Torvalds
     

06 May, 2012

1 commit


05 May, 2012

1 commit

  • - Only try to read the file specified if KCONFIG_ALL_CONFIG is set to
    something other than the empty string or "1".

    - Don't use stat to check the name passed to conf_read_simple so that
    zconf_fopen can find the file in the current directory or in SRCTREE
    removing a extremely source of confusing failure, where KCONFIG_ALL_CONFIG
    was not interpreted with respect to the directory make was called in.

    - If conf_read_simple fails complain clearly and stop processing.
    Allowing the simple debugging of typos.

    - Clearly document the behavior so it is clear to users which
    values are treated as flags and which values are treated as
    filenames.

    Signed-off-by: Eric W. Biederman
    Signed-off-by: Michal Marek

    Eric W. Biederman
     

31 Mar, 2012

1 commit

  • The kconfig documentation suggests using plain 'diff' to compare config
    files and then adds "Yes, we need something better here". Commit
    a717417e7f96 ("kconfig: add diffconfig utility") added what that comment
    was looking for.

    Signed-off-by: Javi Merino
    Cc: Michal Marek
    Signed-off-by: Linus Torvalds

    Javi Merino
     

07 Mar, 2012

1 commit


18 Nov, 2011

1 commit

  • Add support for an "archheaders" target. This target can generate
    files that need to be installed for user space by "make
    headers_install" or "make headers_install_all".

    In order to support "make headers_install_all", it must be able to run
    without the tree having to be configured first.

    Cc: David Woodhouse
    Cc: Sam Ravnborg
    Cc: Michal Marek
    Signed-off-by: H. Peter Anvin

    H. Peter Anvin
     

13 Jun, 2011

1 commit

  • Change all "arch/i386" to "arch/x86" in Documentaion/,
    since the directory has changed.

    Also update the files which have changed their filename
    in the meantime accordingly.

    Signed-off-by: Wanlong Gao
    [jkosina@suse.cz: reword changelog]
    Signed-off-by: Jiri Kosina

    Wanlong Gao