The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/scripts/Makefile.modbuiltin

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 # ==========================================================================
    2 # Generating modules.builtin
    3 # ==========================================================================
    4 
    5 src := $(obj)
    6 
    7 PHONY := __modbuiltin
    8 __modbuiltin:
    9 
   10 -include include/config/auto.conf
   11 # tristate.conf sets tristate variables to uppercase 'Y' or 'M'
   12 # That way, we get the list of built-in modules in obj-Y
   13 -include include/config/tristate.conf
   14 
   15 include scripts/Kbuild.include
   16 
   17 ifneq ($(KBUILD_SRC),)
   18 # Create output directory if not already present
   19 _dummy := $(shell [ -d $(obj) ] || mkdir -p $(obj))
   20 endif
   21 
   22 # The filename Kbuild has precedence over Makefile
   23 kbuild-dir := $(if $(filter /%,$(src)),$(src),$(srctree)/$(src))
   24 kbuild-file := $(if $(wildcard $(kbuild-dir)/Kbuild),$(kbuild-dir)/Kbuild,$(kbuild-dir)/Makefile)
   25 include $(kbuild-file)
   26 
   27 include scripts/Makefile.lib
   28 __subdir-Y     := $(patsubst %/,%,$(filter %/, $(obj-Y)))
   29 subdir-Y       += $(__subdir-Y)
   30 subdir-ym      := $(sort $(subdir-y) $(subdir-Y) $(subdir-m))
   31 subdir-ym      := $(addprefix $(obj)/,$(subdir-ym))
   32 obj-Y          := $(addprefix $(obj)/,$(obj-Y))
   33 
   34 modbuiltin-subdirs := $(patsubst %,%/modules.builtin, $(subdir-ym))
   35 modbuiltin-mods    := $(filter %.ko, $(obj-Y:.o=.ko))
   36 modbuiltin-target  := $(obj)/modules.builtin
   37 
   38 __modbuiltin: $(modbuiltin-target) $(subdir-ym)
   39         @:
   40 
   41 $(modbuiltin-target): $(subdir-ym) FORCE
   42         $(Q)(for m in $(modbuiltin-mods); do echo kernel/$$m; done;     \
   43         cat /dev/null $(modbuiltin-subdirs)) > $@
   44 
   45 PHONY += FORCE
   46 
   47 FORCE:
   48 
   49 # Descending
   50 # ---------------------------------------------------------------------------
   51 
   52 PHONY += $(subdir-ym)
   53 $(subdir-ym):
   54         $(Q)$(MAKE) $(modbuiltin)=$@
   55 
   56 
   57 # Declare the contents of the .PHONY variable as phony.  We keep that
   58 # information in a variable se we can use it in if_changed and friends.
   59 
   60 .PHONY: $(PHONY)

Cache object: a8b43a27f27191ebbbb2d09bee5c4a13


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.