141N/A#
141N/A# CDDL HEADER START
141N/A#
141N/A# The contents of this file are subject to the terms of the
141N/A# Common Development and Distribution License (the "License").
141N/A# You may not use this file except in compliance with the License.
141N/A#
141N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
141N/A# or http://www.opensolaris.org/os/licensing.
141N/A# See the License for the specific language governing permissions
141N/A# and limitations under the License.
141N/A#
141N/A# When distributing Covered Code, include this CDDL HEADER in each
141N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
141N/A# If applicable, add the following below this CDDL HEADER, with the
141N/A# fields enclosed by brackets "[]" replaced with your own identifying
141N/A# information: Portions Copyright [yyyy] [name of copyright owner]
141N/A#
141N/A# CDDL HEADER END
141N/A#
5680N/A
141N/A#
5680N/A# Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
5680N/A#
5680N/ABUILD_BITS= 64
141N/Ainclude ../../make-rules/shared-macros.mk
141N/A
141N/ACOMPONENT_NAME= gperf
6367N/ACOMPONENT_VERSION= 3.0.4
844N/ACOMPONENT_ARCHIVE_HASH= \
6367N/A sha256:767112a204407e62dbc3106647cf839ed544f3cf5d0f0523aaa2508623aad63e
141N/A
6367N/ATPNO= 28116
2899N/A
5680N/A# must build tests before use
5680N/ASYSTEM_TEST_TARGET= build $(SYSTEM_TEST_64)
5680N/Ainclude $(WS_MAKE_RULES)/gnu-component.mk
2282N/A
141N/ACONFIGURE_OPTIONS += --infodir=$(CONFIGURE_INFODIR)
5680N/ACONFIGURE_OPTIONS += --docdir=$(USRSHAREDOCDIR)/gperf
2282N/A
4727N/A# test/system-test is tricky.
4727N/A# Reason being is this component bundles! test results
4727N/A# with the source and those results are compared against
4727N/A# generated results.
4727N/A# Unfortunately these test results embed the string:
4727N/A# /* Command-line: ../src/gperf -L C -F ', 0, 0' -j1 -i 1 -g
4727N/A# which contains the actual command run: ../src/gperf
4727N/A# That string is correct for test but system-test will have /usr/bin/gperf
4727N/A# do a sed is run over the bundled test results with /usr/bin/gperf
4727N/A# so that an internal compare will pass.
4727N/A# Put another way this component does internally what the userland
4727N/A# test infrastructure is doing.
4727N/A
4727N/A# modify bundled test results for system-test
4727N/ACOMPONENT_PRE_SYSTEM_TEST_ACTION = \
4727N/A ($(GSED) -i -e "s|../src/gperf|/usr/bin/gperf|" \
4727N/A $(SOURCE_DIR)/tests/*.exp)
4727N/A
5680N/ACOMPONENT_SYSTEM_TEST_ARGS = GPERF=$(USRBINDIR)/gperf
4727N/A
4727N/A# normalize the name of gperf
4727N/A# remove compilation lines
4727N/ACOMPONENT_TEST_TRANSFORMS += \
4727N/A '-e "s|../src/gperf|gperf|g" ' \
4727N/A '-e "s|/usr/bin/gperf|gperf|g" ' \
6367N/A '-e "s|^.*$(CC).*$$|XXX_REMOVE_XXX|g" ' \
6367N/A '-e "s|^make.*: Leaving directory.*$$|XXX_REMOVE_XXX|g" ' \
6367N/A '-e "s|^make.*: Entering directory.*$$|XXX_REMOVE_XXX|g" ' \
6367N/A '-e "s|^make.*: Nothing to be.*$$|XXX_REMOVE_XXX|g" ' \
6367N/A '-e "/^XXX_REMOVE_XXX$$/d" '
4727N/A
3817N/AREQUIRED_PACKAGES += system/library/c++-runtime
7144N/AREQUIRED_PACKAGES += system/library/gcc/gcc-c++-runtime
7144N/AREQUIRED_PACKAGES += system/library/gcc/gcc-c-runtime
3817N/AREQUIRED_PACKAGES += system/library/math