make-rules/shared-macros.mk
author Mike Sullivan <Mike.Sullivan@Oracle.COM>
Wed, 18 Dec 2013 10:04:53 -0800
branchs11-update
changeset 2855 576d5a7857b7
parent 2818 ff3cbef81e88
child 2910 f8b8cbc43356
permissions -rw-r--r--
16404201 serialize pkglinting of components 16666374 userland misses opensolaris.org very much, but must move on to java.net's love 16703472 more userland components could benefit from resolve.deps files 16921386 move to parfait 1.2.0.1 16991973 some things ain't parfait'n 17361780 LD_Z_TEXT should, ya know, contain -z text not -z direct 17389915 default userland gcc should be gcc4 17621943 move to build 32 breaks userland-incorporation 17785723 gdb shouldn't override CC/CXX 17852021 userland-incorporator should detect duplicate packages 17899000 libtool doesn't build properly in non-C locale
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
#
2576
f1b6ecbb2d1e 16433531 Update Nose to 1.2.1
Rich Burridge <rich.burridge@oracle.com>
parents: 2434
diff changeset
    21
# Copyright (c) 2010, 2013, 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
313
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    26
# The location of an internal mirror of community source archives that we build
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    27
# in this gate.  This mirror has been seeded to include "custom" source archives
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    28
# for a few components where the communities either no longer provide matching
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    29
# source archives or we have changes that aren't reflected in their archives or
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    30
# anywhere else.
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    31
INTERNAL_ARCHIVE_MIRROR =	http://userland.us.oracle.com/source-archives
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    32
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    33
# The location of an external mirror of community source archives that we build
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    34
# in this gate.  The external mirror is a replica of the internal mirror.
2855
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
    35
EXTERNAL_ARCHIVE_MIRROR = 
313
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    36
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    37
# Default to looking for source archives on the internal mirror and the external
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    38
# mirror before we hammer on the community source archive repositories.
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    39
export DOWNLOAD_SEARCH_PATH +=	$(INTERNAL_ARCHIVE_MIRROR)
2855
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
    40
ifneq   ($(strip $(EXTERNAL_ARCHIVE_MIRROR)),)
313
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    41
export DOWNLOAD_SEARCH_PATH +=	$(EXTERNAL_ARCHIVE_MIRROR)
2855
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
    42
endif
127
3e3c266b3a81 7013705 userland build needs local tarball caching
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 120
diff changeset
    43
3e3c266b3a81 7013705 userland build needs local tarball caching
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 120
diff changeset
    44
# The workspace starts at the mercurial root
2576
f1b6ecbb2d1e 16433531 Update Nose to 1.2.1
Rich Burridge <rich.burridge@oracle.com>
parents: 2434
diff changeset
    45
ifeq ($(origin WS_TOP), undefined)
f1b6ecbb2d1e 16433531 Update Nose to 1.2.1
Rich Burridge <rich.burridge@oracle.com>
parents: 2434
diff changeset
    46
export WS_TOP :=		$(shell hg root)
f1b6ecbb2d1e 16433531 Update Nose to 1.2.1
Rich Burridge <rich.burridge@oracle.com>
parents: 2434
diff changeset
    47
endif
127
3e3c266b3a81 7013705 userland build needs local tarball caching
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 120
diff changeset
    48
538
d8d7345db00f 7104397 Userland should split out package BUILD_VERSION information
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 528
diff changeset
    49
WS_LOGS =	$(WS_TOP)/$(MACH)/logs
d8d7345db00f 7104397 Userland should split out package BUILD_VERSION information
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 528
diff changeset
    50
WS_REPO =	$(WS_TOP)/$(MACH)/repo
d8d7345db00f 7104397 Userland should split out package BUILD_VERSION information
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 528
diff changeset
    51
WS_TOOLS =	$(WS_TOP)/tools
d8d7345db00f 7104397 Userland should split out package BUILD_VERSION information
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 528
diff changeset
    52
WS_MAKE_RULES =	$(WS_TOP)/make-rules
d8d7345db00f 7104397 Userland should split out package BUILD_VERSION information
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 528
diff changeset
    53
WS_COMPONENTS =	$(WS_TOP)/components
d8d7345db00f 7104397 Userland should split out package BUILD_VERSION information
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 528
diff changeset
    54
WS_INCORPORATIONS =	$(WS_TOP)/incorporations
d8d7345db00f 7104397 Userland should split out package BUILD_VERSION information
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 528
diff changeset
    55
WS_LINT_CACHE =	$(WS_TOP)/$(MACH)/pkglint-cache
d8d7345db00f 7104397 Userland should split out package BUILD_VERSION information
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 528
diff changeset
    56
327
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    57
# we want our pkg piplines to fail if there is an error
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    58
# (like if pkgdepend fails in the middle of a pipe), but
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    59
# we don't want the builds or ./configure's failing as well.
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    60
# so we only set pipefail for the publish target and have
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    61
# to reset it for the others since they might be invoked
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    62
# as dependencies of publish.
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    63
export SHELLOPTS
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    64
build:		SHELLOPTS=
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    65
test:		SHELLOPTS=
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    66
install:	SHELLOPTS=
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    67
publish:	SHELLOPTS=pipefail
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    68
2855
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
    69
# some things don't build properly in non-C locales,
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
    70
# so lets stay there
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
    71
export LC_ALL=C
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
    72
177
fd9cb2273c9d 7015392 the build should really fail if the pkg tools fail
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 176
diff changeset
    73
SHELL=	/bin/bash
fd9cb2273c9d 7015392 the build should really fail if the pkg tools fail
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 176
diff changeset
    74
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    75
CONSOLIDATION =	userland
145
1e2390f5555e 7020836 revert workaround in 7014413 now that pkglint doesn't complain
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 142
diff changeset
    76
PUBLISHER ?=	$(CONSOLIDATION)
827
0944d8c0158b 7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents: 800
diff changeset
    77
PUBLISHER_LOCALIZABLE ?=	$(CONSOLIDATION)-localizable
26
8a9f4e791832 packaging changes including canonical manifest support with manifest validation
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 16
diff changeset
    78
38
cd00ea74156e package audits should pass pkglint
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 34
diff changeset
    79
ROOT =			/
cd00ea74156e package audits should pass pkglint
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 34
diff changeset
    80
2576
f1b6ecbb2d1e 16433531 Update Nose to 1.2.1
Rich Burridge <rich.burridge@oracle.com>
parents: 2434
diff changeset
    81
OS_VERSION :=		$(shell uname -r)
26
8a9f4e791832 packaging changes including canonical manifest support with manifest validation
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 16
diff changeset
    82
SOLARIS_VERSION =	$(OS_VERSION:5.%=2.%)
477
068d10529156 7078102 userland needs Versioning Reform
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 459
diff changeset
    83
538
d8d7345db00f 7104397 Userland should split out package BUILD_VERSION information
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 528
diff changeset
    84
include $(WS_MAKE_RULES)/ips-buildinfo.mk
38
cd00ea74156e package audits should pass pkglint
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 34
diff changeset
    85
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    86
COMPILER =		studio
6
20f80c019d73 add compiler date/time chatter reduction tools
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 2
diff changeset
    87
BITS =			32
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    88
PYTHON_VERSION =	2.6
706
6e61f0012046 7108059 Userland should have python2.7 version of its python modules
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 591
diff changeset
    89
PYTHON_VERSIONS =	2.7 2.6
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    90
34
d20b10eba317 prepare for zone based component builds
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 32
diff changeset
    91
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
    92
