Lines Matching refs:in

11 	   --- 3.2 Built-in object goals - obj-y
15 --- 3.6 Descending down in directories
81 any built-in or modular targets.
115 kbuild infrastructure. This chapter introduces the syntax used in the
135 This tells kbuild that there is one object in that directory, named
144 $(CONFIG_FOO) evaluates to either y (for built-in) or m (for module).
148 --- 3.2 Built-in object goals - obj-y
151 in the $(obj-y) lists. These lists depend on the kernel
155 "$(LD) -r" to merge these files into one built-in.o file.
156 built-in.o is later linked into vmlinux by the parent Makefile.
158 The order of files in $(obj-y) is significant. Duplicates in
160 built-in.o and succeeding instances will be ignored.
163 (module_init() / __initcall) will be called during boot in the
164 order they appear. So keep in mind that changing the link
165 order may e.g. change the order in which your SCSI
191 that you want to build a module in the same way as above; however,
202 compile the objects listed in $(isdn-y) and then run
224 parts and then link this into built-in.o, as you would expect.
228 No special notation is required in the makefiles for
234 combined in a built-in.o for that specific directory.
236 be included in a library, lib.a.
237 All objects listed with lib-y are combined in a single
239 Objects that are listed in obj-y and additionally listed in
240 lib-y will not be included in the library, since they will
242 For consistency, objects listed in lib-m will be included in lib.a.
244 Note that the same kbuild makefile may list files to be built-in
246 may contain both a built-in.o and a lib.a file.
254 shall be listed in libs-y.
259 --- 3.6 Descending down in directories
261 A Makefile is only responsible for building objects in its own
262 directory. Files in subdirectories should be taken care of by
263 Makefiles in these subdirs. The build system will automatically
264 invoke make recursively in subdirectories, provided you let it know of
268 ext2 lives in a separate directory, and the Makefile present in fs/
275 If CONFIG_EXT2_FS is set to either 'y' (built-in) or 'm' (modular)
277 down in the ext2 directory.
279 the directory, it is the Makefile in the subdirectory that
280 specifies what is modular and what is built-in.
289 These three flags apply only to the kbuild makefile in which they
331 CFLAGS_$@ and AFLAGS_$@ only apply to commands in current
345 $(AFLAGS_$@) is a similar feature for source files in assembly
359 2) CONFIG_ options used in all prerequisite files
374 Kbuild is not executing in the directory where the Makefile is
383 referring to files located in the src tree.
403 echoing information to user in a rule is often a good practice
455 C escapes are supported in the test instruction
508 warn about it if there is another warning in the source file.
520 cc-version is useful when a specific $(CC) version is faulty in one
521 area, for example -mregparm=3 was broken in some gcc versions
546 The third parameter may be a text as in this example, but it may also
565 cc-cross-prefix is used to check if there exists a $(CC) in path with
567 prefix$(CC) in the PATH is returned - and if no prefix$(CC) is found
569 Additional prefixes are separated by a single space in the
603 Two steps are required in order to use a host executable.
609 This can be done in two ways. Either add the dependency in a rule,
611 Both possibilities are described in the following.
623 Kbuild assumes in the above example that bin2hex is made from a single
624 c-source file named bin2hex.c located in the same directory as
648 kbuild offers support for host programs written in C++. This was
673 the options specified in $(HOSTCFLAGS).
675 in that Makefile, use the variable HOST_EXTRACFLAGS.
701 This is possible in two ways:
703 (1) List the prerequisite explicitly in a special rule.
713 the host programs in special rules must be prefixed with $(obj).
725 This will tell kbuild to build lxdialog even if not referenced in
730 A typical pattern in a Kbuild file looks like this:
736 Kbuild knows about both 'y' for built-in and 'm' for module.
744 "make clean" deletes most generated files in the obj tree where the kernel
746 Kbuild knows targets listed in $(hostprogs-y), $(hostprogs-m), $(always),
752 Additional files can be specified in kbuild makefiles by use of $(clean-files).
759 Kbuild will assume files to be in the same relative directory as the
768 This will delete the directory debian in the toplevel directory, including all
772 This is only a special case used in the top level Kbuild file:
778 Usually kbuild descends down in subdirectories due to "obj-* := dir/",
779 but in the architecture makefiles where the kbuild infrastructure
786 The above assignment instructs kbuild to descend down in the
789 To support the clean infrastructure in the Makefiles that build the
797 When "make clean" is executed, make will descend down in arch/x86/boot,
798 and clean as usual. The Makefile located in arch/x86/boot/ may use
802 included in the top level makefile, and the kbuild infrastructure
805 Note 2: All directories listed in core-y, libs-y, drivers-y and net-y will
811 before starting to descend down in the individual directories.
820 2) Store kernel version in include/linux/version.h
822 - Additional prerequisites are specified in arch/$(ARCH)/Makefile
823 4) Recursively descend down in all directories listed in
825 - The values of the above variables are expanded in arch/$(ARCH)/Makefile.
828 The very first objects linked are listed in head-y, assigned by
868 the flags specified in OBJCOPYFLAGS will be used.
922 KBUILD_AFLAGS_KERNEL $(AS) options specific for built-in
933 KBUILD_CFLAGS_KERNEL $(CC) options specific for built-in
979 built before starting to descend down in the subdirectories.
987 before descending down in the subdirectories.
1002 $(head-y) lists objects to be linked first in vmlinux.
1004 The rest list directories where a built-in.o object file can be
1008 Then the rest follows in this order:
1024 it, wrap it in bootstrapping code, and copy the resulting files
1028 It is common to locate any additional processing in a boot/
1032 target specified in boot/. Therefore arch/$(ARCH)/Makefile shall
1033 call make manually to build a target in boot/.
1035 The recommended approach is to include shortcuts in
1046 make in a subdirectory.
1076 extra-y specifies additional targets created in the current
1077 directory, in addition to any targets specified by obj-*.
1079 Listing all targets in extra-y is required for two purposes:
1080 1) Enable kbuild to check changes in command lines
1089 shall be built, but shall not be linked as part of built-in.o.
1109 Any target that utilises if_changed must be listed in $(targets),
1113 if_changed may be used in conjunction with custom commands as
1114 defined in 6.8 "Custom kbuild commands".
1127 Copy binary. Uses OBJCOPYFLAGS usually specified in
1154 resulting in the target file being recompiled for no
1160 in an init section in the image. Platform code *must* copy the
1206 located in the same directory.
1222 KBUILD_CPPFLAGS : Set in top-level Makefile
1223 cppflags-y : May be set in the kbuild makefile
1225 Note that the full filename is used in this
1228 The kbuild infrastructure for *lds files is used in several
1236 to list the file in the Kbuild file.
1263 preferably in alphabetic order.
1267 can be seen in the example above for the usb subdirectory.
1275 up in another directory when doing 'make O=...' builds.
1286 headers in the file where it is present.
1292 In the example above all exported headers in the Kbuild file
1293 will be located in the directory "include/linux" when exported.
1298 include/asm-generic then this is listed in the file
1307 file is generated in the directory:
1313 of the set of exported headers in the directory:
1317 The generated wrapper will in both cases look like the following:
1343 for constructing installation directory names or showing in
1368 installation. This variable is not defined in the Makefile but
1369 may be passed in by the user if desired.
1398 right-hand side in an unevaluated form and then evaluates this form each