Skip to content

Commit 597690c

Browse files
committed
Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild
Pull kbuild changes from Michal Marek: - fix make -s detection with make-4.0 - fix for scripts/setlocalversion when the kernel repository is a submodule - do not hardcode ';' in macros that expand to assembler code, as some architectures' assemblers use a different character for newline - Fix passing --gdwarf-2 to the assembler * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild: frv: Remove redundant debugging info flag mn10300: Remove redundant debugging info flag kbuild: Fix debugging info generation for .S files arch: use ASM_NL instead of ';' for assembler new line character in the macro kbuild: Fix silent builds with make-4 Fix detectition of kernel git repository in setlocalversion script [take #2]
2 parents 53d8ab2 + bf705ad commit 597690c

File tree

6 files changed

+23
-24
lines changed

6 files changed

+23
-24
lines changed

Makefile

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -311,9 +311,15 @@ endif
311311
# If the user is running make -s (silent mode), suppress echoing of
312312
# commands
313313

314+
ifneq ($(filter 4.%,$(MAKE_VERSION)),) # make-4
315+
ifneq ($(filter %s ,$(firstword x$(MAKEFLAGS))),)
316+
quiet=silent_
317+
endif
318+
else # make-3.8x
314319
ifneq ($(filter s% -s%,$(MAKEFLAGS)),)
315320
quiet=silent_
316321
endif
322+
endif
317323

318324
export quiet Q KBUILD_VERBOSE
319325

@@ -633,7 +639,7 @@ endif
633639

634640
ifdef CONFIG_DEBUG_INFO
635641
KBUILD_CFLAGS += -g
636-
KBUILD_AFLAGS += -gdwarf-2
642+
KBUILD_AFLAGS += -Wa,--gdwarf-2
637643
endif
638644

639645
ifdef CONFIG_DEBUG_INFO_REDUCED

arch/arc/include/asm/linkage.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111

1212
#ifdef __ASSEMBLY__
1313

14+
#define ASM_NL ` /* use '`' to mark new line in macro */
15+
1416
/* Can't use the ENTRY macro in linux/linkage.h
1517
* gas considers ';' as comment vs. newline
1618
*/

arch/frv/Makefile

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -74,13 +74,6 @@ KBUILD_CFLAGS += -mno-fdpic -mgpr-32 -msoft-float -mno-media
7474
KBUILD_CFLAGS += -ffixed-fcc3 -ffixed-cc3 -ffixed-gr15 -ffixed-icc2
7575
KBUILD_AFLAGS += -mno-fdpic
7676

77-
# make sure the .S files get compiled with debug info
78-
# and disable optimisations that are unhelpful whilst debugging
79-
ifdef CONFIG_DEBUG_INFO
80-
#KBUILD_CFLAGS += -O1
81-
KBUILD_AFLAGS += -Wa,--gdwarf2
82-
endif
83-
8477
head-y := arch/frv/kernel/head.o
8578

8679
core-y += arch/frv/kernel/ arch/frv/mm/

arch/mn10300/Makefile

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -92,14 +92,6 @@ define archhelp
9292
echo '* zImage - Compressed kernel image (arch/$(ARCH)/boot/zImage)'
9393
endef
9494

95-
# If you make sure the .S files get compiled with debug info,
96-
# uncomment the following to disable optimisations
97-
# that are unhelpful whilst debugging.
98-
ifdef CONFIG_DEBUG_INFO
99-
#KBUILD_CFLAGS += -O1
100-
KBUILD_AFLAGS += -Wa,--gdwarf2
101-
endif
102-
10395
#
10496
# include the appropriate processor- and unit-specific headers
10597
#

include/linux/linkage.h

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,11 @@
66
#include <linux/export.h>
77
#include <asm/linkage.h>
88

9+
/* Some toolchains use other characters (e.g. '`') to mark new line in macro */
10+
#ifndef ASM_NL
11+
#define ASM_NL ;
12+
#endif
13+
914
#ifdef __cplusplus
1015
#define CPP_ASMLINKAGE extern "C"
1116
#else
@@ -75,21 +80,21 @@
7580

7681
#ifndef ENTRY
7782
#define ENTRY(name) \
78-
.globl name; \
79-
ALIGN; \
80-
name:
83+
.globl name ASM_NL \
84+
ALIGN ASM_NL \
85+
name:
8186
#endif
8287
#endif /* LINKER_SCRIPT */
8388

8489
#ifndef WEAK
8590
#define WEAK(name) \
86-
.weak name; \
91+
.weak name ASM_NL \
8792
name:
8893
#endif
8994

9095
#ifndef END
9196
#define END(name) \
92-
.size name, .-name
97+
.size name, .-name
9398
#endif
9499

95100
/* If symbol 'name' is treated as a subroutine (gets called, and returns)
@@ -98,8 +103,8 @@
98103
*/
99104
#ifndef ENDPROC
100105
#define ENDPROC(name) \
101-
.type name, @function; \
102-
END(name)
106+
.type name, @function ASM_NL \
107+
END(name)
103108
#endif
104109

105110
#endif

scripts/setlocalversion

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,8 @@ scm_version()
4343
fi
4444

4545
# Check for git and a git repo.
46-
if test -d .git && head=`git rev-parse --verify --short HEAD 2>/dev/null`; then
46+
if test -z "$(git rev-parse --show-cdup 2>/dev/null)" &&
47+
head=`git rev-parse --verify --short HEAD 2>/dev/null`; then
4748

4849
# If we are at a tagged commit (like "v2.6.30-rc6"), we ignore
4950
# it, because this version is defined in the top level Makefile.

0 commit comments

Comments
 (0)