94
e2364cad23ff 7019782 move tcsh to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 93
diff changeset
    93
CLONEY =	$(WS_TOOLS)/cloney
e2364cad23ff 7019782 move tcsh to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 93
diff changeset
    94
156
c2445b73a8b2 6949695 Would like to have perl 5.12 (use CONFIG_SHELL)
Craig Mohrman <Craig.Mohrman@oracle.com>
parents: 152
diff changeset
    95
CONFIG_SHELL =	/bin/bash
c2445b73a8b2 6949695 Would like to have perl 5.12 (use CONFIG_SHELL)
Craig Mohrman <Craig.Mohrman@oracle.com>
parents: 152
diff changeset
    96
34
d20b10eba317 prepare for zone based component builds
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 32
diff changeset
    97
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
    98
2434
6c9bb5cf5610 15930486 - Auto-generation of Userland gate list for the Solaris 11 Update Release
Rich Burridge <rich.burridge@oracle.com>
parents: 2395
diff changeset
    99
COMPONENT_SRC_NAME =	$(COMPONENT_NAME)
6c9bb5cf5610 15930486 - Auto-generation of Userland gate list for the Solaris 11 Update Release
Rich Burridge <rich.burridge@oracle.com>
parents: 2395
diff changeset
   100
2576
f1b6ecbb2d1e 16433531 Update Nose to 1.2.1
Rich Burridge <rich.burridge@oracle.com>
parents: 2434
diff changeset
   101
COMPONENT_DIR :=	$(shell pwd)
72
4c33a310f793 7015633 move gtar to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents: 70
diff changeset
   102
SOURCE_DIR =	$(COMPONENT_DIR)/$(COMPONENT_SRC)
4c33a310f793 7015633 move gtar to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents: 70
diff changeset
   103
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
   104
PROTO_DIR =	$(BUILD_DIR)/prototype/$(MACH)
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   105
85
8098282b503b 7018226 move GNU screen to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents: 82
diff changeset
   106
ETCDIR =	/etc
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   107
USRDIR =	/usr
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   108
BINDIR =	/bin
220
3ff562b51ff5 7040638 CUPS (Common Unix Printing System) should move to Userland.
Jiri Sasek <Jiri.Sasek@Sun.COM>
parents: 219
diff changeset
   109
SBINDIR =	/sbin
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   110
LIBDIR =	/lib
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   111
USRBINDIR =	$(USRDIR)/bin
2647
c72026b4ef46 PSARC/2012/336 Javascript Lint version 0.3.0
Matt Keenan <matt.keenan@oracle.com>
parents: 2632
diff changeset
   112
USRBINDIR64 =	$(USRDIR)/bin/$(MACH64)
172
093198acf7d4 7018272 Move NTP to userland
Brian Utterback <Brian.Utterback@Oracle.COM>
parents: 170
diff changeset
   113
USRSBINDIR =	$(USRDIR)/sbin
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   114
USRLIBDIR =	$(USRDIR)/lib
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   115
USRSHAREDIR =	$(USRDIR)/share
220
3ff562b51ff5 7040638 CUPS (Common Unix Printing System) should move to Userland.
Jiri Sasek <Jiri.Sasek@Sun.COM>
parents: 219
diff changeset
   116
USRINCDIR =	$(USRDIR)/include
3ff562b51ff5 7040638 CUPS (Common Unix Printing System) should move to Userland.
Jiri Sasek <Jiri.Sasek@Sun.COM>
parents: 219
diff changeset
   117
USRSHARELOCALEDIR =	$(USRSHAREDIR)/locale
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   118
USRSHAREMANDIR =	$(USRSHAREDIR)/man
172
093198acf7d4 7018272 Move NTP to userland
Brian Utterback <Brian.Utterback@Oracle.COM>
parents: 170
diff changeset
   119
USRSHAREDOCDIR =	$(USRSHAREDIR)/doc
454
1ef5e4f29411 7008684 time zone zoneinfo package should move to Userland consolidation
sonam gupta - Sun Microsystems - Bangalore India <Sonam.Gupta@Sun.COM>
parents: 369
diff changeset
   120
USRSHARELIBDIR =	$(USRSHAREDIR)/lib
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   121
USRSHAREMAN1DIR =	$(USRSHAREMANDIR)/man1
172
093198acf7d4 7018272 Move NTP to userland
Brian Utterback <Brian.Utterback@Oracle.COM>
parents: 170
diff changeset
   122
USRSHAREMAN1MDIR =	$(USRSHAREMANDIR)/man1m
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   123
USRSHAREMAN3DIR =	$(USRSHAREMANDIR)/man3
152
f0ba422362c2 7030869 move git from sfw consolidation to userland consolidation
Craig Mohrman <Craig.Mohrman@oracle.com>
parents: 151
diff changeset
   124
USRSHAREMAN4DIR =	$(USRSHAREMANDIR)/man4
74
7e35801ce8b8 7016379 migrate elinks to userland
Kevin Crowe <Kevin.Crowe@oracle.com>
parents: 72
diff changeset
   125
USRSHAREMAN5DIR =	$(USRSHAREMANDIR)/man5
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   126
USRLIBDIR64 =	$(USRDIR)/lib/$(MACH64)
220
3ff562b51ff5 7040638 CUPS (Common Unix Printing System) should move to Userland.
Jiri Sasek <Jiri.Sasek@Sun.COM>
parents: 219
diff changeset
   127
PROTOBINDIR =	$(PROTO_DIR)/$(BINDIR)
85
8098282b503b 7018226 move GNU screen to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents: 82
diff changeset
   128
PROTOETCDIR =	$(PROTO_DIR)/$(ETCDIR)
172
093198acf7d4 7018272 Move NTP to userland
Brian Utterback <Brian.Utterback@Oracle.COM>
parents: 170
diff changeset
   129
PROTOETCSECDIR = $(PROTO_DIR)/$(ETCDIR)/security
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   130
PROTOUSRDIR =	$(PROTO_DIR)/$(USRDIR)
172
093198acf7d4 7018272 Move NTP to userland
Brian Utterback <Brian.Utterback@Oracle.COM>
parents: 170
diff changeset
   131
PROTOLIBDIR =	$(PROTO_DIR)/$(LIBDIR)
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   132
PROTOUSRBINDIR =	$(PROTO_DIR)/$(USRBINDIR)
2647
c72026b4ef46 PSARC/2012/336 Javascript Lint version 0.3.0
Matt Keenan <matt.keenan@oracle.com>
parents: 2632
diff changeset
   133
PROTOUSRBINDIR64=	$(PROTO_DIR)/$(USRBINDIR64)
172
093198acf7d4 7018272 Move NTP to userland
Brian Utterback <Brian.Utterback@Oracle.COM>
parents: 170
diff changeset
   134
PROTOUSRSBINDIR =	$(PROTO_DIR)/$(USRSBINDIR)
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   135
PROTOUSRLIBDIR =	$(PROTO_DIR)/$(USRLIBDIR)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   136
PROTOUSRLIBDIR64 =	$(PROTO_DIR)/$(USRLIBDIR64)
220
3ff562b51ff5 7040638 CUPS (Common Unix Printing System) should move to Userland.
Jiri Sasek <Jiri.Sasek@Sun.COM>
parents: 219
diff changeset
   137
