make-rules/prep-unpack.mk
author Jan Parcel <jan.parcel@oracle.com>
Tue, 03 Nov 2015 14:27:41 -0800
changeset 5055 9daf220c1a9a
parent 4953 0c9477f5bdd7
child 5477 5eabbdf042bc
permissions -rw-r--r--
PSARC/2015/194 libsasl ON to Userland migration and update 20855050 Update libsasl 2.1.15 to 2.1.26 and migrate to Userland consolidation 15242150 SUNBT6211461 SASL library missing extras 20544079 sasl install dir for plugins should be separately configurable 20544093 ifdef sun for gethostname in saslutil.c is obsolete 20544122 libtool.m4 overrides configuration for --no-verify 20544160 incorrect function definition for do_request in ipc_doors.c 20544105 sasl adjustment for location of gssapi.h incorrectly implemented 21058782 CMU cyrus-sasl missing man pages that we require 21099377 Moving to autotools 1.15 breaks cmu cyrus-sasl build 21131962 libsasl mv to Userland means subversion requires system/library/security/libsasl 22052798 openldap slapd refuses to run if libsasl updated unless openldap recompiled

#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License (the "License").
# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
# If applicable, add the following below this CDDL HEADER, with the
# fields enclosed by brackets "[]" replaced with your own identifying
# information: Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
# Copyright (c) 2010, 2015, Oracle and/or its affiliates. All rights reserved.
#

UNPACK =		$(WS_TOOLS)/userland-unpack

#
# Anything that we downloaded and want to unpack must have a
# COMPONENT_ARCHIVE{_[0-9]+} macro.
#
PCK_SUFFIXES = $(subst COMPONENT_ARCHIVE_,, \
                $(filter COMPONENT_ARCHIVE_%, $(.VARIABLES)))

# Template for unpacking rules.
define unpack-rules
ifdef COMPONENT_ARCHIVE$(1)
ifdef COMPONENT_SRC$(1)

CLEAN_PATHS += $$(COMPONENT_SRC$(1))
SOURCE_DIR$(1) = $$(COMPONENT_DIR)/$(COMPONENT_SRC$(1))

UNPACK_STAMP$(1) =	$$(SOURCE_DIR$(1))/.unpacked

$$(UNPACK_STAMP$(1)):	$$(USERLAND_ARCHIVES)$$(COMPONENT_ARCHIVE$(1)) download
	$$(RM) -r $$(SOURCE_DIR$(1))
	$$(UNPACK) $$(UNPACK_ARGS$(1)) $$(USERLAND_ARCHIVES)$$(COMPONENT_ARCHIVE$(1))
	$$(COMPONENT_POST_UNPACK_ACTION$(1))
	$$(TOUCH) $$@

unpack::	$$(UNPACK_STAMP$(1))

REQUIRED_PACKAGES += archiver/gnu-tar
REQUIRED_PACKAGES += compress/bzip2
REQUIRED_PACKAGES += compress/gzip
REQUIRED_PACKAGES += compress/p7zip
REQUIRED_PACKAGES += compress/unzip
REQUIRED_PACKAGES += compress/xz
REQUIRED_PACKAGES += compress/zip
REQUIRED_PACKAGES += developer/java/jdk
REQUIRED_PACKAGES += runtime/ruby

endif
endif
endef

#
# Define the rules required to download any source archives and augment any
# cleanup macros.
#
$(eval $(call unpack-rules,))
$(foreach suffix, $(PCK_SUFFIXES), $(eval $(call unpack-rules,_$(suffix))))