Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 8535
b: refs/heads/master
c: 357d596
h: refs/heads/master
i:
  8533: 78df63e
  8531: 46cf9e2
  8527: 9fce484
v: v3
  • Loading branch information
Linus Torvalds committed Sep 11, 2005
1 parent 44a74af commit 23ba0e5
Show file tree
Hide file tree
Showing 12 changed files with 32 additions and 24 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: d67eb16f5d444fb6d173bcec889ddb2066c0fa0c
refs/heads/master: 357d596bd552ad157a906289ab13ea6ba7e66e3d
14 changes: 7 additions & 7 deletions trunk/Documentation/kbuild/makefiles.txt
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ This document describes the Linux kernel Makefiles.

=== 6 Architecture Makefiles
--- 6.1 Set variables to tweak the build to the architecture
--- 6.2 Add prerequisites to prepare:
--- 6.2 Add prerequisites to archprepare:
--- 6.3 List directories to visit when descending
--- 6.4 Architecture specific boot images
--- 6.5 Building non-kbuild targets
Expand Down Expand Up @@ -734,18 +734,18 @@ When kbuild executes the following steps are followed (roughly):
for loadable kernel modules.


--- 6.2 Add prerequisites to prepare:
--- 6.2 Add prerequisites to archprepare:

The prepare: rule is used to list prerequisites that needs to be
The archprepare: rule is used to list prerequisites that needs to be
built before starting to descend down in the subdirectories.
This is usual header files containing assembler constants.

Example:
#arch/s390/Makefile
prepare: include/asm-$(ARCH)/offsets.h
#arch/arm/Makefile
archprepare: maketools

In this example the file include/asm-$(ARCH)/offsets.h will
be built before descending down in the subdirectories.
In this example the file target maketools will be processed
before descending down in the subdirectories.
See also chapter XXX-TODO that describe how kbuild supports
generating offset header files.

Expand Down
24 changes: 16 additions & 8 deletions trunk/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -491,6 +491,7 @@ include .config
# If .config is newer than include/linux/autoconf.h, someone tinkered
# with it and forgot to run make oldconfig
include/linux/autoconf.h: .config
$(Q)mkdir -p include/linux
$(Q)$(MAKE) -f $(srctree)/Makefile silentoldconfig
else
# Dummy target needed, because used as prerequisite
Expand Down Expand Up @@ -776,15 +777,20 @@ $(sort $(vmlinux-init) $(vmlinux-main)) $(vmlinux-lds): $(vmlinux-dirs) ;
# Error messages still appears in the original language

.PHONY: $(vmlinux-dirs)
$(vmlinux-dirs): prepare-all scripts
$(vmlinux-dirs): prepare scripts
$(Q)$(MAKE) $(build)=$@

# Things we need to do before we recursively start building the kernel
# or the modules are listed in "prepare-all".
# A multi level approach is used. prepare1 is updated first, then prepare0.
# prepare-all is the collection point for the prepare targets.
# or the modules are listed in "prepare".
# A multi level approach is used. prepareN is processed before prepareN-1.
# archprepare is used in arch Makefiles and when processed asm symlink,
# version.h and scripts_basic is processed / created.

# Listed in dependency order
.PHONY: prepare archprepare prepare0 prepare1 prepare2 prepare3

.PHONY: prepare-all prepare prepare0 prepare1 prepare2 prepare3
# prepare-all is deprecated, use prepare as valid replacement
.PHONY: prepare-all

# prepare3 is used to check if we are building in a separate output directory,
# and if so do:
Expand Down Expand Up @@ -813,11 +819,13 @@ ifneq ($(KBUILD_MODULES),)
$(Q)mkdir -p $(MODVERDIR)
endif

prepare0: prepare prepare1 FORCE
archprepare: prepare1 scripts_basic

prepare0: archprepare FORCE
$(Q)$(MAKE) $(build)=.

# All the preparing..
prepare-all: prepare0
prepare prepare-all: prepare0

# Leave this as default for preprocessing vmlinux.lds.S, which is now
# done in arch/$(ARCH)/kernel/Makefile
Expand Down Expand Up @@ -908,7 +916,7 @@ modules: $(vmlinux-dirs) $(if $(KBUILD_BUILTIN),vmlinux)

# Target to prepare building external modules
.PHONY: modules_prepare
modules_prepare: prepare-all scripts
modules_prepare: prepare scripts

# Target to install modules
.PHONY: modules_install
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/arm/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@ else
endif
@touch $@

prepare: maketools include/asm-arm/.arch
archprepare: maketools include/asm-arm/.arch

.PHONY: maketools FORCE
maketools: include/linux/version.h FORCE
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/cris/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ archclean:
rm -f timage vmlinux.bin decompress.bin rescue.bin cramfs.img
rm -rf $(LD_SCRIPT).tmp

prepare: $(SRC_ARCH)/.links $(srctree)/include/asm-$(ARCH)/.arch
archprepare: $(SRC_ARCH)/.links $(srctree)/include/asm-$(ARCH)/.arch

# Create some links to make all tools happy
$(SRC_ARCH)/.links:
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/ia64/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ unwcheck: vmlinux
archclean:
$(Q)$(MAKE) $(clean)=$(boot)

prepare: include/asm-ia64/.offsets.h.stamp
archprepare: include/asm-ia64/.offsets.h.stamp

include/asm-ia64/.offsets.h.stamp:
mkdir -p include/asm-ia64
Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion trunk/arch/ppc/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ archclean:
# Temporary hack until we have migrated to asm-powerpc
$(Q)rm -rf arch/$(ARCH)/include

prepare: checkbin
archprepare: checkbin

# Temporary hack until we have migrated to asm-powerpc
include/asm: arch/$(ARCH)/include/asm
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/sh/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ endif
@touch $@


prepare: maketools include/asm-sh/.cpu include/asm-sh/.mach
archprepare: maketools include/asm-sh/.cpu include/asm-sh/.mach

.PHONY: maketools FORCE
maketools: include/linux/version.h FORCE
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/sh64/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ compressed: zImage
archclean:
$(Q)$(MAKE) $(clean)=$(boot)

prepare: arch/$(ARCH)/lib/syscalltab.h
archprepare: arch/$(ARCH)/lib/syscalltab.h

define filechk_gen-syscalltab
(set -e; \
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/um/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ else
$(shell cd $(ARCH_DIR) && ln -sf Kconfig.$(SUBARCH) Kconfig.arch)
endif

prepare: $(ARCH_SYMLINKS) $(SYS_HEADERS) $(GEN_HEADERS)
archprepare: $(ARCH_SYMLINKS) $(SYS_HEADERS) $(GEN_HEADERS)

LINK-$(CONFIG_LD_SCRIPT_STATIC) += -static
LINK-$(CONFIG_LD_SCRIPT_DYN) += -Wl,-rpath,/lib
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/xtensa/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ boot := arch/xtensa/boot

archinc := include/asm-xtensa

prepare: $(archinc)/.platform
archprepare: $(archinc)/.platform

# Update machine cpu and platform symlinks if something which affects
# them changed.
Expand Down

0 comments on commit 23ba0e5

Please sign in to comment.