15 Jan, 2011

1 commit


29 Oct, 2010

1 commit

  • * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6:
    initramfs: Fix build break on symbol-prefixed archs
    initramfs: fix initramfs size calculation
    initramfs: generalize initramfs_data.xxx.S variants
    scripts/kallsyms: Enable error messages while hush up unnecessary warnings
    scripts/setlocalversion: update comment
    kbuild: Use a single clean rule for kernel and external modules
    kbuild: Do not run make clean in $(srctree)
    scripts/mod/modpost.c: fix commentary accordingly to last changes
    kbuild: Really don't clean bounds.h and asm-offsets.h

    Linus Torvalds
     

06 Sep, 2010

1 commit


21 Aug, 2010

1 commit

  • Dan McGee writes:
    > Note that when in git, you get the appended "+" sign. If
    > LOCALVERSION_AUTO is set, you will get something like
    > "eee-gb01b08c-dirty" (whereas the copy of the tree in /tmp still
    > returns "eee"). It doesn't matter whether the working tree is dirty or
    > clean.
    >
    > Is there a way to disable this? I'm building from a clean tarball that
    > just happens to be unpacked inside a git repository. One would think
    > setting LOCALVERSION_AUTO to false would do it, but no such luck...

    Fix this by checking if the kernel source tree is the root of the git or
    hg repository. No fix for svn: If the kernel source is not tracked in
    the svn repository, it works as expected, otherwise determining the
    'repository root' is not really a defined task.

    Reported-and-tested-by: Dan McGee
    Signed-off-by: Michal Marek

    Michal Marek
     

13 Aug, 2010

1 commit


21 Jul, 2010

1 commit

  • make rpm was broken by commit 0915512:
    make clean
    set -e; cd ..; ln -sf /usr/src/iwlwifi-2.6 kernel-2.6.35rc4wl
    /bin/sh /usr/src/iwlwifi-2.6/scripts/setlocalversion --scm-only >
    /usr/src/iwlwifi-2.6/.scmversion
    cat: .scmversion: input file is output file
    make[1]: *** [rpm] Error 1

    Reported-and-tested-by: "Zheng, Jiajia"
    Signed-off-by: Michal Marek

    Michal Marek
     

20 Jul, 2010

1 commit

  • The 'source' builtin is a bash alias to the '.' (dot) builtin. While the
    former is supported only by bash, the latter is specified in POSIX and
    works fine with all POSIX-compliant shells I am aware of.

    The '$_' special parameter is specific to bash. It is partially
    supported in dash too but it always evaluates to the current script path
    (which causes the script to enter a loop recursively re-executing
    itself). This is why I have replaced the two occurences of '$_' with the
    explicit parameter.

    The 'local' builtin is another example of bash-specific code. Although
    it is supported by all POSIX-compliant shells I am aware of, it is not
    part of POSIX specification and thus the code should not rely on it
    assigning a specific value to the local variable. Moreover, the 'posh'
    shell has a limited version of 'local' builtin not supporting direct
    variable assignments. Thus, I have broken one of the 'local'
    declarations down into a (non-POSIX) 'local' declaration and a plain
    (POSIX-compliant) variable assignment.

    Signed-off-by: Michał Górny
    Signed-off-by: Michal Marek

    Michał Górny
     

18 Jun, 2010

1 commit

  • Now that we run scripts/setlocalversion during every build, it makes
    sense to move all the localversion logic there. This cleans up the
    toplevel Makefile and also makes sure that the script is called only
    once in 'make prepare' (previously, it would be called every time due to
    a variable expansion in an ifneq statement). No user-visible change is
    intended, unless one runs the setlocalversion script directly.

    Reported-by: Dmitry Torokhov
    Cc: David Rientjes
    Cc: Greg Thelen
    Cc: Nico Schottelius
    Signed-off-by: Michal Marek

    Michal Marek
     

15 Jun, 2009

1 commit


20 May, 2009

1 commit


01 May, 2009

1 commit

  • When using trees like wireless-testing, which have untagged tags,
    scripts/setlocalversion does not display any git indication for
    localversion.

    This patch fixes it: If git is available, but no usable tag is found,
    it uses -g${head}. It skips the detection of unanottated tags via
    git name-rev.

    Signed-off-by: Nico Schottelius
    Signed-off-by: Sam Ravnborg

    Nico Schottelius
     

11 Apr, 2009

1 commit


15 Feb, 2009

1 commit


04 Dec, 2008

2 commits


30 Oct, 2008

