make-rules/shared-macros.mk
author Norm Jacobs <Norm.Jacobs@Oracle.COM>
Fri, 28 Jan 2011 11:44:21 -0800
changeset 65 1fa3eaf1bf9d
parent 64 a4b12971cf99
child 70 c610cf9d3d5d
permissions -rw-r--r--
7014413 userland should not include _ in facet.locale.* names (fix pkglint)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
     1
#
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
     2
# CDDL HEADER START
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
     3
#
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
     4
# The contents of this file are subject to the terms of the
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
     5
# Common Development and Distribution License (the "License").
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
     6
# You may not use this file except in compliance with the License.
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
     7
#
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
     8
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
     9
# or http://www.opensolaris.org/os/licensing.
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    10
# See the License for the specific language governing permissions
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    11
# and limitations under the License.
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    12
#
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    13
# When distributing Covered Code, include this CDDL HEADER in each
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    14
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    15
# If applicable, add the following below this CDDL HEADER, with the
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    16
# fields enclosed by brackets "[]" replaced with your own identifying
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    17
# information: Portions Copyright [yyyy] [name of copyright owner]
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    18
#
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    19
# CDDL HEADER END
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    20
#
58
d8024c042a00 7011369 gmake complains about fresh userland bits
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 53
diff changeset
    21
# Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    22
#
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    23
32
280a7444e782 automatically generate intercomponent dependencies for build ordering
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 31
diff changeset
    24
PATH=/usr/bin:/usr/gnu/bin
280a7444e782 automatically generate intercomponent dependencies for build ordering
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 31
diff changeset
    25
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    26
CONSOLIDATION =	userland
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    27
PUBLISHER =	$(CONSOLIDATION)-build
26
8a9f4e791832 packaging changes including canonical manifest support with manifest validation
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 16
diff changeset
    28
38
cd00ea74156e package audits should pass pkglint
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 34
diff changeset
    29
IS_GLOBAL_ZONE =	$(shell /usr/sbin/zoneadm list | grep -c global)
cd00ea74156e package audits should pass pkglint
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 34
diff changeset
    30
ROOT =			/
cd00ea74156e package audits should pass pkglint
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 34
diff changeset
    31
29
eb4177698749 Generate the build number from the most recent mercurial tag
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 26
diff changeset
    32
# get the most recent build number from the last mercurial tag
eb4177698749 Generate the build number from the most recent mercurial tag
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 26
diff changeset
    33
LAST_HG_TAG =	$(shell hg tags -q | head -2 | tail -1)
eb4177698749 Generate the build number from the most recent mercurial tag
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 26
diff changeset
    34
LAST_BUILD_NUM = $(LAST_HG_TAG:build-%=%)
eb4177698749 Generate the build number from the most recent mercurial tag
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 26
diff changeset
    35
26
8a9f4e791832 packaging changes including canonical manifest support with manifest validation
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 16
diff changeset
    36
OS_VERSION =		$(shell uname -r)
8a9f4e791832 packaging changes including canonical manifest support with manifest validation
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 16
diff changeset
    37
SOLARIS_VERSION =	$(OS_VERSION:5.%=2.%)
29
eb4177698749 Generate the build number from the most recent mercurial tag
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 26
diff changeset
    38
BUILD_NUM =		0.$(shell expr $(LAST_BUILD_NUM) + 1)
26
8a9f4e791832 packaging changes including canonical manifest support with manifest validation
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 16
diff changeset
    39
BUILD_VERSION =		$(OS_VERSION)-$(BUILD_NUM)
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    40
38
cd00ea74156e package audits should pass pkglint
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 34
diff changeset
    41
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    42
COMPILER =		studio
6
20f80c019d73 add compiler date/time chatter reduction tools
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 2
diff changeset
    43
BITS =			32
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    44
PYTHON_VERSION =	2.6
58
d8024c042a00 7011369 gmake complains about fresh userland bits
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 53
diff changeset
    45
PYTHON_VERSIONS =	2.6
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    46
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    47
WS_LOGS =	$(WS_TOP)/logs
34
d20b10eba317 prepare for zone based component builds
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 32
diff changeset
    48
WS_REPO =	$(WS_TOP)/repo
d20b10eba317 prepare for zone based component builds
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 32
diff changeset
    49
WS_TOOLS =	$(WS_TOP)/tools
d20b10eba317 prepare for zone based component builds
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 32
diff changeset
    50
WS_MAKE_RULES =	$(WS_TOP)/make-rules
d20b10eba317 prepare for zone based component builds
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 32
diff changeset
    51
