make-rules/shared-macros.mk
author Mike Sullivan <Mike.Sullivan@Oracle.COM>
Fri, 13 May 2016 17:33:30 -0700
changeset 5983 f10ab5ae99d7
parent 5885 b62c528d39c8
child 6043 2b2e083ef892
permissions -rw-r--r--
Close of build 99.3.
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
#
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
    21
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
    22
#
5400
1199f8e91f50 22592978 Move xscreensaver to the Userland gate
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents: 5177
diff changeset
    23
# Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    24
#
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    25
32
280a7444e782 automatically generate intercomponent dependencies for build ordering
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 31
diff changeset
    26
PATH=/usr/bin:/usr/gnu/bin
280a7444e782 automatically generate intercomponent dependencies for build ordering
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 31
diff changeset
    27
313
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    28
# 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
    29
# 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
    30
# 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
    31
# 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
    32
# anywhere else.
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    33
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
    34
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    35
# 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
    36
# in this gate.  The external mirror is a replica of the internal mirror.
1528
76d0288dce57 16666374 userland misses opensolaris.org very much, but must move on to java.net's love
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1512
diff changeset
    37
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
    38
e30cc0dc4e8b 7053576 canonical source location for beanshell, gcc3, and tidy is changing
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 302
diff changeset
    39
# 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
    40
# 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
    41
export DOWNLOAD_SEARCH_PATH +=	$(INTERNAL_ARCHIVE_MIRROR)
1528
76d0288dce57 16666374 userland misses opensolaris.org very much, but must move on to java.net's love
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1512
diff changeset
    42
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
    43
export DOWNLOAD_SEARCH_PATH +=	$(EXTERNAL_ARCHIVE_MIRROR)
1528
76d0288dce57 16666374 userland misses opensolaris.org very much, but must move on to java.net's love
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1512
diff changeset
    44
endif
127
3e3c266b3a81 7013705 userland build needs local tarball caching
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 120
diff changeset
    45
4359
93edfb908c2a 21137286 Userland WS_TOP should be determined relative to make-rules/shared-macros.mk
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4339
diff changeset
    46
# The workspace starts at the parent of the make-rules directory,
93edfb908c2a 21137286 Userland WS_TOP should be determined relative to make-rules/shared-macros.mk
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4339
diff changeset
    47
# unless someone already supplied the top.
1056
b2ec61db2a04 15845939 versionless python manifests
Danek Duvall <danek.duvall@oracle.com>
parents: 1053
diff changeset
    48
ifeq ($(origin WS_TOP), undefined)
4359
93edfb908c2a 21137286 Userland WS_TOP should be determined relative to make-rules/shared-macros.mk
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4339
diff changeset
    49
export WS_TOP := $(realpath $(dir $(realpath $(dir $(filter \
93edfb908c2a 21137286 Userland WS_TOP should be determined relative to make-rules/shared-macros.mk
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4339
diff changeset
    50
			%/make-rules/shared-macros.mk,$(MAKEFILE_LIST))))))
1056
b2ec61db2a04 15845939 versionless python manifests
Danek Duvall <danek.duvall@oracle.com>
parents: 1053
diff changeset
    51
endif
127
3e3c266b3a81 7013705 userland build needs local tarball caching
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 120
diff changeset
    52
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
    53
WS_MACH =	$(WS_TOP)/$(MACH)
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
    54
WS_LOGS =	$(WS_MACH)/logs
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
    55
WS_REPO =	$(WS_MACH)/repo
538
d8d7345db00f 7104397 Userland should split out package BUILD_VERSION information
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 528
diff changeset
    56
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
    57
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
    58
WS_COMPONENTS =	$(WS_TOP)/components
4490
5a5296580120 21249474 s/pre-release/evaluation/g + other tweaks
John Beck <John.Beck@Oracle.COM>
parents: 4439
diff changeset
    59
WS_LICENSES =	$(WS_TOP)/licenses
538
d8d7345db00f 7104397 Userland should split out package BUILD_VERSION information
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 528
diff changeset
    60
WS_INCORPORATIONS =	$(WS_TOP)/incorporations
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
    61
WS_LINT_CACHE =	$(WS_MACH)/pkglint-cache
538
d8d7345db00f 7104397 Userland should split out package BUILD_VERSION information
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 528
diff changeset
    62
327
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    63
# 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
    64
# (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
    65
# 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
    66
# 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
    67
# 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
    68
# as dependencies of publish.
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    69
export SHELLOPTS
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    70
build:		SHELLOPTS=
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    71
test:		SHELLOPTS=
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    72
install:	SHELLOPTS=
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    73
publish:	SHELLOPTS=pipefail
b3a36ee93012 7057088 move quilt to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 313
diff changeset
    74
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
    75
# This can be overridden to avoid rebuilding when you touch a Makefile
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
    76
MAKEFILE_PREREQ =	Makefile
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
    77
1593
b0666dd4d31d 17899000 libtool doesn't build properly in non-C locale
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1528
diff changeset
    78
# some things don't build properly in non-C locales,
b0666dd4d31d 17899000 libtool doesn't build properly in non-C locale
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1528
diff changeset
    79
# so lets stay there
b0666dd4d31d 17899000 libtool doesn't build properly in non-C locale
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1528
diff changeset
    80
export LC_ALL=C
b0666dd4d31d 17899000 libtool doesn't build properly in non-C locale
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1528
diff changeset
    81
177
fd9cb2273c9d 7015392 the build should really fail if the pkg tools fail
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 176
diff changeset
    82
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
    83
3951
44e39665111f 20696590 change Userland publisher name from "userland" to "nightly"
John Beck <John.Beck@Oracle.COM>
parents: 3936
diff changeset
    84
# We want "nightly" as our publisher, to match other consolidations and
5529
43ba477eb37f 22846462 PUBLISHER should be 'solaris' when BUILD_TYPE=evaluation
John Beck <John.Beck@Oracle.COM>
parents: 5508
diff changeset
    85
# facilitate migrations (except for evaluation builds, which need to use
43ba477eb37f 22846462 PUBLISHER should be 'solaris' when BUILD_TYPE=evaluation
John Beck <John.Beck@Oracle.COM>
parents: 5508
diff changeset
    86
# "solaris" as the publisher).  G11N wants $(CONSOLIDATION)-localizable for
3951
44e39665111f 20696590 change Userland publisher name from "userland" to "nightly"
John Beck <John.Beck@Oracle.COM>
parents: 3936
diff changeset
    87
# the localizable publisher.
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
    88
CONSOLIDATION =	userland
5529
43ba477eb37f 22846462 PUBLISHER should be 'solaris' when BUILD_TYPE=evaluation
John Beck <John.Beck@Oracle.COM>
parents: 5508
diff changeset
    89
ifeq ($(BUILD_TYPE),evaluation)
43ba477eb37f 22846462 PUBLISHER should be 'solaris' when BUILD_TYPE=evaluation
John Beck <John.Beck@Oracle.COM>
parents: 5508
diff changeset
    90
PUBLISHER ?=	solaris
43ba477eb37f 22846462 PUBLISHER should be 'solaris' when BUILD_TYPE=evaluation
John Beck <John.Beck@Oracle.COM>
parents: 5508
diff changeset
    91
else
3951
44e39665111f 20696590 change Userland publisher name from "userland" to "nightly"
John Beck <John.Beck@Oracle.COM>
parents: 3936
diff changeset
    92
PUBLISHER ?=	nightly
5529
43ba477eb37f 22846462 PUBLISHER should be 'solaris' when BUILD_TYPE=evaluation
John Beck <John.Beck@Oracle.COM>
parents: 5508
diff changeset
    93
endif
827
0944d8c0158b 7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents: 800
diff changeset
    94
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
    95
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
    96
# Defines $(space) as a single blank space, so we can use it to convert
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
    97
# space-separated paths to colon-separated paths in variables with
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
    98
# $(subst $(space),:,$(strip $(SPATHS)))
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
    99
empty :=
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   100
space := $(empty) $(empty)
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   101
38
cd00ea74156e package audits should pass pkglint
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 34
diff changeset
   102
ROOT =			/
cd00ea74156e package audits should pass pkglint
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 34
diff changeset
   103
4520
56630cd6ade3 21288917 userland packages should include the corresponding changeset id.
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4490
diff changeset
   104
# The changset and external source repo used in building the packages.
56630cd6ade3 21288917 userland packages should include the corresponding changeset id.
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4490
diff changeset
   105
CONSOLIDATION_CHANGESET=$(shell hg identify -i)
56630cd6ade3 21288917 userland packages should include the corresponding changeset id.
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4490
diff changeset
   106
CONSOLIDATION_REPOSITORY_URL=https://hg.java.net/hg/solaris-userland~gate
56630cd6ade3 21288917 userland packages should include the corresponding changeset id.
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4490
diff changeset
   107
944
457586ba0add 7190084 Userland needs to update its IPS schema for S12
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 943
diff changeset
   108
# Native OS version
1056
b2ec61db2a04 15845939 versionless python manifests
Danek Duvall <danek.duvall@oracle.com>
parents: 1053
diff changeset
   109
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
   110
SOLARIS_VERSION =	$(OS_VERSION:5.%=2.%)
944
457586ba0add 7190084 Userland needs to update its IPS schema for S12
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 943
diff changeset
   111
# Target OS version
457586ba0add 7190084 Userland needs to update its IPS schema for S12
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 943
diff changeset
   112
PKG_SOLARIS_VERSION ?= 5.12
477
068d10529156 7078102 userland needs Versioning Reform
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 459
diff changeset
   113
4955
d9d2542d0224 21954711 add SOLARIS_{11,12}_ONLY macros for FOSS evaluation project
John Beck <John.Beck@Oracle.COM>
parents: 4947
diff changeset
   114
# We generally build the default branch on the latest release.  But for
d9d2542d0224 21954711 add SOLARIS_{11,12}_ONLY macros for FOSS evaluation project
John Beck <John.Beck@Oracle.COM>
parents: 4947
diff changeset
   115
# the FOSS evaluation repo project, we build on the previous release.
d9d2542d0224 21954711 add SOLARIS_{11,12}_ONLY macros for FOSS evaluation project
John Beck <John.Beck@Oracle.COM>
parents: 4947
diff changeset
   116
# Add macros to make that easier.
d9d2542d0224 21954711 add SOLARIS_{11,12}_ONLY macros for FOSS evaluation project
John Beck <John.Beck@Oracle.COM>
parents: 4947
diff changeset
   117
ifeq ($(OS_VERSION),5.12)
d9d2542d0224 21954711 add SOLARIS_{11,12}_ONLY macros for FOSS evaluation project
John Beck <John.Beck@Oracle.COM>
parents: 4947
diff changeset
   118
SOLARIS_12_ONLY =
d9d2542d0224 21954711 add SOLARIS_{11,12}_ONLY macros for FOSS evaluation project
John Beck <John.Beck@Oracle.COM>
parents: 4947
diff changeset
   119
SOLARIS_11_ONLY =\#
d9d2542d0224 21954711 add SOLARIS_{11,12}_ONLY macros for FOSS evaluation project
John Beck <John.Beck@Oracle.COM>
parents: 4947
diff changeset
   120
else
d9d2542d0224 21954711 add SOLARIS_{11,12}_ONLY macros for FOSS evaluation project
John Beck <John.Beck@Oracle.COM>
parents: 4947
diff changeset
   121
SOLARIS_12_ONLY =\#
d9d2542d0224 21954711 add SOLARIS_{11,12}_ONLY macros for FOSS evaluation project
John Beck <John.Beck@Oracle.COM>
parents: 4947
diff changeset
   122
SOLARIS_11_ONLY =
d9d2542d0224 21954711 add SOLARIS_{11,12}_ONLY macros for FOSS evaluation project
John Beck <John.Beck@Oracle.COM>
parents: 4947
diff changeset
   123
endif
d9d2542d0224 21954711 add SOLARIS_{11,12}_ONLY macros for FOSS evaluation project
John Beck <John.Beck@Oracle.COM>
parents: 4947
diff changeset
   124
