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/sun4v/Makefile

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 # CDDL HEADER START
    3 #
    4 # The contents of this file are subject to the terms of the
    5 # Common Development and Distribution License (the "License").
    6 # You may not use this file except in compliance with the License.
    7 #
    8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
    9 # or http://www.opensolaris.org/os/licensing.
   10 # See the License for the specific language governing permissions
   11 # and limitations under the License.
   12 #
   13 # When distributing Covered Code, include this CDDL HEADER in each
   14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
   15 # If applicable, add the following below this CDDL HEADER, with the
   16 # fields enclosed by brackets "[]" replaced with your own identifying
   17 # information: Portions Copyright [yyyy] [name of copyright owner]
   18 #
   19 # CDDL HEADER END
   20 #
   21 #
   22 # Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
   23 # Use is subject to license terms.
   24 #
   25 #       This makefile drives the production of all implementation architecture
   26 #       dependent modules for the sun4v architecture.
   27 #
   28 
   29 UTSBASE = ..
   30 
   31 include Makefile.sun4v
   32 include Makefile.stpaul
   33 include Makefile.huron
   34 include Makefile.maramba
   35 include Makefile.thunder
   36 include Makefile.turgo
   37 include Makefile.congo
   38 include Makefile.monza
   39 
   40 USR_GLENDALE_DIR        = $(USR_PLAT_DIR)/SUNW,Sun-Blade-T6320
   41 USR_GLENDALE_SBIN_DIR   = $(USR_GLENDALE_DIR)/sbin
   42 USR_GLENDALE_LIB_DIR    = $(USR_GLENDALE_DIR)/lib
   43 
   44 
   45 #
   46 #       The following are SPARC specific (rather than sun4v) specific modules
   47 #       which are required for the sun4v kernel to completely lint. They are
   48 #       not involved in the build in any other way. In order to minimize
   49 #       build time, it is assumed that they are up to date. But since sun4v
   50 #       is really a separate architecture we cannot use the v7 sparc modules.
   51 #
   52 SPARC_LIB_DIR    = $(UTSBASE)/sparc/lint-libs/$(OBJS_DIR)
   53 
   54 SPARC_LINTS      =
   55 
   56 #
   57 #
   58 #
   59 LINT_LIBS        = $(LINT_LIB) \
   60                    $(LINT_KMODS:%=$(LINT_LIB_DIR)/llib-l%.ln) \
   61                    $(CLOSED_LINT_KMODS:%=$(LINT_LIB_DIR)/llib-l%.ln) \
   62                    $(SPARC_LINTS:%=$(SPARC_LIB_DIR)/llib-l%.ln)
   63 
   64 def             :=      TARGET= def
   65 all             :=      TARGET= all
   66 install         :=      TARGET= install
   67 install_h       :=      TARGET= install_h
   68 clean           :=      TARGET= clean
   69 clobber         :=      TARGET= clobber
   70 lint            :=      TARGET= lint
   71 lintlib         :=      TARGET= lintlib
   72 modlintlib      :=      TARGET= modlintlib
   73 modlist         :=      TARGET= modlist
   74 modlist modlist.sparc :=        NO_STATE= -K $$MODSTATE$$$$
   75 clean.lint      :=      TARGET= clean.lint
   76 check           :=      TARGET= check
   77 
   78 .KEEP_STATE:
   79 
   80 .PARALLEL:      $(PARALLEL_KMODS) $(CLOSED_KMODS) $(XMODS) $(CLOSED_XMODS) \
   81                 modlist modlist.sparc
   82 
   83 # Override for CPU_KMODS... they cannot be built
   84 # in parallel
   85 .NO_PARALLEL:   $(CPU_KMODS)
   86 
   87 def all clean clobber clean.lint: genassym unix .WAIT \
   88         $(KMODS) $(CLOSED_KMODS) $(XMODS) $(CLOSED_XMODS) $(IMPLEMENTATIONS)
   89 
   90 # list the modules under sun4v.
   91 modlist: unix $(KMODS) $(CLOSED_KMODS) $(XMODS) $(CLOSED_XMODS) \
   92         $(IMPLEMENTATIONS)
   93 
   94 # list the modules for Install -k sun4v.
   95 modlist.karch: modlist modlist.sparc
   96 
   97 modlist.sparc:
   98         @cd $(SRC)/uts/sparc; pwd; $(MAKE) $(NO_STATE) modlist
   99 
  100 install: install_platforms genassym unix .WAIT $(KMODS) $(CLOSED_KMODS) \
  101         $(XMODS) $(CLOSED_XMODS) $(IMPLEMENTATIONS)
  102 
  103 lintlib:        unix
  104 
  105 modlintlib:     $(LINT_KMODS) $(CLOSED_LINT_KMODS)
  106 
  107 genassym unix $(KMODS): FRC
  108         @cd $@; pwd; $(MAKE) $(NO_STATE) $(TARGET)
  109 
  110 $(IMPLEMENTATIONS):     FRC
  111         @cd $@; pwd; THISIMPL=$@ $(MAKE) $(NO_STATE) $(TARGET)
  112 
  113 $(XMODS):       FRC
  114         @if [ -f $@/Makefile  ]; then \
  115                 cd $@; pwd; $(MAKE) $(NO_STATE) $(TARGET); \
  116         else \
  117                 true; \
  118         fi
  119 
  120 $(CLOSED_XMODS):        FRC
  121         @if [ -f $(CLOSED)/uts/sun4v/$@/Makefile  ]; then \
  122                 cd $(CLOSED)/uts/sun4v/$@; pwd; \
  123                     $(MAKE) $(NO_STATE) $(TARGET); \
  124         else \
  125                 true; \
  126         fi
  127 
  128 $(CLOSED_KMODS):        FRC
  129         cd $(CLOSED)/uts/sun4v/$@; pwd; $(MAKE) $(NO_STATE) $(TARGET)
  130 
  131 install_h check:        install_platforms $(IMPLEMENTATIONS) FRC
  132         @cd sys; pwd; $(MAKE) $(TARGET)
  133         @cd vm; pwd; $(MAKE) $(TARGET)
  134 
  135 #
  136 # Rules for the /platforms directories.  This is hardwired here because
  137 # the first stage of the project (KBI) only implements the userland
  138 # changes, but the only reasonable place to record the aliases is
  139 # here in kernel land.
  140 #
  141 $(ROOT_PLAT_DIRS): $(ROOT_PLAT_DIR)
  142         -$(INS.dir)
  143 
  144 $(LINKED_PLATFORMS:%=$(ROOT_PLAT_DIR)/%): $(ROOT_PLAT_DIR)
  145         $(INS.slink1)
  146 
  147 #
  148 # create directories in /usr/platform/ for the implementations that are
  149 # defined in $(IMPLEMENTED_PLATFORM)
  150 #
  151 
  152 # Foreach $(IMPLEMENTED_PLATFORM) there can be a list of $(LINKED_PLATFORMS)
  153 # that are linked to it.
  154 #
  155 $(USR_PLAT_DIR)/$(IMPLEMENTED_PLATFORM):        $(USR_PLAT_DIR)
  156         -$(INS.dir)
  157 
  158 #
  159 # create the links in /usr/platform/ foreach $(LINKED_PLATFORMS)
  160 # to it's corresponding $(IMPLEMENTED_PLATFORM).
  161 #
  162 PLATFORMS       = $(LINKED_PLATFORMS)
  163 
  164 $(USR_PLAT_DIRS): $(USR_PLAT_DIR)
  165         $(INS.slink3)
  166 
  167 PLATFORMS       += $(IMPLEMENTED_PLATFORM)
  168 
  169 
  170 #
  171 # Make the /platforms directories.  This is hardwired here because
  172 # the first stage of the project (KBI) only implements the userland
  173 # changes, but the only reasonable place to record the aliases is
  174 # here in kernel land.
  175 #
  176 
  177 install_platforms:      $(ROOT_PSM_DIR) $(USR_PSM_DIR) \
  178                         $(ROOT_PLAT_DIRS) $(USR_PLAT_DIRS) \
  179                         $(LINKED_PLATFORMS:%=$(ROOT_PLAT_DIR)/%) \
  180                         $(USR_DESKTOP_DIR) $(USR_DESKTOP_INC_DIR) \
  181                         $(USR_DESKTOP_SBIN_DIR) $(USR_DESKTOP_LIB_DIR) \
  182                         $(USR_STPAUL_DIR) $(USR_STPAUL_SBIN_DIR) \
  183                         $(USR_STPAUL_LIB_DIR) \
  184                         $(USR_GLENDALE_DIR) $(USR_GLENDALE_SBIN_DIR) \
  185                         $(USR_GLENDALE_LIB_DIR) \
  186                         $(USR_HURON_DIR) \
  187                         $(USR_HURON_SBIN_DIR) $(USR_HURON_LIB_DIR) \
  188                         $(USR_MARAMBA_DIR) $(USR_MARAMBA_SBIN_DIR) \
  189                         $(USR_MARAMBA_LIB_DIR) \
  190                         $(USR_THUNDER_DIR) $(USR_THUNDER_SBIN_DIR) \
  191                         $(USR_THUNDER_LIB_DIR) \
  192                         $(USR_TURGO_DIR) $(USR_TURGO_SBIN_DIR) \
  193                         $(USR_TURGO_LIB_DIR) \
  194                         $(USR_CONGO_DIR) $(USR_CONGO_SBIN_DIR) \
  195                         $(USR_CONGO_LIB_DIR) \
  196                         $(USR_MONZA_DIR) \
  197                         $(USR_MONZA_SBIN_DIR) $(USR_MONZA_SBIN_LINKS)
  198 
  199 
  200 #
  201 # rules for making include, sbin, lib dirs/links in
  202 # /usr/platform/$(PLATFORM)/ for desktop platforms
  203 #
  204 $(USR_DESKTOP_INC_DIR):         $(USR_DESKTOP_DIR)
  205         $(INS.slink4)
  206 
  207 $(USR_DESKTOP_SBIN_DIR):        $(USR_DESKTOP_DIR)
  208         $(INS.slink5)
  209 
  210 $(USR_DESKTOP_LIB_DIR):         $(USR_DESKTOP_DIR)
  211         -$(INS.dir)
  212 
  213 $(USR_STPAUL_DIR):              $(USR_SUN4V_PLAT_DIR)
  214         -$(INS.dir)
  215 
  216 $(USR_STPAUL_SBIN_DIR):         $(USR_STPAUL_DIR)
  217         $(INS.slink5)
  218 
  219 $(USR_STPAUL_LIB_DIR):          $(USR_STPAUL_DIR)
  220         -$(INS.dir)
  221 
  222 $(USR_HURON_DIR):               $(USR_SUN4V_PLAT_DIR)
  223         -$(INS.dir)
  224 
  225 $(USR_HURON_SBIN_DIR):          $(USR_HURON_DIR)
  226         $(INS.slink5)
  227 
  228 $(USR_HURON_LIB_DIR):           $(USR_HURON_DIR)
  229         -$(INS.dir)
  230 
  231 $(USR_GLENDALE_DIR):            $(USR_SUN4V_PLAT_DIR)
  232         -$(INS.dir)
  233 
  234 $(USR_GLENDALE_SBIN_DIR):               $(USR_GLENDALE_DIR)
  235         $(INS.slink5)
  236 
  237 $(USR_GLENDALE_LIB_DIR):                $(USR_GLENDALE_DIR)
  238         -$(INS.dir)
  239 
  240 $(USR_MARAMBA_DIR):             $(USR_SUN4V_PLAT_DIR)
  241         -$(INS.dir)
  242 
  243 $(USR_MARAMBA_SBIN_DIR):        $(USR_MARAMBA_DIR)
  244         $(INS.slink5)
  245 
  246 $(USR_MARAMBA_LIB_DIR):         $(USR_MARAMBA_DIR)
  247         -$(INS.dir)
  248 
  249 $(USR_THUNDER_DIR):             $(USR_SUN4V_PLAT_DIR)
  250         -$(INS.dir)
  251 
  252 $(USR_THUNDER_SBIN_DIR):        $(USR_THUNDER_DIR)
  253         $(INS.slink5)
  254 
  255 $(USR_THUNDER_LIB_DIR):         $(USR_THUNDER_DIR)
  256         -$(INS.dir)
  257 
  258 $(USR_TURGO_DIR):               $(USR_SUN4V_PLAT_DIR)
  259         -$(INS.dir)
  260 
  261 $(USR_TURGO_SBIN_DIR):          $(USR_TURGO_DIR)
  262         $(INS.slink5)
  263 
  264 $(USR_TURGO_LIB_DIR):           $(USR_TURGO_DIR)
  265         -$(INS.dir)
  266 
  267 $(USR_CONGO_DIR):               $(USR_SUN4V_PLAT_DIR)
  268         -$(INS.dir)
  269 
  270 $(USR_CONGO_SBIN_DIR):          $(USR_CONGO_DIR)
  271         $(INS.slink5)
  272 
  273 $(USR_CONGO_LIB_DIR):           $(USR_CONGO_DIR)
  274         -$(INS.dir)
  275 
  276 $(USR_MONZA_DIR):               $(USR_SUN4V_PLAT_DIR)
  277         -$(INS.dir)
  278 
  279 $(USR_MONZA_SBIN_DIR):          $(USR_MONZA_DIR)
  280         -$(INS.dir)
  281 
  282 $(USR_MONZA_SBIN_LINKS):        $(USR_MONZA_SBIN_DIR)
  283         $(INS.slink7)
  284 
  285 #
  286 #       Full kernel lint target.
  287 #
  288 LINT_TARGET     = globallint
  289 
  290 globallint:
  291         @-$(ECHO) "\nSUN4V KERNEL: global crosschecks:"
  292         @-$(LINT) $(LINTFLAGS) $(LINT_LIBS) 2>&1 | $(LGREP.2)
  293 
  294 lint:   lintlib .WAIT modlintlib .WAIT $(SPARC_LINTS) $(LINT_DEPS) \
  295         $(IMPLEMENTATIONS) $(LINT_CPU_KMODS)
  296 
  297 # EXPORT DELETE START
  298 
  299 EXPORT_SRC:
  300         $(RM) Makefile+
  301         sed -e "/^# EXPORT DELETE START/,/^# EXPORT DELETE END/d" \
  302             < Makefile > Makefile+
  303         $(MV) Makefile+ Makefile
  304         $(CHMOD) 444 Makefile
  305 
  306 # EXPORT DELETE END
  307 
  308 include ../Makefile.targ
  309 
  310 #
  311 # Cross-reference customization: build a cross-reference over all of the
  312 # sun4v-related directories.
  313 #
  314 SHARED_XRDIRS   = ../sun4v ../sun4 ../sfmmu ../sparc ../sun ../common
  315 CLOSED_XRDIRS   = $(SHARED_XRDIRS:../%=../% ../../../closed/uts/%)
  316 XRDIRS          = $(SHARED_XRDIRS)
  317 $(CLOSED_BUILD)XRDIRS   = $(CLOSED_XRDIRS:../../../closed/uts/sfmmu=)
  318 
  319 XRPRUNE = i86pc sun4u intel
  320 
  321 cscope.out tags: FRC
  322         $(XREF) -x $@

Cache object: 23ff069445842b9acbe48f3eef0dd18a


[ 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.