Print this page
    
OS-2834 ship lx brand
    
      
        | Split | 
	Close | 
      
      | Expand all | 
      | Collapse all | 
    
    
          --- old/usr/src/uts/intel/Makefile
          +++ new/usr/src/uts/intel/Makefile
   1    1  #
   2    2  # CDDL HEADER START
   3    3  #
   4    4  # The contents of this file are subject to the terms of the
   5    5  # Common Development and Distribution License (the "License").
   6    6  # You may not use this file except in compliance with the License.
   7    7  #
   8    8  # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9    9  # or http://www.opensolaris.org/os/licensing.
  10   10  # See the License for the specific language governing permissions
  11   11  # and limitations under the License.
  12   12  #
  13   13  # When distributing Covered Code, include this CDDL HEADER in each
  14   14  # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15   15  # If applicable, add the following below this CDDL HEADER, with the
  16   16  # fields enclosed by brackets "[]" replaced with your own identifying
  17   17  # information: Portions Copyright [yyyy] [name of copyright owner]
  18   18  #
  19   19  # CDDL HEADER END
  20   20  #
  21   21  # uts/intel/Makefile
  22   22  #
  23   23  # Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
  24   24  # Copyright 2015 Igor Kozhukhov <ikozhukhov@gmail.com>
  25   25  #
  26   26  #       This makefile drives the production of all implementation architecture
  27   27  #       independent modules for Intel processors.
  28   28  
  29   29  UTSBASE = ..
  30   30  
  31   31  include Makefile.intel
  32   32  
  33   33  LINT_KMODS_X1   = $(LINT_KMODS:nsmb=)
  34   34  LINT_KMODS_X2   = $(LINT_KMODS_X1:smbfs=)
  35   35  LINT_KMODLIBS   = $(LINT_KMODS_X2:e1000g=)
  36   36  LINT_LIBS       = $(LINT_LIB) $(GEN_LINT_LIB) \
  37   37                    $(LINT_KMODLIBS:%=$(LINT_LIB_DIR)/llib-l%.ln)
  38   38  
  39   39  #
  40   40  # dprov is delivered in the SUNWcryptoint package.
  41   41  #
  42   42  DRV_KMODS       += dprov
  43   43  
  44   44  #
  45   45  #
  46   46  def             :=      TARGET= def
  47   47  def.prereq      :=      TARGET= def
  48   48  all             :=      TARGET= all
  49   49  all.prereq      :=      TARGET= all
  50   50  install         :=      TARGET= install
  51   51  install.prereq  :=      TARGET= install
  52   52  clean           :=      TARGET= clean
  53   53  clobber         :=      TARGET= clobber
  54   54  lint            :=      TARGET= lint
  55   55  lint.prereq     :=      TARGET= lint
  56   56  modlintlib      :=      TARGET= modlintlib
  57   57  modlist         :=      TARGET= modlist
  
    | 
      ↓ open down ↓ | 
    57 lines elided | 
    
      ↑ open up ↑ | 
  
  58   58  modlist         :=      NO_STATE= -K $$MODSTATE$$$$
  59   59  clean.lint      :=      TARGET= clean.lint
  60   60  check           :=      TARGET= check
  61   61  install_h       :=      TARGET= install_h
  62   62  install_h.prereq        :=      TARGET= install_h
  63   63  
  64   64  .KEEP_STATE:
  65   65  
  66   66  .PARALLEL:      $(PARALLEL_KMODS) $(XMODS) config $(LINT_DEPS)
  67   67  
  68      -def all install clean clobber modlist: $(KMODS) $(XMODS) config
       68 +def all install clean clobber modlist: genassym $(KMODS) $(XMODS) config
  69   69  
  70   70  clobber: clobber.targ
  71   71  
  72   72  #
  73   73  # Privilege constants
  74   74  #
  75   75  # NOTE: The rules for generating priv_const.c file are shared between all
  76   76  # processor architectures and and should be kept in sync. If they are changed in
  77   77  # this file make sure that sparc rules are updated as well.
  78   78  #
  79   79  PRIVS_C = $(SRC)/uts/common/os/priv_const.c
  80   80  
  81   81  $(PRIVS_C): $(PRIVS_AWK) $(PRIVS_DEF)
  82   82          $(AWK) -f $(PRIVS_AWK) < $(PRIVS_DEF) cfile=$@
  83   83  
  84   84  CLOBBERFILES += $(PRIVS_C)
  85   85  
  86   86  #
  87   87  # Prerequisites
  88   88  #
  89   89  # The uts/Makefile defines build parallelism for x86 platforms such that i86pc,
  90   90  # i86xpv and intel are all built in parallel. This requires building certain
  91   91  # parts before the parallel build can start. The uts/Makefile appends the
  92   92  # '.prereq' string to the original target and executes this Makefile to build
  93   93  # any prerequisites needed before the full parallel build can start. After that
  94   94  # make continues with normal targets.
  95   95  #
  96   96  # Any build prerequisites for x86 builds should be described here.
  97   97  #
  98   98  # genassym is used to build intel/dtrace and genunix, so it should be built
  99   99  # first.
  
    | 
      ↓ open down ↓ | 
    21 lines elided | 
    
      ↑ open up ↑ | 
  
 100  100  #
 101  101  # priv_const.c is required to build genunix.
 102  102  #
 103  103  # genunix is used by everyone to ctf-merge with. Genunix is CTF-merged with
 104  104  #   intel/ip so as a side effect this dependency builds intel/ip as part of the
 105  105  #   prerequisites.
 106  106  #
 107  107  # intel/dtrace depends on i86pc/genassym, so we need to build both
 108  108  # i86pc/genassym and intel/genassym.
 109  109  #
 110      -all.prereq install.prereq def.prereq: genunix FRC
      110 +all.prereq install.prereq def.prereq: genassym genunix FRC
 111  111          @cd ../i86pc/genassym; pwd; $(MAKE) $(@:%.prereq=%)
 112  112  
 113  113  #
 114  114  # i86pc lint libraries should be built first
 115  115  #
 116  116  lint.prereq: FRC
 117  117          @cd ../i86pc; pwd; $(MAKE) $(NO_STATE) lint
 118  118  
 119  119  #
 120  120  # Nothing to do for any other prerequisite targets.
 121  121  #
 122  122  %.prereq:
 123  123  
 124  124  genunix: $(PRIVS_C)
 125  125  
 126  126  modlintlib clean.lint: $(LINT_KMODS) $(XMODS)
 127  127  
 128      -$(KMODS) $(SUBDIRS) config:     FRC
      128 +genassym $(KMODS) $(SUBDIRS) config:    FRC
 129  129          @cd $@; pwd; $(MAKE) $(NO_STATE) $(TARGET)
 130  130  
 131  131  $(XMODS):       FRC
 132  132          @if [ -f $@/Makefile  ]; then \
 133  133                  cd $@; pwd; $(MAKE) $(NO_STATE) $(TARGET); \
 134  134          else \
 135  135                  true; \
 136  136          fi
 137  137  
 138  138  install_h check:        FRC
 139  139          @cd sys; pwd; $(MAKE) $(TARGET)
 140  140          @cd asm; pwd; $(MAKE) $(TARGET)
 141  141          @cd ia32/sys; pwd; $(MAKE) $(TARGET)
 142  142          @cd amd64/sys; pwd; $(MAKE) $(TARGET)
 143  143  
 144  144  #
 145  145  # Work-around to disable acpica global crosscheck lint warnings
 146  146  #
 147  147  LGREP.intel =   grep -v 'intel/io/acpica'
 148  148  
 149  149  #
 150  150  #       Full kernel lint target.
 151  151  #
 152  152  LINT_TARGET     = globallint
 153  153  
 154  154  # workaround for multiply defined errors
 155  155  globallint := LINTFLAGS += -erroff=E_NAME_MULTIPLY_DEF2
 156  156  
 157  157  globallint:
 158  158          @pwd
 159  159          @-$(ECHO) "\nFULL KERNEL: global crosschecks:"
 160  160          @-$(LINT) $(LINTFLAGS) $(LINT_LIBS) 2>&1 | $(LGREP.intel) | $(LGREP.2)
 161  161  
 162  162  lint:   modlintlib .WAIT $(LINT_DEPS)
 163  163  
 164  164  include ../Makefile.targ
  
    | 
      ↓ open down ↓ | 
    26 lines elided | 
    
      ↑ open up ↑ | 
  
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX