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 #
23 # Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
24 #
25
26 # This Makefile defines file modules in the directory uts/i86xpv
27 # and its children. These are the source files which are i86xpv
28 # "implementation architecture" dependent.
29 #
30
31 #
32 # object lists
33 #
34 CORE_OBJS += \
35 acpi_stubs.o \
36 balloon.o \
37 biosdisk.o \
38 cbe.o \
39 cmi.o \
40 cmi_hw.o \
41 cms.o \
42 confunix.o \
43 cpuid.o \
44 cpuid_subr.o \
45 cpupm.o \
46 cpupm_mach.o \
47 dis_tables.o \
48 ddi_impl.o \
49 dtrace_subr.o \
50 dvma.o \
51 fakebop.o \
52 fpu_subr.o \
53 fastboot.o \
54 fb_swtch.o \
55 graphics.o \
56 hardclk.o \
57 hat_i86.o \
58 hat_kdi.o \
59 hment.o \
60 hold_page.o \
61 hrtimers.o \
62 htable.o \
63 i86_mmu.o \
64 ibft.o \
65 instr_size.o \
66 intr.o \
67 kboot_mmu.o \
68 kdi_subr.o \
69 kdi_idt.o \
70 kdi_idthdl.o \
71 kdi_asm.o \
72 lgrpplat.o \
73 mach_kdi.o \
74 mach_sysconfig.o \
75 machdep.o \
76 mem_config_stubs.o \
77 memnode.o \
78 microcode.o \
79 mlsetup.o \
80 mp_call.o \
81 mp_implfuncs.o \
82 mp_machdep.o \
83 mp_startup.o \
84 memscrub.o \
85 notes.o \
86 pci_bios.o \
87 pci_cfgacc.o \
88 pci_cfgacc_x86.o \
89 pci_cfgspace.o \
90 pci_mech1.o \
91 pci_mech2.o \
92 pci_neptune.o \
93 pci_orion.o \
94 pmem.o \
95 ppage.o \
96 startup.o \
97 xpv_timestamp.o \
98 todpc_subr.o \
99 trap.o \
100 vm_machdep.o \
101 x_call.o
102
103 #
104 # Add the SMBIOS subsystem object files directly to the list of objects
105 # built into unix itself; this is all common code except for smb_dev.c.
106 #
107 CORE_OBJS += $(SMBIOS_OBJS)
108
109 #
110 # These get compiled twice:
111 # - once in the dboot (direct boot) identity mapped code
112 # - once for use during early startup in unix
113 #
114 BOOT_DRIVER_OBJS = \
115 boot_console.o \
116 boot_keyboard.o \
117 boot_keyboard_table.o \
118 boot_mmu.o \
119 boot_vga.o \
120 boot_xconsole.o
121
122 CORE_OBJS += $(BOOT_DRIVER_OBJS)
123
124 #
125 # Extra XEN files separated out for now.
126 #
127 CORE_OBJS += \
128 cpr_driver.o \
129 evtchn.o \
130 gnttab.o \
131 hypercall.o \
132 hyperevent.o \
133 hypersubr.o \
134 mp_xen.o \
135 panic_asm.o \
136 xenguest.o \
137 xenbus_client.o \
138 xenbus_comms.o \
139 xenbus_probe.o \
140 xenbus_xs.o \
141 xen_machdep.o \
142 xen_mmu.o \
143 xpv_panic.o \
144 xvdi.o
145
146 #
147 # locore.o is special. It must be the first file relocated so that it
148 # it is relocated just where its name implies.
149 #
150 SPECIAL_OBJS_32 += \
151 locore.o \
152 fast_trap_asm.o \
153 interrupt.o \
154 syscall_asm.o
155
156 SPECIAL_OBJS_64 += \
157 locore.o \
158 fast_trap_asm.o \
159 interrupt.o \
160 syscall_asm_amd64.o
161
162 SPECIAL_OBJS += $(SPECIAL_OBJS_$(CLASS))
163
164 #
165 # object files used to boot into full kernel
166 #
167 DBOOT_OBJS_32 = muldiv.o
168
169 DBOOT_OBJS_64 =
170
171 DBOOT_OBJS += \
172 dboot_asm.o \
173 dboot_printf.o \
174 dboot_startkern.o \
175 dboot_xen.o \
176 hypercall.o \
177 hypersubr.o \
178 memcpy.o \
179 memset.o \
180 string.o \
181 $(BOOT_DRIVER_OBJS) \
182 $(DBOOT_OBJS_$(CLASS))
183
184 #
185 # driver & misc modules
186 #
187 BALLOON_OBJS += balloon_drv.o
188 DOMCAPS_OBJS += domcaps.o
189 EVTCHN_OBJS += evtchn_dev.o
190 GFX_PRIVATE_OBJS += gfx_private.o gfxp_pci.o gfxp_segmap.o \
191 gfxp_devmap.o gfxp_vgatext.o gfxp_vm.o vgasubr.o
192 IOAT_OBJS += ioat.o ioat_rs.o ioat_ioctl.o ioat_chan.o
193 ISANEXUS_OBJS += isa.o dma_engine.o i8237A.o
194 PCI_E_NEXUS_OBJS += npe.o npe_misc.o
195 PCI_E_NEXUS_OBJS += pci_common.o pci_kstats.o pci_tools.o
196 PCINEXUS_OBJS += pci.o pci_common.o pci_kstats.o pci_tools.o
197 PRIVCMD_OBJS += seg_mf.o privcmd.o privcmd_hcall.o
198 ROOTNEX_OBJS += rootnex.o
199 XPVTOD_OBJS += xpvtod.o
200 XPV_AUTOCONFIG_OBJS += xpv_autoconfig.o
201 XPV_PSM_OBJS += xpv_psm.o mp_platform_common.o mp_platform_xpv.o \
202 apic_regops.o psm_common.o xpv_intr.o
203 XPV_UPPC_OBJS += xpv_uppc.o psm_common.o
204 XENBUS_OBJS += xenbus_dev.o
205 XENCONS_OBJS += xencons.o
206 XPVD_OBJS += xpvd.o
207 XPVTAP_OBJS += xpvtap.o blk_common.o seg_mf.o
208 XNB_OBJS += xnb.o
209 XNBE_OBJS += xnbe.o
210 XNBO_OBJS += xnbo.o
211 XNBU_OBJS += xnbu.o
212 XNF_OBJS += xnf.o
213 XSVC_OBJS += xsvc.o
214 XDF_OBJS += xdf.o
215 XDB_OBJS += xdb.o
216 XDT_OBJS += xdt.o
217
218 #
219 # Build up defines and paths.
220 #
221 INC_PATH += -I$(UTSBASE)/i86xpv -I$(UTSBASE)/i86pc -I$(SRC)/common \
222 -I$(UTSBASE)/common/xen
223
224 #
225 # Since the assym files are derived, the dependencies must be explicit for
226 # all files including this file. (This is only actually required in the
227 # instance when the .nse_depinfo file does not exist.) It may seem that
228 # the lint targets should also have a similar dependency, but they don't
229 # since only C headers are included when #defined(__lint) is true.
230 #
231
232 ASSYM_DEPS += \
233 copy.o \
234 desctbls_asm.o \
235 ddi_i86_asm.o \
236 exception.o \
237 fast_trap_asm.o \
238 float.o \
239 hyperevent.o \
240 i86_subr.o \
241 kdi_asm.o \
242 interrupt.o \
243 lock_prim.o \
244 locore.o \
245 panic_asm.o \
246 sseblk.o \
247 swtch.o \
248 syscall_asm.o \
249 syscall_asm_amd64.o
250
251 $(KDI_ASSYM_DEPS:%=$(OBJS_DIR)/%): $(DSF_DIR)/$(OBJS_DIR)/kdi_assym.h
252
253 ASSYM_DEPS += kdi_asm.o
Cache object: 63026e4fa228920be0938f38c64306e1
|