WS_COMPONENTS =	$(WS_TOP)/components
49
13d31a6d756e improve parallel build
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 47
diff changeset
    52
WS_INCORPORATIONS =	$(WS_TOP)/incorporations
53
e398cb2c4b45 7004049 SUNWa2ps should move to userland with a2ps
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 49
diff changeset
    53
WS_LINT_CACHE =	$(WS_TOP)/cache
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    54
34
d20b10eba317 prepare for zone based component builds
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 32
diff changeset
    55
BASS_O_MATIC =	$(WS_TOOLS)/bass-o-matic
d20b10eba317 prepare for zone based component builds
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 32
diff changeset
    56
d20b10eba317 prepare for zone based component builds
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 32
diff changeset
    57
PKG_REPO =	file:$(WS_REPO)
59
7500d63edb42 7012375 userland build and proto areas should be outside of unpacked source dirs
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 58
diff changeset
    58
7500d63edb42 7012375 userland build and proto areas should be outside of unpacked source dirs
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 58
diff changeset
    59
SOURCE_DIR =	$(shell pwd)/$(COMPONENT_SRC)
7500d63edb42 7012375 userland build and proto areas should be outside of unpacked source dirs
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 58
diff changeset
    60
BUILD_DIR =	$(shell pwd)/build
7500d63edb42 7012375 userland build and proto areas should be outside of unpacked source dirs
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 58
diff changeset
    61
PROTO_DIR =	$(BUILD_DIR)/prototype/$(MACH)
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    62
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    63
USRDIR =	/usr
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    64
BINDIR =	/bin
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    65
LIBDIR =	/lib
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    66
USRBINDIR =	$(USRDIR)/bin
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    67
USRLIBDIR =	$(USRDIR)/lib
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    68
USRSHAREDIR =	$(USRDIR)/share
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    69
USRSHAREMANDIR =	$(USRSHAREDIR)/man
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    70
USRSHAREMAN1DIR =	$(USRSHAREMANDIR)/man1
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    71
USRSHAREMAN3DIR =	$(USRSHAREMANDIR)/man3
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    72
USRLIBDIR64 =	$(USRDIR)/lib/$(MACH64)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    73
PROTOUSRDIR =	$(PROTO_DIR)/$(USRDIR)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    74
PROTOUSRBINDIR =	$(PROTO_DIR)/$(USRBINDIR)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    75
PROTOUSRLIBDIR =	$(PROTO_DIR)/$(USRLIBDIR)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    76
PROTOUSRLIBDIR64 =	$(PROTO_DIR)/$(USRLIBDIR64)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    77
PROTOUSRSHAREDIR =	$(PROTO_DIR)/$(USRSHAREDIR)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    78
PROTOUSRSHAREMANDIR =	$(PROTO_DIR)/$(USRSHAREMANDIR)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    79
PROTOUSRSHAREMAN1DIR =	$(PROTO_DIR)/$(USRSHAREMAN1DIR)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    80
PROTOUSRSHAREMAN3DIR =	$(PROTO_DIR)/$(USRSHAREMAN3DIR)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    81
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
    82
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
    83
SFWBIN =	/usr/sfw/bin
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
    84
SFWLIB =	/usr/sfw/lib
64
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
    85
SFWSHARE =	/usr/sfw/share
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
    86
SFWSHAREMAN =	/usr/sfw/share/man
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
    87
SFWSHAREMAN1 =	/usr/sfw/share/man/man1
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
    88
PROTOSFWBIN =	$(PROTO_DIR)/$(SFWBIN)
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
    89
PROTOSFWLIB =	$(PROTO_DIR)/$(SFWLIB)
64
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
    90
PROTOSFWSHARE =	$(PROTO_DIR)/$(SFWSHARE)
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
    91
PROTOSFWSHAREMAN =	$(PROTO_DIR)/$(SFWSHAREMAN)
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
    92
PROTOSFWSHAREMAN1 =	$(PROTO_DIR)/$(SFWSHAREMAN1)
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
    93
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
    94
GNUBIN =	/usr/gnu/bin
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
    95
GNUSHARE =	/usr/gnu/share
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
    96
GNUSHAREMAN =	/usr/gnu/share/man
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
    97
GNUSHAREMAN1 =	/usr/gnu/share/man/man1
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
    98
PROTOGNUBIN =	$(PROTO_DIR)/$(GNUBIN)
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
    99
PROTOGNUSHARE =	$(PROTO_DIR)/$(GNUSHARE)
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   100
PROTOGNUSHAREMAN =	$(PROTO_DIR)/$(GNUSHAREMAN)
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   101
PROTOGNUSHAREMAN1 =	$(PROTO_DIR)/$(GNUSHAREMAN1)
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   102
16
33aaaec59991 update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 12
diff changeset
   103
