blob: a178b2a208b7f9200f5146d0fa2b844bbcd86dd0 [file] [log] [blame]
stevel@tonic-gate7c478bd2005-06-14 00:00:00 -07001#
2# CDDL HEADER START
3#
4# The contents of this file are subject to the terms of the
mrjae115bc2007-01-19 08:10:06 -08005# Common Development and Distribution License (the "License").
6# You may not use this file except in compliance with the License.
stevel@tonic-gate7c478bd2005-06-14 00:00:00 -07007#
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#
jmcp24fe0b32009-07-29 16:56:03 -070022# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
stevel@tonic-gate7c478bd2005-06-14 00:00:00 -070023# Use is subject to license terms.
24#
stevel@tonic-gate7c478bd2005-06-14 00:00:00 -070025# usr/src/Makefile.psm
26#
27# Makefile.psm, global definitions for platform specific modules
28
stevel@tonic-gate7c478bd2005-06-14 00:00:00 -070029
stevel@tonic-gate7c478bd2005-06-14 00:00:00 -070030ROOT_PLAT_DIR = $(ROOT)/platform
31
32ROOT_PSM_DIR = $(ROOT_PLAT_DIR)/$(PLATFORM)
33
34ROOT_PSM_MOD_DIR = $(ROOT_PSM_DIR)/kernel
35ROOT_PSM_LIB_DIR = $(ROOT_PSM_DIR)/lib
36ROOT_PSM_LIB64_DIR = $(ROOT_PSM_LIB_DIR)/$(MACH64)
37ROOT_PSM_SBIN_DIR = $(ROOT_PSM_DIR)/sbin
38
39ROOT_PSM_KERN_DIR_32 = $(ROOT_PSM_MOD_DIR)
40ROOT_PSM_DRV_DIR_32 = $(ROOT_PSM_MOD_DIR)/drv
41ROOT_PSM_EXEC_DIR_32 = $(ROOT_PSM_MOD_DIR)/exec
42ROOT_PSM_FS_DIR_32 = $(ROOT_PSM_MOD_DIR)/fs
43ROOT_PSM_SCHED_DIR_32 = $(ROOT_PSM_MOD_DIR)/sched
44ROOT_PSM_STRMOD_DIR_32 = $(ROOT_PSM_MOD_DIR)/strmod
45ROOT_PSM_SYS_DIR_32 = $(ROOT_PSM_MOD_DIR)/sys
46ROOT_PSM_MISC_DIR_32 = $(ROOT_PSM_MOD_DIR)/misc
47ROOT_PSM_KGSS_DIR_32 = $(ROOT_PSM_MOD_DIR)/misc/kgss
48ROOT_PSM_MACH_DIR_32 = $(ROOT_PSM_MOD_DIR)/mach
49ROOT_PSM_CPU_DIR_32 = $(ROOT_PSM_MOD_DIR)/cpu
50ROOT_PSM_PLAT_DIR_32 = $(ROOT_PSM_MOD_DIR)/misc
51ROOT_PSM_TOD_DIR_32 = $(ROOT_PSM_MOD_DIR)/tod
52ROOT_PSM_MMU_DIR_32 = $(ROOT_PSM_MOD_DIR)/mmu
53ROOT_PSM_DACF_DIR_32 = $(ROOT_PSM_MOD_DIR)/dacf
54ROOT_PSM_CRYPTO_DIR_32 = $(ROOT_PSM_MOD_DIR)/crypto
ae11280218a0bfd2005-06-27 10:46:13 -070055ROOT_PSM_PCBE_DIR_32 = $(ROOT_PSM_MOD_DIR)/pcbe
edp4a75c0c2007-04-27 14:21:30 -070056ROOT_PSM_BRAND_DIR_32 = $(ROOT_PSM_MOD_DIR)/brand
stevel@tonic-gate7c478bd2005-06-14 00:00:00 -070057
58ROOT_PSM_KERN_DIR_64 = $(ROOT_PSM_MOD_DIR)/$(SUBDIR64)
59ROOT_PSM_DRV_DIR_64 = $(ROOT_PSM_MOD_DIR)/drv/$(SUBDIR64)
60ROOT_PSM_EXEC_DIR_64 = $(ROOT_PSM_MOD_DIR)/exec/$(SUBDIR64)
61ROOT_PSM_FS_DIR_64 = $(ROOT_PSM_MOD_DIR)/fs/$(SUBDIR64)
62ROOT_PSM_SCHED_DIR_64 = $(ROOT_PSM_MOD_DIR)/sched/$(SUBDIR64)
63ROOT_PSM_STRMOD_DIR_64 = $(ROOT_PSM_MOD_DIR)/strmod/$(SUBDIR64)
64ROOT_PSM_SYS_DIR_64 = $(ROOT_PSM_MOD_DIR)/sys/$(SUBDIR64)
65ROOT_PSM_MISC_DIR_64 = $(ROOT_PSM_MOD_DIR)/misc/$(SUBDIR64)
66ROOT_PSM_KGSS_DIR_64 = $(ROOT_PSM_MOD_DIR)/misc/kgss/$(SUBDIR64)
67ROOT_PSM_MACH_DIR_64 = $(ROOT_PSM_MOD_DIR)/mach/$(SUBDIR64)
68ROOT_PSM_CPU_DIR_64 = $(ROOT_PSM_MOD_DIR)/cpu/$(SUBDIR64)
69ROOT_PSM_PLAT_DIR_64 = $(ROOT_PSM_MOD_DIR)/misc/$(SUBDIR64)
70ROOT_PSM_TOD_DIR_64 = $(ROOT_PSM_MOD_DIR)/tod/$(SUBDIR64)
71ROOT_PSM_MMU_DIR_64 = $(ROOT_PSM_MOD_DIR)/mmu/$(SUBDIR64)
72ROOT_PSM_DACF_DIR_64 = $(ROOT_PSM_MOD_DIR)/dacf/$(SUBDIR64)
73ROOT_PSM_CRYPTO_DIR_64 = $(ROOT_PSM_MOD_DIR)/crypto/$(SUBDIR64)
ae11280218a0bfd2005-06-27 10:46:13 -070074ROOT_PSM_PCBE_DIR_64 = $(ROOT_PSM_MOD_DIR)/pcbe/$(SUBDIR64)
edp4a75c0c2007-04-27 14:21:30 -070075ROOT_PSM_BRAND_DIR_64 = $(ROOT_PSM_MOD_DIR)/brand/$(SUBDIR64)
stevel@tonic-gate7c478bd2005-06-14 00:00:00 -070076
77ROOT_PSM_KERN_DIR = $(ROOT_PSM_KERN_DIR_$(CLASS))
78ROOT_PSM_DRV_DIR = $(ROOT_PSM_DRV_DIR_$(CLASS))
79ROOT_PSM_EXEC_DIR = $(ROOT_PSM_EXEC_DIR_$(CLASS))
80ROOT_PSM_FS_DIR = $(ROOT_PSM_FS_DIR_$(CLASS))
81ROOT_PSM_SCHED_DIR = $(ROOT_PSM_SCHED_DIR_$(CLASS))
82ROOT_PSM_STRMOD_DIR = $(ROOT_PSM_STRMOD_DIR_$(CLASS))
83ROOT_PSM_SYS_DIR = $(ROOT_PSM_SYS_DIR_$(CLASS))
84ROOT_PSM_MISC_DIR = $(ROOT_PSM_MISC_DIR_$(CLASS))
85ROOT_PSM_KGSS_DIR = $(ROOT_PSM_KGSS_DIR_$(CLASS))
86ROOT_PSM_MACH_DIR = $(ROOT_PSM_MACH_DIR_$(CLASS))
87ROOT_PSM_CPU_DIR = $(ROOT_PSM_CPU_DIR_$(CLASS))
88ROOT_PSM_PLAT_DIR = $(ROOT_PSM_PLAT_DIR_$(CLASS))
89ROOT_PSM_TOD_DIR = $(ROOT_PSM_TOD_DIR_$(CLASS))
90ROOT_PSM_MMU_DIR = $(ROOT_PSM_MMU_DIR_$(CLASS))
91ROOT_PSM_DACF_DIR = $(ROOT_PSM_DACF_DIR_$(CLASS))
92ROOT_PSM_CRYPTO_DIR = $(ROOT_PSM_CRYPTO_DIR_$(CLASS))
ae11280218a0bfd2005-06-27 10:46:13 -070093ROOT_PSM_PCBE_DIR = $(ROOT_PSM_PCBE_DIR_$(CLASS))
edp4a75c0c2007-04-27 14:21:30 -070094ROOT_PSM_BRAND_DIR = $(ROOT_PSM_BRAND_DIR_$(CLASS))
stevel@tonic-gate7c478bd2005-06-14 00:00:00 -070095
96ROOT_PSM_MOD_DIRS_32 = $(ROOT_PSM_DRV_DIR_32)
97ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_EXEC_DIR_32) $(ROOT_PSM_FS_DIR_32)
98ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_SCHED_DIR_32) $(ROOT_PSM_STRMOD_DIR_32)
99ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_SYS_DIR_32) $(ROOT_PSM_MISC_DIR_32)
100ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_KGSS_DIR_32)
101ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_MACH_DIR_32) $(ROOT_PSM_CPU_DIR_32)
102ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_TOD_DIR_32)
103ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_MMU_DIR_32)
104ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_DACF_DIR_32)
105ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_CRYPTO_DIR_32)
ae11280218a0bfd2005-06-27 10:46:13 -0700106ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_PCBE_DIR_32)
edp4a75c0c2007-04-27 14:21:30 -0700107ROOT_PSM_MOD_DIRS_32 += $(ROOT_PSM_BRAND_DIR_32)
stevel@tonic-gate7c478bd2005-06-14 00:00:00 -0700108
jgd876c672008-03-29 19:24:05 -0700109ROOT_PSM_LIB_FS_DIR = $(ROOT_PSM_LIB_DIR)/fs
110ROOT_PSM_LIB_UFS_DIR = $(ROOT_PSM_LIB_FS_DIR)/ufs
111ROOT_PSM_LIB_NFS_DIR = $(ROOT_PSM_LIB_FS_DIR)/nfs
112ROOT_PSM_LIB_HSFS_DIR = $(ROOT_PSM_LIB_FS_DIR)/hsfs
113ROOT_PSM_LIB_ZFS_DIR = $(ROOT_PSM_LIB_FS_DIR)/zfs
114
stevel@tonic-gate7c478bd2005-06-14 00:00:00 -0700115USR_PLAT_DIR = $(ROOT)/usr/platform
116
117USR_PSM_DIR = $(USR_PLAT_DIR)/$(PLATFORM)
118
119USR_PSM_MOD_DIR = $(USR_PSM_DIR)/kernel
120USR_PSM_INCL_DIR = $(USR_PSM_DIR)/include
121USR_PSM_LIB_DIR = $(USR_PSM_DIR)/lib
122USR_PSM_LIB64_DIR = $(USR_PSM_LIB_DIR)/$(MACH64)
123USR_PSM_SBIN_DIR = $(USR_PSM_DIR)/sbin
124
125USR_PSM_ISYS_DIR = $(USR_PSM_INCL_DIR)/sys
126USR_PSM_IVM_DIR = $(USR_PSM_INCL_DIR)/vm
127
128USR_PSM_LIB_ABI_DIR = $(USR_PSM_LIB_DIR)/abi
129USR_PSM_LIB_ABI_DIR_64 = $(USR_PSM_LIB_ABI_DIR)/$(MACH64)
130
131USR_PSM_LIB_FS_DIR = $(USR_PSM_LIB_DIR)/fs
132USR_PSM_LIB_UFS_DIR = $(USR_PSM_LIB_FS_DIR)/ufs
133USR_PSM_LIB_NFS_DIR = $(USR_PSM_LIB_FS_DIR)/nfs
134USR_PSM_LIB_HSFS_DIR = $(USR_PSM_LIB_FS_DIR)/hsfs
setje986fd292007-12-07 16:04:33 -0800135USR_PSM_LIB_ZFS_DIR = $(USR_PSM_LIB_FS_DIR)/zfs
stevel@tonic-gate7c478bd2005-06-14 00:00:00 -0700136
137USR_PSM_DRV_DIR_32 = $(USR_PSM_MOD_DIR)/drv
138USR_PSM_EXEC_DIR_32 = $(USR_PSM_MOD_DIR)/exec
139USR_PSM_FS_DIR_32 = $(USR_PSM_MOD_DIR)/fs
140USR_PSM_SCHED_DIR_32 = $(USR_PSM_MOD_DIR)/sched
141USR_PSM_STRMOD_DIR_32 = $(USR_PSM_MOD_DIR)/strmod
142USR_PSM_SYS_DIR_32 = $(USR_PSM_MOD_DIR)/sys
143USR_PSM_MISC_DIR_32 = $(USR_PSM_MOD_DIR)/misc
144USR_PSM_DACF_DIR_32 = $(USR_PSM_MOD_DIR)/dacf
145
146USR_PSM_DRV_DIR_64 = $(USR_PSM_MOD_DIR)/drv/$(SUBDIR64)
147USR_PSM_EXEC_DIR_64 = $(USR_PSM_MOD_DIR)/exec/$(SUBDIR64)
148USR_PSM_FS_DIR_64 = $(USR_PSM_MOD_DIR)/fs/$(SUBDIR64)
149USR_PSM_SCHED_DIR_64 = $(USR_PSM_MOD_DIR)/sched/$(SUBDIR64)
150USR_PSM_STRMOD_DIR_64 = $(USR_PSM_MOD_DIR)/strmod/$(SUBDIR64)
151USR_PSM_SYS_DIR_64 = $(USR_PSM_MOD_DIR)/sys/$(SUBDIR64)
152USR_PSM_MISC_DIR_64 = $(USR_PSM_MOD_DIR)/misc/$(SUBDIR64)
153USR_PSM_DACF_DIR_64 = $(USR_PSM_MOD_DIR)/dacf/$(SUBDIR64)
154
155USR_PSM_DRV_DIR = $(USR_PSM_DRV_DIR_$(CLASS))
156USR_PSM_EXEC_DIR = $(USR_PSM_EXEC_DIR_$(CLASS))
157USR_PSM_FS_DIR = $(USR_PSM_FS_DIR_$(CLASS))
158USR_PSM_SCHED_DIR = $(USR_PSM_SCHED_DIR_$(CLASS))
159USR_PSM_STRMOD_DIR = $(USR_PSM_STRMOD_DIR_$(CLASS))
160USR_PSM_SYS_DIR = $(USR_PSM_SYS_DIR_$(CLASS))
161USR_PSM_MISC_DIR = $(USR_PSM_MISC_DIR_$(CLASS))
162USR_PSM_DACF_DIR = $(USR_PSM_DACF_DIR_$(CLASS))
163
164USR_PSM_MOD_DIRS_32 = $(USR_PSM_DRV_DIR_32)
165USR_PSM_MOD_DIRS_32 += $(USR_PSM_EXEC_DIR_32) $(USR_PSM_FS_DIR_32)
166USR_PSM_MOD_DIRS_32 += $(USR_PSM_SCHED_DIR_32) $(USR_PSM_STRMOD_DIR_32)
167USR_PSM_MOD_DIRS_32 += $(USR_PSM_SYS_DIR_32) $(USR_PSM_MISC_DIR_32)
168USR_PSM_MOD_DIRS_32 += $(USR_PSM_DACF_DIR_32)
169
170#
171# UltraSparc III crypto modules
172#
173ROOT_US3_DIR = $(ROOT_PLAT_DIR)/sun4u-us3
174ROOT_US3_MOD_DIR = $(ROOT_US3_DIR)/kernel
175ROOT_US3_CRYPTO_DIR_32 = $(ROOT_US3_MOD_DIR)/crypto
176ROOT_US3_CRYPTO_DIR_64 = $(ROOT_US3_MOD_DIR)/crypto/$(SUBDIR64)
177ROOT_US3_CRYPTO_DIR = $(ROOT_US3_CRYPTO_DIR_$(CLASS))
178ROOT_US3_CRYPTO_LINK = $(ROOT_US3_CRYPTO_DIR_64:$(ROOT_PLAT_DIR)%=../../../..%)
179
mrjae115bc2007-01-19 08:10:06 -0800180ROOT_BOOT_PSM_KERN_DIR = $(ROOT)/boot/platform/$(PLATFORM)/kernel
181
stevel@tonic-gate7c478bd2005-06-14 00:00:00 -0700182#
183# The following are for the installation of objects in PSM directories.
184#
185ROOT_PSM_PROG= $(PROG:%=$(ROOT_PSM_DIR)/%)
186USR_PSM_PROG= $(PROG:%=$(USR_PSM_DIR)/%)
187
188ROOT_PSM_SBIN_PROG= $(PROG:%=$(ROOT_PSM_SBIN_DIR)/%)
189USR_PSM_SBIN_PROG= $(PROG:%=$(USR_PSM_SBIN_DIR)/%)
190
191ROOT_PSM_LIBS= $(LIBS:%=$(ROOT_PSM_LIB_DIR)/%)
192USR_PSM_LIBS= $(LIBS:%=$(USR_PSM_LIB_DIR)/%)
Anthony Scarpino71269a22008-11-14 13:57:26 -0800193USR_PSM_LIBS64= $(LIBS:%=$(USR_PSM_LIB64_DIR)/%)
stevel@tonic-gate7c478bd2005-06-14 00:00:00 -0700194$(ROOT_PSM_LIB_DIR)/$(DYNLIB) := FILEMODE= 755
195$(ROOT_PSM_LIB64_DIR)/$(DYNLIB) := FILEMODE= 755
196$(USR_PSM_LIB_DIR)/$(DYNLIB) := FILEMODE= 755
197$(USR_PSM_LIB64_DIR)/$(DYNLIB) := FILEMODE= 755
198
199#
200# The following are used to link objects between platforms (for platforms
201# which wish to share some objects, but not everything).
202#
203ROOT_PSM_PROG_LINKS= $(PLATLINKS:%=$(ROOT_PLAT_DIR)/%/$(PROG))
204USR_PSM_PROG_LINKS= $(PLATLINKS:%=$(USR_PLAT_DIR)/%/$(PROG))
205
206ROOT_PSM_SBIN_PROG_LINKS= $(PLATLINKS:%=$(ROOT_PLAT_DIR)/%/sbin/$(PROG))
207USR_PSM_SBIN_PROG_LINKS= $(PLATLINKS:%=$(USR_PLAT_DIR)/%/sbin/$(PROG))
208
209#
210# The following are for the creation of the link between the generic name
211# of a library and the versioned instance of it.
212#
213ROOT_PSM_LIB_VERLINKS= $(ROOT_PSM_LIB_DIR)/$(LIBLINKS)
214USR_PSM_LIB_VERLINKS= $(USR_PSM_LIB_DIR)/$(LIBLINKS)