author | Danek Duvall <danek.duvall@oracle.com> |
Thu, 24 Feb 2011 13:54:55 -0800 | |
changeset 105 | da9e87a40aec |
parent 102 | 1a8b07a3e826 |
child 108 | 2cfc48b87a85 |
permissions | -rw-r--r-- |
2 | 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 |
# |
|
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 | 22 |
# |
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 | 26 |
CONSOLIDATION = userland |
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 |
93
b579c7b1bb44
7016731 move zsh from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents:
85
diff
changeset
|
33 |
LAST_HG_TAG = $(shell hg tags -q | grep build- | head -1) |
29
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 | 40 |
|
38
cd00ea74156e
package audits should pass pkglint
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
34
diff
changeset
|
41 |
|
2 | 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 | 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 | 46 |
|
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 | 52 |
WS_INCORPORATIONS = $(WS_TOP)/incorporations |
70
c610cf9d3d5d
7016863 userland build fails in parallel
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
64
diff
changeset
|
53 |
WS_LINT_CACHE = $(WS_TOP)/pkglint-cache |
2 | 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 |
|
94
e2364cad23ff
7019782 move tcsh to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
93
diff
changeset
|
57 |
CLONEY = $(WS_TOOLS)/cloney |
e2364cad23ff
7019782 move tcsh to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
93
diff
changeset
|
58 |
|
34
d20b10eba317
prepare for zone based component builds
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
32
diff
changeset
|
59 |
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
|
60 |
|
72
4c33a310f793
7015633 move gtar to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents:
70
diff
changeset
|
61 |
COMPONENT_DIR = $(shell pwd) |
4c33a310f793
7015633 move gtar to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents:
70
diff
changeset
|
62 |
SOURCE_DIR = $(COMPONENT_DIR)/$(COMPONENT_SRC) |
4c33a310f793
7015633 move gtar to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents:
70
diff
changeset
|
63 |
BUILD_DIR = $(COMPONENT_DIR)/build |
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
|
64 |
PROTO_DIR = $(BUILD_DIR)/prototype/$(MACH) |
2 | 65 |
|
85
8098282b503b
7018226 move GNU screen to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents:
82
diff
changeset
|
66 |
ETCDIR = /etc |
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
67 |
USRDIR = /usr |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
68 |
BINDIR = /bin |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
69 |
LIBDIR = /lib |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
70 |
USRBINDIR = $(USRDIR)/bin |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
71 |
USRLIBDIR = $(USRDIR)/lib |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
72 |
USRSHAREDIR = $(USRDIR)/share |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
73 |
USRSHAREMANDIR = $(USRSHAREDIR)/man |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
74 |
USRSHAREMAN1DIR = $(USRSHAREMANDIR)/man1 |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
75 |
USRSHAREMAN3DIR = $(USRSHAREMANDIR)/man3 |
74
7e35801ce8b8
7016379 migrate elinks to userland
Kevin Crowe <Kevin.Crowe@oracle.com>
parents:
72
diff
changeset
|
76 |
USRSHAREMAN5DIR = $(USRSHAREMANDIR)/man5 |
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
77 |
USRLIBDIR64 = $(USRDIR)/lib/$(MACH64) |
85
8098282b503b
7018226 move GNU screen to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents:
82
diff
changeset
|
78 |
PROTOETCDIR = $(PROTO_DIR)/$(ETCDIR) |
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
79 |
PROTOUSRDIR = $(PROTO_DIR)/$(USRDIR) |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
80 |
PROTOUSRBINDIR = $(PROTO_DIR)/$(USRBINDIR) |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
81 |
PROTOUSRLIBDIR = $(PROTO_DIR)/$(USRLIBDIR) |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
82 |
PROTOUSRLIBDIR64 = $(PROTO_DIR)/$(USRLIBDIR64) |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
83 |
PROTOUSRSHAREDIR = $(PROTO_DIR)/$(USRSHAREDIR) |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
84 |
PROTOUSRSHAREMANDIR = $(PROTO_DIR)/$(USRSHAREMANDIR) |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
85 |
PROTOUSRSHAREMAN1DIR = $(PROTO_DIR)/$(USRSHAREMAN1DIR) |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
86 |
PROTOUSRSHAREMAN3DIR = $(PROTO_DIR)/$(USRSHAREMAN3DIR) |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
87 |
|
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
88 |
|
43
9f5ebe30300c
switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
40
diff
changeset
|
89 |
SFWBIN = /usr/sfw/bin |
9f5ebe30300c
switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
40
diff
changeset
|
90 |
SFWLIB = /usr/sfw/lib |
64
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
91 |
SFWSHARE = /usr/sfw/share |
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
92 |
SFWSHAREMAN = /usr/sfw/share/man |
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
93 |
SFWSHAREMAN1 = /usr/sfw/share/man/man1 |
43
9f5ebe30300c
switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
40
diff
changeset
|
94 |
PROTOSFWBIN = $(PROTO_DIR)/$(SFWBIN) |
9f5ebe30300c
switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
40
diff
changeset
|
95 |
PROTOSFWLIB = $(PROTO_DIR)/$(SFWLIB) |
64
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
96 |
PROTOSFWSHARE = $(PROTO_DIR)/$(SFWSHARE) |
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
97 |
PROTOSFWSHAREMAN = $(PROTO_DIR)/$(SFWSHAREMAN) |
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
98 |
PROTOSFWSHAREMAN1 = $(PROTO_DIR)/$(SFWSHAREMAN1) |
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
99 |
|
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
100 |
GNUBIN = /usr/gnu/bin |
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
101 |
GNUSHARE = /usr/gnu/share |
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
102 |
GNUSHAREMAN = /usr/gnu/share/man |
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
103 |
GNUSHAREMAN1 = /usr/gnu/share/man/man1 |
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
104 |
PROTOGNUBIN = $(PROTO_DIR)/$(GNUBIN) |
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
105 |
PROTOGNUSHARE = $(PROTO_DIR)/$(GNUSHARE) |
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
106 |
PROTOGNUSHAREMAN = $(PROTO_DIR)/$(GNUSHAREMAN) |
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
107 |
PROTOGNUSHAREMAN1 = $(PROTO_DIR)/$(GNUSHAREMAN1) |
43
9f5ebe30300c
switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
40
diff
changeset
|
108 |
|
16
33aaaec59991
update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
12
diff
changeset
|
109 |
# 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
|
110 |
# 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
|
111 |
# 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
|
112 |
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
|
113 |
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
|
114 |
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
|
115 |
|
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
|
116 |
# 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
|
117 |
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
|
118 |
|
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 |
# 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
|
120 |
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
|
121 |
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
|
122 |
|
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
|
123 |
# 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
|
124 |
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
|
125 |
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
|
126 |
|
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
127 |
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
|
128 |
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
|
129 |
|
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
130 |
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
|
131 |
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
|
132 |
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
|
133 |
|
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
134 |
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
|
135 |
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
|
136 |
INSTALL_32_and_64 = $(INSTALL_32) $(INSTALL_64) |
2 | 137 |
|
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
138 |
TEST_32 = $(BUILD_DIR_32)/.tested |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
139 |
TEST_64 = $(BUILD_DIR_64)/.tested |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
140 |
TEST_32_and_64 = $(TEST_32) $(TEST_64) |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
141 |
|
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
|
142 |
# 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
|
143 |
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
|
144 |
|
84267c1130e9
fix SPRO_ROOT usage to match ON and SFW and not be confusing
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
38
diff
changeset
|
145 |
SPRO_ROOT = $(BUILD_TOOLS)/SUNWspro |
43
9f5ebe30300c
switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
40
diff
changeset
|
146 |
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
|
147 |
|
2 | 148 |
GCC_ROOT = /usr/gnu |
149 |
||
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
150 |
CC.studio.32 = $(SPRO_VROOT)/bin/cc |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
151 |
CCC.studio.32 = $(SPRO_VROOT)/bin/CC |
2 | 152 |
|
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
153 |
CC.studio.64 = $(SPRO_VROOT)/bin/cc |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
154 |
CCC.studio.64 = $(SPRO_VROOT)/bin/CC |
2 | 155 |
|
156 |
CC.gcc.32 = $(GCC_ROOT)/bin/cc -m32 |
|
157 |
CCC.gcc.32 = $(GCC_ROOT)/bin/CC -m32 |
|
158 |
||
159 |
CC.gcc.64 = $(GCC_ROOT)/bin/cc -m64 |
|
160 |
CCC.gcc.64 = $(GCC_ROOT)/bin/CC -m64 |
|
161 |
||
162 |
CC = $(CC.$(COMPILER).$(BITS)) |
|
163 |
CCC = $(CCC.$(COMPILER).$(BITS)) |
|
164 |
||
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
165 |
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
|
166 |
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
|
167 |
|
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
168 |
LINT = $(lint.$(BITS)) |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
169 |
|
16
33aaaec59991
update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
12
diff
changeset
|
170 |
LD = /usr/bin/ld |
33aaaec59991
update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
12
diff
changeset
|
171 |
|
2 | 172 |
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
|
173 |
PYTHON.2.6.64 = /usr/bin/$(MACH64)/python2.6 |
2 | 174 |
|
175 |
PYTHON.32 = $(PYTHON.$(PYTHON_VERSION).$(BITS)) |
|
176 |
PYTHON.64 = $(PYTHON.$(PYTHON_VERSION).$(BITS)) |
|
177 |
||
178 |
GMAKE = /usr/gnu/bin/make |
|
179 |
GPATCH = /usr/gnu/bin/patch |
|
82
2f155565730b
7017244 move ggrep to userland (fix mismerge)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
80
diff
changeset
|
180 |
PATCH_LEVEL = 1 |
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
181 |
GPATCH_BACKUP = --backup --version-control=numbered |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
182 |
GPATCH_FLAGS = -p$(PATCH_LEVEL) $(GPATCH_BACKUP) |
2 | 183 |
|
105
da9e87a40aec
7021891 repo created by build should be v4, not v3
Danek Duvall <danek.duvall@oracle.com>
parents:
102
diff
changeset
|
184 |
PKGREPO = /usr/bin/pkgrepo |
2 | 185 |
PKGSEND = /usr/bin/pkgsend |
70
c610cf9d3d5d
7016863 userland build fails in parallel
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
64
diff
changeset
|
186 |
PKGLINT = /usr/bin/pkglint |
2 | 187 |
|
188 |
TOUCH = /usr/bin/touch |
|
189 |
MKDIR = /bin/mkdir -p |
|
190 |
RM = /bin/rm -f |
|
7
d42300cb8715
add license/copyright info for ips generation
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
6
diff
changeset
|
191 |
CP = /bin/cp -f |
43
9f5ebe30300c
switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
40
diff
changeset
|
192 |
LN = /bin/ln |
9f5ebe30300c
switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
40
diff
changeset
|
193 |
SYMLINK = /bin/ln -s |
16
33aaaec59991
update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
12
diff
changeset
|
194 |
ENV = /usr/bin/env |
43
9f5ebe30300c
switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
40
diff
changeset
|
195 |
INSTALL = /usr/bin/ginstall |
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
196 |
|
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
197 |
INS.dir= $(INSTALL) -d [email protected] |
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
198 |
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
|
199 |
|
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
200 |
# |
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
201 |
# C preprocessor flag sets to ease feature selection. Add the required |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
202 |
# feature to your Makefile with CPPFLAGS += $(FEATURE_MACRO) and add to |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
203 |
# the component build with CONFIGURE_OPTIONS += CPPFLAGS="$(CPPFLAGS)" or |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
204 |
# similiar. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
205 |
# |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
206 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
207 |
# Enables visibility of some c99 math functions that aren't visible by default. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
208 |
# What other side-effects are there? |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
209 |
CPP_C99_EXTENDED_MATH = -D_STDC_99 |
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
210 |
|
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
211 |
# Enables large file support for components that have no other means of doing |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
212 |
# so. Use CPP_LARGEFILES and not the .32/.64 variety directly |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
213 |
CPP_LARGEFILES.32 = $(shell getconf LFS_CFLAGS) |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
214 |
CPP_LARGEFILES.64 = $(shell getconf LFS64_CFLAGS) |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
215 |
CPP_LARGEFILES = $(CPP_LARGEFILES.$(BITS)) |
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
216 |
|
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
217 |
# Enables some #pragma redefine_extname to POSIX-compliant Standard C Library |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
218 |
# functions. Also avoids the component's #define _POSIX_C_SOURCE to some value |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
219 |
# we currently do not support. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
220 |
CPP_POSIX = -D_POSIX_C_SOURCE=200112L -D_POSIX_PTHREAD_SEMANTICS |
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
221 |
|
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
222 |
# 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
|
223 |
# 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
|
224 |
# popen (3C) and system (3C) to invoke the standards-conforming |
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
225 |
# shell, /usr/xpg4/bin/sh, instead of /usr/bin/sh. Add studio_XPG6MODE to |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
226 |
# CFLAGS instead of using this directly |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
227 |
CPP_XPG6MODE= -D_XOPEN_SOURCE=600 -D__EXTENSIONS__=1 -D_XPG6 |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
228 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
229 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
230 |
# |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
231 |
# Studio C compiler flag sets to ease feature selection. Add the required |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
232 |
# feature to your Makefile with CFLAGS += $(FEATURE_MACRO) and add to the |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
233 |
# component build with CONFIGURE_OPTIONS += CFLAGS="$(CFLAGS)" or similiar. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
234 |
# |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
235 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
236 |
# Generate 32/64 bit objects |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
237 |
CC_BITS = -m$(BITS) |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
238 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
239 |
# Code generation instruction set and optimization 'hints'. Use studio_XBITS |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
240 |
# and not the .arch.bits variety directly. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
241 |
studio_XBITS.sparc.32 = -xtarget=ultra2 -xarch=sparcvis -xchip=ultra2 |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
242 |
studio_XBITS.sparc.64 = -xtarget=ultra2 -xarch=sparcvis -xchip=ultra2 |
102
1a8b07a3e826
7020772 userland build should provide more macros for common flags (fix cflags)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
99
diff
changeset
|
243 |
studio_XBITS.i386.32 = -xchip=pentium |
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
244 |
studio_XBITS.i386.64 = -xarch=generic64 -Ui386 -U__i386 |
102
1a8b07a3e826
7020772 userland build should provide more macros for common flags (fix cflags)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
99
diff
changeset
|
245 |
studio_XBITS = $(studio_XBITS.$(MACH).$(BITS)) |
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
246 |
|
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
247 |
# Turn on recognition of supported C99 language features and enable the 1999 C |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
248 |
# standard library semantics of routines that appear in both the 1990 and |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
249 |
# 1999 C standard. To use set studio_C99MODE=$(studio_99_ENABLE) in your |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
250 |
# component Makefile. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
251 |
studio_C99_ENABLE = -xc99=all |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
252 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
253 |
# Turn off recognition of C99 language features, and do not enable the 1999 C |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
254 |
# standard library semantics of routines that appeared in both the 1990 and |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
255 |
# 1999 C standard. To use set studio_C99MODE=$(studio_99_DISABLE) in your |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
256 |
# component Makefile. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
257 |
studio_C99_DISABLE = -xc99=none |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
258 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
259 |
# Use the compiler default 'xc99=all,no_lib' |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
260 |
studio_C99MODE = |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
261 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
262 |
# Allow zero-sized struct/union declarations and void functions with return |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
263 |
# statements. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
264 |
studio_FEATURES_EXTENSIONS = -features=extensions |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
265 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
266 |
# Control the Studio optimization level. |
102
1a8b07a3e826
7020772 userland build should provide more macros for common flags (fix cflags)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
99
diff
changeset
|
267 |
studio_OPT.sparc.32 = -xO4 |
1a8b07a3e826
7020772 userland build should provide more macros for common flags (fix cflags)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
99
diff
changeset
|
268 |
studio_OPT.sparc.64 = -xO4 |
1a8b07a3e826
7020772 userland build should provide more macros for common flags (fix cflags)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
99
diff
changeset
|
269 |
studio_OPT.i386.32 = -xO4 |
1a8b07a3e826
7020772 userland build should provide more macros for common flags (fix cflags)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
99
diff
changeset
|
270 |
studio_OPT.i386.64 = -xO4 |
1a8b07a3e826
7020772 userland build should provide more macros for common flags (fix cflags)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
99
diff
changeset
|
271 |
studio_OPT = $(studio_OPT.$(MACH).$(BITS)) |
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
272 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
273 |
# Studio PIC code generation. Use CC_PIC instead to select PIC code generation. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
274 |
studio_PIC = -KPIC -DPIC |
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
275 |
|
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
276 |
# 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
|
277 |
# 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
|
278 |
# (without this flag panics/hangs could be exposed within the source). |
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
279 |
# This is used through studio_IROPTS, not the 'sparc' variety. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
280 |
studio_IROPTS.sparc = -W2,-xwrap_int |
102
1a8b07a3e826
7020772 userland build should provide more macros for common flags (fix cflags)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
99
diff
changeset
|
281 |
studio_IROPTS = $(studio_IROPTS.$(MACH)) |
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
282 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
283 |
# Control register usage for generated code. SPARC ABI requires system |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
284 |
# libraries not to use application registers. x86 requires 'no%frameptr' at |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
285 |
# x04 or higher. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
286 |
studio_XREGS.sparc = -xregs=no%appl,float |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
287 |
studio_XREGS.i386 = -xregs=no%frameptr |
102
1a8b07a3e826
7020772 userland build should provide more macros for common flags (fix cflags)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
99
diff
changeset
|
288 |
studio_XREGS = $(studio_XREGS.$(MACH)) |
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
289 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
290 |
# See CPP_XPG6MODE comment above. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
291 |
studio_XPG6MODE = $(studio_C99MODE) $(CPP_XPG6MODE) |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
292 |
XPG6MODE = $(studio_XPG6MODE) |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
293 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
294 |
# Default Studio C compiler flags. Add the required feature to your Makefile |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
295 |
# with CFLAGS += $(FEATURE_MACRO) and add to the component build with |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
296 |
# CONFIGURE_OPTIONS += CFLAGS="$(CFLAGS)" or similiar. In most cases, it |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
297 |
# should not be necessary to add CFLAGS to any environment other than the |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
298 |
# configure environment. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
299 |
CFLAGS.studio += $(studio_OPT) $(studio_XBITS) $(studio_XREGS) \ |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
300 |
$(studio_IROPTS) $(studio_C99MODE) |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
301 |
|
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
302 |
|
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
303 |
# |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
304 |
# GNU C compiler flag sets to ease feature selection. Add the required |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
305 |
# feature to your Makefile with CFLAGS += $(FEATURE_MACRO) and add to the |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
306 |
# component build with CONFIGURE_OPTIONS += CFLAGS="$(CFLAGS)" or similiar. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
307 |
# |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
308 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
309 |
# GCC Compiler optimization flag |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
310 |
gcc_OPT = -O3 |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
311 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
312 |
# GCC PIC code generation. Use CC_PIC instead to select PIC code generation. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
313 |
gcc_PIC = -fPIC -DPIC |
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
314 |
|
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
315 |
# Generic macro for PIC code generation. Use this macro instead of the |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
316 |
# compiler specific variant. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
317 |
CC_PIC = $($(COMPILER)_PIC) |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
318 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
319 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
320 |
# Default GNU C compiler flags. Add the required feature to your Makefile |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
321 |
# with CFLAGS += $(FEATURE_MACRO) and add to the component build with |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
322 |
# CONFIGURE_OPTIONS += CFLAGS="$(CFLAGS)" or similiar. In most cases, it |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
323 |
# should not be necessary to add CFLAGS to any environment other than the |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
324 |
# configure environment. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
325 |
CFLAGS.gcc += $(gcc_OPT) |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
326 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
327 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
328 |
# Build 32 or 64 bit objects. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
329 |
CFLAGS += $(CC_BITS) |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
330 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
331 |
# Add compiler specific 'default' features |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
332 |
CFLAGS += $(CFLAGS.$(COMPILER)) |
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
333 |
|
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
334 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
335 |
# |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
336 |
# Solaris linker flag sets to ease feature selection. Add the required |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
337 |
# feature to your Makefile with LDFLAGS += $(FEATURE_MACRO) and add to the |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
338 |
# component build with CONFIGURE_OPTIONS += LDFLAGS="$(LDFLAGS)" or similiar. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
339 |
# |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
340 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
341 |
# Reduce the symbol table size, effectively conflicting with -g. We should |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
342 |
# get linker guidance here. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
343 |
LD_Z_REDLOCSYM = -z redlocsym |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
344 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
345 |
# Cause the linker to rescan archive libraries and resolve remaining unresolved |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
346 |
# symbols recursively until all symbols are resolved. Components should be |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
347 |
# linking in the libraries they need, in the required order. This should |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
348 |
# only be required if the component's native build is horribly broken. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
349 |
LD_Z_RESCAN_NOW = -z rescan-now |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
350 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
351 |
LD_Z_TEXT = -z direct |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
352 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
353 |
# make sure all symbols are defined. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
354 |
LD_Z_DEFS = -z defs |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
355 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
356 |
# use direct binding |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
357 |
LD_B_DIRECT = -Bdirect |
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
358 |
|
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
359 |
# |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
360 |
# More Solaris linker flags that we want to be sure that everyone gets. This |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
361 |
# is automatically added to the calling environment during the 'build' and |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
362 |
# 'install' phases of the component build. Each individual feature can be |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
363 |
# turned off by adding FEATURE_MACRO= to the component Makefile. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
364 |
# |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
365 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
366 |
# Create a non-executable stack when linking. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
367 |
LD_MAP_NOEXSTK = -M /usr/lib/ld/map.noexstk |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
368 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
369 |
# Create a non-executable bss segment when linking. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
370 |
LD_MAP_NOEXBSS = -M /usr/lib/ld/map.noexbss |
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
371 |
|
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
372 |
# Create a non-executable data segment when linking. Due to PLT needs, the |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
373 |
# data segment must be executable on sparc, but the bss does not. |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
374 |
# see mapfile comments for more information |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
375 |
LD_MAP_NOEXDATA.i386 = -M /usr/lib/ld/map.noexdata |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
376 |
LD_MAP_NOEXDATA.sparc = $(LD_MAP_NOEXBSS) |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
377 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
378 |
# Page alignment |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
379 |
LD_MAP_PAGEALIGN = -M /usr/lib/ld/map.pagealign |
61
7684fe2a9eb5
7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
59
diff
changeset
|
380 |
|
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
381 |
# Linker options to add when only building libraries |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
382 |
LD_OPTIONS_SO += $(LD_Z_TEXT) $(LD_Z_DEFS) |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
383 |
|
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
384 |
# Default linker options that everyone should get. Do not add additional |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
385 |
# libraries to this macro, as it will apply to everything linked during the |
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
386 |
# component build. |
102
1a8b07a3e826
7020772 userland build should provide more macros for common flags (fix cflags)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
99
diff
changeset
|
387 |
LD_OPTIONS += $(LD_MAP_NOEXSTK) $(LD_MAP_NOEXDATA.$(MACH)) \ |
99
c15c9099bb44
6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
94
diff
changeset
|
388 |
$(LD_MAP_PAGEALIGN) $(LD_B_DIRECT) |
64
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
389 |
|
62
519e6e3788ce
7013265 userland could use a tool to aid in SUNW package generation
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
61
diff
changeset
|
390 |
# 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
|
391 |
# 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
|
392 |
COMPONENT_BUILD_ENV= \ |
82
2f155565730b
7017244 move ggrep to userland (fix mismerge)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
80
diff
changeset
|
393 |
LD_OPTIONS="$(LD_OPTIONS)" |
64
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
394 |
COMPONENT_INSTALL_ENV= \ |
82
2f155565730b
7017244 move ggrep to userland (fix mismerge)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents:
80
diff
changeset
|
395 |
LD_OPTIONS="$(LD_OPTIONS)" |
64
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
396 |
|
a4b12971cf99
7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
62
diff
changeset
|
397 |
# 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
|
398 |
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
|
399 |
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
|
400 |
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
|
401 |
COMPONENT_INSTALL_ARGS += $(COMPONENT_INSTALL_ARGS.$(BITS)) |