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# Copyright 2008 Sun Microsystems, Inc. All rights reserved. 23# Use is subject to license terms. 24# 25# usr/src/Makefile.psm 26# 27# Makefile.psm, global definitions for platform specific modules 28 29# 30# The distinction between root.sys and root.bin is largely historical; 31# the files in group bin used to be owned by user bin. 32# 33INS.dir.root.sys= $(INS) -s -d -m $(DIRMODE) $@ 34$(CH)INS.dir.root.sys= $(INS) -s -d -m $(DIRMODE) -u root -g sys $@ 35INS.dir.root.bin= $(INS) -s -d -m $(DIRMODE) $@ 36$(CH)INS.dir.root.bin= $(INS) -s -d -m $(DIRMODE) -u root -g bin $@ 37 38# 39# 40# 41ROOT_PLAT_DIR = $(ROOT)/platform 42 43ROOT_PSM_DIR = $(ROOT_PLAT_DIR)/$(PLATFORM) 44 45ROOT_PSM_MOD_DIR = $(ROOT_PSM_DIR)/kernel 46ROOT_PSM_LIB_DIR = $(ROOT_PSM_DIR)/lib 47ROOT_PSM_LIB64_DIR = $(ROOT_PSM_LIB_DIR)/$(MACH64) 48ROOT_PSM_SBIN_DIR = $(ROOT_PSM_DIR)/sbin 49 50ROOT_PSM_KERN_DIR_32 = $(ROOT_PSM_MOD_DIR) 51ROOT_PSM_DRV_DIR_32 = $(ROOT_PSM_MOD_DIR)/drv 52ROOT_PSM_EXEC_DIR_32 = $(ROOT_PSM_MOD_DIR)/exec 53ROOT_PSM_FS_DIR_32 = $(ROOT_PSM_MOD_DIR)/fs 54ROOT_PSM_SCHED_DIR_32 = $(ROOT_PSM_MOD_DIR)/sched 55ROOT_PSM_STRMOD_DIR_32 = $(ROOT_PSM_MOD_DIR)/strmod 56ROOT_PSM_SYS_DIR_32 = $(ROOT_PSM_MOD_DIR)/sys 57ROOT_PSM_MISC_DIR_32 = $(ROOT_PSM_MOD_DIR)/misc 58ROOT_PSM_KGSS_DIR_32 = $(ROOT_PSM_MOD_DIR)/misc/kgss 59ROOT_PSM_MACH_DIR_32 = $(ROOT_PSM_MOD_DIR)/mach 60ROOT_PSM_CPU_DIR_32 = $(ROOT_PSM_MOD_DIR)/cpu 61ROOT_PSM_PLAT_DIR_32 = $(ROOT_PSM_MOD_DIR)/misc 62ROOT_PSM_TOD_DIR_32 = $(ROOT_PSM_MOD_DIR)/tod 63ROOT_PSM_MMU_DIR_32 = $(ROOT_PSM_MOD_DIR)/mmu 64ROOT_PSM_DACF_DIR_32 = $(ROOT_PSM_MOD_DIR)/dacf 65ROOT_PSM_CRYPTO_DIR_32 = $(ROOT_PSM_MOD_DIR)/crypto 66ROOT_PSM_PCBE_DIR_32 = $(ROOT_PSM_MOD_DIR)/pcbe 67ROOT_PSM_BRAND_DIR_32 = $(ROOT_PSM_MOD_DIR)/brand 68 69ROOT_PSM_KERN_DIR_64 = $(ROOT_PSM_MOD_DIR)/$(SUBDIR64) 70ROOT_PSM_DRV_DIR_64 = $(ROOT_PSM_MOD_DIR)/drv/$(SUBDIR64) 71ROOT_PSM_EXEC_DIR_64 = $(ROOT_PSM_MOD_DIR)/exec/$(SUBDIR64) 72ROOT_PSM_FS_DIR_64 = $(ROOT_PSM_MOD_DIR)/fs/$(SUBDIR64) 73ROOT_PSM_SCHED_DIR_64 = $(ROOT_PSM_MOD_DIR)/sched/$(SUBDIR64) 74ROOT_PSM_STRMOD_DIR_64 = $(ROOT_PSM_MOD_DIR)/strmod/$(SUBDIR64) 75ROOT_PSM_SYS_DIR_64 = $(ROOT_PSM_MOD_DIR)/sys/$(SUBDIR64) 76ROOT_PSM_MISC_DIR_64 = $(ROOT_PSM_MOD_DIR)/misc/$(SUBDIR64) 77ROOT_PSM_KGSS_DIR_64 = $(ROOT_PSM_MOD_DIR)/misc/kgss/$(SUBDIR64) 78ROOT_PSM_MACH_DIR_64 = $(ROOT_PSM_MOD_DIR)/mach/$(SUBDIR64) 79ROOT_PSM_CPU_DIR_64 = $(ROOT_PSM_MOD_DIR)/cpu/$(SUBDIR64) 80ROOT_PSM_PLAT_DIR_64 = $(ROOT_PSM_MOD_DIR)/misc/$(SUBDIR64) 81ROOT_PSM_TOD_DIR_64 = $(ROOT_PSM_MOD_DIR)/tod/$(SUBDIR64) 82ROOT_PSM_MMU_DIR_64 = $(ROOT_PSM_MOD_DIR)/mmu/$(SUBDIR64) 83ROOT_PSM_DACF_DIR_64 = $(ROOT_PSM_MOD_DIR)/dacf/$(SUBDIR64) 84ROOT_PSM_CRYPTO_DIR_64 = $(ROOT_PSM_MOD_DIR)/crypto/$(SUBDIR64) 85ROOT_PSM_PCBE_DIR_64 = $(ROOT_PSM_MOD_DIR)/pcbe/$(SUBDIR64) 86ROOT_PSM_BRAND_DIR_64 = $(ROOT_PSM_MOD_DIR)/brand/$(SUBDIR64) 87 88ROOT_PSM_KERN_DIR = $(ROOT_PSM_KERN_DIR_$(CLASS)) 89ROOT_PSM_DRV_DIR = $(ROOT_PSM_DRV_DIR_$(CLASS)) 90ROOT_PSM_EXEC_DIR = $(ROOT_PSM_EXEC_DIR_$(CLASS)) 91ROOT_PSM_FS_DIR = $(ROOT_PSM_FS_DIR_$(CLASS)) 92ROOT_PSM_SCHED_DIR = $(ROOT_PSM_SCHED_DIR_$(CLASS)) 93ROOT_PSM_STRMOD_DIR = $(ROOT_PSM_STRMOD_DIR_$(CLASS)) 94ROOT_PSM_SYS_DIR = $(ROOT_PSM_SYS_DIR_$(CLASS)) 95ROOT_PSM_MISC_DIR = $(ROOT_PSM_MISC_DIR_$(CLASS)) 96ROOT_PSM_KGSS_DIR = $(ROOT_PSM_KGSS_DIR_$(CLASS)) 97ROOT_PSM_MACH_DIR = $(ROOT_PSM_MACH_DIR_$(CLASS)) 98ROOT_PSM_CPU_DIR = $(ROOT_PSM_CPU_DIR_$(CLASS)) 99ROOT_PSM_PLAT_DIR = $(ROOT_PSM_PLAT_DIR_$(CLASS)) 100ROOT_PSM_TOD_DIR = $(ROOT_PSM_TOD_DIR_$(CLASS)) 101ROOT_PSM_MMU_DIR = $(ROOT_PSM_MMU_DIR_$(CLASS)) 102ROOT_PSM_DACF_DIR = $(ROOT_PSM_DACF_DIR_$(CLASS)) 103ROOT_PSM_CRYPTO_DIR = $(ROOT_PSM_CRYPTO_DIR_$(CLASS)) 104ROOT_PSM_PCBE_DIR = $(ROOT_PSM_PCBE_DIR_$(CLASS)) 105ROOT_PSM_BRAND_DIR = $(ROOT_PSM_BRAND_DIR_$(CLASS)) 106 107ROOT_PSM_MOD_DIRS_32 = $(ROOT_PSM_DRV_DIR_32) 108ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_EXEC_DIR_32) $(ROOT_PSM_FS_DIR_32) 109ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_SCHED_DIR_32) $(ROOT_PSM_STRMOD_DIR_32) 110ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_SYS_DIR_32) $(ROOT_PSM_MISC_DIR_32) 111ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_KGSS_DIR_32) 112ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_MACH_DIR_32) $(ROOT_PSM_CPU_DIR_32) 113ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_TOD_DIR_32) 114ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_MMU_DIR_32) 115ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_DACF_DIR_32) 116ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_CRYPTO_DIR_32) 117ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_PCBE_DIR_32) 118ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_BRAND_DIR_32) 119 120ROOT_PSM_LIB_FS_DIR = $(ROOT_PSM_LIB_DIR)/fs 121ROOT_PSM_LIB_UFS_DIR = $(ROOT_PSM_LIB_FS_DIR)/ufs 122ROOT_PSM_LIB_NFS_DIR = $(ROOT_PSM_LIB_FS_DIR)/nfs 123ROOT_PSM_LIB_HSFS_DIR = $(ROOT_PSM_LIB_FS_DIR)/hsfs 124ROOT_PSM_LIB_ZFS_DIR = $(ROOT_PSM_LIB_FS_DIR)/zfs 125 126USR_PLAT_DIR = $(ROOT)/usr/platform 127 128USR_PSM_DIR = $(USR_PLAT_DIR)/$(PLATFORM) 129 130USR_PSM_MOD_DIR = $(USR_PSM_DIR)/kernel 131USR_PSM_INCL_DIR = $(USR_PSM_DIR)/include 132USR_PSM_LIB_DIR = $(USR_PSM_DIR)/lib 133USR_PSM_LIB64_DIR = $(USR_PSM_LIB_DIR)/$(MACH64) 134USR_PSM_SBIN_DIR = $(USR_PSM_DIR)/sbin 135 136USR_PSM_ISYS_DIR = $(USR_PSM_INCL_DIR)/sys 137USR_PSM_IVM_DIR = $(USR_PSM_INCL_DIR)/vm 138 139USR_PSM_LIB_ABI_DIR = $(USR_PSM_LIB_DIR)/abi 140USR_PSM_LIB_ABI_DIR_64 = $(USR_PSM_LIB_ABI_DIR)/$(MACH64) 141 142USR_PSM_LIB_FS_DIR = $(USR_PSM_LIB_DIR)/fs 143USR_PSM_LIB_UFS_DIR = $(USR_PSM_LIB_FS_DIR)/ufs 144USR_PSM_LIB_NFS_DIR = $(USR_PSM_LIB_FS_DIR)/nfs 145USR_PSM_LIB_HSFS_DIR = $(USR_PSM_LIB_FS_DIR)/hsfs 146USR_PSM_LIB_ZFS_DIR = $(USR_PSM_LIB_FS_DIR)/zfs 147 148USR_PSM_DRV_DIR_32 = $(USR_PSM_MOD_DIR)/drv 149USR_PSM_EXEC_DIR_32 = $(USR_PSM_MOD_DIR)/exec 150USR_PSM_FS_DIR_32 = $(USR_PSM_MOD_DIR)/fs 151USR_PSM_SCHED_DIR_32 = $(USR_PSM_MOD_DIR)/sched 152USR_PSM_STRMOD_DIR_32 = $(USR_PSM_MOD_DIR)/strmod 153USR_PSM_SYS_DIR_32 = $(USR_PSM_MOD_DIR)/sys 154USR_PSM_MISC_DIR_32 = $(USR_PSM_MOD_DIR)/misc 155USR_PSM_DACF_DIR_32 = $(USR_PSM_MOD_DIR)/dacf 156 157USR_PSM_DRV_DIR_64 = $(USR_PSM_MOD_DIR)/drv/$(SUBDIR64) 158USR_PSM_EXEC_DIR_64 = $(USR_PSM_MOD_DIR)/exec/$(SUBDIR64) 159USR_PSM_FS_DIR_64 = $(USR_PSM_MOD_DIR)/fs/$(SUBDIR64) 160USR_PSM_SCHED_DIR_64 = $(USR_PSM_MOD_DIR)/sched/$(SUBDIR64) 161USR_PSM_STRMOD_DIR_64 = $(USR_PSM_MOD_DIR)/strmod/$(SUBDIR64) 162USR_PSM_SYS_DIR_64 = $(USR_PSM_MOD_DIR)/sys/$(SUBDIR64) 163USR_PSM_MISC_DIR_64 = $(USR_PSM_MOD_DIR)/misc/$(SUBDIR64) 164USR_PSM_DACF_DIR_64 = $(USR_PSM_MOD_DIR)/dacf/$(SUBDIR64) 165 166USR_PSM_DRV_DIR = $(USR_PSM_DRV_DIR_$(CLASS)) 167USR_PSM_EXEC_DIR = $(USR_PSM_EXEC_DIR_$(CLASS)) 168USR_PSM_FS_DIR = $(USR_PSM_FS_DIR_$(CLASS)) 169USR_PSM_SCHED_DIR = $(USR_PSM_SCHED_DIR_$(CLASS)) 170USR_PSM_STRMOD_DIR = $(USR_PSM_STRMOD_DIR_$(CLASS)) 171USR_PSM_SYS_DIR = $(USR_PSM_SYS_DIR_$(CLASS)) 172USR_PSM_MISC_DIR = $(USR_PSM_MISC_DIR_$(CLASS)) 173USR_PSM_DACF_DIR = $(USR_PSM_DACF_DIR_$(CLASS)) 174 175USR_PSM_MOD_DIRS_32 = $(USR_PSM_DRV_DIR_32) 176USR_PSM_MOD_DIRS_32 += $(USR_PSM_EXEC_DIR_32) $(USR_PSM_FS_DIR_32) 177USR_PSM_MOD_DIRS_32 += $(USR_PSM_SCHED_DIR_32) $(USR_PSM_STRMOD_DIR_32) 178USR_PSM_MOD_DIRS_32 += $(USR_PSM_SYS_DIR_32) $(USR_PSM_MISC_DIR_32) 179USR_PSM_MOD_DIRS_32 += $(USR_PSM_DACF_DIR_32) 180 181# 182# UltraSparc III crypto modules 183# 184ROOT_US3_DIR = $(ROOT_PLAT_DIR)/sun4u-us3 185ROOT_US3_MOD_DIR = $(ROOT_US3_DIR)/kernel 186ROOT_US3_CRYPTO_DIR_32 = $(ROOT_US3_MOD_DIR)/crypto 187ROOT_US3_CRYPTO_DIR_64 = $(ROOT_US3_MOD_DIR)/crypto/$(SUBDIR64) 188ROOT_US3_CRYPTO_DIR = $(ROOT_US3_CRYPTO_DIR_$(CLASS)) 189ROOT_US3_CRYPTO_LINK = $(ROOT_US3_CRYPTO_DIR_64:$(ROOT_PLAT_DIR)%=../../../..%) 190 191ROOT_BOOT_PSM_KERN_DIR = $(ROOT)/boot/platform/$(PLATFORM)/kernel 192 193# 194# The following are for the installation of objects in PSM directories. 195# 196ROOT_PSM_PROG= $(PROG:%=$(ROOT_PSM_DIR)/%) 197USR_PSM_PROG= $(PROG:%=$(USR_PSM_DIR)/%) 198 199ROOT_PSM_SBIN_PROG= $(PROG:%=$(ROOT_PSM_SBIN_DIR)/%) 200USR_PSM_SBIN_PROG= $(PROG:%=$(USR_PSM_SBIN_DIR)/%) 201 202ROOT_PSM_LIBS= $(LIBS:%=$(ROOT_PSM_LIB_DIR)/%) 203USR_PSM_LIBS= $(LIBS:%=$(USR_PSM_LIB_DIR)/%) 204USR_PSM_LIBS64= $(LIBS:%=$(USR_PSM_LIB64_DIR)/%) 205$(ROOT_PSM_LIB_DIR)/$(DYNLIB) := FILEMODE= 755 206$(ROOT_PSM_LIB64_DIR)/$(DYNLIB) := FILEMODE= 755 207$(USR_PSM_LIB_DIR)/$(DYNLIB) := FILEMODE= 755 208$(USR_PSM_LIB64_DIR)/$(DYNLIB) := FILEMODE= 755 209 210# 211# The following are used to link objects between platforms (for platforms 212# which wish to share some objects, but not everything). 213# 214ROOT_PSM_PROG_LINKS= $(PLATLINKS:%=$(ROOT_PLAT_DIR)/%/$(PROG)) 215USR_PSM_PROG_LINKS= $(PLATLINKS:%=$(USR_PLAT_DIR)/%/$(PROG)) 216 217ROOT_PSM_SBIN_PROG_LINKS= $(PLATLINKS:%=$(ROOT_PLAT_DIR)/%/sbin/$(PROG)) 218USR_PSM_SBIN_PROG_LINKS= $(PLATLINKS:%=$(USR_PLAT_DIR)/%/sbin/$(PROG)) 219 220# 221# The following are for the creation of the link between the generic name 222# of a library and the versioned instance of it. 223# 224ROOT_PSM_LIB_VERLINKS= $(ROOT_PSM_LIB_DIR)/$(LIBLINKS) 225USR_PSM_LIB_VERLINKS= $(USR_PSM_LIB_DIR)/$(LIBLINKS) 226