Makefile revision 3477
#
# 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) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
#
include ../../make-rules/shared-macros.mk
COMPONENT_NAME= coreutils
COMPONENT_VERSION= 8.23
COMPONENT_PROJECT_URL= http://www.gnu.org/software/coreutils/
COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.xz
COMPONENT_ARCHIVE_HASH= \
sha256:ec43ca5bcfc62242accb46b7f121f6b684ee21ecd7d075059bf650ff9e37b82d
COMPONENT_ARCHIVE_URL= http://ftp.gnu.org/gnu/coreutils/$(COMPONENT_ARCHIVE)
COMPONENT_BUGDB= utility/gnu-coreutils
TPNO= 18521
include ../../make-rules/prep.mk
include ../../make-rules/configure.mk
include ../../make-rules/ips.mk
# We need the GNU grep command to configure/build.
PATH=/usr/gnu/bin:/usr/bin
PATCH_LEVEL= 0
CONFIGURE_PREFIX = /usr/gnu
CONFIGURE_OPTIONS += --bindir=/usr/gnu/bin
CONFIGURE_OPTIONS += --libdir=/usr/lib
CONFIGURE_OPTIONS += --infodir=$(CONFIGURE_INFODIR)
CONFIGURE_OPTIONS += CPPFLAGS=-I/usr/include/gmp
CONFIGURE_OPTIONS += CFLAGS="$(CFLAGS)"
# Recreate configure and Makefile to pick up changes in .../src/local.mk
COMPONENT_PREP_ACTION = (cd $(@D) ; autoreconf -f && automake)
# Always show the build and link lines for easier debugging.
COMPONENT_BUILD_ARGS += V=1
# Enable ASLR for this component
ASLR_MODE = $(ASLR_ENABLE)
# common targets
configure: $(CONFIGURE_32_and_64)
build: $(BUILD_32_and_64)
install: $(INSTALL_32_and_64)
# Needed for "gmake test" to work successfully.
# If SHELLOPTS is exported (as it is by the userland makefiles),
# then all shell options get exported to child invocations of bash,
# which results in test failures due to nounset and xtrace being
# set unexpectedly, and errors such as "$1: unbound variable" and
# diffs failing due to script tracing in output files.
unexport SHELLOPTS
# Get the binaries to test from the component proto area.
COMPONENT_TEST_ENV += PATH=$(PROTOUSRSBINDIR):/usr/bin
# With coreutils version 8.23, there are currently six tests that are failing:
# 1/ test-getlogin - this is a known problem. See:
# http://www.linuxfromscratch.org/pipermail/lfs-dev/2012-April/066264.html
#
# After GNU coreutils has been built, it's possible to successfully run
# the test manually from a terminal with:
#
# $ cd build/amd64/gnulib-tests && \
# gmake NON_ROOT_USERNAME=nobody -k check-TESTS && \
# gmake check TESTS=test-get-login
# 2/ test-mbrtowc3
# 3/ test-mbrtowc4
# 4/ test-mbsalign
# 5/ test-mbsrtowcs4 - these four multi-byte problems have been reported to
# the G11N team. CR #19368946 & #19370120 have been filed.
#
# 6/ test-posixtm - this is due to a problem with the Solaris mktime
# utility. CR #19344177 has been filed.
test: install $(TEST_64)
BUILD_PKG_DEPENDENCIES = $(BUILD_TOOLS)
include ../../make-rules/depend.mk