Commit eb07e1b4 authored by Matt Mooney's avatar Matt Mooney Committed by Linus Torvalds

Documentation: update kbuild make typos/grammar/text flow

Update section 3.7 examples to reflect the current state of the
Makefiles used. Fix spelling and grammar errors along with flow of text.
Signed-off-by: default avatarmatt mooney <mfm@muteddisk.com>
Reviewed-by: default avatarWANG Cong <xiyou.wangcong@gmail.com>
Signed-off-by: default avatarRandy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 2f5a2f81
......@@ -285,45 +285,42 @@ more details, with real examples.
--- 3.7 Compilation flags
ccflags-y, asflags-y and ldflags-y
The three flags listed above applies only to the kbuild makefile
where they are assigned. They are used for all the normal
cc, as and ld invocation happenign during a recursive build.
The three flags listed above apply only to the kbuild makefile where
they are assigned (i.e., per-directory). They are used for all the
normal cc, as and ld invocation happening during a recursive build.
Note: Flags with the same behaviour were previously named:
EXTRA_CFLAGS, EXTRA_AFLAGS and EXTRA_LDFLAGS.
They are yet supported but their use are deprecated.
EXTRA_CFLAGS, EXTRA_AFLAGS and EXTRA_LDFLAGS. They are still
supported but their use is deprecated.
ccflags-y specifies options for compiling C files with $(CC).
ccflags-y specifies options for compiling with $(CC).
Example:
# drivers/sound/emu10k1/Makefile
ccflags-y += -I$(obj)
ccflags-$(DEBUG) += -DEMU10K1_DEBUG
# drivers/acpi/Makefile
ccflags-y := -Os
ccflags-$(CONFIG_ACPI_DEBUG) += -DACPI_DEBUG_OUTPUT
This variable is necessary because the top Makefile owns the
variable $(KBUILD_CFLAGS) and uses it for compilation flags for the
entire tree.
asflags-y is a similar string for per-directory options
when compiling assembly language source.
asflags-y specifies options for assembling with $(AS).
Example:
#arch/x86_64/kernel/Makefile
asflags-y := -traditional
#arch/sparc/kernel/Makefile
asflags-y := -ansi
ldflags-y is a string for per-directory options to $(LD).
ldflags-y specifies options for linking with $(LD).
Example:
#arch/m68k/fpsp040/Makefile
ldflags-y := -x
#arch/cris/boot/compressed/Makefile
ldflags-y += -T $(srctree)/$(src)/decompress_$(arch-y).lds
subdir-ccflags-y, subdir-asflags-y
The two flags listed above are similar to ccflags-y and as-falgs-y.
The difference is that the subdir- variants has effect for the kbuild
file where tey are present and all subdirectories.
Options specified using subdir-* are added to the commandline before
the options specified using the non-subdir variants.
The two flags listed above are similar to ccflags-y and asflags-y.
The difference is that the subdir- variants affect the kbuild
file where they are present and all subdirectories. Options specified
using subdir-* are added to the commandline before the options
specified using the non-subdir variants.
Example:
subdir-ccflags-y := -Werror
......@@ -341,18 +338,18 @@ more details, with real examples.
CFLAGS_aha152x.o = -DAHA152X_STAT -DAUTOCONF
CFLAGS_gdth.o = # -DDEBUG_GDTH=2 -D__SERIAL__ -D__COM2__ \
-DGDTH_STATISTICS
CFLAGS_seagate.o = -DARBITRATE -DPARITY -DSEAGATE_USE_ASM
These three lines specify compilation flags for aha152x.o,
gdth.o, and seagate.o
These two lines specify compilation flags for aha152x.o and gdth.o.
$(AFLAGS_$@) is a similar feature for source files in assembly
languages.
Example:
# arch/arm/kernel/Makefile
AFLAGS_head-armv.o := -DTEXTADDR=$(TEXTADDR) -traditional
AFLAGS_head-armo.o := -DTEXTADDR=$(TEXTADDR) -traditional
AFLAGS_head.o := -DTEXT_OFFSET=$(TEXT_OFFSET)
AFLAGS_crunch-bits.o := -Wa,-mcpu=ep9312
AFLAGS_iwmmxt.o := -Wa,-mcpu=iwmmxt
--- 3.9 Dependency tracking
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment