Print this page
    
OS-5451 comm page should not break i86xpv
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
OS-5192 need faster clock_gettime
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>
Reviewed by: Joshua M. Clulow <jmc@joyent.com>
Reviewed by: Ryan Zezeski <ryan@zinascii.com>
    
      
        | Split | 
	Close | 
      
      | Expand all | 
      | Collapse all | 
    
    
          --- old/usr/src/uts/i86pc/Makefile.files
          +++ new/usr/src/uts/i86pc/Makefile.files
   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
  
    | 
      ↓ open down ↓ | 
    15 lines elided | 
    
      ↑ open up ↑ | 
  
  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) 1992, 2010, Oracle and/or its affiliates. All rights reserved.
  24   24  #
  25   25  # Copyright (c) 2010, Intel Corporation.
       26 +# Copyright 2016 Joyent, Inc.
  26   27  #
  27   28  #       This Makefile defines file modules in the directory uts/i86pc
  28   29  #       and its children. These are the source files which are i86pc
  29   30  #       "implementation architecture" dependent.
  30   31  #
  31   32  
  32   33  #
  33   34  #       object lists
  34   35  #
  35   36  CORE_OBJS +=                    \
  36   37          acpi_stubs.o            \
  37   38          biosdisk.o              \
  38   39          bios_call.o             \
  39   40          cbe.o                   \
  40   41          cmi.o                   \
  41   42          cmi_hw.o                \
  42   43          cms.o                   \
       44 +        comm_page.o             \
  43   45          confunix.o              \
  44   46          cpu_idle.o              \
  45   47          cpuid.o                 \
  46   48          cpuid_subr.o            \
  47   49          cpupm.o                 \
  48   50          cpupm_mach.o            \
  49   51          cpupm_amd.o             \
  50   52          cpupm_intel.o           \
  51   53          cpupm_throttle.o        \
  52   54          cpu_acpi.o              \
  53   55          dis_tables.o            \
  54   56          ddi_impl.o              \
  55   57          dtrace_subr.o           \
  56   58          dvma.o                  \
  57   59          fpu_subr.o              \
  58   60          fakebop.o               \
  59   61          fastboot.o              \
  60   62          fb_swtch.o              \
  61   63          graphics.o              \
  62   64          hardclk.o               \
  63   65          hat_i86.o               \
  64   66          hat_kdi.o               \
  65   67          hment.o                 \
  66   68          hold_page.o             \
  67   69          hrtimers.o              \
  68   70          htable.o                \
  69   71          hypercall.o             \
  70   72          hypersubr.o             \
  71   73          i86_mmu.o               \
  72   74          ibft.o                  \
  73   75          instr_size.o            \
  74   76          intr.o                  \
  75   77          kboot_mmu.o             \
  76   78          kdi_subr.o              \
  77   79          kdi_idt.o               \
  78   80          kdi_idthdl.o            \
  79   81          kdi_asm.o               \
  80   82          lgrpplat.o              \
  81   83          mach_kdi.o              \
  82   84          mach_sysconfig.o        \
  83   85          machdep.o               \
  84   86          mem_config.o            \
  85   87          mem_config_stubs.o      \
  86   88          mem_config_arch.o       \
  87   89          memlist_new.o           \
  88   90          memnode.o               \
  89   91          microcode.o             \
  90   92          microfind.o             \
  91   93          mlsetup.o               \
  92   94          mp_call.o               \
  93   95          mp_implfuncs.o          \
  94   96          mp_machdep.o            \
  95   97          mp_pc.o                 \
  96   98          mp_startup.o            \
  97   99          memscrub.o              \
  98  100          mpcore.o                \
  99  101          notes.o                 \
 100  102          pci_bios.o              \
 101  103          pci_cfgacc.o            \
 102  104          pci_cfgacc_x86.o        \
 103  105          pci_cfgspace.o          \
 104  106          pci_mech1.o             \
 105  107          pci_mech1_amd.o         \
 106  108          pci_mech2.o             \
 107  109          pci_neptune.o           \
 108  110          pci_orion.o             \
 109  111          pmem.o                  \
 110  112          ppage.o                 \
 111  113          pwrnow.o                \
 112  114          speedstep.o             \
 113  115          ssp.o                   \
 114  116          startup.o               \
 115  117          timestamp.o             \
 116  118          todpc_subr.o            \
 117  119          trap.o                  \
 118  120          turbo.o                 \
 119  121          vm_machdep.o            \
 120  122          xpv_platform.o          \
 121  123          x_call.o
 122  124  
 123  125  #
 124  126  #       Add the SMBIOS subsystem object files directly to the list of objects
 125  127  #       built into unix itself; this is all common code except for smb_dev.c.
 126  128  #
 127  129  CORE_OBJS += $(SMBIOS_OBJS)
 128  130  
 129  131  #
 130  132  # These get compiled twice:
 131  133  # - once in the dboot (direct boot) identity mapped code
 132  134  # - once for use during early startup in unix
 133  135  #
 134  136  BOOT_DRIVER_OBJS =              \
 135  137          boot_console.o          \
 136  138          boot_keyboard.o         \
 137  139          boot_keyboard_table.o   \
 138  140          boot_vga.o              \
 139  141          boot_mmu.o
 140  142  
 141  143  CORE_OBJS += $(BOOT_DRIVER_OBJS)
 142  144  
 143  145  #
 144  146  #       locore.o is special. It must be the first file relocated so that it
 145  147  #       it is relocated just where its name implies.
 146  148  #
 147  149  SPECIAL_OBJS_32 +=              \
 148  150          locore.o                \
 149  151          fast_trap_asm.o         \
 150  152          interrupt.o             \
 151  153          syscall_asm.o
 152  154  
 153  155  SPECIAL_OBJS_64 +=              \
 154  156          locore.o                \
 155  157          fast_trap_asm.o         \
 156  158          interrupt.o             \
 157  159          syscall_asm_amd64.o
 158  160  
 159  161  SPECIAL_OBJS += $(SPECIAL_OBJS_$(CLASS))
 160  162  
 161  163  #
 162  164  # Objects that get compiled into the identity mapped PT_LOAD section of unix
 163  165  # to handle the earliest part of booting.
 164  166  #
 165  167  DBOOT_OBJS_32 =
 166  168  
 167  169  DBOOT_OBJS_64 += dboot_elfload.o
 168  170  
 169  171  DBOOT_OBJS +=                   \
 170  172          dboot_asm.o             \
 171  173          dboot_grub.o            \
 172  174          dboot_printf.o          \
 173  175          dboot_startkern.o       \
 174  176          memcpy.o                \
 175  177          memset.o                \
 176  178          muldiv.o                \
 177  179          sha1.o                  \
 178  180          string.o                \
 179  181          $(BOOT_DRIVER_OBJS)     \
 180  182          $(DBOOT_OBJS_$(CLASS))
 181  183  
 182  184  #
 183  185  #                       driver and misc modules
 184  186  #
 185  187  GFX_PRIVATE_OBJS        += gfx_private.o gfxp_pci.o gfxp_segmap.o \
 186  188                             gfxp_devmap.o gfxp_vgatext.o gfxp_vm.o vgasubr.o
 187  189  FIPE_OBJS += fipe_drv.o fipe_pm.o
 188  190  IOAT_OBJS += ioat.o ioat_rs.o ioat_ioctl.o ioat_chan.o
 189  191  ISANEXUS_OBJS += isa.o dma_engine.o i8237A.o
 190  192  PCIE_MISC_OBJS += pcie_acpi.o pciehpc_acpi.o pcie_x86.o
 191  193  PCI_E_NEXUS_OBJS += npe.o npe_misc.o
 192  194  PCI_E_NEXUS_OBJS += pci_common.o pci_kstats.o pci_tools.o
 193  195  PCINEXUS_OBJS += pci.o pci_common.o pci_kstats.o pci_tools.o
 194  196  PCPLUSMP_OBJS += apic.o apic_regops.o psm_common.o apic_introp.o        \
 195  197                          mp_platform_common.o mp_platform_misc.o         \
 196  198                          hpet_acpi.o apic_common.o apic_timer.o
 197  199  APIX_OBJS += apix.o apic_regops.o psm_common.o apix_intr.o apix_utils.o \
 198  200                  apix_irm.o mp_platform_common.o hpet_acpi.o apic_common.o \
 199  201                  apic_timer.o
 200  202  
 201  203  
 202  204  ACPI_DRV_OBJS   += acpi_drv.o acpi_video.o
 203  205  ACPINEX_OBJS    += acpinex_drv.o acpinex_event.o
 204  206  
 205  207  CPUDRV_OBJS     += \
 206  208          cpudrv.o \
 207  209          cpudrv_mach.o
 208  210  
 209  211  PPM_OBJS        += ppm_subr.o ppm.o ppm_plat.o
 210  212  
 211  213  ACPIPPM_OBJS    += acpippm.o acpisleep.o
 212  214  ACPIDEV_OBJS += acpidev_drv.o \
 213  215          acpidev_scope.o acpidev_device.o \
 214  216          acpidev_container.o \
 215  217          acpidev_cpu.o \
 216  218          acpidev_dr.o \
 217  219          acpidev_memory.o \
 218  220          acpidev_pci.o \
 219  221          acpidev_resource.o \
 220  222          acpidev_util.o
 221  223  
 222  224  DRMACH_ACPI_OBJS += drmach_acpi.o dr_util.o drmach_err.o
 223  225  
 224  226  DR_OBJS += dr.o dr_cpu.o dr_err.o dr_io.o dr_mem_acpi.o dr_quiesce.o dr_util.o
 225  227  
 226  228  ROOTNEX_OBJS += rootnex.o immu.o immu_dmar.o immu_dvma.o \
 227  229                  immu_intrmap.o immu_qinv.o immu_regs.o
 228  230  
 229  231  TZMON_OBJS      += tzmon.o
 230  232  UPPC_OBJS += uppc.o psm_common.o
 231  233  XSVC_OBJS += xsvc.o
 232  234  AMD_IOMMU_OBJS +=       amd_iommu.o amd_iommu_impl.o amd_iommu_acpi.o \
 233  235                          amd_iommu_cmd.o amd_iommu_log.o amd_iommu_page_tables.o
 234  236  
 235  237  #
 236  238  #       Build up defines and paths.
 237  239  #
 238  240  ALL_DEFS        += -Di86pc
 239  241  INC_PATH        += -I$(UTSBASE)/i86pc -I$(SRC)/common
 240  242  INC_PATH        += -I$(UTSBASE)/i86xpv -I$(UTSBASE)/common/xen
 241  243  
 242  244  #
 243  245  # Since the assym files are derived, the dependencies must be explicit for
 244  246  # all files including this file. (This is only actually required in the
 245  247  # instance when the .nse_depinfo file does not exist.) It may seem that
 246  248  # the lint targets should also have a similar dependency, but they don't
 247  249  # since only C headers are included when #defined(__lint) is true.
 248  250  #
 249  251  
 250  252  ASSYM_DEPS      +=              \
 251  253          copy.o                  \
 252  254          desctbls_asm.o          \
 253  255          ddi_i86_asm.o           \
 254  256          exception.o             \
 255  257          fast_trap_asm.o         \
 256  258          float.o                 \
 257  259          i86_subr.o              \
 258  260          interrupt.o             \
 259  261          lock_prim.o             \
 260  262          locore.o                \
 261  263          mpcore.o                \
 262  264          sseblk.o                \
 263  265          swtch.o                 \
 264  266          syscall_asm.o           \
 265  267          syscall_asm_amd64.o     \
 266  268          cpr_wakecode.o
 267  269  
 268  270  CPR_IMPL_OBJS   = cpr_impl.o    cpr_wakecode.o
 269  271  
 270  272  $(KDI_ASSYM_DEPS:%=$(OBJS_DIR)/%):      $(DSF_DIR)/$(OBJS_DIR)/kdi_assym.h
 271  273  
 272  274  ASSYM_DEPS += kdi_asm.o
  
    | 
      ↓ open down ↓ | 
    220 lines elided | 
    
      ↑ open up ↑ | 
  
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX