Merge commit '42a3762d0138d6dd0c0f96964be98d0b21ab6bef'
[unleashed.git] / usr / src / Makefile.psm
blob04d8ccac3a4570fd065f6573d65d4b5c3de3313f
2 # CDDL HEADER START
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.
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.
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]
19 # CDDL HEADER END
22 # Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
23 # Use is subject to license terms.
25 # usr/src/Makefile.psm
27 # Makefile.psm, global definitions for platform specific modules
30 ROOT_PLAT_DIR            = $(ROOT)/platform
32 ROOT_PSM_DIR             = $(ROOT_PLAT_DIR)
34 ROOT_PSM_MOD_DIR         = $(ROOT_PSM_DIR)/kernel
35 ROOT_PSM_LIB_DIR         = $(ROOT_PSM_DIR)/lib
36 ROOT_PSM_LIB64_DIR       = $(ROOT_PSM_LIB_DIR)/$(MACH64)
37 ROOT_PSM_SBIN_DIR        = $(ROOT_PSM_DIR)/sbin
39 ROOT_PSM_KERN_DIR        = $(ROOT_PSM_MOD_DIR)
40 ROOT_PSM_DRV_DIR         = $(ROOT_PSM_MOD_DIR)/drv
41 ROOT_PSM_EXEC_DIR        = $(ROOT_PSM_MOD_DIR)/exec
42 ROOT_PSM_FS_DIR          = $(ROOT_PSM_MOD_DIR)/fs
43 ROOT_PSM_SCHED_DIR       = $(ROOT_PSM_MOD_DIR)/sched
44 ROOT_PSM_STRMOD_DIR      = $(ROOT_PSM_MOD_DIR)/strmod
45 ROOT_PSM_SYS_DIR         = $(ROOT_PSM_MOD_DIR)/sys
46 ROOT_PSM_MISC_DIR        = $(ROOT_PSM_MOD_DIR)/misc
47 ROOT_PSM_KGSS_DIR        = $(ROOT_PSM_MOD_DIR)/misc/kgss
48 ROOT_PSM_MACH_DIR        = $(ROOT_PSM_MOD_DIR)/mach
49 ROOT_PSM_CPU_DIR         = $(ROOT_PSM_MOD_DIR)/cpu
50 ROOT_PSM_PLAT_DIR        = $(ROOT_PSM_MOD_DIR)/misc
51 ROOT_PSM_TOD_DIR         = $(ROOT_PSM_MOD_DIR)/tod
52 ROOT_PSM_MMU_DIR         = $(ROOT_PSM_MOD_DIR)/mmu
53 ROOT_PSM_DACF_DIR        = $(ROOT_PSM_MOD_DIR)/dacf
54 ROOT_PSM_CRYPTO_DIR      = $(ROOT_PSM_MOD_DIR)/crypto
55 ROOT_PSM_PCBE_DIR        = $(ROOT_PSM_MOD_DIR)/pcbe
56 ROOT_PSM_BRAND_DIR       = $(ROOT_PSM_MOD_DIR)/brand
58 ROOT_PSM_MOD_DIRS        = $(ROOT_PSM_DRV_DIR)
59 ROOT_PSM_MOD_DIRS       += $(ROOT_PSM_EXEC_DIR) $(ROOT_PSM_FS_DIR)
60 ROOT_PSM_MOD_DIRS       += $(ROOT_PSM_SCHED_DIR) $(ROOT_PSM_STRMOD_DIR)
61 ROOT_PSM_MOD_DIRS       += $(ROOT_PSM_SYS_DIR) $(ROOT_PSM_MISC_DIR)
62 ROOT_PSM_MOD_DIRS       += $(ROOT_PSM_KGSS_DIR)
63 ROOT_PSM_MOD_DIRS       += $(ROOT_PSM_MACH_DIR) $(ROOT_PSM_CPU_DIR)
64 ROOT_PSM_MOD_DIRS       += $(ROOT_PSM_TOD_DIR)
65 ROOT_PSM_MOD_DIRS       += $(ROOT_PSM_MMU_DIR)
66 ROOT_PSM_MOD_DIRS       += $(ROOT_PSM_DACF_DIR)
67 ROOT_PSM_MOD_DIRS       += $(ROOT_PSM_CRYPTO_DIR)
68 ROOT_PSM_MOD_DIRS       += $(ROOT_PSM_PCBE_DIR)
69 ROOT_PSM_MOD_DIRS       += $(ROOT_PSM_BRAND_DIR)
71 ROOT_PSM_LIB_FS_DIR      = $(ROOT_PSM_LIB_DIR)/fs
72 ROOT_PSM_LIB_UFS_DIR     = $(ROOT_PSM_LIB_FS_DIR)/ufs
73 ROOT_PSM_LIB_NFS_DIR     = $(ROOT_PSM_LIB_FS_DIR)/nfs
74 ROOT_PSM_LIB_HSFS_DIR    = $(ROOT_PSM_LIB_FS_DIR)/hsfs
75 ROOT_PSM_LIB_ZFS_DIR     = $(ROOT_PSM_LIB_FS_DIR)/zfs
77 USR_PLAT_DIR             = $(ROOT)/usr/platform
79 USR_PSM_DIR              = $(USR_PLAT_DIR)
81 USR_PSM_MOD_DIR          = $(USR_PSM_DIR)/kernel
82 USR_PSM_INCL_DIR         = $(USR_PSM_DIR)/include
83 USR_PSM_LIB_DIR          = $(USR_PSM_DIR)/lib
84 USR_PSM_LIB64_DIR        = $(USR_PSM_LIB_DIR)/$(MACH64)
85 USR_PSM_SBIN_DIR         = $(USR_PSM_DIR)/sbin
87 USR_PSM_ISYS_DIR         = $(USR_PSM_INCL_DIR)/sys
88 USR_PSM_IVM_DIR          = $(USR_PSM_INCL_DIR)/vm
90 USR_PSM_LIB_ABI_DIR     = $(USR_PSM_LIB_DIR)/abi 
91 USR_PSM_LIB_ABI_DIR_64  = $(USR_PSM_LIB_ABI_DIR)/$(MACH64) 
93 USR_PSM_LIB_FS_DIR       = $(USR_PSM_LIB_DIR)/fs
94 USR_PSM_LIB_UFS_DIR      = $(USR_PSM_LIB_FS_DIR)/ufs
95 USR_PSM_LIB_NFS_DIR      = $(USR_PSM_LIB_FS_DIR)/nfs
96 USR_PSM_LIB_HSFS_DIR     = $(USR_PSM_LIB_FS_DIR)/hsfs
97 USR_PSM_LIB_ZFS_DIR      = $(USR_PSM_LIB_FS_DIR)/zfs
99 USR_PSM_DRV_DIR          = $(USR_PSM_MOD_DIR)/drv
100 USR_PSM_EXEC_DIR         = $(USR_PSM_MOD_DIR)/exec
101 USR_PSM_FS_DIR           = $(USR_PSM_MOD_DIR)/fs
102 USR_PSM_SCHED_DIR        = $(USR_PSM_MOD_DIR)/sched
103 USR_PSM_STRMOD_DIR       = $(USR_PSM_MOD_DIR)/strmod
104 USR_PSM_SYS_DIR          = $(USR_PSM_MOD_DIR)/sys
105 USR_PSM_MISC_DIR         = $(USR_PSM_MOD_DIR)/misc
106 USR_PSM_DACF_DIR         = $(USR_PSM_MOD_DIR)/dacf
108 USR_PSM_MOD_DIRS         = $(USR_PSM_DRV_DIR)
109 USR_PSM_MOD_DIRS        += $(USR_PSM_EXEC_DIR) $(USR_PSM_FS_DIR)
110 USR_PSM_MOD_DIRS        += $(USR_PSM_SCHED_DIR) $(USR_PSM_STRMOD_DIR)
111 USR_PSM_MOD_DIRS        += $(USR_PSM_SYS_DIR) $(USR_PSM_MISC_DIR)
112 USR_PSM_MOD_DIRS        += $(USR_PSM_DACF_DIR)
115 # UltraSparc III crypto modules
117 ROOT_US3_DIR            = $(ROOT_PLAT_DIR)/sun4u-us3
118 ROOT_US3_MOD_DIR        = $(ROOT_US3_DIR)/kernel
119 ROOT_US3_CRYPTO_DIR_32  = $(ROOT_US3_MOD_DIR)/crypto
120 ROOT_US3_CRYPTO_DIR_64  = $(ROOT_US3_MOD_DIR)/crypto/$(SUBDIR64)
121 ROOT_US3_CRYPTO_DIR     = $(ROOT_US3_CRYPTO_DIR_$(CLASS))
122 ROOT_US3_CRYPTO_LINK    = $(ROOT_US3_CRYPTO_DIR_64:$(ROOT_PLAT_DIR)%=../../../..%)
124 ROOT_BOOT_PSM_KERN_DIR  = $(ROOT)/boot/platform/kernel
127 # The following are for the installation of objects in PSM directories.
129 ROOT_PSM_PROG=                  $(PROG:%=$(ROOT_PSM_DIR)/%)
130 USR_PSM_PROG=                   $(PROG:%=$(USR_PSM_DIR)/%)
132 ROOT_PSM_SBIN_PROG=             $(PROG:%=$(ROOT_PSM_SBIN_DIR)/%)
133 USR_PSM_SBIN_PROG=              $(PROG:%=$(USR_PSM_SBIN_DIR)/%)
135 ROOT_PSM_LIBS=                  $(LIBS:%=$(ROOT_PSM_LIB_DIR)/%)
136 USR_PSM_LIBS=                   $(LIBS:%=$(USR_PSM_LIB_DIR)/%)
137 USR_PSM_LIBS64=                 $(LIBS:%=$(USR_PSM_LIB64_DIR)/%)
138 $(ROOT_PSM_LIB_DIR)/$(DYNLIB)   := FILEMODE= 755
139 $(ROOT_PSM_LIB64_DIR)/$(DYNLIB) := FILEMODE= 755
140 $(USR_PSM_LIB_DIR)/$(DYNLIB)    := FILEMODE= 755
141 $(USR_PSM_LIB64_DIR)/$(DYNLIB)  := FILEMODE= 755
144 # The following are used to link objects between platforms (for platforms
145 # which wish to share some objects, but not everything).
147 ROOT_PSM_PROG_LINKS=            $(PLATLINKS:%=$(ROOT_PLAT_DIR)/%/$(PROG))
148 USR_PSM_PROG_LINKS=             $(PLATLINKS:%=$(USR_PLAT_DIR)/%/$(PROG))
150 ROOT_PSM_SBIN_PROG_LINKS=       $(PLATLINKS:%=$(ROOT_PLAT_DIR)/%/sbin/$(PROG))
151 USR_PSM_SBIN_PROG_LINKS=        $(PLATLINKS:%=$(USR_PLAT_DIR)/%/sbin/$(PROG))
154 # The following are for the creation of the link between the generic name
155 # of a library and the versioned instance of it.
157 ROOT_PSM_LIB_VERLINKS=          $(ROOT_PSM_LIB_DIR)/$(LIBLINKS)
158 USR_PSM_LIB_VERLINKS=           $(USR_PSM_LIB_DIR)/$(LIBLINKS)