17c478bd9Sstevel@tonic-gate# 27c478bd9Sstevel@tonic-gate# CDDL HEADER START 37c478bd9Sstevel@tonic-gate# 47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the 54ab75253Smrj# Common Development and Distribution License (the "License"). 64ab75253Smrj# You may not use this file except in compliance with the License. 77c478bd9Sstevel@tonic-gate# 87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing. 107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions 117c478bd9Sstevel@tonic-gate# and limitations under the License. 127c478bd9Sstevel@tonic-gate# 137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each 147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the 167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying 177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner] 187c478bd9Sstevel@tonic-gate# 197c478bd9Sstevel@tonic-gate# CDDL HEADER END 207c478bd9Sstevel@tonic-gate# 214ab75253Smrj 227c478bd9Sstevel@tonic-gate# 235cd376e8SJimmy Vetayases# Copyright (c) 1992, 2010, Oracle and/or its affiliates. All rights reserved. 247b07063dSIgor Kozhukhov# Copyright 2015 Igor Kozhukhov <ikozhukhov@gmail.com> 25eb00b1c8SRobert Mustacchi# Copyright 2019 Joyent, Inc. 26fe7a23c8SAndy Fiddaman# Copyright 2019 OmniOS Community Edition (OmniOSce) Association. 277c478bd9Sstevel@tonic-gate# 287c478bd9Sstevel@tonic-gate 297c478bd9Sstevel@tonic-gate# This Makefile defines the build rules for the directory uts/i86pc 307c478bd9Sstevel@tonic-gate# and its children. These are the source files which are i86pc 317c478bd9Sstevel@tonic-gate# "implementation architecture" dependent. 327c478bd9Sstevel@tonic-gate# 337c478bd9Sstevel@tonic-gate# The following two-level ordering must be maintained in this file. 347c478bd9Sstevel@tonic-gate# Lines are sorted first in order of decreasing specificity based on 35eb0cc229Sedp# the first directory component. That is, i86pc rules come before 36eb0cc229Sedp# intel rules come before common rules. 377c478bd9Sstevel@tonic-gate# 387c478bd9Sstevel@tonic-gate# Lines whose initial directory components are equal are sorted 397c478bd9Sstevel@tonic-gate# alphabetically by the remaining components. 407c478bd9Sstevel@tonic-gate 417c478bd9Sstevel@tonic-gate# 427c478bd9Sstevel@tonic-gate# Section 1a: C object build rules 437c478bd9Sstevel@tonic-gate# 447c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/conf/%.c 457c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 467c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 477c478bd9Sstevel@tonic-gate 487aec1d6eScindi$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/cpu/amd_opteron/%.c 497aec1d6eScindi $(COMPILE.c) -o $@ $< 507aec1d6eScindi $(CTFCONVERT_O) 517aec1d6eScindi 5220c794b3Sgavinm$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/cpu/authenticamd/%.c 5320c794b3Sgavinm $(COMPILE.c) -o $@ $< 5420c794b3Sgavinm $(CTFCONVERT_O) 557aec1d6eScindi 567aec1d6eScindi$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/cpu/generic_cpu/%.c 577aec1d6eScindi $(COMPILE.c) -o $@ $< 587aec1d6eScindi $(CTFCONVERT_O) 597aec1d6eScindi 6020c794b3Sgavinm$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/cpu/genuineintel/%.c 6120c794b3Sgavinm $(COMPILE.c) -o $@ $< 6220c794b3Sgavinm $(CTFCONVERT_O) 6320c794b3Sgavinm 647c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/%.c 657c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 667c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 677c478bd9Sstevel@tonic-gate 68d2ec54f7Sphitran$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/acpi_drv/%.c 697b840e52Sphitran $(COMPILE.c) -o $@ $< 707b840e52Sphitran $(CTFCONVERT_O) 717b840e52Sphitran 72eca2601cSRandy Fishel$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/fipe/%.c 73eca2601cSRandy Fishel $(COMPILE.c) -o $@ $< 74eca2601cSRandy Fishel $(CTFCONVERT_O) 75eca2601cSRandy Fishel 76b72d5b75SMichael Corcoran$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/acpi/acpidev/%.c 77b72d5b75SMichael Corcoran $(COMPILE.c) -o $@ $< 78b72d5b75SMichael Corcoran $(CTFCONVERT_O) 79b72d5b75SMichael Corcoran 80b72d5b75SMichael Corcoran$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/acpi/acpinex/%.c 81b72d5b75SMichael Corcoran $(COMPILE.c) -o $@ $< 82b72d5b75SMichael Corcoran $(CTFCONVERT_O) 83b72d5b75SMichael Corcoran 84a3114836SGerry LiuSBD_IOCTL = $(UTSBASE)/i86pc/sys/sbd_ioctl.h 85a3114836SGerry LiuDRMACH_IO = $(UTSBASE)/i86pc/io/acpi/drmach_acpi 86a3114836SGerry LiuDRMACH_GENERR = $(DRMACH_IO)/sbdgenerr 87a3114836SGerry LiuDR_IO = $(UTSBASE)/i86pc/io/dr 88a3114836SGerry LiuDR_GENERR = $(DR_IO)/sbdgenerr 89a3114836SGerry Liu 90a3114836SGerry Liu$(DRMACH_GENERR): $(DR_IO)/sbdgenerr.pl 91a3114836SGerry Liu $(RM) $@ 92a3114836SGerry Liu $(CAT) $(DR_IO)/sbdgenerr.pl > $@ 93a3114836SGerry Liu $(CHMOD) +x $@ 94a3114836SGerry Liu 95a3114836SGerry Liu$(DRMACH_IO)/drmach_err.c: $(DRMACH_GENERR) $(SBD_IOCTL) 96a3114836SGerry Liu $(RM) $@ 97a3114836SGerry Liu $(DRMACH_GENERR) EX86 < $(SBD_IOCTL) > $(DRMACH_IO)/drmach_err.c 98a3114836SGerry Liu 99a3114836SGerry Liu$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/acpi/drmach_acpi/%.c 100a3114836SGerry Liu $(COMPILE.c) -o $@ $< 101a3114836SGerry Liu $(CTFCONVERT_O) 102a3114836SGerry Liu 1036732dbb3SVikram Hegde$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/amd_iommu/%.c 1046732dbb3SVikram Hegde $(COMPILE.c) -o $@ $< 1056732dbb3SVikram Hegde $(CTFCONVERT_O) 1066732dbb3SVikram Hegde 107a3114836SGerry Liu$(DR_GENERR): $(DR_IO)/sbdgenerr.pl 108a3114836SGerry Liu $(RM) $@ 109a3114836SGerry Liu $(CAT) $(DR_IO)/sbdgenerr.pl > $@ 110a3114836SGerry Liu $(CHMOD) +x $@ 111a3114836SGerry Liu 112a3114836SGerry Liu$(DR_IO)/dr_err.c: $(DR_GENERR) $(SBD_IOCTL) 113a3114836SGerry Liu $(RM) $@ 114a3114836SGerry Liu $(DR_GENERR) ESBD < $(SBD_IOCTL) > $(DR_IO)/dr_err.c 115a3114836SGerry Liu 116a3114836SGerry Liu$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/dr/%.c 117a3114836SGerry Liu $(COMPILE.c) -o $@ $< 118a3114836SGerry Liu $(CTFCONVERT_O) 119a3114836SGerry Liu 12017169044Sbrutus$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/ioat/%.c 12117169044Sbrutus $(COMPILE.c) -o $@ $< 12217169044Sbrutus $(CTFCONVERT_O) 12317169044Sbrutus 124eb00b1c8SRobert Mustacchi$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/imc/%.c 125eb00b1c8SRobert Mustacchi $(COMPILE.c) -o $@ $< 126eb00b1c8SRobert Mustacchi $(CTFCONVERT_O) 127eb00b1c8SRobert Mustacchi 128eb00b1c8SRobert Mustacchi$(OBJS_DIR)/%.o: $(SRC)/common/mc/imc/%.c 129eb00b1c8SRobert Mustacchi $(COMPILE.c) -o $@ $< 130eb00b1c8SRobert Mustacchi $(CTFCONVERT_O) 131eb00b1c8SRobert Mustacchi 1327c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/pci/%.c 1337c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 1347c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 1357c478bd9Sstevel@tonic-gate 13670025d76Sjohnny$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/pciex/%.c 13770025d76Sjohnny $(COMPILE.c) -o $@ $< 13870025d76Sjohnny $(CTFCONVERT_O) 13970025d76Sjohnny 14026947304SEvan Yan$(OBJS_DIR)/%.o: $(UTSBASE)/intel/io/pciex/hotplug/%.c 14126947304SEvan Yan $(COMPILE.c) -o $@ $< 14226947304SEvan Yan $(CTFCONVERT_O) 14326947304SEvan Yan 1447c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/pcplusmp/%.c 1457c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 1467c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 1477c478bd9Sstevel@tonic-gate 1487c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/pcplusmp/%.s 1497c478bd9Sstevel@tonic-gate $(COMPILE.s) -o $@ $< 1507c478bd9Sstevel@tonic-gate 1517ff178cdSJimmy Vetayases$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/apix/%.c 1527ff178cdSJimmy Vetayases $(COMPILE.c) -o $@ $< 1537ff178cdSJimmy Vetayases $(CTFCONVERT_O) 1547ff178cdSJimmy Vetayases 1552df1fe9cSrandyf$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/ppm/%.c 1562df1fe9cSrandyf $(COMPILE.c) -o $@ $< 1572df1fe9cSrandyf $(CTFCONVERT_O) 1582df1fe9cSrandyf 1592df1fe9cSrandyf$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/ppm/%.s 1602df1fe9cSrandyf $(COMPILE.s) -o $@ $< 1612df1fe9cSrandyf 1627c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/psm/%.c 1637c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 1647c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 1657c478bd9Sstevel@tonic-gate 1667c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/psm/%.s 1677c478bd9Sstevel@tonic-gate $(COMPILE.s) -o $@ $< 1687c478bd9Sstevel@tonic-gate 1692bda830bSap$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/tzmon/%.c 1702bda830bSap $(COMPILE.c) -o $@ $< 1712bda830bSap $(CTFCONVERT_O) 1722bda830bSap 1737c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/ml/%.s 1747c478bd9Sstevel@tonic-gate $(COMPILE.s) -o $@ $< 1757c478bd9Sstevel@tonic-gate 1767c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/os/%.c 1776a59053bSAlex Wilson $(COMPILE.c) -_gcc=-fno-stack-protector -o $@ $< 1787c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 1797c478bd9Sstevel@tonic-gate 1800e751525SEric Saxe$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/os/cpupm/%.c 1810e751525SEric Saxe $(COMPILE.c) -o $@ $< 1820e751525SEric Saxe $(CTFCONVERT_O) 1830e751525SEric Saxe 184ae115bc7Smrj$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/boot/%.c 185ae115bc7Smrj $(COMPILE.c) -o $@ $< 186ae115bc7Smrj $(CTFCONVERT_O) 187ae115bc7Smrj 1887c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/vm/%.c 1897c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 1907c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 1917c478bd9Sstevel@tonic-gate 1927c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/common/io/%.c 1937c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 1947c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 1957c478bd9Sstevel@tonic-gate 1965cff7825Smh$(OBJS_DIR)/%.o: $(UTSBASE)/common/io/ppm/%.c 1975cff7825Smh $(COMPILE.c) -o $@ $< 1985cff7825Smh $(CTFCONVERT_O) 1995cff7825Smh 200c0da6274SZhi-Jun Robin Fu$(OBJS_DIR)/%.o: $(UTSBASE)/common/io/pciex/%.c 201c0da6274SZhi-Jun Robin Fu $(COMPILE.c) -o $@ $< 202c0da6274SZhi-Jun Robin Fu $(CTFCONVERT_O) 203c0da6274SZhi-Jun Robin Fu 2047c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/common/os/%.c 2057c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 2067c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 2077c478bd9Sstevel@tonic-gate 2087c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(SRC)/common/dis/i386/%.c 2097c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 2107c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 2117c478bd9Sstevel@tonic-gate 212fc1821feSrugrat$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/gfx_private/%.c 213fc1821feSrugrat $(COMPILE.c) -o $@ $< 214fc1821feSrugrat $(CTFCONVERT_O) 215fc1821feSrugrat 216ae115bc7Smrj$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/xsvc/%.c 21760405de4Skz $(COMPILE.c) -o $@ $< 21860405de4Skz $(CTFCONVERT_O) 21960405de4Skz 220349b53ddSStuart Maybee$(OBJS_DIR)/%.o: $(UTSBASE)/common/xen/os/%.c 221349b53ddSStuart Maybee $(COMPILE.c) -o $@ $< 222349b53ddSStuart Maybee $(CTFCONVERT_O) 223349b53ddSStuart Maybee 2241738dd6eSToomas Soome$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/dboot/%.c 2251738dd6eSToomas Soome $(COMPILE.c) -o $@ $< 226*4c87aefeSPatrick Mooney $(CTFCONVERT_O) 227*4c87aefeSPatrick Mooney 228*4c87aefeSPatrick Mooney$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/vmm/%.c 229*4c87aefeSPatrick Mooney $(COMPILE.c) -o $@ $< 230*4c87aefeSPatrick Mooney $(CTFCONVERT_O) 231*4c87aefeSPatrick Mooney 232*4c87aefeSPatrick Mooney$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/vmm/amd/%.c 233*4c87aefeSPatrick Mooney $(COMPILE.c) -o $@ $< 234*4c87aefeSPatrick Mooney $(CTFCONVERT_O) 235*4c87aefeSPatrick Mooney 236*4c87aefeSPatrick Mooney$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/vmm/intel/%.c 237*4c87aefeSPatrick Mooney $(COMPILE.c) -o $@ $< 238*4c87aefeSPatrick Mooney $(CTFCONVERT_O) 239*4c87aefeSPatrick Mooney 240*4c87aefeSPatrick Mooney$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/vmm/io/%.c 241*4c87aefeSPatrick Mooney $(COMPILE.c) -o $@ $< 242*4c87aefeSPatrick Mooney $(CTFCONVERT_O) 243*4c87aefeSPatrick Mooney 244*4c87aefeSPatrick Mooney$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/vmm/%.s 245*4c87aefeSPatrick Mooney $(COMPILE.s) -o $@ $< 246*4c87aefeSPatrick Mooney 247*4c87aefeSPatrick Mooney$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/vmm/intel/%.s 248*4c87aefeSPatrick Mooney $(COMPILE.s) -o $@ $< 249*4c87aefeSPatrick Mooney 250*4c87aefeSPatrick Mooney$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/vmm/amd/%.s 251*4c87aefeSPatrick Mooney $(COMPILE.s) -o $@ $< 252*4c87aefeSPatrick Mooney 253*4c87aefeSPatrick Mooney$(OBJS_DIR)/%.o: $(UTSBASE)/i86pc/io/viona/%.c 254*4c87aefeSPatrick Mooney $(COMPILE.c) -o $@ $< 2551738dd6eSToomas Soome $(CTFCONVERT_O) 2561738dd6eSToomas Soome 257ae115bc7Smrj# 258ae115bc7Smrj# dboot stuff is always 32 bit, linked to run with phys_addr == virt_addr 259ae115bc7Smrj# 260ae115bc7SmrjDBOOT_OBJS_DIR = dboot/$(OBJS_DIR) 261ae115bc7SmrjDBOOT_MACH_32 = -D_BOOT_TARGET_i386 262ae115bc7SmrjDBOOT_MACH_64 = -D_BOOT_TARGET_amd64 263ae115bc7SmrjDBOOT_DEFS = -D_BOOT $(DBOOT_MACH_$(CLASS)) 2643c4c5929SGordon RossDBOOT_DEFS += -D_MACHDEP -U_KERNEL -D_I32LPx 2659e59ac1cSToomas SoomeDBOOT_FLAGS = $(CFLAGS_XARCH_32) $(CCVERBOSE) $(CSTD) $(CERRWARN) 2669e59ac1cSToomas SoomeDBOOT_FLAGS += $(CCNOAUTOINLINE) 267fd358c0dSmyers 2680181461bSKeith M WesolowskiDBOOT_CC_INCL = -I$(SRC)/common -I$(SRC)/common/util $(INCLUDE_PATH) 269ae115bc7SmrjDBOOT_AS_INCL = $(AS_INC_PATH) 2707aec1d6eScindi 271ae115bc7SmrjDBOOT_AS = $(ONBLD_TOOLS)/bin/$(MACH)/aw 2727c478bd9Sstevel@tonic-gate 273ae115bc7Smrj$(DBOOT_OBJS_DIR)/%.o: $(UTSBASE)/i86pc/boot/%.c 2746a3e8e86SRichard Lowe $(i386_CC) $(DBOOT_FLAGS) -O $(DBOOT_DEFS) $(DBOOT_CC_INCL) -c -o $@ $< 2757c478bd9Sstevel@tonic-gate 276ae115bc7Smrj$(DBOOT_OBJS_DIR)/%.o: $(UTSBASE)/i86pc/dboot/%.c 2776a3e8e86SRichard Lowe $(i386_CC) $(DBOOT_FLAGS) -O $(DBOOT_DEFS) $(DBOOT_CC_INCL) -c -o $@ $< 2787c478bd9Sstevel@tonic-gate 279551bc2a6Smrj$(DBOOT_OBJS_DIR)/%.o: $(UTSBASE)/intel/ia32/%.s 280551bc2a6Smrj $(DBOOT_AS) -P -D_ASM $(DBOOT_DEFS) $(DBOOT_AS_INCL) -o $@ $< 281551bc2a6Smrj 282cbc8e155SToomas Soome$(DBOOT_OBJS_DIR)/%.o: $(SRC)/common/font/%.c 283898c3fecSToomas Soome $(i386_CC) $(DBOOT_FLAGS) -O $(DBOOT_DEFS) $(DBOOT_CC_INCL) -c -o $@ $< 284898c3fecSToomas Soome 285cbc8e155SToomas Soome$(DBOOT_OBJS_DIR)/$(FONT).c: $(FONT_DIR)/$(FONT_SRC).bdf 286cbc8e155SToomas Soome $(VTFONTCVT) -f source -o $@ $(FONT_DIR)/$(FONT_SRC).bdf 287898c3fecSToomas Soome 288898c3fecSToomas Soome$(DBOOT_OBJS_DIR)/%.o: $(DBOOT_OBJS_DIR)/%.c 289898c3fecSToomas Soome $(i386_CC) $(DBOOT_FLAGS) -O $(DBOOT_DEFS) $(DBOOT_CC_INCL) -c -o $@ $< 290898c3fecSToomas Soome 291e65d07eeSKeith Wesolowski$(DBOOT_OBJS_DIR)/%.o: $(COMMONBASE)/crypto/sha1/%.c 2927f11fd00SRichard Lowe $(i386_CC) $(DBOOT_FLAGS) -O $(DBOOT_DEFS) $(DBOOT_CC_INCL) -c -o $@ $< 293e65d07eeSKeith Wesolowski 294898c3fecSToomas Soome$(DBOOT_OBJS_DIR)/%.o: $(DBOOT_OBJS_DIR)/%.c 295898c3fecSToomas Soome $(i386_CC) $(DBOOT_FLAGS) -O $(DBOOT_DEFS) $(DBOOT_CC_INCL) -c -o $@ $< 296898c3fecSToomas Soome 297ae115bc7Smrj$(DBOOT_OBJS_DIR)/%.o: $(COMMONBASE)/util/%.c 2986a3e8e86SRichard Lowe $(i386_CC) $(DBOOT_FLAGS) -O $(DBOOT_DEFS) $(DBOOT_CC_INCL) -c -o $@ $< 2997c478bd9Sstevel@tonic-gate 300ae115bc7Smrj$(DBOOT_OBJS_DIR)/%.o: $(COMMONBASE)/util/i386/%.s 301ae115bc7Smrj $(DBOOT_AS) -P -D_ASM $(DBOOT_DEFS) $(DBOOT_AS_INCL) -o $@ $< 3027c478bd9Sstevel@tonic-gate 303ae115bc7Smrj$(DBOOT_OBJS_DIR)/%.o: $(UTSBASE)/i86pc/dboot/%.s 304ae115bc7Smrj $(DBOOT_AS) -P -D_ASM $(DBOOT_DEFS) $(DBOOT_AS_INCL) -o $@ $< 3057c478bd9Sstevel@tonic-gate 306ae115bc7Smrj# 307ae115bc7Smrj# Stuff to build bios_call.o for the kernel. 308ae115bc7Smrj# 309ae115bc7SmrjMAPFILE_BIOS = $(UTSBASE)/i86pc/conf/Mapfile.bios 310ae115bc7Smrj$(OBJS_DIR)/bios_call.o: $(UTSBASE)/i86pc/ml/bios_call_src.s 311ae115bc7Smrj $(COMPILE.s) -o $(OBJS_DIR)/bios_call_src.o \ 312ae115bc7Smrj $(UTSBASE)/i86pc/ml/bios_call_src.s 313ae115bc7Smrj $(LD) -dn -M $(MAPFILE_BIOS) \ 314ae115bc7Smrj -o $(OBJS_DIR)/bios_call_src $(OBJS_DIR)/bios_call_src.o 315ae115bc7Smrj @echo " .data" > $(OBJS_DIR)/bios_call.s 316ae115bc7Smrj @echo " .globl bios_image" >> $(OBJS_DIR)/bios_call.s 317ae115bc7Smrj @echo "bios_image:" >> $(OBJS_DIR)/bios_call.s 318ae115bc7Smrj $(ELFEXTRACT) $(OBJS_DIR)/bios_call_src >> $(OBJS_DIR)/bios_call.s 319ae115bc7Smrj @echo " .align 4" >> $(OBJS_DIR)/bios_call.s 320ae115bc7Smrj @echo " .globl bios_size" >> $(OBJS_DIR)/bios_call.s 321ae115bc7Smrj @echo "bios_size:" >> $(OBJS_DIR)/bios_call.s 322ae115bc7Smrj @echo " .long . - bios_image" >> $(OBJS_DIR)/bios_call.s 323ae115bc7Smrj $(COMPILE.s) -o $@ $(OBJS_DIR)/bios_call.s 3247c478bd9Sstevel@tonic-gate 32519397407SSherry Moore# 32619397407SSherry Moore# Stuff to build fb_swtch.o for the kernel. 32719397407SSherry Moore# 32819397407SSherry MooreMAPFILE_FBSWTCH = $(UTSBASE)/i86pc/conf/Mapfile.fb_swtch 32919397407SSherry Moore$(OBJS_DIR)/fb_swtch.o: $(UTSBASE)/i86pc/ml/fb_swtch_src.s 33019397407SSherry Moore $(COMPILE.s) -o $(OBJS_DIR)/fb_swtch_src.o \ 33119397407SSherry Moore $(UTSBASE)/i86pc/ml/fb_swtch_src.s 33219397407SSherry Moore $(LD) -dn -M $(MAPFILE_FBSWTCH) \ 33319397407SSherry Moore -o $(OBJS_DIR)/fb_swtch_src $(OBJS_DIR)/fb_swtch_src.o 33419397407SSherry Moore @echo " .data" > $(OBJS_DIR)/fb_swtch.s 33519397407SSherry Moore @echo " .globl fb_swtch_image" >> $(OBJS_DIR)/fb_swtch.s 33619397407SSherry Moore @echo "fb_swtch_image:" >> $(OBJS_DIR)/fb_swtch.s 33719397407SSherry Moore $(ELFEXTRACT) $(OBJS_DIR)/fb_swtch_src >> $(OBJS_DIR)/fb_swtch.s 33819397407SSherry Moore @echo " .align 4" >> $(OBJS_DIR)/fb_swtch.s 33919397407SSherry Moore @echo " .globl fb_swtch_size" >> $(OBJS_DIR)/fb_swtch.s 34019397407SSherry Moore @echo "fb_swtch_size:" >> $(OBJS_DIR)/fb_swtch.s 34119397407SSherry Moore @echo " .long . - fb_swtch_image" >> $(OBJS_DIR)/fb_swtch.s 34219397407SSherry Moore $(COMPILE.s) -o $@ $(OBJS_DIR)/fb_swtch.s 34319397407SSherry Moore 344ae115bc7Smrj# ridiculous contortions --- 345ae115bc7SmrjATOMIC_SUBDIR_32 = i386 346ae115bc7SmrjATOMIC_SUBDIR_64 = amd64 347ae115bc7SmrjATOMIC_SUBDIR = $(ATOMIC_SUBDIR_$(CLASS)) 3487c478bd9Sstevel@tonic-gate 349ae115bc7Smrj$(OBJS_DIR)/%.o: $(SRC)/common/atomic/$(ATOMIC_SUBDIR)/%.s 350ae115bc7Smrj $(COMPILE.s) -o $@ $< 3517c478bd9Sstevel@tonic-gate 352ae115bc7Smrj# 353ae115bc7Smrj# dtrace stubs 354ae115bc7Smrj# 35530082d0cSmyers 3567c478bd9Sstevel@tonic-gate$(OBJS_DIR)/dtracestubs.s: $(UNIX_O) $(LIBS) 357425251fdSSam Gwydir $(NM) -u $(UNIX_O) $(LIBS) | \ 358425251fdSSam Gwydir $(EGREP) '(__dtrace_probe_|smap_(disable|enable))' | $(SORT) | \ 3597b07063dSIgor Kozhukhov $(UNIQ) | $(AWK) '{ \ 3607c478bd9Sstevel@tonic-gate printf("\t.globl %s\n\t.type %s,@function\n%s:\n", \ 3617c478bd9Sstevel@tonic-gate $$1, $$1, $$1); }' > $(OBJS_DIR)/dtracestubs.s 3627c478bd9Sstevel@tonic-gate 3637c478bd9Sstevel@tonic-gate$(DTRACESTUBS): $(DTRACESTUBS_O) 36402e56f3fSwesolows $(BUILD.SO) $(DTRACESTUBS_O) 365