# work around _TIME, _DATE, embedded date chatter in component builds
33aaaec59991 update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 12
diff changeset
   104
# to use, set TIME_CONSTANT in the component Makefile and add $(CONSTANT_TIME)
33aaaec59991 update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 12
diff changeset
   105
# to the appropriate {CONFIGURE|BUILD|INSTALL}_ENV
34
d20b10eba317 prepare for zone based component builds
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 32
diff changeset
   106
CONSTANT_TIME =		LD_PRELOAD_32=$(WS_TOOLS)/time-$(MACH32).so
d20b10eba317 prepare for zone based component builds
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 32
diff changeset
   107
CONSTANT_TIME +=	LD_PRELOAD_64=$(WS_TOOLS)/time-$(MACH64).so
16
33aaaec59991 update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 12
diff changeset
   108
CONSTANT_TIME +=	TIME_CONSTANT=$(TIME_CONSTANT)
6
20f80c019d73 add compiler date/time chatter reduction tools
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 2
diff changeset
   109
12
41aeb1fd8c2d Fix MACH32/MACH64 so more than one architecture can build in the same workspace
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 7
diff changeset
   110
# set MACH from uname -p to either sparc or i386
41aeb1fd8c2d Fix MACH32/MACH64 so more than one architecture can build in the same workspace
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 7
diff changeset
   111
MACH =		$(shell uname -p)
41aeb1fd8c2d Fix MACH32/MACH64 so more than one architecture can build in the same workspace
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 7
diff changeset
   112
41aeb1fd8c2d Fix MACH32/MACH64 so more than one architecture can build in the same workspace
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 7
diff changeset
   113
# set MACH32 from MACH to either sparcv7 or i86
41aeb1fd8c2d Fix MACH32/MACH64 so more than one architecture can build in the same workspace
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 7
diff changeset
   114
MACH32_1 =	$(MACH:sparc=sparcv7)
41aeb1fd8c2d Fix MACH32/MACH64 so more than one architecture can build in the same workspace
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 7
diff changeset
   115
MACH32 =	$(MACH32_1:i386=i86)
41aeb1fd8c2d Fix MACH32/MACH64 so more than one architecture can build in the same workspace
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 7
diff changeset
   116
41aeb1fd8c2d Fix MACH32/MACH64 so more than one architecture can build in the same workspace
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 7
diff changeset
   117
# set MACH64 from MACH to either sparcv9 or amd64
41aeb1fd8c2d Fix MACH32/MACH64 so more than one architecture can build in the same workspace
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 7
diff changeset
   118
MACH64_1 =	$(MACH:sparc=sparcv9)
41aeb1fd8c2d Fix MACH32/MACH64 so more than one architecture can build in the same workspace
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 7
diff changeset
   119
MACH64 =	$(MACH64_1:i386=amd64)
41aeb1fd8c2d Fix MACH32/MACH64 so more than one architecture can build in the same workspace
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 7
diff changeset
   120
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   121
BUILD_DIR_32 =		$(BUILD_DIR)/$(MACH32)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   122
BUILD_DIR_64 =		$(BUILD_DIR)/$(MACH64)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   123
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   124
BUILD_32 =		$(BUILD_DIR_32)/.built
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   125
BUILD_64 =		$(BUILD_DIR_64)/.built
12
41aeb1fd8c2d Fix MACH32/MACH64 so more than one architecture can build in the same workspace
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 7
diff changeset
   126
BUILD_32_and_64 =	$(BUILD_32) $(BUILD_64)
41aeb1fd8c2d Fix MACH32/MACH64 so more than one architecture can build in the same workspace
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 7
diff changeset
   127
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   128
INSTALL_32 =		$(BUILD_DIR_32)/.installed
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   129
INSTALL_64 =		$(BUILD_DIR_64)/.installed
12
41aeb1fd8c2d Fix MACH32/MACH64 so more than one architecture can build in the same workspace
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 7
diff changeset
   130
INSTALL_32_and_64 =	$(INSTALL_32) $(INSTALL_64)
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   131
40
84267c1130e9 fix SPRO_ROOT usage to match ON and SFW and not be confusing
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 38
diff changeset
   132
# BUILD_TOOLS is the root of all tools not normally installed on the system.
84267c1130e9 fix SPRO_ROOT usage to match ON and SFW and not be confusing
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 38
diff changeset
   133
BUILD_TOOLS =	/ws/onnv-tools
84267c1130e9 fix SPRO_ROOT usage to match ON and SFW and not be confusing
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 38
diff changeset
   134