PROTOUSRINCDIR =	$(PROTO_DIR)/$(USRINCDIR)
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   138
PROTOUSRSHAREDIR =	$(PROTO_DIR)/$(USRSHAREDIR)
454
1ef5e4f29411 7008684 time zone zoneinfo package should move to Userland consolidation
sonam gupta - Sun Microsystems - Bangalore India <Sonam.Gupta@Sun.COM>
parents: 369
diff changeset
   139
PROTOUSRSHARELIBDIR =	$(PROTO_DIR)/$(USRSHARELIBDIR)
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   140
PROTOUSRSHAREMANDIR =	$(PROTO_DIR)/$(USRSHAREMANDIR)
172
093198acf7d4 7018272 Move NTP to userland
Brian Utterback <Brian.Utterback@Oracle.COM>
parents: 170
diff changeset
   141
PROTOUSRSHAREDOCDIR =	$(PROTO_DIR)/$(USRSHAREDOCDIR)
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   142
PROTOUSRSHAREMAN1DIR =	$(PROTO_DIR)/$(USRSHAREMAN1DIR)
172
093198acf7d4 7018272 Move NTP to userland
Brian Utterback <Brian.Utterback@Oracle.COM>
parents: 170
diff changeset
   143
PROTOUSRSHAREMAN1MDIR =	$(PROTO_DIR)/$(USRSHAREMAN1MDIR)
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   144
PROTOUSRSHAREMAN3DIR =	$(PROTO_DIR)/$(USRSHAREMAN3DIR)
152
f0ba422362c2 7030869 move git from sfw consolidation to userland consolidation
Craig Mohrman <Craig.Mohrman@oracle.com>
parents: 151
diff changeset
   145
PROTOUSRSHAREMAN4DIR =	$(PROTO_DIR)/$(USRSHAREMAN4DIR)
f0ba422362c2 7030869 move git from sfw consolidation to userland consolidation
Craig Mohrman <Craig.Mohrman@oracle.com>
parents: 151
diff changeset
   146
PROTOUSRSHAREMAN5DIR =	$(PROTO_DIR)/$(USRSHAREMAN5DIR)
220
3ff562b51ff5 7040638 CUPS (Common Unix Printing System) should move to Userland.
Jiri Sasek <Jiri.Sasek@Sun.COM>
parents: 219
diff changeset
   147
PROTOUSRSHARELOCALEDIR =	$(PROTO_DIR)/$(USRSHARELOCALEDIR)
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   148
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   149
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   150
SFWBIN =	/usr/sfw/bin
220
3ff562b51ff5 7040638 CUPS (Common Unix Printing System) should move to Userland.
Jiri Sasek <Jiri.Sasek@Sun.COM>
parents: 219
diff changeset
   151
SFWINCLUDE =	/usr/sfw/include
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   152
SFWLIB =	/usr/sfw/lib
120
ef1efc113f13 7021528 move bison/gsed to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 116
diff changeset
   153
SFWLIB64 =	/usr/sfw/lib/$(MACH64)
64
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   154
SFWSHARE =	/usr/sfw/share
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   155
SFWSHAREMAN =	/usr/sfw/share/man
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   156
SFWSHAREMAN1 =	/usr/sfw/share/man/man1
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   157
PROTOSFWBIN =	$(PROTO_DIR)/$(SFWBIN)
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   158
PROTOSFWLIB =	$(PROTO_DIR)/$(SFWLIB)
120
ef1efc113f13 7021528 move bison/gsed to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 116
diff changeset
   159
PROTOSFWLIB64 =	$(PROTO_DIR)/$(SFWLIB64)
64
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   160
PROTOSFWSHARE =	$(PROTO_DIR)/$(SFWSHARE)
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   161
PROTOSFWSHAREMAN =	$(PROTO_DIR)/$(SFWSHAREMAN)
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   162
PROTOSFWSHAREMAN1 =	$(PROTO_DIR)/$(SFWSHAREMAN1)
220
3ff562b51ff5 7040638 CUPS (Common Unix Printing System) should move to Userland.
Jiri Sasek <Jiri.Sasek@Sun.COM>
parents: 219
diff changeset
   163
PROTOSFWINCLUDE =	$(PROTO_DIR)/$(SFWINCLUDE)
64
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   164
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   165
GNUBIN =	/usr/gnu/bin
486
00cc0158aa99 7080229 bison should not install files under /usr/sfw
Rich Burridge <rich.burridge@oracle.com>
parents: 477
diff changeset
   166
GNULIB =	/usr/gnu/lib
00cc0158aa99 7080229 bison should not install files under /usr/sfw
Rich Burridge <rich.burridge@oracle.com>
parents: 477
diff changeset
   167
GNULIB64 =	/usr/gnu/lib/$(MACH64)
64
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   168
GNUSHARE =	/usr/gnu/share
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   169
GNUSHAREMAN =	/usr/gnu/share/man
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   170
GNUSHAREMAN1 =	/usr/gnu/share/man/man1
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   171
PROTOGNUBIN =	$(PROTO_DIR)/$(GNUBIN)
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   172
PROTOGNUSHARE =	$(PROTO_DIR)/$(GNUSHARE)
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   173
PROTOGNUSHAREMAN =	$(PROTO_DIR)/$(GNUSHAREMAN)
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   174
PROTOGNUSHAREMAN1 =	$(PROTO_DIR)/$(GNUSHAREMAN1)
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   175
16
33aaaec59991 update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 12
diff changeset
   176
# 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
   177
# 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
   178
# 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
   179
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
   180
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
   181
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
   182
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
   183
# set MACH from uname -p to either sparc or i386
2576
f1b6ecbb2d1e 16433531 Update Nose to 1.2.1
Rich Burridge <rich.burridge@oracle.com>
parents: 2434
diff changeset
   184
MACH :=		$(shell uname -p)
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
   185
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
   186
# 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
   187
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
   188
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
   189
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
   190
# 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
   191
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
   192
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
   193
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents: 327
diff changeset
   194
CONFIGURE_32 =		$(BUILD_DIR_32)/.configured
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents: 327
diff changeset
   195
CONFIGURE_64 =		$(BUILD_DIR_64)/.configured
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents: 327
diff changeset
   196
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   197
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
   198
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
   199
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   200
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
   201
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
   202
BUILD_32_and_64 =	$(BUILD_32) $(BUILD_64)
181
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   203
$(BUILD_DIR_32)/.built:		BITS=32
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   204
$(BUILD_DIR_64)/.built:		BITS=64
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
   205
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   206
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
   207
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
   208
INSTALL_32_and_64 =	$(INSTALL_32) $(INSTALL_64)
279
c6af843791cd 7044076 move sudo from sfw to userland
April Chin <april.chin@oracle.com>
parents: 277
diff changeset
   209
$(BUILD_DIR_32)/.installed:       BITS=32
c6af843791cd 7044076 move sudo from sfw to userland
April Chin <april.chin@oracle.com>
parents: 277
diff changeset
   210
$(BUILD_DIR_64)/.installed:       BITS=64
181
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   211
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   212
# set the default target for installation of the component
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   213
COMPONENT_INSTALL_TARGETS =	install
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   214
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   215
TEST_32 =		$(BUILD_DIR_32)/.tested
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   216
TEST_64 =		$(BUILD_DIR_64)/.tested
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   217
TEST_32_and_64 =	$(TEST_32) $(TEST_64)
181
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   218
$(BUILD_DIR_32)/.tested:       BITS=32
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   219
$(BUILD_DIR_64)/.tested:       BITS=64
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   220
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   221
# set the default target for test of the component
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   222
COMPONENT_TEST_TARGETS =	check
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   223
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
   224