538
d8d7345db00f 7104397 Userland should split out package BUILD_VERSION information
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 528
diff changeset
   125
include $(WS_MAKE_RULES)/ips-buildinfo.mk
38
cd00ea74156e package audits should pass pkglint
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 34
diff changeset
   126
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
   127
COMPILER ?=		studio
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   128
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   129
# The values of BITS changes during the build process for components that
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   130
# are built 32-bit and 64-bit.  This macro makes it possible to determine
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   131
# which components are only built 64-bit and allow other make-rules files
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   132
# to adjust accordingly.  Possible values are: '32', '64', '32_and_64',
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   133
# '64_and_32', and 'NO_ARCH' (the orderings specify build preference).
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   134
BUILD_BITS ?=$(BITS)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   135
ifeq ($(strip $(BUILD_BITS)),64)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   136
BITS ?=			64
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   137
else
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   138
BITS ?=			32
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   139
endif
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   140
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   141
# Based on BUILD_BITS, determine which binaries are preferred for a build.
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   142
# This macro is for the convenience of other make-rules files and should not be
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   143
# overridden by developers.
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   144
ifeq ($(strip $(BUILD_BITS)),64)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   145
PREFERRED_BITS=64
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   146
endif
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   147
ifeq ($(strip $(BUILD_BITS)),64_and_32)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   148
PREFERRED_BITS=64
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   149
endif
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   150
PREFERRED_BITS ?= 32
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   151
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   152
# Map target build to macro/variable naming conventions.  This macro is for the
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   153
# convenience of other make-rules files and should not be overridden by
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   154
# developers.
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   155
ifeq ($(BUILD_BITS),64_and_32)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   156
MK_BITS=32_and_64
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   157
else
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   158
MK_BITS=$(strip $(BUILD_BITS))
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   159
endif
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   160
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   161
# Do not assume a default build style for compatibility with older component
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   162
# Makefiles.  If explicitly set, common.mk will automatically include relevant
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   163
# make-rules files.  Possible values are: 'ant', 'archive', 'attpackagemake',
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   164
# 'cmake', 'configure', 'gnu-component', 'justmake', 'pkg', and 'setup.py'. See
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   165
# corresponding file in make-rules for details.
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   166
# BUILD_STYLE=
1907
446472de62e9 PSARC 2014/151 Python 3.4
John Beck <John.Beck@Oracle.COM>
parents: 1836
diff changeset
   167
3936
c344422ee38b 20674483 change Userland Python default version from 2.6 to 2.7
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   168
# The default version should go last.
c344422ee38b 20674483 change Userland Python default version from 2.6 to 2.7
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   169
PYTHON_VERSION =	2.7
4984
7145b15b7f0d PSARC 2014/190 Python 2.6 EOF
John Beck <John.Beck@Oracle.COM>
parents: 4955
diff changeset
   170
PYTHON2_VERSIONS =	2.7
4912
0b79e9575718 PSARC 2015/414 Python 3.5
John Beck <John.Beck@Oracle.COM>
parents: 4791
diff changeset
   171
PYTHON3_VERSIONS =	3.4 3.5
1907
446472de62e9 PSARC 2014/151 Python 3.4
John Beck <John.Beck@Oracle.COM>
parents: 1836
diff changeset
   172
PYTHON_VERSIONS =	$(PYTHON3_VERSIONS) $(PYTHON2_VERSIONS)
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   173
34
d20b10eba317 prepare for zone based component builds
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 32
diff changeset
   174
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
   175
94
e2364cad23ff 7019782 move tcsh to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 93
diff changeset
   176
CLONEY =	$(WS_TOOLS)/cloney
e2364cad23ff 7019782 move tcsh to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 93
diff changeset
   177
156
c2445b73a8b2 6949695 Would like to have perl 5.12 (use CONFIG_SHELL)
Craig Mohrman <Craig.Mohrman@oracle.com>
parents: 152
diff changeset
   178
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
   179
34
d20b10eba317 prepare for zone based component builds
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 32
diff changeset
   180
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
   181
1053
accc15fa8762 15878378 Auto-generation of Userland gate list - Phase 2
Rich Burridge <rich.burridge@oracle.com>
parents: 1038
diff changeset
   182
COMPONENT_SRC_NAME =	$(COMPONENT_NAME)
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   183
COMPONENT_SRC=		$(COMPONENT_SRC_NAME)-$(COMPONENT_VERSION)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   184
COMPONENT_ARCHIVE=	$(COMPONENT_SRC).tar.gz
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   185
# Assume a component is categorized as a utility by default.
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   186
COMPONENT_BUGDB=	utility/$(COMPONENT_NAME)
1053
accc15fa8762 15878378 Auto-generation of Userland gate list - Phase 2
Rich Burridge <rich.burridge@oracle.com>
parents: 1038
diff changeset
   187
1056
b2ec61db2a04 15845939 versionless python manifests
Danek Duvall <danek.duvall@oracle.com>
parents: 1053
diff changeset
   188
COMPONENT_DIR :=	$(shell pwd)
72
4c33a310f793 7015633 move gtar to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents: 70
diff changeset
   189
SOURCE_DIR =	$(COMPONENT_DIR)/$(COMPONENT_SRC)
4c33a310f793 7015633 move gtar to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents: 70
diff changeset
   190
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
   191
PROTO_DIR =	$(BUILD_DIR)/prototype/$(MACH)
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   192
85
8098282b503b 7018226 move GNU screen to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents: 82
diff changeset
   193
ETCDIR =	/etc
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   194
USRDIR =	/usr
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   195
USRGNUDIR =	$(USRDIR)/gnu
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   196
BINDIR =	/bin
220
3ff562b51ff5 7040638 CUPS (Common Unix Printing System) should move to Userland.
Jiri Sasek <Jiri.Sasek@Sun.COM>
parents: 219
diff changeset
   197
SBINDIR =	/sbin
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   198
LIBDIR =	/lib
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   199
VARDIR =	/var
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   200
USRBINDIR =	$(USRDIR)/bin
990
6bfca1239ccb 7197062 Upgrade lua to 5.2.1
Srinivasa Sarva <Srinivasa.Sarva@oracle.com>
parents: 978
diff changeset
   201
USRBINDIR64 =	$(USRDIR)/bin/$(MACH64)
172
093198acf7d4 7018272 Move NTP to userland
Brian Utterback <Brian.Utterback@Oracle.COM>
parents: 170
diff changeset
   202
USRSBINDIR =	$(USRDIR)/sbin
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   203
USRLIBDIR =	$(USRDIR)/lib
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   204
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
   205
USRINCDIR =	$(USRDIR)/include
3ff562b51ff5 7040638 CUPS (Common Unix Printing System) should move to Userland.
Jiri Sasek <Jiri.Sasek@Sun.COM>
parents: 219
diff changeset
   206
USRSHARELOCALEDIR =	$(USRSHAREDIR)/locale
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   207
USRSHAREMANDIR =	$(USRSHAREDIR)/man
172
093198acf7d4 7018272 Move NTP to userland
Brian Utterback <Brian.Utterback@Oracle.COM>
parents: 170
diff changeset
   208
USRSHAREDOCDIR =	$(USRSHAREDIR)/doc
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   209
USRSHAREFONTSDIR =	$(USRSHAREDIR)/fonts
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   210
USRSHARETTFONTSDIR =	$(USRSHAREFONTSDIR)/TrueType
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
   211
USRSHARELIBDIR =	$(USRSHAREDIR)/lib
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   212
USRSHAREMAN1DIR =	$(USRSHAREMANDIR)/man1
172
093198acf7d4 7018272 Move NTP to userland
Brian Utterback <Brian.Utterback@Oracle.COM>
parents: 170
diff changeset
   213
USRSHAREMAN1MDIR =	$(USRSHAREMANDIR)/man1m
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   214
USRSHAREMAN3DIR =	$(USRSHAREMANDIR)/man3
152
f0ba422362c2 7030869 move git from sfw consolidation to userland consolidation
Craig Mohrman <Craig.Mohrman@oracle.com>
parents: 151
diff changeset
   215
USRSHAREMAN4DIR =	$(USRSHAREMANDIR)/man4
74
7e35801ce8b8 7016379 migrate elinks to userland
Kevin Crowe <Kevin.Crowe@oracle.com>
parents: 72
diff changeset
   216