84267c1130e9 fix SPRO_ROOT usage to match ON and SFW and not be confusing
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 38
diff changeset
   135
SPRO_ROOT =	$(BUILD_TOOLS)/SUNWspro
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   136
SPRO_VROOT =	$(SPRO_ROOT)/sunstudio12.1
40
84267c1130e9 fix SPRO_ROOT usage to match ON and SFW and not be confusing
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 38
diff changeset
   137
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   138
GCC_ROOT =	/usr/gnu
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   139
40
84267c1130e9 fix SPRO_ROOT usage to match ON and SFW and not be confusing
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 38
diff changeset
   140
CC.studio.32 =	$(SPRO_VROOT)/bin/cc -m32
84267c1130e9 fix SPRO_ROOT usage to match ON and SFW and not be confusing
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 38
diff changeset
   141
CCC.studio.32 =	$(SPRO_VROOT)/bin/CC -m32
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   142
40
84267c1130e9 fix SPRO_ROOT usage to match ON and SFW and not be confusing
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 38
diff changeset
   143
CC.studio.64 =	$(SPRO_VROOT)/bin/cc -m64
84267c1130e9 fix SPRO_ROOT usage to match ON and SFW and not be confusing
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 38
diff changeset
   144
CCC.studio.64 =	$(SPRO_VROOT)/bin/CC -m64
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   145
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   146
CC.gcc.32 =	$(GCC_ROOT)/bin/cc -m32
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   147
CCC.gcc.32 =	$(GCC_ROOT)/bin/CC -m32
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   148
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   149
CC.gcc.64 =	$(GCC_ROOT)/bin/cc -m64
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   150
CCC.gcc.64 =	$(GCC_ROOT)/bin/CC -m64
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   151
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   152
CC =		$(CC.$(COMPILER).$(BITS))
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   153
CCC =		$(CCC.$(COMPILER).$(BITS))
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   154
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   155
lint.32 =	$(SPRO_VROOT)/bin/lint -m32
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   156
lint.64 =	$(SPRO_VROOT)/bin/lint -m64
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   157
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   158
LINT =		$(lint.$(BITS))
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   159
16
33aaaec59991 update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 12
diff changeset
   160
LD =		/usr/bin/ld
33aaaec59991 update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 12
diff changeset
   161
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   162
PYTHON.2.6.32 =	/usr/bin/python2.6
47
28ef4b1fcfb1 64-bit python should use $(MACH64), not amd64
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 43
diff changeset
   163
PYTHON.2.6.64 =	/usr/bin/$(MACH64)/python2.6
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   164
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   165
PYTHON.32 =	$(PYTHON.$(PYTHON_VERSION).$(BITS))
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   166
PYTHON.64 =	$(PYTHON.$(PYTHON_VERSION).$(BITS))
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   167
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   168
GMAKE =		/usr/gnu/bin/make
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   169
GPATCH =	/usr/gnu/bin/patch
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   170
GPATCH_FLAGS =	-p1 -b
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   171
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   172
PKGSEND =	/usr/bin/pkgsend
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   173
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   174
TOUCH =		/usr/bin/touch
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   175
MKDIR =		/bin/mkdir -p
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   176
RM =		/bin/rm -f
7
d42300cb8715 add license/copyright info for ips generation
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 6
diff changeset
   177
CP =		/bin/cp -f
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   178
LN =		/bin/ln
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   179
SYMLINK =	/bin/ln -s
16
33aaaec59991 update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 12
diff changeset
   180
