Makefile revision 854
c797f343be2f3619bb1f5569753166ec49d27bdbChristian Maeder#
e9458b1a7a19a63aa4c179f9ab20f4d50681c168Jens Elkner# CDDL HEADER START
81d182b21020b815887e9057959228546cf61b6bChristian Maeder#
10397bcc134edbcfbe3ae2c7ea4c6080036aae22Christian Maeder# The contents of this file are subject to the terms of the
98890889ffb2e8f6f722b00e265a211f13b5a861Corneliu-Claudiu Prodescu# Common Development and Distribution License (the "License").
c797f343be2f3619bb1f5569753166ec49d27bdbChristian Maeder# You may not use this file except in compliance with the License.
3f69b6948966979163bdfe8331c38833d5d90ecdChristian Maeder#
c797f343be2f3619bb1f5569753166ec49d27bdbChristian Maeder# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
e95bbf384f5cbcb7eb23286d5f15dffbd471db17Christian Maeder# or http://www.opensolaris.org/os/licensing.
f3a94a197960e548ecd6520bb768cb0d547457bbChristian Maeder# See the License for the specific language governing permissions
f3a94a197960e548ecd6520bb768cb0d547457bbChristian Maeder# and limitations under the License.
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder#
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder# When distributing Covered Code, include this CDDL HEADER in each
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian Maeder# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian Maeder# If applicable, add the following below this CDDL HEADER, with the
1ae7298170b7a26dce9acc6d2c864fb01f0cb347Christian Maeder# fields enclosed by brackets "[]" replaced with your own identifying
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian Maeder# information: Portions Copyright [yyyy] [name of copyright owner]
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian Maeder#
59c301c268f79cfde0a4c30a2c572a368db98da5Christian Maeder# CDDL HEADER END
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian Maeder#
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder#
23a00c966f2aa8da525d7a7c51933c99964426c0Christian MaederPARFAIT_BUILD=no
4fb19f237193a3bd6778f8aee3b6dd8da5856665Christian Maeder
4fb19f237193a3bd6778f8aee3b6dd8da5856665Christian Maederinclude ../../make-rules/shared-macros.mk
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian MaederCOMPONENT_PROJECT_URL= http://www2.research.att.com/sw/download/
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder
f42bcc750a9a02cb4f753b70679f9aacf1b338d7Christian Maeder# These are required if retrieving packages from the AT&T website.
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian MaederATT_USERNAME= "I accept www.opensource.org/licenses/cpl"
10397bcc134edbcfbe3ae2c7ea4c6080036aae22Christian MaederATT_PASSWD= "."
b984ff0ba75221f64451c1e69b3977967d4e99a1Christian Maeder
4fb19f237193a3bd6778f8aee3b6dd8da5856665Christian Maeder# This flag controls the prep.mk behaviour to patch each archive individually
72b9099aeec0762bae4546db3bc4b48721027bf4Christian MaederPATCH_EACH_ARCHIVE = 1
ad270004874ce1d0697fb30d7309f180553bb315Christian Maeder
ad270004874ce1d0697fb30d7309f180553bb315Christian MaederCOMPONENT_NAME = INIT
72b9099aeec0762bae4546db3bc4b48721027bf4Christian MaederCOMPONENT_VERSION = 2011-02-08
964d1dce6aa88a14e240a4f2fb81c539d2f834fcChristian MaederCOMPONENT_SRC = $(COMPONENT_NAME).$(COMPONENT_VERSION)
4fb19f237193a3bd6778f8aee3b6dd8da5856665Christian MaederCOMPONENT_ARCHIVE = $(COMPONENT_NAME).$(COMPONENT_VERSION).tgz
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian MaederCOMPONENT_ARCHIVE_HASH = \
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder sha256:d692d476fe4bb933e7b6459c0cc99a2e9f428bfd81a495ed4201ec197e070f57
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian MaederCOMPONENT_ARCHIVE_URL = http://www2.research.att.com/~gsf/download/tgz/$(COMPONENT_ARCHIVE)
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian MaederCOMPONENT_PATCHES =
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder# Patch only required if building ksh93 only and not ast-base
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder# package-pax-suid.patch
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder
4fb19f237193a3bd6778f8aee3b6dd8da5856665Christian Maeder# The ksh93 tarballs don't unpack cleanly into their own directories.
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian MaederUNPACK_ARGS= -r $(COMPONENT_SRC)
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian MaederNUM_EXTRA_ARCHIVES= 1
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian MaederCOMPONENT_NAME_1= ast-base
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian MaederCOMPONENT_VERSION_1= 2011-02-08
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian MaederCOMPONENT_SRC_1= $(COMPONENT_NAME_1).$(COMPONENT_VERSION_1)
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian MaederCOMPONENT_ARCHIVE_1= $(COMPONENT_NAME_1).$(COMPONENT_VERSION_1).tgz
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian MaederCOMPONENT_ARCHIVE_HASH_1= \
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder sha256:44ae3913e6c0c8992c6c3cba16864fd4c4a18c6da8e7d87c85a23060cea7cd1a
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian MaederCOMPONENT_ARCHIVE_URL_1= http://www2.research.att.com/~gsf/download/tgz/$(COMPONENT_ARCHIVE_1)
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian MaederCOMPONENT_PATCHES_1= solaris_alias.patch build_cflags.patch path_utmp.patch \
27912d626bf179b82fcb337077e5cd9653bb71cfChristian Maeder CR6919590.patch CR7033181.patch \
ee6c748be810b24e3c70ffd74f291c7394e389f5Christian Maeder CR7071431.patch CR7036535.patch \
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder CRXXX_Error_Catalog.patch CR7025778.patch \
4fb19f237193a3bd6778f8aee3b6dd8da5856665Christian Maeder CR7065478.patch CR7026179.patch \
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian Maeder CR7065900.patch CR7110983.patch \
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian Maeder CR7105086.patch disable_dll.patch \
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder CR7057565.patch CR7046434.patch \
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder CR7032821.patch CR7009897.patch \
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder CR6964621.patch CR7032068.patch \
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder CR7061011.patch CR6934836.patch \
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder CR7089799.patch CR6917338.patch \
e95bbf384f5cbcb7eb23286d5f15dffbd471db17Christian Maeder CR7019368.patch CR6729252.patch \
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian Maeder MAP_TYPE_64_Bits.patch
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian Maeder
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian Maeder
e95bbf384f5cbcb7eb23286d5f15dffbd471db17Christian Maeder
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder# Make the unpack of the second archive relocate to a sensible place
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian MaederUNPACK_ARGS_1= -r $(COMPONENT_SRC_1)
e95bbf384f5cbcb7eb23286d5f15dffbd471db17Christian Maeder
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder# We override LD_B_DIRECT because -B direct has unfortunate consequences for the
e95bbf384f5cbcb7eb23286d5f15dffbd471db17Christian Maeder# interposition used by the Safe/Fast IO library (i.e. it becomes neither safe
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian Maeder# nor fast, and causes the build to deadly embrace).
e95bbf384f5cbcb7eb23286d5f15dffbd471db17Christian MaederLD_B_DIRECT=
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian Maeder# Disable nmake's probing of runpaths
e95bbf384f5cbcb7eb23286d5f15dffbd471db17Christian MaederCC.RUNPATH=
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian MaederCC.LD.RUNPATH=
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian MaederCC.LD.ORIGIN=
e95bbf384f5cbcb7eb23286d5f15dffbd471db17Christian MaederCC.DLL.ORIGIN=
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder# Prevent nmake from taking over the entire machine
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian MaederNPROCS=1
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maeder# Set the built to build all targets, install all of ast-base, and test ksh93.
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian MaederCOMPONENT_BUILD_TARGETS +=
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian MaederCOMPONENT_INSTALL_PACKAGES += ast-base
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian MaederCOMPONENT_TEST_TARGETS += ksh93
4fb19f237193a3bd6778f8aee3b6dd8da5856665Christian Maeder
59c301c268f79cfde0a4c30a2c572a368db98da5Christian Maeder# Unpack the ast-base tarball and copy it into the INIT tree,
72b9099aeec0762bae4546db3bc4b48721027bf4Christian Maeder# mark it as un-patched
59c301c268f79cfde0a4c30a2c572a368db98da5Christian MaederCOMPONENT_POST_UNPACK_ACTION_1= \
cdb141ee48c3a96e620186de94316c562037a2e0Christian Maeder $(RM) $(COMPONENT_SRC)/*patched_1; \
cdb141ee48c3a96e620186de94316c562037a2e0Christian Maeder $(CP) -r $(COMPONENT_SRC_1)/* $(COMPONENT_SRC)
ad187062b0009820118c1b773a232e29b879a2faChristian Maeder
cdb141ee48c3a96e620186de94316c562037a2e0Christian Maeder# Add the two tarball paths to the paths to be cleaned
cdb141ee48c3a96e620186de94316c562037a2e0Christian MaederCLEAN_PATHS+= build $(COMPONENT_NAME_1).$(COMPONENT_VERSION_1) \
cdb141ee48c3a96e620186de94316c562037a2e0Christian Maeder $(COMPONENT_NAME).$(COMPONENT_VERSION)
ad187062b0009820118c1b773a232e29b879a2faChristian Maeder
b984ff0ba75221f64451c1e69b3977967d4e99a1Christian Maeder# ksh.kshrc needs to be installed with the ksh package
cdb141ee48c3a96e620186de94316c562037a2e0Christian MaederCOMPONENT_POST_INSTALL_ACTION= \
cdb141ee48c3a96e620186de94316c562037a2e0Christian Maeder @$(MKDIR) -p $(PROTO_DIR)/etc/; \
59c301c268f79cfde0a4c30a2c572a368db98da5Christian Maeder $(CP) ksh.kshrc $(PROTO_DIR)/etc/
59c301c268f79cfde0a4c30a2c572a368db98da5Christian Maeder
cdb141ee48c3a96e620186de94316c562037a2e0Christian Maeder# Packaging information
59c301c268f79cfde0a4c30a2c572a368db98da5Christian MaederIPS_PKG_NAME= ksh93
59c301c268f79cfde0a4c30a2c572a368db98da5Christian MaederIPS_COMPONENT_VERSION= 20110208
72b9099aeec0762bae4546db3bc4b48721027bf4Christian Maeder
b984ff0ba75221f64451c1e69b3977967d4e99a1Christian Maeder# common targets
f454c20b6c126bea7d31d400cc8824b9ee8cc6eaChristian Maederbuild: $(BUILD_32_and_64)
59c301c268f79cfde0a4c30a2c572a368db98da5Christian Maeder
964d1dce6aa88a14e240a4f2fb81c539d2f834fcChristian Maederinstall: $(INSTALL_32_and_64)
59c301c268f79cfde0a4c30a2c572a368db98da5Christian Maeder
59c301c268f79cfde0a4c30a2c572a368db98da5Christian Maedertest: $(TEST_32_and_64)
cdb141ee48c3a96e620186de94316c562037a2e0Christian Maeder
31a189d4cff554f78407cdc422480e84e99a6ec6Christian MaederBUILD_PKG_DEPENDENCIES= $(BUILD_TOOLS)
31a189d4cff554f78407cdc422480e84e99a6ec6Christian Maeder
31a189d4cff554f78407cdc422480e84e99a6ec6Christian MaederPKG_PROTO_DIRS += $(COMPONENT_DIR)/files
59c301c268f79cfde0a4c30a2c572a368db98da5Christian Maeder
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maederinclude ../../make-rules/prep.mk
32a7cc7177ecf70e35ec831ff86887b9acc40dcaChristian Maederinclude ../../make-rules/attpackagemake.mk
72b9099aeec0762bae4546db3bc4b48721027bf4Christian Maederinclude ../../make-rules/ips.mk
31a189d4cff554f78407cdc422480e84e99a6ec6Christian Maederinclude ../../make-rules/depend.mk
ee9eddfa6953868fd6fbaff0d9ff68675a13675aChristian Maeder