USRSHAREMAN5DIR =	$(USRSHAREMANDIR)/man5
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   217
USRSHAREMAN8DIR =	$(USRSHAREMANDIR)/man8
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   218
USRLIBDIR64 =	$(USRDIR)/lib/$(MACH64)
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   219
PROTOBINDIR =	$(PROTO_DIR)$(BINDIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   220
PROTOETCDIR =	$(PROTO_DIR)$(ETCDIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   221
PROTOETCSECDIR = $(PROTO_DIR)$(ETCDIR)/security
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   222
PROTOUSRDIR =	$(PROTO_DIR)$(USRDIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   223
PROTOLIBDIR =	$(PROTO_DIR)$(LIBDIR)
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   224
PROTOSVCMANIFESTDIR =	$(PROTOLIBDIR)/svc/manifest
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   225
PROTOSVCMETHODDIR =	$(PROTOLIBDIR)/svc/method
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   226
PROTOUSRBINDIR =	$(PROTO_DIR)$(USRBINDIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   227
PROTOUSRBINDIR64 =	$(PROTO_DIR)$(USRBINDIR64)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   228
PROTOUSRSBINDIR =	$(PROTO_DIR)$(USRSBINDIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   229
PROTOUSRLIBDIR =	$(PROTO_DIR)$(USRLIBDIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   230
PROTOUSRLIBDIR64 =	$(PROTO_DIR)$(USRLIBDIR64)
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   231
PROTOPKGCONFIGDIR = 	$(PROTOUSRLIBDIR)/pkgconfig
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   232
PROTOPKGCONFIGDIR64 =	$(PROTOUSRLIBDIR64)/pkgconfig
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   233
PROTOUSRINCDIR =	$(PROTO_DIR)$(USRINCDIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   234
PROTOUSRSHAREDIR =	$(PROTO_DIR)$(USRSHAREDIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   235
PROTOUSRSHARELIBDIR =	$(PROTO_DIR)$(USRSHARELIBDIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   236
PROTOUSRSHAREDOCDIR =	$(PROTO_DIR)$(USRSHAREDOCDIR)
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   237
PROTOUSRSHAREINFODIR =	$(PROTOUSRSHAREDIR)/info
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   238
PROTOUSRSHAREMANDIR =	$(PROTO_DIR)$(USRSHAREMANDIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   239
PROTOUSRSHAREMAN1DIR =	$(PROTO_DIR)$(USRSHAREMAN1DIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   240
PROTOUSRSHAREMAN1MDIR =	$(PROTO_DIR)$(USRSHAREMAN1MDIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   241
PROTOUSRSHAREMAN3DIR =	$(PROTO_DIR)$(USRSHAREMAN3DIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   242
PROTOUSRSHAREMAN4DIR =	$(PROTO_DIR)$(USRSHAREMAN4DIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   243
PROTOUSRSHAREMAN5DIR =	$(PROTO_DIR)$(USRSHAREMAN5DIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   244
PROTOUSRSHAREMAN8DIR =	$(PROTO_DIR)$(USRSHAREMAN8DIR)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   245
PROTOUSRSHARELOCALEDIR =	$(PROTO_DIR)$(USRSHARELOCALEDIR)
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   246
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   247
GNUBIN =	$(USRGNUDIR)/bin
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   248
GNULIB =	$(USRGNUDIR)/lib
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   249
GNULIB64 =	$(USRGNUDIR)/lib/$(MACH64)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   250
GNUSHARE =	$(USRGNUDIR)/share
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   251
GNUSHAREMAN =	$(USRGNUDIR)/share/man
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   252
GNUSHAREMAN1 =	$(USRGNUDIR)/share/man/man1
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   253
PROTOGNUBIN =	$(PROTO_DIR)$(GNUBIN)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   254
PROTOGNUSHARE =	$(PROTO_DIR)$(GNUSHARE)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   255
PROTOGNUSHAREMAN =	$(PROTO_DIR)$(GNUSHAREMAN)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   256
PROTOGNUSHAREMAN1 =	$(PROTO_DIR)$(GNUSHAREMAN1)
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   257
16
33aaaec59991 update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 12
diff changeset
   258
# 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
   259
# 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
   260
# 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
   261
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
   262
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
   263
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
   264
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
   265
# set MACH from uname -p to either sparc or i386
1056
b2ec61db2a04 15845939 versionless python manifests
Danek Duvall <danek.duvall@oracle.com>
parents: 1053
diff changeset
   266
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
   267
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
   268
# 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
   269
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
   270
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
   271
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
   272
# 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
   273
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
   274
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
   275
4087
03c5ee3f6307 20860002 Userland should have *_NO_ARCH macros
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4069
diff changeset
   276
CONFIGURE_NO_ARCH =	$(BUILD_DIR_NO_ARCH)/.configured
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents: 327
diff changeset
   277
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
   278
CONFIGURE_64 =		$(BUILD_DIR_64)/.configured
2032
916ced318d1e 19317151 libxml2 needs Python 3 module
John Beck <John.Beck@Oracle.COM>
parents: 2022
diff changeset
   279
CONFIGURE_32_and_64 =	$(CONFIGURE_32) $(CONFIGURE_64)
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents: 327
diff changeset
   280
4087
03c5ee3f6307 20860002 Userland should have *_NO_ARCH macros
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4069
diff changeset
   281
BUILD_DIR_NO_ARCH =	$(BUILD_DIR)/$(MACH)
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   282
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
   283
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
   284
4087
03c5ee3f6307 20860002 Userland should have *_NO_ARCH macros
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4069
diff changeset
   285
BUILD_NO_ARCH =		$(BUILD_DIR_NO_ARCH)/.built
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   286
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
   287
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
   288
BUILD_32_and_64 =	$(BUILD_32) $(BUILD_64)
4087
03c5ee3f6307 20860002 Userland should have *_NO_ARCH macros
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4069
diff changeset
   289
# NO_ARCH uses BITS=32 because some path setting macros use $(BITS)
03c5ee3f6307 20860002 Userland should have *_NO_ARCH macros
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4069
diff changeset
   290
$(BUILD_DIR_NO_ARCH)/.built:	BITS=32
181
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   291
$(BUILD_DIR_32)/.built:		BITS=32
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   292
$(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
   293
4087
03c5ee3f6307 20860002 Userland should have *_NO_ARCH macros
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4069
diff changeset
   294
INSTALL_NO_ARCH =	$(BUILD_DIR_NO_ARCH)/.installed
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   295
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
   296
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
   297
INSTALL_32_and_64 =	$(INSTALL_32) $(INSTALL_64)
4087
03c5ee3f6307 20860002 Userland should have *_NO_ARCH macros
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4069
diff changeset
   298
$(BUILD_DIR_NO_ARCH)/.installed:  BITS=32
279
c6af843791cd 7044076 move sudo from sfw to userland
April Chin <april.chin@oracle.com>
parents: 277
diff changeset
   299
$(BUILD_DIR_32)/.installed:       BITS=32
c6af843791cd 7044076 move sudo from sfw to userland
April Chin <april.chin@oracle.com>
parents: 277
diff changeset
   300
$(BUILD_DIR_64)/.installed:       BITS=64
181
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   301
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   302
# 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
   303
COMPONENT_INSTALL_TARGETS =	install
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   304
3864
77a09e73626b 20548962 generated test files should be in the build directory for clobbering time
Rich Burridge <rich.burridge@oracle.com>
parents: 3817
diff changeset
   305
# set the default build test results directory
77a09e73626b 20548962 generated test files should be in the build directory for clobbering time
Rich Burridge <rich.burridge@oracle.com>
parents: 3817
diff changeset
   306
COMPONENT_TEST_BUILD_DIR =	$(BUILD_DIR)/test/$(MACH$(BITS))
77a09e73626b 20548962 generated test files should be in the build directory for clobbering time
Rich Burridge <rich.burridge@oracle.com>
parents: 3817
diff changeset
   307
77a09e73626b 20548962 generated test files should be in the build directory for clobbering time
Rich Burridge <rich.burridge@oracle.com>
parents: 3817
diff changeset
   308
# set the default master test results directory
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   309
COMPONENT_TEST_RESULTS_DIR =	$(COMPONENT_DIR)/test
4091
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   310
COMPONENT_SYSTEM_TEST_RESULTS_DIR =	$(COMPONENT_DIR)/test
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   311
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   312
# set the default master test results file
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   313
COMPONENT_TEST_MASTER =		$(COMPONENT_TEST_RESULTS_DIR)/results-$(BITS).master
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   314
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   315
# set the default test results output file
3864
77a09e73626b 20548962 generated test files should be in the build directory for clobbering time
Rich Burridge <rich.burridge@oracle.com>
parents: 3817
diff changeset
   316
COMPONENT_TEST_OUTPUT =		$(COMPONENT_TEST_BUILD_DIR)/test-$(BITS)-results
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   317
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   318
# set the default test results comparison diffs file
3864
77a09e73626b 20548962 generated test files should be in the build directory for clobbering time
Rich Burridge <rich.burridge@oracle.com>
parents: 3817
diff changeset
   319
COMPONENT_TEST_DIFFS =		$(COMPONENT_TEST_BUILD_DIR)/test-$(BITS)-diffs
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   320
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   321
# set the default test snapshot file
3864
77a09e73626b 20548962 generated test files should be in the build directory for clobbering time
Rich Burridge <rich.burridge@oracle.com>
parents: 3817
diff changeset
   322
COMPONENT_TEST_SNAPSHOT =	$(COMPONENT_TEST_BUILD_DIR)/results-$(BITS).snapshot
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   323
3747
d2f2bcf116e8 20441004 Python master test results
John Beck <John.Beck@Oracle.COM>
parents: 3701
diff changeset
   324
# Normally $(GSED) is simplest, but some results files need more power.
d2f2bcf116e8 20441004 Python master test results
John Beck <John.Beck@Oracle.COM>
parents: 3701
diff changeset
   325
COMPONENT_TEST_TRANSFORMER =	$(GSED)
d2f2bcf116e8 20441004 Python master test results
John Beck <John.Beck@Oracle.COM>
parents: 3701
diff changeset
   326
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   327
# The set of default transforms to be applied to the test results to try
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   328
# to normalize them.
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   329
COMPONENT_TEST_TRANSFORMS = \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   330
	'-e "s|$(@D)|\\$$(@D)|g" ' \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   331
	'-e "s|$(PERL)|\\$$(PERL)|g" ' \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   332
	'-e "s|$(SOURCE_DIR)|\\$$(SOURCE_DIR)|g" '
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   333
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   334
# set the default commands used to generate the file containing the set
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   335
# of transforms to be applied to the test results to try to normalize them.
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   336
COMPONENT_TEST_CREATE_TRANSFORMS = \
4288
cac9ddca8925 20974117 gmake *test output could be slightly less wall-of-text scary
Stacy Yeh <stacy.yeh@oracle.com>
parents: 4272
diff changeset
   337
	@if [ -e $(COMPONENT_TEST_MASTER) ]; \
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   338
	then \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   339
		print "\#!/bin/sh" > $(COMPONENT_TEST_TRANSFORM_CMD); \
3747
d2f2bcf116e8 20441004 Python master test results
John Beck <John.Beck@Oracle.COM>
parents: 3701
diff changeset
   340
        	print '$(COMPONENT_TEST_TRANSFORMER) ' \
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   341
			$(COMPONENT_TEST_TRANSFORMS) \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   342
                	' \\' >> $(COMPONENT_TEST_TRANSFORM_CMD); \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   343
        	print '$(COMPONENT_TEST_OUTPUT) \\' \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   344
                	>> $(COMPONENT_TEST_TRANSFORM_CMD); \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   345
        	print '> $(COMPONENT_TEST_SNAPSHOT)' \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   346
                	>> $(COMPONENT_TEST_TRANSFORM_CMD); \
3750
60902b5c3237 20217381 libevent should run its tests
April Chin <april.chin@oracle.com>
parents: 3747
diff changeset
   347
	else \
60902b5c3237 20217381 libevent should run its tests
April Chin <april.chin@oracle.com>
parents: 3747
diff changeset
   348
		print 'Cannot find $(COMPONENT_TEST_MASTER)'; \
60902b5c3237 20217381 libevent should run its tests
April Chin <april.chin@oracle.com>
parents: 3747
diff changeset
   349
		exit 2; \
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   350
	fi
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   351
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   352
# set the default command for performing any test result munging
3864
77a09e73626b 20548962 generated test files should be in the build directory for clobbering time
Rich Burridge <rich.burridge@oracle.com>
parents: 3817
diff changeset
   353
COMPONENT_TEST_TRANSFORM_CMD =	$(COMPONENT_TEST_BUILD_DIR)/transform-$(BITS)-results
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   354
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   355
# set the default operation to run to perform test result normalization
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   356
COMPONENT_TEST_PERFORM_TRANSFORM = \
4288
cac9ddca8925 20974117 gmake *test output could be slightly less wall-of-text scary
Stacy Yeh <stacy.yeh@oracle.com>
parents: 4272
diff changeset
   357
	@if [ -e $(COMPONENT_TEST_MASTER) ]; \
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   358
	then \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   359
		$(SHELL) $(COMPONENT_TEST_TRANSFORM_CMD); \
3750
60902b5c3237 20217381 libevent should run its tests
April Chin <april.chin@oracle.com>
parents: 3747
diff changeset
   360
	else \
60902b5c3237 20217381 libevent should run its tests
April Chin <april.chin@oracle.com>
parents: 3747
diff changeset
   361
		print 'Cannot find $(COMPONENT_TEST_MASTER)'; \
60902b5c3237 20217381 libevent should run its tests
April Chin <april.chin@oracle.com>
parents: 3747
diff changeset
   362
		exit 2; \
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   363
	fi
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   364
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   365
# set the default command used to compare the master results with the snapshot
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   366
COMPONENT_TEST_COMPARE_CMD =	$(GDIFF) -uN
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   367
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   368
# set the default way that master and snapshot test results are compared
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   369
COMPONENT_TEST_COMPARE = \
4288
cac9ddca8925 20974117 gmake *test output could be slightly less wall-of-text scary
Stacy Yeh <stacy.yeh@oracle.com>
parents: 4272
diff changeset
   370
	@if [ -e $(COMPONENT_TEST_MASTER) ]; \
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   371
	then \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   372
		$(COMPONENT_TEST_COMPARE_CMD) \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   373
			$(COMPONENT_TEST_MASTER) $(COMPONENT_TEST_SNAPSHOT) \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   374
			> $(COMPONENT_TEST_DIFFS); \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   375
		print "Test results in $(COMPONENT_TEST_OUTPUT)"; \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   376
		if [ -s $(COMPONENT_TEST_DIFFS) ]; \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   377
		then \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   378
			print "Differences found."; \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   379
			$(CAT) $(COMPONENT_TEST_DIFFS); \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   380
			exit 2; \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   381
		else \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   382
			print "No differences found."; \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   383
		fi \
3750
60902b5c3237 20217381 libevent should run its tests
April Chin <april.chin@oracle.com>
parents: 3747
diff changeset
   384
	else \
60902b5c3237 20217381 libevent should run its tests
April Chin <april.chin@oracle.com>
parents: 3747
diff changeset
   385
		print 'Cannot find $(COMPONENT_TEST_MASTER)'; \
60902b5c3237 20217381 libevent should run its tests
April Chin <april.chin@oracle.com>
parents: 3747
diff changeset
   386
		exit 2; \
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   387
	fi
181
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   388
2164
b580bc10e31a 19824924 Various Userland component test: Makefile targets should be standardized
Rich Burridge <rich.burridge@oracle.com>
parents: 2106
diff changeset
   389
# set the default env command to use for test of the component
b580bc10e31a 19824924 Various Userland component test: Makefile targets should be standardized
Rich Burridge <rich.burridge@oracle.com>
parents: 2106
diff changeset
   390
COMPONENT_TEST_ENV_CMD =        $(ENV)
4091
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   391
COMPONENT_SYSTEM_TEST_ENV_CMD =	$(ENV)
2164
b580bc10e31a 19824924 Various Userland component test: Makefile targets should be standardized
Rich Burridge <rich.burridge@oracle.com>
parents: 2106
diff changeset
   392
2106
adb848b3a7d4 19535379 lua's self tests are a bit of a mess
Rich Burridge <rich.burridge@oracle.com>
parents: 2060
diff changeset
   393
# set the default command to use for test of the component
adb848b3a7d4 19535379 lua's self tests are a bit of a mess
Rich Burridge <rich.burridge@oracle.com>
parents: 2060
diff changeset
   394
COMPONENT_TEST_CMD =		$(GMAKE)
4091
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   395
COMPONENT_SYSTEM_TEST_CMD =	$(GMAKE)
2106
adb848b3a7d4 19535379 lua's self tests are a bit of a mess
Rich Burridge <rich.burridge@oracle.com>
parents: 2060
diff changeset
   396
181
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
   397
# 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
   398
COMPONENT_TEST_TARGETS =	check
4091
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   399
COMPONENT_SYSTEM_TEST_TARGETS =	check
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   400
2022
d590db614c66 PSARC 2014/156 doxygen version 1.8.7
Rich Burridge <rich.burridge@oracle.com>
parents: 2010
diff changeset
   401
# set the default directory for test of the component
d590db614c66 PSARC 2014/156 doxygen version 1.8.7
Rich Burridge <rich.burridge@oracle.com>
parents: 2010
diff changeset
   402
COMPONENT_TEST_DIR =		$(@D)
4091
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   403
COMPONENT_SYSTEM_TEST_DIR =	$(@D)
2022
d590db614c66 PSARC 2014/156 doxygen version 1.8.7
Rich Burridge <rich.burridge@oracle.com>
parents: 2010
diff changeset
   404
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   405
# determine the type of tests we want to run.
4091
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   406
ifeq ($(strip $(wildcard $(COMPONENT_SYSTEM_TEST_RESULTS_DIR)/results-*.master)),)
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   407
SYSTEM_TEST_NO_ARCH =		$(BUILD_DIR_NO_ARCH)/.system-tested
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   408
SYSTEM_TEST_32 =		$(BUILD_DIR_32)/.system-tested
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   409
SYSTEM_TEST_64 =		$(BUILD_DIR_64)/.system-tested
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   410
else
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   411
SYSTEM_TEST_NO_ARCH =		$(BUILD_DIR_NO_ARCH)/.system-tested-and-compared
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   412
SYSTEM_TEST_32 =		$(BUILD_DIR_32)/.system-tested-and-compared
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   413
SYSTEM_TEST_64 =		$(BUILD_DIR_64)/.system-tested-and-compared
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   414
endif
4206
a24a2855075c 20974465 Two "gmake system-test" infrastructure fixes plus 3 components with system tests
Rich Burridge <rich.burridge@oracle.com>
parents: 4202
diff changeset
   415
SYSTEM_TEST_32_and_64 =	$(SYSTEM_TEST_32) $(SYSTEM_TEST_64)
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   416
ifeq ($(strip $(wildcard $(COMPONENT_TEST_RESULTS_DIR)/results-*.master)),)
4087
03c5ee3f6307 20860002 Userland should have *_NO_ARCH macros
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4069
diff changeset
   417
TEST_NO_ARCH =		$(BUILD_DIR_NO_ARCH)/.tested
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   418
TEST_32 =		$(BUILD_DIR_32)/.tested
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   419
TEST_64 =		$(BUILD_DIR_64)/.tested
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   420
else
4087
03c5ee3f6307 20860002 Userland should have *_NO_ARCH macros
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4069
diff changeset
   421
TEST_NO_ARCH =		$(BUILD_DIR_NO_ARCH)/.tested-and-compared
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   422
TEST_32 =		$(BUILD_DIR_32)/.tested-and-compared
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   423
TEST_64 =		$(BUILD_DIR_64)/.tested-and-compared
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   424
endif
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   425
TEST_32_and_64 =	$(TEST_32) $(TEST_64)
3701
2c4a1656e035 20191770 allow exclusion of components for "gmake test" at the top level
April Chin <april.chin@oracle.com>
parents: 3558
diff changeset
   426
2c4a1656e035 20191770 allow exclusion of components for "gmake test" at the top level
April Chin <april.chin@oracle.com>
parents: 3558
diff changeset
   427
# When running tests at the top level, skip those tests,
2c4a1656e035 20191770 allow exclusion of components for "gmake test" at the top level
April Chin <april.chin@oracle.com>
parents: 3558
diff changeset
   428
# by redefining the above TEST_* targets,
2c4a1656e035 20191770 allow exclusion of components for "gmake test" at the top level
April Chin <april.chin@oracle.com>
parents: 3558
diff changeset
   429
# when a component Makefile includes $(SKIP_TEST_AT_TOP_LEVEL).
2c4a1656e035 20191770 allow exclusion of components for "gmake test" at the top level
April Chin <april.chin@oracle.com>
parents: 3558
diff changeset
   430
# It's done in separate skip-test.mk file, to allow inclusion of 
2c4a1656e035 20191770 allow exclusion of components for "gmake test" at the top level
April Chin <april.chin@oracle.com>
parents: 3558
diff changeset
   431
# a multi-line ifdef statement which is evaluated at the component
2c4a1656e035 20191770 allow exclusion of components for "gmake test" at the top level
April Chin <april.chin@oracle.com>
parents: 3558
diff changeset
   432
# Makefile level
2c4a1656e035 20191770 allow exclusion of components for "gmake test" at the top level
April Chin <april.chin@oracle.com>
parents: 3558
diff changeset
   433
2c4a1656e035 20191770 allow exclusion of components for "gmake test" at the top level
April Chin <april.chin@oracle.com>
parents: 3558
diff changeset
   434
SKIP_TEST_AT_TOP_LEVEL = $(eval include $(WS_MAKE_RULES)/skip-test.mk)
2c4a1656e035 20191770 allow exclusion of components for "gmake test" at the top level
April Chin <april.chin@oracle.com>
parents: 3558
diff changeset
   435
4091
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   436
$(BUILD_DIR_NO_ARCH)/.system-tested:			BITS=32
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   437
$(BUILD_DIR_32)/.system-tested:				BITS=32
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   438
$(BUILD_DIR_64)/.system-tested:				BITS=64
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   439
$(BUILD_DIR_NO_ARCH)/.system-tested-and-compared:	BITS=32
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   440
$(BUILD_DIR_32)/.system-tested-and-compared:		BITS=32
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   441
$(BUILD_DIR_64)/.system-tested-and-compared:		BITS=64
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   442
$(BUILD_DIR_NO_ARCH)/.tested:				BITS=32
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   443
$(BUILD_DIR_32)/.tested:				BITS=32
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   444
$(BUILD_DIR_64)/.tested:				BITS=64
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   445
$(BUILD_DIR_NO_ARCH)/.tested-and-compared:		BITS=32
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   446
$(BUILD_DIR_32)/.tested-and-compared:			BITS=32
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   447
$(BUILD_DIR_64)/.tested-and-compared:			BITS=64
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   448
4206
a24a2855075c 20974465 Two "gmake system-test" infrastructure fixes plus 3 components with system tests
Rich Burridge <rich.burridge@oracle.com>
parents: 4202
diff changeset
   449
$(BUILD_DIR_NO_ARCH)/.system-tested:			$(BUILD_DIR_32)
a24a2855075c 20974465 Two "gmake system-test" infrastructure fixes plus 3 components with system tests
Rich Burridge <rich.burridge@oracle.com>
parents: 4202
diff changeset
   450
$(BUILD_DIR_32)/.system-tested:				$(BUILD_DIR_32)
a24a2855075c 20974465 Two "gmake system-test" infrastructure fixes plus 3 components with system tests
Rich Burridge <rich.burridge@oracle.com>
parents: 4202
diff changeset
   451
$(BUILD_DIR_64)/.system-tested:				$(BUILD_DIR_64)
a24a2855075c 20974465 Two "gmake system-test" infrastructure fixes plus 3 components with system tests
Rich Burridge <rich.burridge@oracle.com>
parents: 4202
diff changeset
   452
$(BUILD_DIR_NO_ARCH)/.system-tested-and-compared:	$(BUILD_DIR_32)
a24a2855075c 20974465 Two "gmake system-test" infrastructure fixes plus 3 components with system tests
Rich Burridge <rich.burridge@oracle.com>
parents: 4202
diff changeset
   453
$(BUILD_DIR_32)/.system-tested-and-compared:		$(BUILD_DIR_32)
a24a2855075c 20974465 Two "gmake system-test" infrastructure fixes plus 3 components with system tests
Rich Burridge <rich.burridge@oracle.com>
parents: 4202
diff changeset
   454
$(BUILD_DIR_64)/.system-tested-and-compared:		$(BUILD_DIR_64)
a24a2855075c 20974465 Two "gmake system-test" infrastructure fixes plus 3 components with system tests
Rich Burridge <rich.burridge@oracle.com>
parents: 4202
diff changeset
   455
a24a2855075c 20974465 Two "gmake system-test" infrastructure fixes plus 3 components with system tests
Rich Burridge <rich.burridge@oracle.com>
parents: 4202
diff changeset
   456
$(BUILD_DIR_32) $(BUILD_DIR_64):
a24a2855075c 20974465 Two "gmake system-test" infrastructure fixes plus 3 components with system tests
Rich Burridge <rich.burridge@oracle.com>
parents: 4202
diff changeset
   457
	$(MKDIR) $(@)
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   458
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
   459
# BUILD_TOOLS is the root of all tools not normally installed on the system.
943
8f25c7c6a9a4 7190080 s12 dev begins; create s11-update branch
John Beck <John.Beck@Oracle.COM>
parents: 827
diff changeset
   460
BUILD_TOOLS ?=	/ws/on12-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
   461
84267c1130e9 fix SPRO_ROOT usage to match ON and SFW and not be confusing
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 38
diff changeset
   462
SPRO_ROOT =	$(BUILD_TOOLS)/SUNWspro
4104
3dc5412c5fb1 20866394 userland should move to studio 12.4
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 4091
diff changeset
   463
SPRO_VROOT =	$(SPRO_ROOT)/solarisstudio12.4
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
   464
5885
b62c528d39c8 23205434 userland should move to parfait 1.8.0.1
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 5797
diff changeset
   465
PARFAIT_ROOT =	$(BUILD_TOOLS)/parfait/parfait-tools-1.8.0.1
1394
5f86498eee95 16991973 some things ain't parfait'n
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1352
diff changeset
   466
PARFAIT_TOOLS=	$(WS_TOOLS)/$(MACH)/parfait
774
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   467
PARFAIT= $(PARFAIT_ROOT)/bin/parfait
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   468
export PARFAIT_NATIVESUNCC=$(SPRO_VROOT)/bin/cc
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   469
export PARFAIT_NATIVESUNCXX=$(SPRO_VROOT)/bin/CC
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   470
export PARFAIT_NATIVEGCC=$(GCC_ROOT)/bin/gcc
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   471
export PARFAIT_NATIVEGXX=$(GCC_ROOT)/bin/g++
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   472
5788
ead8ecaa722e 22820866 Userland should build with GCC 5.3
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 5751
diff changeset
   473
GCC_ROOT =	/usr/gcc/5.3
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   474
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   475
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
   476
CXX.studio.32 =	$(SPRO_VROOT)/bin/CC
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   477
774
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   478
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   479
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
   480
CXX.studio.64 =	$(SPRO_VROOT)/bin/CC
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   481
151
f9e42a3f7095 7030982 hgk is delivered 444, breaks 'hg view'
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 148
diff changeset
   482
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
   483
CXX.gcc.32 =	$(GCC_ROOT)/bin/g++
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   484
151
f9e42a3f7095 7030982 hgk is delivered 444, breaks 'hg view'
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 148
diff changeset
   485
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
   486
CXX.gcc.64 =	$(GCC_ROOT)/bin/g++
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   487
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   488
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
   489
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
   490
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   491
LINT =		$(lint.$(BITS))
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   492
16
33aaaec59991 update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 12
diff changeset
   493
LD =		/usr/bin/ld
33aaaec59991 update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 12
diff changeset
   494
774
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   495
ifeq   ($(strip $(PARFAIT_BUILD)),yes)
1394
5f86498eee95 16991973 some things ain't parfait'n
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1352
diff changeset
   496
CC.studio.32 =	$(PARFAIT_TOOLS)/cc
5f86498eee95 16991973 some things ain't parfait'n
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1352
diff changeset
   497
CXX.studio.32 =	$(PARFAIT_TOOLS)/CC
5f86498eee95 16991973 some things ain't parfait'n
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1352
diff changeset
   498
CC.studio.64 =	$(PARFAIT_TOOLS)/cc
5f86498eee95 16991973 some things ain't parfait'n
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1352
diff changeset
   499
CXX.studio.64 =	$(PARFAIT_TOOLS)/CC
5f86498eee95 16991973 some things ain't parfait'n
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1352
diff changeset
   500
CC.gcc.32 =	$(PARFAIT_TOOLS)/gcc
5f86498eee95 16991973 some things ain't parfait'n
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1352
diff changeset
   501
CXX.gcc.32 =	$(PARFAIT_TOOLS)/g++
5f86498eee95 16991973 some things ain't parfait'n
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1352
diff changeset
   502
CC.gcc.64 =	$(PARFAIT_TOOLS)/gcc
5f86498eee95 16991973 some things ain't parfait'n
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1352
diff changeset
   503
CXX.gcc.64 =	$(PARFAIT_TOOLS)/g++
5f86498eee95 16991973 some things ain't parfait'n
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1352
diff changeset
   504
LD =		$(PARFAIT_TOOLS)/ld
774
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   505
endif
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   506
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   507
CC =		$(CC.$(COMPILER).$(BITS))
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   508
CXX =		$(CXX.$(COMPILER).$(BITS))
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   509
5477
5eabbdf042bc PSARC/2015/113 Add Ruby 2.1 and EOF and Remove Ruby 1.9
April Chin <april.chin@oracle.com>
parents: 5400
diff changeset
   510
RUBY_VERSION =	2.1
5eabbdf042bc PSARC/2015/113 Add Ruby 2.1 and EOF and Remove Ruby 1.9
April Chin <april.chin@oracle.com>
parents: 5400
diff changeset
   511
RUBY_LIB_VERSION =	2.1.0
5177
eb02f7b13b81 21234701 graphviz should no longer deliver Ruby 1.9 bindings
April Chin <april.chin@oracle.com>
parents: 5174
diff changeset
   512
RUBY.2.1 =	/usr/ruby/2.1/bin/ruby
1409
9db4ba32e740 PSARC/2013/218 Puppet Phase 2
Drew Fisher <drew.fisher@oracle.com>
parents: 1394
diff changeset
   513
RUBY =		$(RUBY.$(RUBY_VERSION))
2054
5f403d9bcaad PSARC/2014/275 Hiera 1.3.4
Kristina Tripp <Kristina.Tripp@oracle.com>
parents: 2032
diff changeset
   514
# Use the ruby lib versions to represent the RUBY_VERSIONS that
5f403d9bcaad PSARC/2014/275 Hiera 1.3.4
Kristina Tripp <Kristina.Tripp@oracle.com>
parents: 2032
diff changeset
   515
# need to get built.  This is done because during package transformations
5f403d9bcaad PSARC/2014/275 Hiera 1.3.4
Kristina Tripp <Kristina.Tripp@oracle.com>
parents: 2032
diff changeset
   516
# both the ruby version and the ruby library version are needed. 
5f403d9bcaad PSARC/2014/275 Hiera 1.3.4
Kristina Tripp <Kristina.Tripp@oracle.com>
parents: 2032
diff changeset
   517
RUBY_VERSIONS = $(RUBY_LIB_VERSION)
774
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 766
diff changeset
   518
2010
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1907
diff changeset
   519
PYTHON.2.7.VENDOR_PACKAGES.32 = /usr/lib/python2.7/vendor-packages
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1907
diff changeset
   520
PYTHON.2.7.VENDOR_PACKAGES.64 = /usr/lib/python2.7/vendor-packages/64
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1907
diff changeset
   521
PYTHON.2.7.VENDOR_PACKAGES = $(PYTHON.2.7.VENDOR_PACKAGES.$(BITS))
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1907
diff changeset
   522
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1907
diff changeset
   523
PYTHON.3.4.VENDOR_PACKAGES.64 = /usr/lib/python3.4/vendor-packages/64
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1907
diff changeset
   524
PYTHON.3.4.VENDOR_PACKAGES = $(PYTHON.3.4.VENDOR_PACKAGES.$(BITS))
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1907
diff changeset
   525
4912
0b79e9575718 PSARC 2015/414 Python 3.5
John Beck <John.Beck@Oracle.COM>
parents: 4791
diff changeset
   526
PYTHON.3.5.VENDOR_PACKAGES.64 = /usr/lib/python3.5/vendor-packages
0b79e9575718 PSARC 2015/414 Python 3.5
John Beck <John.Beck@Oracle.COM>
parents: 4791
diff changeset
   527
PYTHON.3.5.VENDOR_PACKAGES = $(PYTHON.3.5.VENDOR_PACKAGES.$(BITS))
0b79e9575718 PSARC 2015/414 Python 3.5
John Beck <John.Beck@Oracle.COM>
parents: 4791
diff changeset
   528
148
33ca3897ae25 7029701 libxml2 should move to userland
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 146
diff changeset
   529
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
   530
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
   531
PYTHON_VENDOR_PACKAGES = $(PYTHON_VENDOR_PACKAGES.$(BITS))
33ca3897ae25 7029701 libxml2 should move to userland
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 146
diff changeset
   532
4091
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   533
PYTHON.2.7.TEST = /usr/lib/python2.7/test
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   534
PYTHON.3.4.TEST = /usr/lib/python3.4/test
4912
0b79e9575718 PSARC 2015/414 Python 3.5
John Beck <John.Beck@Oracle.COM>
parents: 4791
diff changeset
   535
PYTHON.3.5.TEST = /usr/lib/python3.5/test
4091
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   536
2010
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1907
diff changeset
   537
USRBIN.32 =	/usr/bin
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1907
diff changeset
   538
USRBIN.64 =	/usr/bin/$(MACH64)
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1907
diff changeset
   539
USRBIN =	$(USRBIN.$(BITS))
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   540
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   541
USRLIB.32 =	$(USRLIBDIR)
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   542
USRLIB.64 =	$(USRLIBDIR64)
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   543
USRLIB =	$(USRLIB.$(BITS))
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   544
2010
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1907
diff changeset
   545
PYTHON.2.7.32 =	$(USRBIN.32)/python2.7
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1907
diff changeset
   546
PYTHON.2.7.64 =	$(USRBIN.64)/python2.7
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1907
diff changeset
   547
PYTHON.2.7 =	$(USRBIN)/python2.7
706
6e61f0012046 7108059 Userland should have python2.7 version of its python modules
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 591
diff changeset
   548
1907
446472de62e9 PSARC 2014/151 Python 3.4
John Beck <John.Beck@Oracle.COM>
parents: 1836
diff changeset
   549
# Although we build Python 3 64-bit only, the BUILD_NO_ARCH macro is written
2060
a9ad5cd0ec29 19492342 Python 3.4 should be built --with-pymalloc
John Beck <John.Beck@Oracle.COM>
parents: 2054
diff changeset
   550
# in such a way that we still need the .32 macro below.  And since we build
a9ad5cd0ec29 19492342 Python 3.4 should be built --with-pymalloc
John Beck <John.Beck@Oracle.COM>
parents: 2054
diff changeset
   551
# 64-bit only, we stick it directly in usr/bin (i.e., the 32-bit path) rather
a9ad5cd0ec29 19492342 Python 3.4 should be built --with-pymalloc
John Beck <John.Beck@Oracle.COM>
parents: 2054
diff changeset
   552
# than the 64-bit path.
2010
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1907
diff changeset
   553
PYTHON.3.4.32 =	$(USRBIN.32)/python3.4
2060
a9ad5cd0ec29 19492342 Python 3.4 should be built --with-pymalloc
John Beck <John.Beck@Oracle.COM>
parents: 2054
diff changeset
   554
PYTHON.3.4.64 =	$(USRBIN.32)/python3.4
4091
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 4087
diff changeset
   555
PYTHON.3.4 =	$(USRBIN.32)/python3.4
1907
446472de62e9 PSARC 2014/151 Python 3.4
John Beck <John.Beck@Oracle.COM>
parents: 1836
diff changeset
   556
4912
0b79e9575718 PSARC 2015/414 Python 3.5
John Beck <John.Beck@Oracle.COM>
parents: 4791
diff changeset
   557
PYTHON.3.5.32 =	$(USRBIN.32)/python3.5
0b79e9575718 PSARC 2015/414 Python 3.5
John Beck <John.Beck@Oracle.COM>
parents: 4791
diff changeset
   558
PYTHON.3.5.64 =	$(USRBIN.32)/python3.5
0b79e9575718 PSARC 2015/414 Python 3.5
John Beck <John.Beck@Oracle.COM>
parents: 4791
diff changeset
   559
PYTHON.3.5 =	$(USRBIN.32)/python3.5
0b79e9575718 PSARC 2015/414 Python 3.5
John Beck <John.Beck@Oracle.COM>
parents: 4791
diff changeset
   560
978
f7d58c85fe8d 7167209 Mistakes in make-rules/shared-macros.mk
Rich Burridge <rich.burridge@oracle.com>
parents: 975
diff changeset
   561
PYTHON.32 =	$(PYTHON.$(PYTHON_VERSION).32)
f7d58c85fe8d 7167209 Mistakes in make-rules/shared-macros.mk
Rich Burridge <rich.burridge@oracle.com>
parents: 975
diff changeset
   562
PYTHON.64 =	$(PYTHON.$(PYTHON_VERSION).64)
148
33ca3897ae25 7029701 libxml2 should move to userland
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 146
diff changeset
   563
PYTHON =	$(PYTHON.$(PYTHON_VERSION).$(BITS))
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   564
146
8e22ba234817 7027466 Move nmap to Userland
Srinivasa Sarva <srinivasa.sarva@oracle.com>
parents: 145
diff changeset
   565
# 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
   566
# 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
   567
# belong in vendor-packages.
8e22ba234817 7027466 Move nmap to Userland
Srinivasa Sarva <srinivasa.sarva@oracle.com>
parents: 145
diff changeset
   568
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
   569
PYTHON_DATA= $(PYTHON_LIB)
146
8e22ba234817 7027466 Move nmap to Userland
Srinivasa Sarva <srinivasa.sarva@oracle.com>
parents: 145
diff changeset
   570
3959
0de894549bd0 20708433 userland should build with java 8
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 3951
diff changeset
   571
JAVA8_HOME =	/usr/jdk/instances/jdk1.8.0
0de894549bd0 20708433 userland should build with java 8
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 3951
diff changeset
   572
JAVA_HOME = $(JAVA8_HOME)
116
ae6a90899b42 7022452 move ant to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents: 109
diff changeset
   573
260
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   574
# 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
   575
# Not necessarily the system's default version, i.e. /usr/bin/perl
5638
b88b6c00208e 22970244 userland should build with perl 5.22 as the default
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5577
diff changeset
   576
PERL_VERSION ?= 5.22
5797
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   577
PERL_VERSION_NODOT = $(subst .,,$(PERL_VERSION))
260
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   578
5797
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   579
# Used for versionless perl packages.  Processed by ips.mk to stamp out
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   580
# multiple packages for each version of perl listed here.  Used by
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   581
# perl_modules/* but also used for those components that deliver a perl
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   582
# package like graphviz and openscap.
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   583
PERL_VERSIONS = 5.22
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   584
5577
09a6352d52ad 22897315 add perl modules support for perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5529
diff changeset
   585
PERL.5.22 =     /usr/perl5/5.22/bin/perl
260
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   586
5797
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   587
# Use these in a component's Makefile for building and packaging with the
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   588
# BUILD's default perl and the package it comes from.
260
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   589
PERL =          $(PERL.$(PERL_VERSION))
5400
1199f8e91f50 22592978 Move xscreensaver to the Userland gate
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents: 5177
diff changeset
   590
PERL_PKG =	$(PERL_VERSION:5.%=runtime/perl-5%)
127
3e3c266b3a81 7013705 userland build needs local tarball caching
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 120
diff changeset
   591
5797
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   592
# PERL_ARCH is perl's architecture string.  Use in ips manifests.
1056
b2ec61db2a04 15845939 versionless python manifests
Danek Duvall <danek.duvall@oracle.com>
parents: 1053
diff changeset
   593
PERL_ARCH :=	$(shell $(PERL) -e 'use Config; print $$Config{archname}')
1152
96d423311191 16292975 perl_modules should build and deliver perl 5.16 versions
Craig Mohrman <craig.mohrman@oracle.com>
parents: 1138
diff changeset
   594
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
   595
# 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
   596
# 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
   597
# 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
   598
# the studio compiler.
1056
b2ec61db2a04 15845939 versionless python manifests
Danek Duvall <danek.duvall@oracle.com>
parents: 1053
diff changeset
   599
#PERL_CC :=	$(shell $(PERL) -e 'use Config; print $$Config{cc}')
b2ec61db2a04 15845939 versionless python manifests
Danek Duvall <danek.duvall@oracle.com>
parents: 1053
diff changeset
   600
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
   601
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   602
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
   603
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
   604
5797
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   605
# If the component has perl scripts then the first line should probably
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   606
# point at the userland default build perl so as not to be influenced
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   607
# by the ips perl mediator.
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   608
# In the component's Makefile define PERL_SCRIPTS with a list of files
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   609
# to be editted.
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   610
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   611
# Edit the leading #!/usr/bin/perl line in perl scripts to use the
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   612
# BUILD's $(PERL).
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   613
PERL_SCRIPT_SHEBANG_FIX_FUNC = \
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   614
	$(GSED) -i \
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   615
		-e '1s@/usr/bin/perl@$(PERL)@' \
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   616
		-e '1s@/usr/perl5/bin/perl@$(PERL)@' \
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   617
		-e '1s@/usr/bin/env\ perl@$(PERL)@' $(1);
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   618
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   619
# PERL_SCRIPTS is a list of files from the calling Makefile.
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   620
PERL_SCRIPTS_PROCESS= \
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   621
	$(foreach s,$(PERL_SCRIPTS), \
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   622
	        $(call PERL_SCRIPT_SHEBANG_FIX_FUNC,$(s)))
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   623
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   624
# Finally if PERL_SCRIPTS is defined in a Makefile then process them here.
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   625
# If multiple installs in the component then clear
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   626
# COMPONENT_POST_INSTALL_ACTION =
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   627
# and re-add $(PERL_SCRIPTS_PROCESS)
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   628
COMPONENT_POST_INSTALL_ACTION += $(PERL_SCRIPTS_PROCESS)
432ac76de3b0 23078956 adjust the remainder of the userland components to use perl 5.22
Craig Mohrman <craig.mohrman@oracle.com>
parents: 5788
diff changeset
   629
1189
c3e41d3c09cf 15998664 berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 1188
diff changeset
   630
# This is the default BUILD version of tcl
c3e41d3c09cf 15998664 berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 1188
diff changeset
   631
# Not necessarily the system's default version, i.e. /usr/bin/tclsh
c3e41d3c09cf 15998664 berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 1188
diff changeset
   632
TCL_VERSION =  8.5
c3e41d3c09cf 15998664 berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 1188
diff changeset
   633
TCLSH.8.5.i386.32 =	/usr/bin/i86/tclsh8.5
c3e41d3c09cf 15998664 berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 1188
diff changeset
   634
TCLSH.8.5.i386.64 =	/usr/bin/amd64/tclsh8.5
c3e41d3c09cf 15998664 berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 1188
diff changeset
   635
TCLSH.8.5.sparc.32 =	/usr/bin/sparcv7/tclsh8.5
c3e41d3c09cf 15998664 berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 1188
diff changeset
   636
TCLSH.8.5.sparc.64 =	/usr/bin/sparcv9/tclsh8.5
c3e41d3c09cf 15998664 berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 1188
diff changeset
   637
TCLSH =		$(TCLSH.$(TCL_VERSION).$(MACH).$(BITS))
c3e41d3c09cf 15998664 berkeleydb doesn't build with jdk 1.7
doug leavitt <doug.leavitt@oracle.com>
parents: 1188
diff changeset
   638
260
cc1837bbe69e 7047520 move perl-xml-parser and perl-xml-simple to userland consolidation
Craig Mohrman <craig.mohrman@oracle.com>
parents: 252
diff changeset
   639
CCSMAKE =	/usr/ccs/bin/make
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   640
DOXYGEN =	/usr/bin/doxygen
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   641
ELFEDIT =	/usr/bin/elfedit
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   642
GMAKE =		/usr/gnu/bin/make
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   643
GPATCH =	/usr/gnu/bin/patch
82
2f155565730b 7017244 move ggrep to userland (fix mismerge)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 80
diff changeset
   644
PATCH_LEVEL =	1
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   645
GPATCH_BACKUP =	--backup --version-control=numbered
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   646
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
   647
GSED =		/usr/gnu/bin/sed
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   648
GDIFF =		/usr/gnu/bin/diff
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   649
GSORT =		/usr/gnu/bin/sort
4791
fb9a6b5ef98f 21481648 update GNU Emacs to 24.5
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents: 4760
diff changeset
   650
GUNZIP =	/usr/bin/gunzip
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   651
105
da9e87a40aec 7021891 repo created by build should be v4, not v3
Danek Duvall <danek.duvall@oracle.com>
parents: 102
diff changeset
   652
PKGREPO =	/usr/bin/pkgrepo
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   653
PKGSEND =	/usr/bin/pkgsend
5751
30cf2c0cfebc 23049888 history Makefile resets PKGLINT and friends
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 5682
diff changeset
   654
PKGMOGRIFY =	/usr/bin/pkgmogrify
1188
d563dccb5adb 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1165
diff changeset
   655
ifeq   ($(strip $(PKGLINT_COMPONENT)),)
70
c610cf9d3d5d 7016863 userland build fails in parallel
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 64
diff changeset
   656
PKGLINT =	/usr/bin/pkglint
1188
d563dccb5adb 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1165
diff changeset
   657
else
d563dccb5adb 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1165
diff changeset
   658
PKGLINT =	${WS_TOOLS}/pkglint
d563dccb5adb 16404201 serialize pkglinting of components
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1165
diff changeset
   659
endif
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   660
160
4eabca2bceee 7032426 hal-cups-utils needs to move to userland
Vladimir Marek <Vladimir.Marek@oracle.com>
parents: 156
diff changeset
   661
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
   662
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
   663
AUTORECONF = 	/usr/bin/autoreconf
4eabca2bceee 7032426 hal-cups-utils needs to move to userland
Vladimir Marek <Vladimir.Marek@oracle.com>
parents: 156
diff changeset
   664
165
111c46cade93 7018146 move hplip to userland
sonam gupta - Sun Microsystems - Bangalore India <Sonam.Gupta@Sun.COM>
parents: 160
diff changeset
   665
KSH93 =         /usr/bin/ksh93
2
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   666
TOUCH =		/usr/bin/touch
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   667
MKDIR =		/bin/mkdir -p
125cd5d2cd9e include gmake example
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents:
diff changeset
   668
RM =		/bin/rm -f
7
d42300cb8715 add license/copyright info for ips generation
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 6
diff changeset
   669
CP =		/bin/cp -f
142
6f1cb90a0ef3 7026996 move tomcat to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents: 138
diff changeset
   670
MV =		/bin/mv -f
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   671
LN =		/bin/ln
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2204
diff changeset
   672
CAT =		/bin/cat
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   673
SYMLINK =	/bin/ln -s
16
33aaaec59991 update _DATE/_TIME compiler chatter reduction bits.
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 12
diff changeset
   674
ENV =		/usr/bin/env
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   675
FIND =		/usr/bin/find
43
9f5ebe30300c switch to CBE sunstudio12.1 compilers
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 40
diff changeset
   676
INSTALL =	/usr/bin/ginstall
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
   677
GNU_GREP =	/usr/gnu/bin/grep
138
089c2065503f 7016734 move pz7ip from sfw to userland
Danek Duvall <danek.duvall@oracle.com>
parents: 131
diff changeset
   678
CHMOD =		/usr/bin/chmod
224
b0ca638fab1b 7017965 Integrate BIND in to userland consolidation
Stacey Marshall <Stacey.Marshall@Oracle.COM>
parents: 220
diff changeset
   679
NAWK =		/usr/bin/nawk
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   680
TAR =		/usr/bin/tar
224
b0ca638fab1b 7017965 Integrate BIND in to userland consolidation
Stacey Marshall <Stacey.Marshall@Oracle.COM>
parents: 220
diff changeset
   681
TEE =		/usr/bin/tee
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   682
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   683
INS.dir=        $(INSTALL) -d $@
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   684
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
   685
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   686
#
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   687
# To simplify adding directories to PKG_CONFIG_PATH, since += adds spaces, not :
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   688
# use PKG_CONFIG_PATHS += ... and the following will convert to the : form
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   689
#
206
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   690
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
   691
PKG_CONFIG_PATH.64 = /usr/lib/$(MACH64)/pkgconfig
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   692
PKG_CONFIG_DEFAULT = $(PKG_CONFIG_PATH.$(BITS))
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   693
PKG_CONFIG_PATH    = $(subst $(space),:,$(strip \
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   694
			$(PKG_CONFIG_PATHS) $(PKG_CONFIG_DEFAULT)))
206
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   695
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   696
#
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   697
# 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
   698
# 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
   699
# 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
   700
# similiar.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   701
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   702
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   703
# 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
   704
# What other side-effects are there?
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   705
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
   706
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   707
# 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
   708
# so.  Use CPP_LARGEFILES and not the .32/.64 variety directly
1056
b2ec61db2a04 15845939 versionless python manifests
Danek Duvall <danek.duvall@oracle.com>
parents: 1053
diff changeset
   709
CPP_LARGEFILES.32 :=	$(shell getconf LFS_CFLAGS)
b2ec61db2a04 15845939 versionless python manifests
Danek Duvall <danek.duvall@oracle.com>
parents: 1053
diff changeset
   710
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
   711
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
   712
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   713
# 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
   714
# 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
   715
# we currently do not support.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   716
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
   717
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   718
# 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
   719
# 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
   720
# 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
   721
# 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
   722
# CFLAGS instead of using this directly
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   723
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
   724
200
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   725
# 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
   726
# _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
   727
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
   728
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   729
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   730
# 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
   731
# 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
   732
# 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
   733
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   734
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   735
# Generate 32/64 bit objects
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   736
CC_BITS =	-m$(BITS)
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   737
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   738
# 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
   739
# and not the .arch.bits variety directly.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   740
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
   741
studio_XBITS.sparc.64 =	
7fa97e814929 7035978 parfait support for userland bits (fix sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 774
diff changeset
   742
ifneq   ($(strip $(PARFAIT_BUILD)),yes)
7fa97e814929 7035978 parfait support for userland bits (fix sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 774
diff changeset
   743
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
   744
endif
7fa97e814929 7035978 parfait support for userland bits (fix sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 774
diff changeset
   745
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
   746
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
   747
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
   748
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
   749
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   750
# 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
   751
# standard library semantics of routines that appear in	both the 1990 and
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   752
# 1999 C standard. To use set studio_C99MODE=$(studio_C99_ENABLE) in your
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   753
# component Makefile.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   754
studio_C99_ENABLE =		-xc99=all
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   755
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   756
# 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
   757
# standard library semantics of routines that appeared in both the 1990	and
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   758
# 1999 C standard.  To use set studio_C99MODE=$(studio_C99_DISABLE) in your
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   759
# component Makefile.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   760
studio_C99_DISABLE =	-xc99=none
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   761
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   762
# 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
   763
studio_C99MODE =
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   764
200
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   765
# 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
   766
# 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
   767
studio_cplusplus_C99_ENABLE = 	-xlang=c99
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   768
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   769
# Turn it off.
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   770
studio_cplusplus_C99_DISABLE =
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   771
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   772
# 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
   773
studio_cplusplus_C99MODE = 
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   774
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   775
# 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
   776
# statements.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   777
studio_FEATURES_EXTENSIONS =	-features=extensions
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   778
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   779
# Control the Studio optimization level.
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   780
studio_OPT.sparc.32 ?=	-xO4
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   781
studio_OPT.sparc.64 ?=	-xO4
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   782
studio_OPT.i386.32 ?=	-xO4
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   783
studio_OPT.i386.64 ?=	-xO4
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   784
studio_OPT ?=		$(studio_OPT.$(MACH).$(BITS))
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   785
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   786
# 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
   787
studio_PIC = 	-KPIC -DPIC
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   788
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   789
# 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
   790
# 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
   791
# (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
   792
# 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
   793
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
   794
studio_IROPTS =		$(studio_IROPTS.$(MACH))
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   795
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   796
# 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
   797
# 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
   798
# 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
   799
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   800
# 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
   801
# 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
   802
# 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
   803
# 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
   804
# CC would use.
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   805
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
   806
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
   807
studio_XREGS =		$(studio_XREGS.$(MACH))
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   808
459
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   809
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
   810
gcc_XREGS.i386 =
c7579764bc73 7071286 workaround 7030022 (-xregs=no%appl not working on sparc)
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 454
diff changeset
   811
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
   812
109
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   813
# 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
   814
# 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
   815
# default.
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   816
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
   817
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
   818
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
   819
07cc6a1a08ad 7020772 userland build should provide more macros for common flags (add missing)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 108
diff changeset
   820
# 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
   821
# 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
   822
# 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
   823
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
   824
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   825
# See CPP_XPG6MODE comment above.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   826
studio_XPG6MODE =	$(studio_C99MODE) $(CPP_XPG6MODE)
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   827
XPG6MODE =		$(studio_XPG6MODE)
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   828
200
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   829
# 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
   830
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
   831
XPG5MODE =		$(studio_XPG5MODE)
936900594dba 7031770 libmng needs to move to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 186
diff changeset
   832
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   833
# 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
   834
# 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
   835
# 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
   836
# 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
   837
# configure environment.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   838
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
   839
			$(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
   840
			$(studio_MT)
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   841
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   842
# Default Studio C++ compiler flags.  Add the required feature to your Makefile
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   843
# with CXXFLAGS += $(FEATURE_MACRO) and add to the component build with
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   844
# CONFIGURE_OPTIONS += CXXFLAGS="$(CXXFLAGS)" or similiar.  In most cases, it
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   845
# should not be necessary to add CXXFLAGS to any environment other than the
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   846
# configure environment.
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   847
CXXFLAGS.studio +=	$(studio_OPT) $(studio_XBITS) $(studio_XREGS) \
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   848
			$(studio_IROPTS) $(studio_ALIGN)
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   849
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   850
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   851
# 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
   852
# 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
   853
# 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
   854
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   855
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   856
# GCC Compiler optimization flag
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   857
gcc_OPT.sparc.32 ?=	-O3
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   858
gcc_OPT.sparc.64 ?=	-O3
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   859
gcc_OPT.i386.32 ?=	-O3
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   860
gcc_OPT.i386.64 ?=	-O3
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   861
gcc_OPT ?=		$(gcc_OPT.$(MACH).$(BITS))
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   862
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   863
# 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
   864
gcc_PIC =	-fPIC -DPIC
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   865
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   866
# Generic macro for PIC code generation.  Use this macro instead of the
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   867
# compiler-specific variant.
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   868
CC_PIC =	$($(COMPILER)_PIC)
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   869
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   870
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   871
# 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
   872
# 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
   873
# 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
   874
# 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
   875
# configure environment.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   876
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
   877
CFLAGS.gcc +=	$(gcc_XREGS)
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   878
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   879
# Default GNU C++ compiler flags.  Add the required feature to your Makefile
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   880
# with CXXFLAGS += $(FEATURE_MACRO) and add to the component build with
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   881
# CONFIGURE_OPTIONS += CXXFLAGS="$(CXXFLAGS)" or similiar.  In most cases, it
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   882
# should not be necessary to add CXXFLAGS to any environment other than the
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   883
# configure environment.
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   884
CXXFLAGS.gcc +=		$(gcc_OPT)
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   885
CXXFLAGS.gcc +=		$(gcc_XREGS)
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   886
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   887
# Build 32 or 64 bit objects.
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   888
CFLAGS +=	$(CC_BITS)
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   889
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   890
# Add compiler-specific 'default' features
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   891
CFLAGS +=	$(CFLAGS.$(COMPILER))
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   892
CFLAGS +=	$(CFLAGS.$(COMPILER).$(BITS))
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   893
CFLAGS +=	$(CFLAGS.$(COMPILER).$(MACH))
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   894
CFLAGS +=	$(CFLAGS.$(COMPILER).$(MACH).$(BITS))
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   895
206
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   896
# 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
   897
# 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
   898
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
   899
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   900
# 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
   901
# (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
   902
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
   903
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   904
# 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
   905
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
   906
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   907
# 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
   908
# 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
   909
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
   910
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   911
# 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
   912
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
   913
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   914
# 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
   915
# 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
   916
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
   917
219
22d9e175d379 7041521 GNU MP to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 207
diff changeset
   918
# 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
   919
CXXFLAGS +=	$(CC_BITS)
22d9e175d379 7041521 GNU MP to Userland
Stefan Teleman <stefan.teleman@oracle.com>
parents: 207
diff changeset
   920
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   921
# Add compiler-specific 'default' features
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   922
CXXFLAGS +=	$(CXXFLAGS.$(COMPILER))
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   923
CXXFLAGS +=	$(CXXFLAGS.$(COMPILER).$(BITS))
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   924
CXXFLAGS +=	$(CXXFLAGS.$(COMPILER).$(MACH))
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   925
CXXFLAGS +=	$(CXXFLAGS.$(COMPILER).$(MACH).$(BITS))
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   926
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   927
# Add mach-specific 'default' features
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   928
CXXFLAGS +=	$(CXXFLAGS.$(MACH))
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5066
diff changeset
   929
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   930
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   931
# 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
   932
# 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
   933
# 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
   934
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   935
206
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
   936
# 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
   937
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
   938
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   939
# Note that spaces are not used after the '-z' below so that these macros can
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   940
# be used in arguments to the compiler of the form -Wl,$(LD_Z_*).
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   941
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   942
# 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
   943
# get linker guidance here.
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   944
LD_Z_REDLOCSYM =	-zredlocsym
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   945
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   946
# 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
   947
# 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
   948
# 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
   949
# only be required if the component's native build is horribly broken.
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   950
LD_Z_RESCAN_NOW =	-zrescan-now
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   951
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   952
LD_Z_TEXT =		-ztext
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   953
766
58402b94c13b 7159254 Userland adjustments to ease Studio 12.3 transition
Rich Burridge <rich.burridge@oracle.com>
parents: 706
diff changeset
   954
# 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
   955
LD_DEF_LIBS +=		-lc
58402b94c13b 7159254 Userland adjustments to ease Studio 12.3 transition
Rich Burridge <rich.burridge@oracle.com>
parents: 706
diff changeset
   956
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   957
# make sure all symbols are defined.
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   958
LD_Z_DEFS =		-zdefs
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   959
170
14cadb780400 7033275 userland should default vendor to 'Oracle Corporation'
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 166
diff changeset
   960
# eliminate unreferenced dynamic dependencies
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   961
LD_Z_IGNORE =		-zignore
170
14cadb780400 7033275 userland should default vendor to 'Oracle Corporation'
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 166
diff changeset
   962
1512
f57514e19ede 17596443 nm -p output change breaks userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1505
diff changeset
   963
# eliminate comments
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   964
LD_Z_STRIP_CLASS =	-zstrip-class=comment
1512
f57514e19ede 17596443 nm -p output change breaks userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1505
diff changeset
   965
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   966
# use direct binding
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   967
LD_B_DIRECT =		-Bdirect
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 59
diff changeset
   968
1138
6e1f85fa0151 15801420 SUNBT7180909 tag the Userland consolidation binaries for ASLR
April Chin <april.chin@oracle.com>
parents: 1124
diff changeset
   969
# use generic macro names for enabling/disabling ASLR
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   970
ASLR_ENABLE = 		-zaslr=enable
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   971
ASLR_DISABLE = 		-zaslr=disable
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   972
ASLR_NOT_APPLICABLE = 	-zaslr=disable
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   973
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   974
# Disable ASLR by default unless target build is NO_ARCH.
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   975
ifeq ($(strip $(BUILD_BITS)),NO_ARCH)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   976
ASLR_MODE= $(ASLR_NOT_APPLICABLE)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   977
else
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   978
ASLR_MODE= $(ASLR_DISABLE)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   979
endif
1138
6e1f85fa0151 15801420 SUNBT7180909 tag the Userland consolidation binaries for ASLR
April Chin <april.chin@oracle.com>
parents: 1124
diff changeset
   980
6e1f85fa0151 15801420 SUNBT7180909 tag the Userland consolidation binaries for ASLR
April Chin <april.chin@oracle.com>
parents: 1124
diff changeset
   981
# by default, turn off Address Space Layout Randomization for ELF executables;
6e1f85fa0151 15801420 SUNBT7180909 tag the Userland consolidation binaries for ASLR
April Chin <april.chin@oracle.com>
parents: 1124
diff changeset
   982
# to explicitly enable ASLR, set ASLR_MODE = $(ASLR_ENABLE)
6e1f85fa0151 15801420 SUNBT7180909 tag the Userland consolidation binaries for ASLR
April Chin <april.chin@oracle.com>
parents: 1124
diff changeset
   983
# in that component's Makefile
6e1f85fa0151 15801420 SUNBT7180909 tag the Userland consolidation binaries for ASLR
April Chin <april.chin@oracle.com>
parents: 1124
diff changeset
   984
LD_Z_ASLR =		$(ASLR_MODE)
6e1f85fa0151 15801420 SUNBT7180909 tag the Userland consolidation binaries for ASLR
April Chin <april.chin@oracle.com>
parents: 1124
diff changeset
   985
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   986
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   987
# 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
   988
# 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
   989
# '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
   990
# 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
   991
#
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   992
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   993
# 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
   994
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
   995
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
   996
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
   997
# Create a non-executable bss segment when linking.
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   998
LD_MAP_NOEXBSS.i386 =	-M /usr/lib/ld/map.noexbss
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
   999
LD_MAP_NOEXBSS.sparc =	-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
  1000
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
  1001
# 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
  1002
# 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
  1003
# see mapfile comments for more information
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
  1004
LD_MAP_NOEXDATA.i386 =	-M /usr/lib/ld/map.noexdata
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
  1005
LD_MAP_NOEXDATA.sparc =	$(LD_MAP_NOEXBSS.$(MACH))
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
  1006
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
  1007
# Page alignment
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
  1008
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
  1009
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
  1010
# 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
  1011
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
  1012
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 94
diff changeset
  1013
# 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
  1014
# 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
  1015
# component build.
176
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents: 172
diff changeset
  1016
LD_OPTIONS +=	$(LD_MAP_NOEXSTK.$(MACH)) $(LD_MAP_NOEXDATA.$(MACH)) \
1512
f57514e19ede 17596443 nm -p output change breaks userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1505
diff changeset
  1017
		$(LD_MAP_PAGEALIGN) $(LD_B_DIRECT) $(LD_Z_IGNORE) \
f57514e19ede 17596443 nm -p output change breaks userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 1505
diff changeset
  1018
		$(LD_Z_STRIP_CLASS)
64
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
  1019
1138
6e1f85fa0151 15801420 SUNBT7180909 tag the Userland consolidation binaries for ASLR
April Chin <april.chin@oracle.com>
parents: 1124
diff changeset
  1020
# only used on executables
6e1f85fa0151 15801420 SUNBT7180909 tag the Userland consolidation binaries for ASLR
April Chin <april.chin@oracle.com>
parents: 1124
diff changeset
  1021
LD_EXEC_OPTIONS = $(LD_Z_ASLR)
6e1f85fa0151 15801420 SUNBT7180909 tag the Userland consolidation binaries for ASLR
April Chin <april.chin@oracle.com>
parents: 1124
diff changeset
  1022
62
519e6e3788ce 7013265 userland could use a tool to aid in SUNW package generation
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 61
diff changeset
  1023
# 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
  1024
# 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
  1025
COMPONENT_BUILD_ENV= \
1138
6e1f85fa0151 15801420 SUNBT7180909 tag the Userland consolidation binaries for ASLR
April Chin <april.chin@oracle.com>
parents: 1124
diff changeset
  1026
    LD_OPTIONS="$(LD_OPTIONS)" \
6e1f85fa0151 15801420 SUNBT7180909 tag the Userland consolidation binaries for ASLR
April Chin <april.chin@oracle.com>
parents: 1124
diff changeset
  1027
    LD_EXEC_OPTIONS="$(LD_EXEC_OPTIONS)"
64
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
  1028
COMPONENT_INSTALL_ENV= \
1138
6e1f85fa0151 15801420 SUNBT7180909 tag the Userland consolidation binaries for ASLR
April Chin <april.chin@oracle.com>
parents: 1124
diff changeset
  1029
    LD_OPTIONS="$(LD_OPTIONS)" \
6e1f85fa0151 15801420 SUNBT7180909 tag the Userland consolidation binaries for ASLR
April Chin <april.chin@oracle.com>
parents: 1124
diff changeset
  1030
    LD_EXEC_OPTIONS="$(LD_EXEC_OPTIONS)"
64
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
  1031
a4b12971cf99 7014330 has userland lost its mapfile mind?
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 62
diff changeset
  1032
# 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
  1033
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
  1034
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
  1035
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
  1036
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
  1037
206
a4474882bf60 7010355 python needs to be packaged to separate out non-core dependencies
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 200
diff changeset
  1038
# declare these phony so that we avoid filesystem conflicts.
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
  1039
.PHONY:	prep build install publish test system-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
  1040
181
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
  1041
# If there are no tests to execute
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
  1042
NO_TESTS =	test-nothing
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
  1043
test-nothing:
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 177
diff changeset
  1044
	@echo "There are no tests available at this time."
1038
3b4d8f56a1bf 15804658 SUNBT7185081-12.0 Userland could use component-hook target from SFW
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 990
diff changeset
  1045
4339
6501cf9c29f9 21116842 add system-test targets to each component Makefile and to top-level Makefiles
Stacy Yeh <stacy.yeh@oracle.com>
parents: 4302
diff changeset
  1046
# If the system tests are not implemented yet
6501cf9c29f9 21116842 add system-test targets to each component Makefile and to top-level Makefiles
Stacy Yeh <stacy.yeh@oracle.com>
parents: 4302
diff changeset
  1047
SYSTEM_TESTS_NOT_IMPLEMENTED = no-sys-tests
6501cf9c29f9 21116842 add system-test targets to each component Makefile and to top-level Makefiles
Stacy Yeh <stacy.yeh@oracle.com>
parents: 4302
diff changeset
  1048
no-sys-tests:
6501cf9c29f9 21116842 add system-test targets to each component Makefile and to top-level Makefiles
Stacy Yeh <stacy.yeh@oracle.com>
parents: 4302
diff changeset
  1049
	@echo "The system test target is not yet implemented."
6501cf9c29f9 21116842 add system-test targets to each component Makefile and to top-level Makefiles
Stacy Yeh <stacy.yeh@oracle.com>
parents: 4302
diff changeset
  1050
3701
2c4a1656e035 20191770 allow exclusion of components for "gmake test" at the top level
April Chin <april.chin@oracle.com>
parents: 3558
diff changeset
  1051
# There are tests, but we're skipping them.
2c4a1656e035 20191770 allow exclusion of components for "gmake test" at the top level
April Chin <april.chin@oracle.com>
parents: 3558
diff changeset
  1052
SKIP_TEST =	skip-test
2c4a1656e035 20191770 allow exclusion of components for "gmake test" at the top level
April Chin <april.chin@oracle.com>
parents: 3558
diff changeset
  1053
skip-test:
2c4a1656e035 20191770 allow exclusion of components for "gmake test" at the top level
April Chin <april.chin@oracle.com>
parents: 3558
diff changeset
  1054
	@echo "Skipping tests"
2c4a1656e035 20191770 allow exclusion of components for "gmake test" at the top level
April Chin <april.chin@oracle.com>
parents: 3558
diff changeset
  1055
1038
3b4d8f56a1bf 15804658 SUNBT7185081-12.0 Userland could use component-hook target from SFW
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 990
diff changeset
  1056
# default behaviour for 'component-hook' target is to echo the component
3b4d8f56a1bf 15804658 SUNBT7185081-12.0 Userland could use component-hook target from SFW
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 990
diff changeset
  1057
# name and version information, but more complex behaviour can be implemented
3b4d8f56a1bf 15804658 SUNBT7185081-12.0 Userland could use component-hook target from SFW
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 990
diff changeset
  1058
# via command line setting of the COMPONENT_HOOK macro.
3b4d8f56a1bf 15804658 SUNBT7185081-12.0 Userland could use component-hook target from SFW
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 990
diff changeset
  1059
COMPONENT_HOOK ?=	echo $(COMPONENT_NAME) $(COMPONENT_VERSION)
3b4d8f56a1bf 15804658 SUNBT7185081-12.0 Userland could use component-hook target from SFW
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 990
diff changeset
  1060
3b4d8f56a1bf 15804658 SUNBT7185081-12.0 Userland could use component-hook target from SFW
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 990
diff changeset
  1061
component-hook:
3b4d8f56a1bf 15804658 SUNBT7185081-12.0 Userland could use component-hook target from SFW
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 990
diff changeset
  1062
	@$(COMPONENT_HOOK)
3b4d8f56a1bf 15804658 SUNBT7185081-12.0 Userland could use component-hook target from SFW
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 990
diff changeset
  1063
4252
891a844655c4 20992358 clean/clobber in many components no longer deletes the build directory
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4206
diff changeset
  1064
CLEAN_PATHS +=	$(BUILD_DIR)
891a844655c4 20992358 clean/clobber in many components no longer deletes the build directory
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4206
diff changeset
  1065
CLOBBER_PATHS +=	$(PROTO_DIR)
891a844655c4 20992358 clean/clobber in many components no longer deletes the build directory
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4206
diff changeset
  1066
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1067
#
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1068
# Packages with tools that are required to build Userland components
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1069
#
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1070
REQUIRED_PACKAGES += developer/build/gnu-make
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1071
REQUIRED_PACKAGES += developer/build/make
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1072
ifeq ($(COMPILER),gcc)
5788
ead8ecaa722e 22820866 Userland should build with GCC 5.3
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 5751
diff changeset
  1073
REQUIRED_PACKAGES += developer/gcc-53
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1074
endif
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1075
ifeq ($(COMPILER),studio)
4201
1db8af129b18 19782029 userland should be able to build from SCM repositories (fix dependency, hash)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4196
diff changeset
  1076
ifneq ($(findstring /opt/solarisstudio12.4,$(CC)),)
1db8af129b18 19782029 userland should be able to build from SCM repositories (fix dependency, hash)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4196
diff changeset
  1077
# If we are setup to build with an installed compiler, require the package
1db8af129b18 19782029 userland should be able to build from SCM repositories (fix dependency, hash)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4196
diff changeset
  1078
# we can uncomment this when we know that pkglint can find it.
1db8af129b18 19782029 userland should be able to build from SCM repositories (fix dependency, hash)
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4196
diff changeset
  1079
#REQUIRED_PACKAGES += /solarisstudio/developer/solarisstudio-124
4196
d697072a92f5 19782029 userland should be able to build from SCM repositories
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4195
diff changeset
  1080
endif
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1081
endif
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1082
ifeq ($(PARFAIT_BUILD),yes)
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1083
# uncomment this line if you need to install Parfait
4272
842ee8dc3530 21057637 userland should move to parfait 1.6.1
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 4252
diff changeset
  1084
#REQUIRED_PACKAGES += developer/parfait/parfait-tools-161
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1085
endif
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1086
REQUIRED_PACKAGES += developer/versioning/mercurial
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1087
REQUIRED_PACKAGES += file/gnu-findutils
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1088
REQUIRED_PACKAGES += package/pkg
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1089
REQUIRED_PACKAGES += runtime/python-27
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1090
REQUIRED_PACKAGES += shell/bash
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1091
REQUIRED_PACKAGES += shell/ksh93
5066
7e7b4d607ab6 22153800 system/linker should be added to core REQUIRED_PACKAGES list
John Beck <John.Beck@Oracle.COM>
parents: 4984
diff changeset
  1092
REQUIRED_PACKAGES += system/linker
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1093
REQUIRED_PACKAGES += text/gawk
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1094
REQUIRED_PACKAGES += text/gnu-grep
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1095
REQUIRED_PACKAGES += text/gnu-sed
5174
85d6cad6ebf8 22249724 jdk-8 required to build Userland
John Beck <John.Beck@Oracle.COM>
parents: 5125
diff changeset
  1096
REQUIRED_PACKAGES += developer/java/jdk-8
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1097
REQUIRED_PACKAGES += security/sudo
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1098
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
  1099
# Only a default dependency if component being built produces binaries.
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
  1100
ifneq ($(strip $(BUILD_BITS)),NO_ARCH)
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
  1101
REQUIRED_PACKAGES += system/library
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
  1102
endif
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5678
diff changeset
  1103
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3750
diff changeset
  1104
include $(WS_MAKE_RULES)/environment.mk
4195
d88c5d15a4af 20869828 Userland makefiles should provide macro printing helpers
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4104
diff changeset
  1105
d88c5d15a4af 20869828 Userland makefiles should provide macro printing helpers
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4104
diff changeset
  1106
# A simple rule to print the value of any macro.  Ex:
d88c5d15a4af 20869828 Userland makefiles should provide macro printing helpers
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4104
diff changeset
  1107
#   $ gmake print-REQUIRED_PACKAGES
d88c5d15a4af 20869828 Userland makefiles should provide macro printing helpers
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4104
diff changeset
  1108
# Note that some macros are set on a per target basis, so what you see
d88c5d15a4af 20869828 Userland makefiles should provide macro printing helpers
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4104
diff changeset
  1109
# is not always what you get.
d88c5d15a4af 20869828 Userland makefiles should provide macro printing helpers
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4104
diff changeset
  1110
print-%:
d88c5d15a4af 20869828 Userland makefiles should provide macro printing helpers
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 4104
diff changeset
  1111
	@echo '$(subst ','\'',$*=$($*)) (origin: $(origin $*), flavor: $(flavor $*))'