# BUILD_TOOLS is the root of all tools not normally installed on the system.
800
2ad056ed89ec 7163771 sha1 should not be used in userland-fetch and userland component/*/Makefile
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 796
diff changeset
   225
BUILD_TOOLS ?=	/ws/on11update-tools
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
   226
84267c1130e9 fix SPRO_ROOT usage to match ON and SFW and not be confusing
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 38
diff changeset
   227
SPRO_ROOT =	$(BUILD_TOOLS)/SUNWspro
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   228
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
   229
2855
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   230
PARFAIT_ROOT =	$(BUILD_TOOLS)/parfait/parfait-tools-1.2.0.2
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   231
PARFAIT_TOOLS=  $(WS_TOOLS)/$(MACH)/parfait
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   232
PARFAIT_TOOLS_GCC3=     $(PARFAIT_TOOLS)/gcc3
774
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   233
PARFAIT= $(PARFAIT_ROOT)/bin/parfait
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   234
export PARFAIT_NATIVESUNCC=$(SPRO_VROOT)/bin/cc
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   235
export PARFAIT_NATIVESUNCXX=$(SPRO_VROOT)/bin/CC
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   236
export PARFAIT_NATIVEGCC=$(GCC_ROOT)/bin/gcc
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   237
export PARFAIT_NATIVEGXX=$(GCC_ROOT)/bin/g++
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   238
# for now
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   239
export PARFAIT_CLANG=0
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   240
2855
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   241
GCC_ROOT =      /usr/gcc/4.7
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   242
GCC3_ROOT =	/usr/sfw
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   243
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   244
CC.studio.32 =	$(SPRO_VROOT)/bin/cc
206
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   245
CXX.studio.32 =	$(SPRO_VROOT)/bin/CC
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   246
774
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   247
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   248
CC.studio.64 =	$(SPRO_VROOT)/bin/cc
206
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   249
CXX.studio.64 =	$(SPRO_VROOT)/bin/CC
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   250
151
f9e42a3f7095 7030982 hgk is delivered 444, breaks 'hg view'
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 148
diff changeset
   251
CC.gcc.32 =	$(GCC_ROOT)/bin/gcc
206
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   252
CXX.gcc.32 =	$(GCC_ROOT)/bin/g++
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   253
151
f9e42a3f7095 7030982 hgk is delivered 444, breaks 'hg view'
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 148
diff changeset
   254
CC.gcc.64 =	$(GCC_ROOT)/bin/gcc
206
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   255
CXX.gcc.64 =	$(GCC_ROOT)/bin/g++
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   256
2855
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   257
CC.gcc3.32 =    $(GCC3_ROOT)/bin/gcc
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   258
CXX.gcc3.32 =   $(GCC3_ROOT)/bin/g++
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   259
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   260
CC.gcc3.64 =    $(GCC3_ROOT)/bin/gcc
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   261
CXX.gcc3.64 =   $(GCC3_ROOT)/bin/g++
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   262
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   263
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   264
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
   265
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
   266
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   267
LINT =		$(lint.$(BITS))
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   268
16
33aaaec59991 update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 12
diff changeset
   269
LD =		/usr/bin/ld
33aaaec59991 update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 12
diff changeset
   270
706
6e61f0012046 7108059 Userland should have python2.7 version of its python modules
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 591
diff changeset
   271
PYTHON.2.6.VENDOR_PACKAGES.32 = /usr/lib/python2.6/vendor-packages
6e61f0012046 7108059 Userland should have python2.7 version of its python modules
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 591
diff changeset
   272
PYTHON.2.6.VENDOR_PACKAGES.64 = /usr/lib/python2.6/vendor-packages/64
6e61f0012046 7108059 Userland should have python2.7 version of its python modules
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 591
diff changeset
   273
PYTHON.2.6.VENDOR_PACKAGES = $(PYTHON.2.6.VENDOR_PACKAGES.$(BITS))
6e61f0012046 7108059 Userland should have python2.7 version of its python modules
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 591
diff changeset
   274
6e61f0012046 7108059 Userland should have python2.7 version of its python modules
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 591
diff changeset
   275
PYTHON.2.7.VENDOR_PACKAGES.32 = /usr/lib/python2.7/vendor-packages
6e61f0012046 7108059 Userland should have python2.7 version of its python modules
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 591
diff changeset
   276
PYTHON.2.7.VENDOR_PACKAGES.64 = /usr/lib/python2.7/vendor-packages/64
6e61f0012046 7108059 Userland should have python2.7 version of its python modules
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 591
diff changeset
   277
PYTHON.2.7.VENDOR_PACKAGES = $(PYTHON.2.7.VENDOR_PACKAGES.$(BITS))
6e61f0012046 7108059 Userland should have python2.7 version of its python modules
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 591
diff changeset
   278
774
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   279
ifeq   ($(strip $(PARFAIT_BUILD)),yes)
2855
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   280
CC.studio.32 =	$(PARFAIT_TOOLS)/cc
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   281
CXX.studio.32 =	$(PARFAIT_TOOLS)/CC
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   282
CC.studio.64 =	$(PARFAIT_TOOLS)/cc
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   283
CXX.studio.64 =	$(PARFAIT_TOOLS)/CC
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   284
CC.gcc.32 =	$(PARFAIT_TOOLS)/gcc
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   285
CXX.gcc.32 =	$(PARFAIT_TOOLS)/g++
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   286
CC.gcc.64 =	$(PARFAIT_TOOLS)/gcc
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   287
CXX.gcc.64 =	$(PARFAIT_TOOLS)/g++
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   288
CC.gcc3.32 =    $(PARFAIT_TOOLS_GCC3)/gcc
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   289
CXX.gcc3.32 =   $(PARFAIT_TOOLS_GCC3)/g++
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   290
CC.gcc3.64 =    $(PARFAIT_TOOLS_GCC3)/gcc
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   291
CXX.gcc3.64 =   $(PARFAIT_TOOLS_GCC3)/g++
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   292
LD =		$(PARFAIT_TOOLS)/ld
774
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   293
endif
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   294
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   295
CC =		$(CC.$(COMPILER).$(BITS))
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   296
CXX =		$(CXX.$(COMPILER).$(BITS))
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   297
2818
ff3cbef81e88 17510747 change puppet and facter to use ruby 1.9 instead of ruby 1.8
April Chin <april.chin@oracle.com>
parents: 2813
diff changeset
   298
RUBY_VERSION =	1.9
ff3cbef81e88 17510747 change puppet and facter to use ruby 1.9 instead of ruby 1.8
April Chin <april.chin@oracle.com>
parents: 2813
diff changeset
   299
RUBY_LIB_VERSION =	1.9.1
2813
db0bfa0fa498 PSARC/2013/269 Add Ruby 1.9.3 and EOF and Remove Ruby 1.8.7
April Chin <april.chin@oracle.com>
parents: 2771
diff changeset
   300
RUBY.1.8 =	/usr/ruby/1.8/bin/ruby
db0bfa0fa498 PSARC/2013/269 Add Ruby 1.9.3 and EOF and Remove Ruby 1.8.7
April Chin <april.chin@oracle.com>
parents: 2771
diff changeset
   301
RUBY.1.9 =	/usr/ruby/1.9/bin/ruby
db0bfa0fa498 PSARC/2013/269 Add Ruby 1.9.3 and EOF and Remove Ruby 1.8.7
April Chin <april.chin@oracle.com>
parents: 2771
diff changeset
   302
RUBY =		$(RUBY.$(RUBY_VERSION))
774
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   303
2818
ff3cbef81e88 17510747 change puppet and facter to use ruby 1.9 instead of ruby 1.8
April Chin <april.chin@oracle.com>
parents: 2813
diff changeset
   304
# Note: Ruby 1.9 is 64-bit only; there is no 32-bit ruby 1.9.
ff3cbef81e88 17510747 change puppet and facter to use ruby 1.9 instead of ruby 1.8
April Chin <april.chin@oracle.com>
parents: 2813
diff changeset
   305
VENDOR_RUBY.32 = \
ff3cbef81e88 17510747 change puppet and facter to use ruby 1.9 instead of ruby 1.8
April Chin <april.chin@oracle.com>
parents: 2813
diff changeset
   306
	/usr/ruby/$(RUBY_VERSION)/lib/ruby/vendor_ruby/$(RUBY_LIB_VERSION)
ff3cbef81e88 17510747 change puppet and facter to use ruby 1.9 instead of ruby 1.8
April Chin <april.chin@oracle.com>
parents: 2813
diff changeset
   307
VENDOR_RUBY.64 = \
ff3cbef81e88 17510747 change puppet and facter to use ruby 1.9 instead of ruby 1.8
April Chin <april.chin@oracle.com>
parents: 2813
diff changeset
   308
	/usr/ruby/$(RUBY_VERSION)/lib/$(MACH64)/ruby/vendor_ruby/$(RUBY_LIB_VERSION)
ff3cbef81e88 17510747 change puppet and facter to use ruby 1.9 instead of ruby 1.8
April Chin <april.chin@oracle.com>
parents: 2813
diff changeset
   309
VENDOR_RUBY = $(VENDOR_RUBY.$(BITS))
ff3cbef81e88 17510747 change puppet and facter to use ruby 1.9 instead of ruby 1.8
April Chin <april.chin@oracle.com>
parents: 2813
diff changeset
   310
148
33ca3897ae25 7029701 libxml2 should move to userland
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 146
diff changeset
   311
PYTHON_VENDOR_PACKAGES.32 = /usr/lib/python$(PYTHON_VERSION)/vendor-packages
33ca3897ae25 7029701 libxml2 should move to userland
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 146
diff changeset
   312
PYTHON_VENDOR_PACKAGES.64 = /usr/lib/python$(PYTHON_VERSION)/vendor-packages/64
33ca3897ae25 7029701 libxml2 should move to userland
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 146
diff changeset
   313
PYTHON_VENDOR_PACKAGES = $(PYTHON_VENDOR_PACKAGES.$(BITS))
33ca3897ae25 7029701 libxml2 should move to userland
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 146
diff changeset
   314
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   315
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
   316
PYTHON.2.6.64 =	/usr/bin/$(MACH64)/python2.6
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   317
706
6e61f0012046 7108059 Userland should have python2.7 version of its python modules
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 591
diff changeset
   318
PYTHON.2.7.32 =	/usr/bin/python2.7
6e61f0012046 7108059 Userland should have python2.7 version of its python modules
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 591
diff changeset
   319
PYTHON.2.7.64 =	/usr/bin/$(MACH64)/python2.7
6e61f0012046 7108059 Userland should have python2.7 version of its python modules
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 591
diff changeset
   320
2395
dd214a1128f8 7167209 Mistakes in make-rules/shared-macros.mk
Rich Burridge <rich.burridge@oracle.com>
parents: 827
diff changeset
   321
PYTHON.32 =	$(PYTHON.$(PYTHON_VERSION).32)
dd214a1128f8 7167209 Mistakes in make-rules/shared-macros.mk
Rich Burridge <rich.burridge@oracle.com>
parents: 827
diff changeset
   322
PYTHON.64 =	$(PYTHON.$(PYTHON_VERSION).64)
148
33ca3897ae25 7029701 libxml2 should move to userland
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 146
diff changeset
   323
PYTHON =	$(PYTHON.$(PYTHON_VERSION).$(BITS))
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   324
146
8e22ba234817 7027466 Move nmap to Userland
Srinivasa Sarva <srinivasa.sarva@oracle.com>
parents: 145
diff changeset
   325
# The default is site-packages, but that directory belongs to the end-user.
8e22ba234817 7027466 Move nmap to Userland
Srinivasa Sarva <srinivasa.sarva@oracle.com>
parents: 145
diff changeset
   326
# Modules which are shipped by the OS but not with the core Python distribution
8e22ba234817 7027466 Move nmap to Userland
Srinivasa Sarva <srinivasa.sarva@oracle.com>
parents: 145
diff changeset
   327
# belong in vendor-packages.
8e22ba234817 7027466 Move nmap to Userland
Srinivasa Sarva <srinivasa.sarva@oracle.com>
parents: 145
diff changeset
   328
PYTHON_LIB= /usr/lib/python$(PYTHON_VERSION)/vendor-packages
706
6e61f0012046 7108059 Userland should have python2.7 version of its python modules
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 591
diff changeset
   329
PYTHON_DATA= $(PYTHON_LIB)
146
8e22ba234817 7027466 Move nmap to Userland
Srinivasa Sarva <srinivasa.sarva@oracle.com>
parents: 145
diff changeset
   330
2591
31090006a324 15734212 SUNBT7076895 userland fails to build with jdk1.7
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2576
diff changeset
   331
JAVA7_HOME =    /usr/jdk/instances/jdk1.7.0
31090006a324 15734212 SUNBT7076895 userland fails to build with jdk1.7
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2576
diff changeset
   332
JAVA6_HOME =    /usr/jdk/instances/jdk1.6.0
31090006a324 15734212 SUNBT7076895 userland fails to build with jdk1.7
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2576
diff changeset
   333
JAVA_HOME = $(JAVA7_HOME)
116
ae6a90899b42 7022452 move ant to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents: 109
diff changeset
   334
260
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   335
# This is the default BUILD version of perl
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   336
# Not necessarily the system's default version, i.e. /usr/bin/perl
277
12ebd29ad46c 7050602 userland consolidation should build with perl 5.12 by default
craig mohrman <craig.mohrman@oracle.com>
parents: 260
diff changeset
   337
PERL_VERSION =  5.12
260
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   338
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   339
PERL_VERSIONS = 5.8.4 5.12
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   340
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   341
PERL.5.8.4 =    /usr/perl5/5.8.4/bin/perl
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   342
PERL.5.12 =     /usr/perl5/5.12/bin/perl
2649
79b6c91e7f81 16666707 Add Perl XML processing modules
Craig Mohrman <craig.mohrman@oracle.com>
parents: 2647
diff changeset
   343
PERL.5.12-mt =	/usr/perl5/5.12/bin/perl-threaded
260
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   344
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   345
PERL =          $(PERL.$(PERL_VERSION))
127
3e3c266b3a81 7013705 userland build needs local tarball caching
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 120
diff changeset
   346
2576
f1b6ecbb2d1e 16433531 Update Nose to 1.2.1
Rich Burridge <rich.burridge@oracle.com>
parents: 2434
diff changeset
   347
PERL_ARCH :=     $(shell $(PERL) -e 'use Config; print $$Config{archname}')
2649
79b6c91e7f81 16666707 Add Perl XML processing modules
Craig Mohrman <craig.mohrman@oracle.com>
parents: 2647
diff changeset
   348
PERL_ARCH_FUNC=	$(shell $(1) -e 'use Config; print $$Config{archname}')
260
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   349
# Optimally we should ask perl which C compiler was used but it doesn't
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   350
# result in a full path name.  Only "c" is being recorded
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   351
# inside perl builds while we actually need a full path to
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   352
# the studio compiler.
2576
f1b6ecbb2d1e 16433531 Update Nose to 1.2.1
Rich Burridge <rich.burridge@oracle.com>
parents: 2434
diff changeset
   353
#PERL_CC :=      $(shell $(PERL) -e 'use Config; print $$Config{cc}')
f1b6ecbb2d1e 16433531 Update Nose to 1.2.1
Rich Burridge <rich.burridge@oracle.com>
parents: 2434
diff changeset
   354
PERL_OPTIMIZE := $(shell $(PERL) -e 'use Config; print $$Config{optimize}')
260
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   355
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   356
PKG_MACROS +=   PERL_ARCH=$(PERL_ARCH)
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   357
PKG_MACROS +=   PERL_VERSION=$(PERL_VERSION)
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   358
2632
af488b226b98 16763104 backport 15998664 to 11.2 - berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 2629
diff changeset
   359
# This is the default BUILD version of tcl
af488b226b98 16763104 backport 15998664 to 11.2 - berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 2629
diff changeset
   360
# Not necessarily the system's default version, i.e. /usr/bin/tclsh
af488b226b98 16763104 backport 15998664 to 11.2 - berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 2629
diff changeset
   361
TCL_VERSION =  8.5
af488b226b98 16763104 backport 15998664 to 11.2 - berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 2629
diff changeset
   362
TCLSH.8.5.i386.32 =	/usr/bin/i86/tclsh8.5
af488b226b98 16763104 backport 15998664 to 11.2 - berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 2629
diff changeset
   363
TCLSH.8.5.i386.64 =	/usr/bin/amd64/tclsh8.5
af488b226b98 16763104 backport 15998664 to 11.2 - berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 2629
diff changeset
   364
TCLSH.8.5.sparc.32 =	/usr/bin/sparcv7/tclsh8.5
af488b226b98 16763104 backport 15998664 to 11.2 - berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 2629
diff changeset
   365
TCLSH.8.5.sparc.64 =	/usr/bin/sparcv9/tclsh8.5
af488b226b98 16763104 backport 15998664 to 11.2 - berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 2629
diff changeset
   366
TCLSH =		$(TCLSH.$(TCL_VERSION).$(MACH).$(BITS))
af488b226b98 16763104 backport 15998664 to 11.2 - berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 2629
diff changeset
   367
260
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   368
CCSMAKE =	/usr/ccs/bin/make
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   369
GMAKE =		/usr/gnu/bin/make
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   370
GPATCH =	/usr/gnu/bin/patch
82
2f155565730b 7017244 move ggrep to userland (fix mismerge)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 80
diff changeset
   371
PATCH_LEVEL =	1
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   372
GPATCH_BACKUP =	--backup --version-control=numbered
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   373
GPATCH_FLAGS =	-p$(PATCH_LEVEL) $(GPATCH_BACKUP)
302
0b738df97c00 7016849 pkg:/system/data/hardware-registry should move to Userland consolidation
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents: 279
diff changeset
   374
GSED =		/usr/gnu/bin/sed
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   375
105
da9e87a40aec 7021891 repo created by build should be v4, not v3
Danek Duvall <danek.duvall@oracle.com>
parents: 102
diff changeset
   376
PKGREPO =	/usr/bin/pkgrepo
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   377
PKGSEND =	/usr/bin/pkgsend
2855
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   378
ifeq   ($(strip $(PKGLINT_COMPONENT)),)
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   379
PKGLINT =       /usr/bin/pkglint
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   380
else
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   381
PKGLINT =       ${WS_TOOLS}/pkglint
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   382
endif
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   383
160
4eabca2bceee 7032426 hal-cups-utils needs to move to userland
Vladimir Marek <Vladimir.Marek@oracle.com>
parents: 156
diff changeset
   384
ACLOCAL =	/usr/bin/aclocal-1.10
4eabca2bceee 7032426 hal-cups-utils needs to move to userland
Vladimir Marek <Vladimir.Marek@oracle.com>
parents: 156
diff changeset
   385
AUTOMAKE =	/usr/bin/automake-1.10
4eabca2bceee 7032426 hal-cups-utils needs to move to userland
Vladimir Marek <Vladimir.Marek@oracle.com>
parents: 156
diff changeset
   386
AUTORECONF = 	/usr/bin/autoreconf
4eabca2bceee 7032426 hal-cups-utils needs to move to userland
Vladimir Marek <Vladimir.Marek@oracle.com>
parents: 156
diff changeset
   387
165
111c46cade93 7018146 move hplip to userland
sonam gupta - Sun Microsystems - Bangalore India <Sonam.Gupta@Sun.COM>
parents: 160
diff changeset
   388
KSH93 =         /usr/bin/ksh93
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   389
TOUCH =		/usr/bin/touch
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   390
MKDIR =		/bin/mkdir -p
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   391
RM =		/bin/rm -f
7
d42300cb8715 add license/copyright info for ips generation
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 6
diff changeset
   392
CP =		/bin/cp -f
142
6f1cb90a0ef3 7026996 move tomcat to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents: 138
diff changeset
   393
MV =		/bin/mv -f
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   394
LN =		/bin/ln
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   395
SYMLINK =	/bin/ln -s
16
33aaaec59991 update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 12
diff changeset
   396
ENV =		/usr/bin/env
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   397
INSTALL =	/usr/bin/ginstall
138
089c2065503f 7016734 move pz7ip from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents: 131
diff changeset
   398
CHMOD =		/usr/bin/chmod
224
b0ca638fab1b 7017965 Integrate BIND in to userland consolidation
Stacey Marshall <Stacey.Marshall@Oracle.COM>
parents: 220
diff changeset
   399
NAWK =		/usr/bin/nawk
b0ca638fab1b 7017965 Integrate BIND in to userland consolidation
Stacey Marshall <Stacey.Marshall@Oracle.COM>
parents: 220
diff changeset
   400
TEE =		/usr/bin/tee
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   401
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   402
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
   403
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
   404
206
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   405
PKG_CONFIG_PATH.32 = /usr/lib/pkgconfig
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   406
PKG_CONFIG_PATH.64 = /usr/lib/$(MACH64)/pkgconfig
2395
dd214a1128f8 7167209 Mistakes in make-rules/shared-macros.mk
Rich Burridge <rich.burridge@oracle.com>
parents: 827
diff changeset
   407
PKG_CONFIG_PATH = $(PKG_CONFIG_PATH.$(BITS))
206
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   408
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   409
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   410
#
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   411
# 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
   412
# 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
   413
# 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
   414
# similiar.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   415
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   416
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   417
# 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
   418
# What other side-effects are there?
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   419
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
   420
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   421
# 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
   422
# so.  Use CPP_LARGEFILES and not the .32/.64 variety directly
2576
f1b6ecbb2d1e 16433531 Update Nose to 1.2.1
Rich Burridge <rich.burridge@oracle.com>
parents: 2434
diff changeset
   423
CPP_LARGEFILES.32 :=	$(shell getconf LFS_CFLAGS)
f1b6ecbb2d1e 16433531 Update Nose to 1.2.1
Rich Burridge <rich.burridge@oracle.com>
parents: 2434
diff changeset
   424
CPP_LARGEFILES.64 :=	$(shell getconf LFS64_CFLAGS)
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   425
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
   426
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   427
# 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
   428
# 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
   429
# we currently do not support.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   430
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
   431
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   432
# 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
   433
# 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
   434
# 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
   435
# 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
   436
# CFLAGS instead of using this directly
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   437
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
   438
200
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   439
# XPG5 mode. These options are specific for C++, where _XPG6,
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   440
# _XOPEN_SOURCE=600 and C99 are illegal. -D__EXTENSIONS__=1 is legal in C++.
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   441
CPP_XPG5MODE=   -D_XOPEN_SOURCE=500 -D__EXTENSIONS__=1 -D_XPG5
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   442
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   443
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   444
# 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
   445
# 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
   446
# 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
   447
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   448
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   449
# Generate 32/64 bit objects
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   450
CC_BITS =	-m$(BITS)
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   451
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   452
# 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
   453
# and not the .arch.bits variety directly.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   454
studio_XBITS.sparc.32 =	-xtarget=ultra2 -xarch=sparcvis -xchip=ultra2
796
7fa97e814929 7035978 parfait support for userland bits (fix sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 774
diff changeset
   455
studio_XBITS.sparc.64 =	
7fa97e814929 7035978 parfait support for userland bits (fix sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 774
diff changeset
   456
ifneq   ($(strip $(PARFAIT_BUILD)),yes)
7fa97e814929 7035978 parfait support for userland bits (fix sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 774
diff changeset
   457
studio_XBITS.sparc.64 += -xtarget=ultra2
7fa97e814929 7035978 parfait support for userland bits (fix sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 774
diff changeset
   458
endif
7fa97e814929 7035978 parfait support for userland bits (fix sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 774
diff changeset
   459
studio_XBITS.sparc.64 += -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
   460
studio_XBITS.i386.32 =	-xchip=pentium
108
2cfc48b87a85 7020772 userland build should provide more macros for common flags (fix cflags)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 105
diff changeset
   461
studio_XBITS.i386.64 =	-xchip=generic -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
   462
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
   463
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   464
# 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
   465
# 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
   466
# 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
   467
# component Makefile.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   468
studio_C99_ENABLE =		-xc99=all
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   469
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   470
# 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
   471
# 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
   472
# 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
   473
# component Makefile.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   474
studio_C99_DISABLE =	-xc99=none
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   475
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   476
# 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
   477
studio_C99MODE =
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   478
200
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   479
# For C++, compatibility with C99 (which is technically illegal) is
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   480
# enabled in a different way. So, we must use a different macro for it.
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   481
studio_cplusplus_C99_ENABLE = 	-xlang=c99
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   482
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   483
# Turn it off.
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   484
studio_cplusplus_C99_DISABLE =
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   485
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   486
# And this is the macro you should actually use
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   487
studio_cplusplus_C99MODE = 
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   488
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   489
# 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
   490
# statements.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   491
studio_FEATURES_EXTENSIONS =	-features=extensions
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   492
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   493
# 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
   494
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
   495
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
   496
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
   497
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
   498
studio_OPT =		$(studio_OPT.$(MACH).$(BITS))
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   499
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   500
# 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
   501
studio_PIC = 	-KPIC -DPIC
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   502
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   503
# 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
   504
# 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
   505
# (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
   506
# 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
   507
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
   508
studio_IROPTS =		$(studio_IROPTS.$(MACH))
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   509
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   510
# 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
   511
# 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
   512
# x04 or higher.
459
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   513
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   514
# We should just use -xregs but we need to workaround 7030022. Note
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   515
# that we can't use the (documented) -Wc,-xregs workaround because
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   516
# libtool really hates -Wc and thinks it should be -Wl. Instead
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   517
# we use an (undocumented) option which actually happens to be what
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   518
# CC would use.
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   519
studio_XREGS.sparc =	-Qoption cg -xregs=no%appl
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   520
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
   521
studio_XREGS =		$(studio_XREGS.$(MACH))
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   522
459
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   523
gcc_XREGS.sparc =	-mno-app-regs
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   524
gcc_XREGS.i386 =
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   525
gcc_XREGS =		$(gcc_XREGS.$(MACH))
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   526
109
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   527
# Set data alignment on sparc to reasonable values, 8 byte alignment for 32 bit
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   528
# objects and 16 byte alignment for 64 bit objects.  This is added to CFLAGS by
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   529
# default.
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   530
studio_ALIGN.sparc.32 =	-xmemalign=8s
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   531
studio_ALIGN.sparc.64 =	-xmemalign=16s
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   532
studio_ALIGN =		$(studio_ALIGN.$(MACH).$(BITS))
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   533
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   534
# Studio shorthand for building multi-threaded code,  enables -D_REENTRANT and
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   535
# linking with threadin support.  This is added to CFLAGS by default, override
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   536
# studio_MT to turn this off.
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   537
studio_MT =		-mt
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   538
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   539
# See CPP_XPG6MODE comment above.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   540
studio_XPG6MODE =	$(studio_C99MODE) $(CPP_XPG6MODE)
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   541
XPG6MODE =		$(studio_XPG6MODE)
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   542
200
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   543
# See CPP_XPG5MODE comment above. You can only use this in C++, not in C99.
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   544
studio_XPG5MODE =	$(studio_cplusplus_C99MODE) $(CPP_XPG5MODE)
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   545
XPG5MODE =		$(studio_XPG5MODE)
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   546
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   547
# 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
   548
# 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
   549
# 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
   550
# 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
   551
# configure environment.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   552
CFLAGS.studio +=	$(studio_OPT) $(studio_XBITS) $(studio_XREGS) \
109
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   553
			$(studio_IROPTS) $(studio_C99MODE) $(studio_ALIGN) \
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   554
			$(studio_MT)
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   555
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   556
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   557
# 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
   558
# 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
   559
# 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
   560
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   561
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   562
# GCC Compiler optimization flag
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   563
gcc_OPT =	-O3
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   564
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   565
# 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
   566
gcc_PIC =	-fPIC -DPIC
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   567
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   568
# 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
   569
# compiler specific variant.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   570
CC_PIC =	$($(COMPILER)_PIC)
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   571
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   572
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   573
# 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
   574
# 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
   575
# 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
   576
# 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
   577
# configure environment.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   578
CFLAGS.gcc +=	$(gcc_OPT)
459
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   579
CFLAGS.gcc +=	$(gcc_XREGS)
2855
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   580
CFLAGS.gcc3 +=  $(gcc_OPT)
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   581
CFLAGS.gcc3 +=  $(gcc_XREGS)
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   582
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   583
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   584
# Build 32 or 64 bit objects.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   585
CFLAGS +=	$(CC_BITS)
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   586
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   587
# Add compiler specific 'default' features
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   588
CFLAGS +=	$(CFLAGS.$(COMPILER))
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   589
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   590
206
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   591
# Studio C++ requires -norunpath to avoid adding its location into the RUNPATH
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   592
# to C++ applications.
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   593
studio_NORUNPATH =	 -norunpath
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   594
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   595
# To link in standard mode (the default mode) without any C++ libraries
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   596
# (except libCrun), use studio_LIBRARY_NONE in your component Makefile.
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   597
studio_LIBRARY_NONE =	 -library=%none
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   598
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   599
# Don't link C++ with any C++ Runtime or Standard C++ library
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   600
studio_CXXLIB_NONE =	-xnolib
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   601
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   602
# Link C++ with the Studio C++ Runtime and Standard C++ library.  This is the
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   603
# default for "standard" mode.
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   604
studio_CXXLIB_CSTD =	-library=Cstd,Crun
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   605
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   606
# link C++ with the Studio  C++ Runtime and Apache Standard C++ library
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   607
studio_CXXLIB_APACHE =	-library=stdcxx4,Crun
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   608
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   609
# Add the C++ ABI compatibility flags for older ABI compatibility.  The default
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   610
# is "standard mode" (-compat=5)
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   611
studio_COMPAT_VERSION_4 =	-compat=4
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   612
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   613
# Tell the compiler that we don't want the studio runpath added to the
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   614
# linker flags.  We never want the Studio location added to the RUNPATH.
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   615
CXXFLAGS +=	$($(COMPILER)_NORUNPATH)
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   616
219
22d9e175d379 7041521 GNU MP to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 207
diff changeset
   617
# Build 32 or 64 bit objects in C++ as well.
22d9e175d379 7041521 GNU MP to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 207
diff changeset
   618
CXXFLAGS +=	$(CC_BITS)
22d9e175d379 7041521 GNU MP to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 207
diff changeset
   619
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   620
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   621
# 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
   622
# 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
   623
# 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
   624
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   625
206
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   626
# set the bittedness that we want to link
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   627
LD_BITS =	-$(BITS)
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   628
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   629
# 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
   630
# get linker guidance here.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   631
LD_Z_REDLOCSYM =	-z redlocsym
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   632
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   633
# 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
   634
# 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
   635
# 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
   636
# 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
   637
LD_Z_RESCAN_NOW =	-z rescan-now
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   638
2855
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   639
LD_Z_TEXT =		-z text
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   640
766
58402b94c13b 7159254 Userland adjustments to ease Studio 12.3 transition
Rich Burridge <rich.burridge@oracle.com>
parents: 706
diff changeset
   641
# make sure that -lc is always present when building shared objects.
58402b94c13b 7159254 Userland adjustments to ease Studio 12.3 transition
Rich Burridge <rich.burridge@oracle.com>
parents: 706
diff changeset
   642
LD_DEF_LIBS +=		-lc
58402b94c13b 7159254 Userland adjustments to ease Studio 12.3 transition
Rich Burridge <rich.burridge@oracle.com>
parents: 706
diff changeset
   643
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   644
# make sure all symbols are defined.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   645
LD_Z_DEFS =		-z defs
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   646
170
14cadb780400 7033275 userland should default vendor to 'Oracle Corporation'
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 166
diff changeset
   647
# eliminate unreferenced dynamic dependencies
14cadb780400 7033275 userland should default vendor to 'Oracle Corporation'
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 166
diff changeset
   648
LD_Z_IGNORE =		-z ignore
14cadb780400 7033275 userland should default vendor to 'Oracle Corporation'
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 166
diff changeset
   649
2855
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   650
# eliminate comments
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   651
LD_Z_STRIP_CLASS =      -z strip-class=comment
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   652
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   653
# use direct binding
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   654
LD_B_DIRECT =		-Bdirect
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   655
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   656
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   657
# 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
   658
# 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
   659
# '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
   660
# 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
   661
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   662
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   663
# Create a non-executable stack when linking.
176
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents: 172
diff changeset
   664
LD_MAP_NOEXSTK.i386 =	-M /usr/lib/ld/map.noexstk
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents: 172
diff changeset
   665
LD_MAP_NOEXSTK.sparc =	-M /usr/lib/ld/map.noexstk
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   666
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   667
# 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
   668
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
   669
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   670
# 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
   671
# 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
   672
# see mapfile comments for more information
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   673
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
   674
LD_MAP_NOEXDATA.sparc =	$(LD_MAP_NOEXBSS)
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   675
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   676
# Page alignment
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   677
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
   678
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   679
# Linker options to add when only building libraries
766
58402b94c13b 7159254 Userland adjustments to ease Studio 12.3 transition
Rich Burridge <rich.burridge@oracle.com>
parents: 706
diff changeset
   680
LD_OPTIONS_SO +=	$(LD_Z_TEXT) $(LD_Z_DEFS) $(LD_DEF_LIBS)
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   681
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   682
# 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
   683
# 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
   684
# component build.
176
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents: 172
diff changeset
   685
LD_OPTIONS +=	$(LD_MAP_NOEXSTK.$(MACH)) $(LD_MAP_NOEXDATA.$(MACH)) \
2855
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   686
		$(LD_MAP_PAGEALIGN) $(LD_B_DIRECT) $(LD_Z_IGNORE) \
576d5a7857b7 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 2818
diff changeset
   687
		$(LD_Z_STRIP_CLASS)
64
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   688
62
519e6e3788ce 7013265 userland could use a tool to aid in SUNW package generation
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 61
diff changeset
   689
# 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
   690
# 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
   691
COMPONENT_BUILD_ENV= \
82
2f155565730b 7017244 move ggrep to userland (fix mismerge)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 80
diff changeset
   692
    LD_OPTIONS="$(LD_OPTIONS)"
64
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   693
COMPONENT_INSTALL_ENV= \
82
2f155565730b 7017244 move ggrep to userland (fix mismerge)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 80
diff changeset
   694
    LD_OPTIONS="$(LD_OPTIONS)"
64
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   695
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
   696
# 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
   697
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
   698
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
   699
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
   700
COMPONENT_INSTALL_ARGS += $(COMPONENT_INSTALL_ARGS.$(BITS))
181
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   701
206
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   702
# declare these phony so that we avoid filesystem conflicts.
774
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   703
.PHONY:	prep build install publish test clean clobber parfait
206
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   704
181
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   705
# If there are no tests to execute
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   706
NO_TESTS =	test-nothing
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   707
test-nothing:
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   708
	@echo "There are no tests available at this time."
2434
6c9bb5cf5610 15930486 - Auto-generation of Userland gate list for the Solaris 11 Update Release
Rich Burridge <rich.burridge@oracle.com>
parents: 2395
diff changeset
   709
6c9bb5cf5610 15930486 - Auto-generation of Userland gate list for the Solaris 11 Update Release
Rich Burridge <rich.burridge@oracle.com>
parents: 2395
diff changeset
   710
# default behaviour for 'component-hook' target is to echo the component
6c9bb5cf5610 15930486 - Auto-generation of Userland gate list for the Solaris 11 Update Release
Rich Burridge <rich.burridge@oracle.com>
parents: 2395
diff changeset
   711
# name and version information, but more complex behaviour can be implemented
6c9bb5cf5610 15930486 - Auto-generation of Userland gate list for the Solaris 11 Update Release
Rich Burridge <rich.burridge@oracle.com>
parents: 2395
diff changeset
   712
# via command line setting of the COMPONENT_HOOK macro.
6c9bb5cf5610 15930486 - Auto-generation of Userland gate list for the Solaris 11 Update Release
Rich Burridge <rich.burridge@oracle.com>
parents: 2395
diff changeset
   713
COMPONENT_HOOK ?=	echo $(COMPONENT_NAME) $(COMPONENT_VERSION)
6c9bb5cf5610 15930486 - Auto-generation of Userland gate list for the Solaris 11 Update Release
Rich Burridge <rich.burridge@oracle.com>
parents: 2395
diff changeset
   714
6c9bb5cf5610 15930486 - Auto-generation of Userland gate list for the Solaris 11 Update Release
Rich Burridge <rich.burridge@oracle.com>
parents: 2395
diff changeset
   715
component-hook:
6c9bb5cf5610 15930486 - Auto-generation of Userland gate list for the Solaris 11 Update Release
Rich Burridge <rich.burridge@oracle.com>
parents: 2395
diff changeset
   716
	@$(COMPONENT_HOOK)