ENV =		/usr/bin/env
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   181
INSTALL =	/usr/bin/ginstall
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   182
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   183
INS.dir=        $(INSTALL) -d $@
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   184
INS.file=       $(INSTALL) -m 444 $< $(@D)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   185
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   186
# C compiler mode. Future compilers may change the default on us,
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   187
# so force transition mode globally. Lower level makefiles can
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   188
# override this by setting CCMODE.
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   189
#
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   190
CCMODE=		-Xa
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   191
CCMODE64=	-Xa
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   192
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   193
# compiler '-xarch' flag. This is here to centralize it and make it
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   194
# overridable for testing.
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   195
sparc_XARCH=    $(CCBITS32) -xarch=sparc
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   196
sparcv9_XARCH=  $(CCBITS64) -xcode=abs64
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   197
i386_XARCH=     $(CCBITS32) -xchip=pentium
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   198
amd64_XARCH=    $(CCBITS64) -xarch=generic -Ui386 -U__i386
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   199
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   200
# disable the incremental linker
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   201
ILDOFF=         -xildoff
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   202
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   203
# C99 mode
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   204
C99_ENABLE=     -xc99=all
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   205
C99_DISABLE=    -xc99=none
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   206
C99MODE=        $(C99_ENABLE)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   207
C99LMODE=       $(C99MODE:-xc99%=-Xc99%)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   208
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   209
# XPG6 mode.  This option enables XPG6 conformance, plus extensions.
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   210
# Amongst other things, this option will cause system calls like
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   211
# popen (3C) and system (3C) to invoke the standards-conforming
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   212
# shell, /usr/xpg4/bin/sh, instead of /usr/bin/sh.
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   213
XPG6MODE=	$(C99MODE) -D_XOPEN_SOURCE=600 -D__EXTENSIONS__=1
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   214
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   215
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   216
# The Sun Studio 11 compiler has changed the behaviour of integer
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   217
# wrap arounds and so a flag is needed to use the legacy behaviour
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   218
# (without this flag panics/hangs could be exposed within the source).
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   219
#
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   220
sparc_IROPTFLAG		= -W2,-xwrap_int
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   221
sparcv9_IROPTFLAG	= -W2,-xwrap_int
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   222
i386_IROPTFLAG		=
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   223
amd64_IROPTFLAG		=
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   224
IROPTFLAG		= $($(MACH)_IROPTFLAG)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   225
IROPTFLAG64		= $($(MACH64)_IROPTFLAG)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   226
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   227
sparc_CFLAGS=	$(sparc_XARCH)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   228
sparcv9_CFLAGS=	$(sparcv9_XARCH) -dalign $(CCVERBOSE)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   229
i386_CFLAGS=	$(i386_XARCH)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   230
amd64_CFLAGS=	$(amd64_XARCH)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   231
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   232
sparc_COPTFLAG=		-xO3
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   233
sparcv9_COPTFLAG=	-xO3
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   234
i386_COPTFLAG=		-xO3
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   235
amd64_COPTFLAG=		-xO3
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   236
COPTFLAG= $($(MACH)_COPTFLAG)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   237
COPTFLAG64= $($(MACH64)_COPTFLAG)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   238
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   239
sparc_XREGSFLAG		= -xregs=no%appl
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   240
sparcv9_XREGSFLAG	= -xregs=no%appl
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   241
i386_XREGSFLAG		=
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   242
amd64_XREGSFLAG		=
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   243
XREGSFLAG		= $($(MACH)_XREGSFLAG)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   244
XREGSFLAG64		= $($(MACH64)_XREGSFLAG)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   245
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   246
CFLAGS=  \
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   247
	$(COPTFLAG) $($(MACH)_CFLAGS) $(CCMODE) \
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   248
	$(ILDOFF) $(C99MODE) $(IROPTFLAG)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   249
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   250
CFLAGS64= \
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   251
	$(COPTFLAG64) $($(MACH64)_CFLAGS) $(CCMODE64) \
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   252
	$(ILDOFF) $(C99MODE) $(IROPTFLAG64)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   253
64
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   254
# build with a non-executable stack by default.
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   255
# override this if necessary
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   256
LD_MAP_NOEXSTK="-M /usr/lib/ld/map.noexstk"
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   257
LD_OPTIONS+= $(LD_MAP_NOEXSTK)
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   258
62
519e6e3788ce 7013265 userland could use a tool to aid in SUNW package generation
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 61
diff changeset
   259
# Environment variables and arguments passed into the build and install
64
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   260
# environment(s).  These are the initial settings.
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   261
COMPONENT_BUILD_ENV= \
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   262
    LD_OPTIONS=$(LD_OPTIONS)
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   263
COMPONENT_INSTALL_ENV= \
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   264
    LD_OPTIONS=$(LD_OPTIONS)
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   265
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   266
# Add any bit-specific settings
62
519e6e3788ce 7013265 userland could use a tool to aid in SUNW package generation
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 61
diff changeset
   267
COMPONENT_BUILD_ENV += $(COMPONENT_BUILD_ENV.$(BITS))
519e6e3788ce 7013265 userland could use a tool to aid in SUNW package generation
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 61
diff changeset
   268
COMPONENT_BUILD_ARGS += $(COMPONENT_BUILD_ARGS.$(BITS))
519e6e3788ce 7013265 userland could use a tool to aid in SUNW package generation
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 61
diff changeset
   269
COMPONENT_INSTALL_ENV += $(COMPONENT_INSTALL_ENV.$(BITS))
519e6e3788ce 7013265 userland could use a tool to aid in SUNW package generation
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 61
diff changeset
   270
COMPONENT_INSTALL_ARGS += $(COMPONENT_INSTALL_ARGS.$(BITS))