2 commits

  • setlocalversion used to use an abbreviated git commit sha1 to generate the
    tag. This was changed in commit d882421f4e08ddf0a94245cdbe516db260aa6f41
    "kbuild: change CONFIG_LOCALVERSION_AUTO to use a git-describe-ish format"
    to use git describe to come up with a tag. Which is nice, but git describe
    sometimes can't describe the revision.
    Commit 56b2f0706d82535fd8d85503f2dcc0be40c8e55d ("setlocalversion: do not
    describe if there is nothing to describe") addressed this, but there is still
    no tag generated.

    So, generate a plain abbreviated sha1 tag like setlocalversion used to when
    git describe comes up short.

    Signed-off-by: Trent Piepho
    CC: Jan Engelhardt
    Signed-off-by: Sam Ravnborg

    Trent Piepho
     
  • The number of pending changes is pretty useless, so encoding it into the
    version is just annoying by the constant shuffle in corresponding modules.

    Signed-off-by: Mike Frysinger
    Signed-off-by: Sam Ravnborg

    Mike Frysinger
     

26 Jul, 2008

1 commit

  • Jan Engelhardt wrote:
    > Just a note that when you run git-describe, you should probably quiten it.
    >
    > fatal: cannot describe 'bd7364a0fd5a4a2878fe4a224be1b142a4e6698e'
    >
    > This happens when tags are not present, which can happen if Linus's tree
    > is sent upwards again, IOW:
    >
    > machine1$ git-clone torvalds/linux-2.6.git
    > machine1$ git push elsewhere master
    >
    > machine2$ git-clone elsewhere:/linux
    > machine2$ git-describe HEAD
    > fatal: cannot describe that

    Signed-off-by: Sebastian Siewior
    Acked-by: Jan Engelhardt
    Signed-off-by: Sam Ravnborg

    Sebastian Siewior
     

03 Feb, 2008

1 commit


29 Jan, 2008

4 commits

  • make-kpkg modifies scripts/package/Makefile and deletes
    scripts/package/builddeb as part of its build process. Ignore these
    changes so the tree isn't marked as -dirty, when it is just an
    artifact of make-kpkg. (make-kpkg clean restores the files to their
    original state, and these helper scripts won't affect the final
    compiled kernel in any way.)

    Signed-off-by: "Theodore Ts'o"
    Signed-off-by: Sam Ravnborg

    Theodore Ts'o
     
  • If git's index file is out of date, and some files have been touched
    such that their timestamp doesn't what is in the index, "git
    diff-index HEAD" may show that a particular file is dirty, when in
    fact it really isn't. Running "git update-index" will update the
    index to avoid these false positives.

    Signed-off-by: "Theodore Ts'o"
    Signed-off-by: Sam Ravnborg

    Theodore Ts'o
     
  • Change the automatic local version to have the form -nnnnn-gSHA1SUMID,
    where 'nnnnn' is the number of commits since the last tag (i.e.,
    2.6.21-rc7). This makes it much more likely that the package names created
    for the kernel will look "newer" to a package manager.

    Signed-off-by: "Theodore Ts'o"
    Signed-off-by: Sam Ravnborg

    Theodore Ts'o
     
  • This represents mercurial changesets similarly to git. For untagged
    revisions, append the changeset id. If there are uncommitted changes,
    append -dirty. For example, -hgc60016ba6237-dirty

    Signed-off-by: Aron Griffis
    Signed-off-by: Sam Ravnborg

    Aron Griffis
     

17 Jun, 2006

2 commits


09 Jan, 2006

1 commit


07 Jan, 2006

1 commit

  • Currently scripts/setlocalversion is a Perl script that tries to figure
    out the current git commit ID of a repo without using git. It also
    imports Digest::MD5 without using it and generally is too big for the
    small task it does. :] And it always reports a git ID, even when the
    HEAD is tagged -- this is a bug.

    This patch replaces it with a Bourne Shell script that uses git
    commands to do the same. I can't come up with a scenario where someone
    would use a git repo and refuse to install git core at the same time,
    so I think it's reasonable to assume git is available.

    The new script also reports uncommitted changes by adding -git_dirty to
    the version string. Obviously you can't see from that _what_ has been
    changed from the last commit, so it's more of a reminder that you
    forgot to commit something.

    The script is easily extensible: simply add a check for Mercurial (or
    whatever) below the git check.

    Note: the script doesn't print a newline char anymore. That's only
    because it was easier to implement it that way, not a feature (or bug).
    'make kernelrelease' doesn't care.

    Signed-off-by: Rene Scharfe
    Acked-by: Ryan Anderson
    Signed-off-by: Sam Ravnborg

    Rene Scharfe
     

11 Aug, 2005

1 commit