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