Print this page
    
XXXX remove i86xpv platform code
Reviewed by: Sanjay Nadkarni <sanjay.nadkarni@nexenta.com>
Reviewed by: Rick McNeal <rick.mcneal@nexenta.com>
    
      
        | Split | Close | 
      | Expand all | 
      | Collapse all | 
    
    
          --- old/usr/src/uts/Makefile
          +++ new/usr/src/uts/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  
  22   22  #
  23   23  # Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved.
  24   24  # Copyright 2018 Nexenta Systems, Inc.
  25   25  #
  26   26  
  27   27  include ../Makefile.master
  28   28  
  29   29  #
  
    | ↓ open down ↓ | 29 lines elided | ↑ open up ↑ | 
  30   30  # List of architectures to build as part of the standard build.
  31   31  #
  32   32  # Some of these architectures are built in parallel (see i386_PARALLEL and
  33   33  # sparc_PARALLEL). This requires building some parts first before parallel build
  34   34  # can start. Platform make files know what should be built as a prerequisite for
  35   35  # the parallel build to work. The i386_PREREQ and sparc_PREREQ variables tell
  36   36  # which platform directory to enter to start making prerequisite dependencies.
  37   37  #
  38   38  sparc_ARCHITECTURES = sun4v sun4u sparc
  39   39  
  40      -i386_ARCHITECTURES = i86pc i86xpv intel
       40 +i386_ARCHITECTURES = i86pc intel
  41   41  
  42   42  #
  43   43  # For i386 all architectures can be compiled in parallel.
  44   44  #
  45   45  # intel/Makefile knows how to build prerequisites needed for parallel build.
  46   46  #
  47   47  i386_PREREQ = intel
  48   48  i386_PARALLEL = $(i386_ARCHITECTURES)
  49   49  
  50   50  #
  51   51  # For sparc all architectures can be compiled in parallel.
  52   52  #
  53   53  # sun4/Makefile knows how to build prerequisites needed for parallel build.
  54   54  # can start.
  55   55  #
  56   56  sparc_PREREQ = sun4
  57   57  sparc_PARALLEL = $(sparc_ARCHITECTURES)
  58   58  
  59   59  #
  60   60  # Platforms defined in $(MACH)_PARALLEL are built in parallel. DUMMY is placed
  61   61  # at the end in case $(MACH)_PARALLEL is empty to prevent everything going in
  62   62  # parallel.
  63   63  #
  64   64  .PARALLEL: $($(MACH)_PARALLEL) DUMMY
  65   65  
  66   66  #
  67   67  # For build prerequisites we use a special target which is constructed by adding
  68   68  # '.prereq' suffix to the $(MACH)_PREREQ.
  69   69  #
  70   70  PREREQ_TARGET = $($(MACH)_PREREQ:%=%.prereq)
  71   71  
  72   72  
  73   73  def             :=      TARGET= def
  74   74  all             :=      TARGET= all
  75   75  install         :=      TARGET= install
  76   76  install_h       :=      TARGET= install_h
  77   77  clean           :=      TARGET= clean
  78   78  clobber         :=      TARGET= clobber
  79   79  clobber_h       :=      TARGET= clobber
  80   80  lint            :=      TARGET= lint
  81   81  clean.lint      :=      TARGET= clean.lint
  82   82  check           :=      TARGET= check
  83   83  modlist         :=      TARGET= modlist
  84   84  modlist         :=      NO_STATE= -K $$MODSTATE$$$$
  85   85  
  86   86  .KEEP_STATE:
  87   87  
  88   88  def all lint: all_h $(PMTMO_FILE) $($(MACH)_ARCHITECTURES)
  89   89  
  90   90  install: all_h install_dirs $(PMTMO_FILE) $($(MACH)_ARCHITECTURES)
  91   91  
  92   92  install_dirs:
  93   93          @cd ..; pwd; $(MAKE) rootdirs
  94   94          @pwd
  95   95  
  96   96  #
  97   97  # Rule to build prerequisites. The left part of the pattern will match
  98   98  # PREREQ_TARGET.
  99   99  #
 100  100  # The location of the Makefile is determined by strippinng '.prereq' suffix from
 101  101  # the target name. We add '.prereq' suffix to the target passed to the child
 102  102  # Makefile so that it can distinguish prerequisite build from the regular one.
 103  103  #
 104  104  #
 105  105  %.prereq:
 106  106          @cd $(@:%.prereq=%); pwd; $(MAKE) $(NO_STATE) $(TARGET).prereq
 107  107  
 108  108  #
 109  109  # Rule to build architecture files. Build all required prerequisites and then
 110  110  # build the rest (potentially in parallel).
 111  111  #
 112  112  $($(MACH)_ARCHITECTURES): $(PREREQ_TARGET) FRC
 113  113          @cd $@; pwd; $(MAKE) $(NO_STATE) $(TARGET)
 114  114  
 115  115  $(PMTMO_FILE) pmtmo_file: $(PATCH_MAKEUP_TABLE)
 116  116          @if [ -z "$(PATCH_MAKEUP_TABLE)" ] ; then \
 117  117                  echo 'ERROR: $$(PATCH_MAKEUP_TABLE) not set' \
 118  118                      'in environment' >&2 ; \
 119  119                  exit 1 ; \
 120  120          fi
 121  121          RELEASE="$(RELEASE)" MACH="$(MACH)" \
 122  122              $(CTFCVTPTBL) -o $(PMTMO_FILE) $(PATCH_MAKEUP_TABLE)
 123  123  
 124  124  #
 125  125  # The following is the list of directories which contain Makefiles with
 126  126  # targets to install header file. The machine independent headers are
 127  127  # installed by invoking the Makefile in the directory containing the
 128  128  # header files. Machine and architecture dependent headers are installed
 129  129  # by invoking the main makefile for that architecture/machine which,
 130  130  # in turn, is responsible for invoking the Makefiles which install headers.
 131  131  # It is done this way so as not to assume that all of the header files in
 132  132  # the architecture/machine dependent subdirectories are in completely
 133  133  # isomorphic locations.
 134  134  #
 135  135  COMMON_HDRDIRS= common/c2 \
 136  136                  common/des \
 137  137                  common/fs \
 138  138                  common/gssapi \
 139  139                  common/idmap \
 140  140                  common/klm \
 141  141                  common/inet \
 142  142                  common/inet/ipf/netinet \
 143  143                  common/inet/kssl \
 144  144                  common/inet/nca \
 145  145                  common/inet/sockmods/netpacket \
 146  146                  common/io/bpf/net \
 147  147                  common/io/fibre-channel/fca/qlc \
 148  148                  common/ipp \
 149  149                  common/net \
 150  150                  common/netinet \
 151  151                  common/nfs \
 152  152                  common/pcmcia/sys \
 153  153                  common/rpc \
 154  154                  common/rpcsvc \
 155  155                  common/sharefs \
 156  156                  common/smb \
 157  157                  common/smbsrv \
 158  158                  common/sys \
 159  159                  common/vm
 160  160  
 161  161  
 162  162  #
 163  163  # Subset of COMMON_HDRDIRS in which at least one header is generated
 164  164  # at runtime (e.g., rpcgen), and in which "make clean" should run.
 165  165  # Other directories should be included here, but do not yet have the
 166  166  # necessary Makefile support (make clean).
  
    | ↓ open down ↓ | 116 lines elided | ↑ open up ↑ | 
 167  167  #
 168  168  DYNHDRDIRS =    common/gssapi \
 169  169                  common/idmap \
 170  170                  common/io/fibre-channel/fca/qlc \
 171  171                  common/klm \
 172  172                  common/rpc \
 173  173                  common/rpcsvc \
 174  174                  common/sys
 175  175  
 176  176  sparc_HDRDIRS= sun/sys
 177      -i386_HDRDIRS= i86pc/vm i86xpv/vm
      177 +i386_HDRDIRS= i86pc/vm
 178  178  
 179  179  HDRDIRS= $(COMMON_HDRDIRS) $($(MACH)_HDRDIRS)
 180  180  install_h check: $(HDRDIRS) $($(MACH)_ARCHITECTURES)
 181  181  
 182  182  $(HDRDIRS): FRC
 183  183          @cd $@; pwd; $(MAKE) $(TARGET)
 184  184  
 185  185  # ensures that headers made by rpcgen and others are available in uts source
 186  186  # for kernel builds to reference without building install_h
 187  187  #
 188  188  all_h: FRC
 189  189          @cd common/sys; pwd; $(MAKE) $@
 190  190          @cd common/rpc; pwd; $(MAKE) $@
 191  191          @cd common/rpcsvc; pwd; $(MAKE) $@
 192  192          @cd common/gssapi; pwd; $(MAKE) $@
 193  193          @cd common/idmap; pwd; $(MAKE) $@
 194  194          @cd common/klm; pwd; $(MAKE) $@
 195  195  
 196  196  clean clobber: $($(MACH)_ARCHITECTURES) $(DYNHDRDIRS)
 197  197          @if [ '$(PATCH_BUILD)' != '#' ] ; then \
 198  198                  echo $(RM) $(PMTMO_FILE) ; \
 199  199                  $(RM) $(PMTMO_FILE) ; \
 200  200          fi
 201  201  
 202  202  # testing convenience
 203  203  clobber_h: $(DYNHDRDIRS)
 204  204  
 205  205  clean.lint modlist: $($(MACH)_ARCHITECTURES)
 206  206  
 207  207  #
 208  208  # Cross-reference customization: build a cross-reference over all of
 209  209  # the supported architectures.  Although there's no correct way to set
 210  210  # the include path (since we don't know what architecture is the one
 211  211  # the user will be interested in), it's historically been set to
 212  212  # mirror the $(XRDIRS) list, and that works kinda sorta okay.
 213  213  #
 214  214  XRDIRS = $(sparc_ARCHITECTURES) $(i386_ARCHITECTURES) sun4 sfmmu        \
 215  215          sun common
 216  216  
 217  217  XRINCDIRS = $(XRDIRS)
 218  218  
 219  219  cscope.out tags: FRC
 220  220          $(XREF) -x $@
 221  221  
 222  222  FRC:
  
    | ↓ open down ↓ | 35 lines elided | ↑ open up ↑ | 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX