components/ggrep/Makefile
author Rich Burridge <rich.burridge@oracle.com>
Fri, 23 Oct 2015 15:32:50 -0700
changeset 5007 0052258cbb9d
parent 4795 17cca748f778
child 5125 34cc580c62c2
permissions -rw-r--r--
PSARC 2015/428 Normalization of Solaris man page section numbers 22081831 Normalize cups man pages 22081902 Normalize ntp man pages 22081919 Normalize libdnet man pages 22081942 Normalize ptp man pages 22081959 Normalize snort man pages
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
80
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
     1
#
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
     2
# CDDL HEADER START
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
     3
#
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
     4
# The contents of this file are subject to the terms of the
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
     5
# Common Development and Distribution License (the "License").
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
     6
# You may not use this file except in compliance with the License.
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
     7
#
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
     8
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
     9
# or http://www.opensolaris.org/os/licensing.
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    10
# See the License for the specific language governing permissions
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    11
# and limitations under the License.
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    12
#
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    13
# When distributing Covered Code, include this CDDL HEADER in each
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    14
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    15
# If applicable, add the following below this CDDL HEADER, with the
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    16
# fields enclosed by brackets "[]" replaced with your own identifying
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    17
# information: Portions Copyright [yyyy] [name of copyright owner]
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    18
#
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    19
# CDDL HEADER END
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    20
#
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 2225
diff changeset
    21
# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
80
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    22
#
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    23
include ../../make-rules/shared-macros.mk
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    24
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    25
COMPONENT_NAME=		grep
1997
c93f1721e91b 18268292 Upgrade gnu grep to 2.20
April Chin <april.chin@oracle.com>
parents: 1948
diff changeset
    26
COMPONENT_VERSION=	2.20
609
775168282b2f 7037821 Userland migration of data from Makefile to manifest may have been a little overzealous
Rich Burridge <rich.burridge@oracle.com>
parents: 344
diff changeset
    27
COMPONENT_PROJECT_URL=	http://gnu.org/software/grep/
80
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    28
COMPONENT_SRC=		$(COMPONENT_NAME)-$(COMPONENT_VERSION)
1181
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    29
COMPONENT_ARCHIVE=	$(COMPONENT_SRC).tar.xz
666
3e3828ae1878 PSARC 2011/397 Update GNU grep to 2.10
Rich Burridge <rich.burridge@oracle.com>
parents: 609
diff changeset
    30
800
2ad056ed89ec 7163771 sha1 should not be used in userland-fetch and userland component/*/Makefile
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 666
diff changeset
    31
COMPONENT_ARCHIVE_HASH=	\
1997
c93f1721e91b 18268292 Upgrade gnu grep to 2.20
April Chin <april.chin@oracle.com>
parents: 1948
diff changeset
    32
    sha256:f0af452bc0d09464b6d089b6d56a0a3c16672e9ed9118fbe37b0b6aeaf069a65
80
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    33
COMPONENT_ARCHIVE_URL=	http://ftp.gnu.org/gnu/grep/$(COMPONENT_ARCHIVE)
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    34
1058
34d7aaa03423 15886624 Auto-generation of Userland gate list - Phase 3
Rich Burridge <rich.burridge@oracle.com>
parents: 800
diff changeset
    35
COMPONENT_BUGDB=	utility/ggrep
34d7aaa03423 15886624 Auto-generation of Userland gate list - Phase 3
Rich Burridge <rich.burridge@oracle.com>
parents: 800
diff changeset
    36
1997
c93f1721e91b 18268292 Upgrade gnu grep to 2.20
April Chin <april.chin@oracle.com>
parents: 1948
diff changeset
    37
TPNO=			18300
1948
2d1537e7942d 18978320 Userland components should specify TPNOs in Makefiles instead of pkg manifests
John Beck <John.Beck@Oracle.COM>
parents: 1181
diff changeset
    38
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 2225
diff changeset
    39
include $(WS_MAKE_RULES)/prep.mk
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 2225
diff changeset
    40
include $(WS_MAKE_RULES)/configure.mk
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 2225
diff changeset
    41
include $(WS_MAKE_RULES)/ips.mk
80
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    42
99
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 83
diff changeset
    43
# We need to be able to return from void functions
c15c9099bb44 6841644 OpenSolaris Python should support gdbm
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 83
diff changeset
    44
CFLAGS	+=			$(studio_FEATURES_EXTENSIONS)
80
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    45
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    46
CONFIGURE_OPTIONS  +=		CFLAGS="$(CFLAGS)"
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    47
CONFIGURE_OPTIONS  +=		--prefix=/usr
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    48
1181
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    49
# Enable aslr for this component
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    50
ASLR_MODE = $(ASLR_ENABLE)
80
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    51
1181
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    52
# Needed for "gmake test" to work.
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    53
# SHELLOPTS is exported via make-rules/shared-macros.mk,
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    54
# causing the braceexpand option to be set.
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    55
# This option causes "$1: unbound variable" errors during the check-TESTS,
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    56
# and the gnulib-tests don't even run at all.
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    57
# Note that the below unexports SHELLOPTS, even for targets
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    58
# other than "test." 
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    59
unexport SHELLOPTS
80
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
    60
4795
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    61
# Test transforms retain only relevant results output.
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    62
COMPONENT_TEST_TRANSFORMS += \
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    63
        '-n ' \
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    64
        '-e "/TOTAL/p" ' \
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    65
        '-e "/SKIP/p" ' \
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    66
        '-e "/PASS/p" ' \
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    67
        '-e "/FAIL/p" ' \
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    68
        '-e "/ERROR/p" '
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    69
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    70
# Putting GNU on path first prevents some tests from being skipped,
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    71
# which also  keeps the test and system-test results consistent.
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    72
# With the test target, the path to the just-built commands is
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    73
# prepended to PATH.  With the system-test target, we patch
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    74
# to prevent the PATH from being prepended.
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    75
COMPONENT_TEST_ENV += "PATH=$(GNUBIN):$(PATH)"
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    76
COMPONENT_SYSTEM_TEST_ENV += "PATH=$(GNUBIN):$(PATH)"
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    77
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    78
# Patch to change test path so it tests grep commands from /usr/gnu/bin
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    79
# installed on the test system. If we patch, we must re-configure the
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    80
# tests.
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    81
$(SOURCE_DIR)/.system-test-patched: $(SOURCE_DIR)/.prep
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    82
	$(GPATCH) -d $(@D) $(GPATCH_FLAGS) < $(COMPONENT_DIR)/system-test-patches/systest.patch
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    83
	$(TOUCH) $(@)
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    84
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    85
# if we previously patched the source for the system-test target,
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    86
# ensure we rebuild without that patch
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    87
test-check:
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    88
	if [ -e $(SOURCE_DIR)/.system-test-patched ]; then \
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    89
	   cd $(COMPONENT_DIR); \
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    90
	   $(GMAKE) clean build; \
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
    91
	fi
4402
b7cd2462c58f 20460412 GGREP should have some master test results to compare against
James Chang <james.c.chang@Oracle.COM>
parents: 4339
diff changeset
    92
1181
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    93
# common targets
2225
f064d3d3190d 20078677 Userland Makefiles should support a configure: target
John Beck <John.Beck@Oracle.COM>
parents: 1997
diff changeset
    94
configure:	$(CONFIGURE_64)
f064d3d3190d 20078677 Userland Makefiles should support a configure: target
John Beck <John.Beck@Oracle.COM>
parents: 1997
diff changeset
    95
1181
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    96
build:		$(BUILD_64)
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    97
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    98
install:	$(INSTALL_64)
17dcb14c2b1e 16059697 problem in UTILITY/GGREP
April Chin <april.chin@oracle.com>
parents: 1058
diff changeset
    99
4795
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
   100
test:		test-check $(TEST_64)
80
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
   101
4795
17cca748f778 21571335 Enable system-test target for ggrep
April Chin <april.chin@oracle.com>
parents: 4402
diff changeset
   102
system-test:    $(SOURCE_DIR)/.system-test-patched configure $(SYSTEM_TEST_64)
4339
6501cf9c29f9 21116842 add system-test targets to each component Makefile and to top-level Makefiles
Stacy Yeh <stacy.yeh@oracle.com>
parents: 3817
diff changeset
   103
80
7f8350e3f91a 7017244 move ggrep to userland
April Chin <april.chin@oracle.com>
parents:
diff changeset
   104
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 2225
diff changeset
   105
REQUIRED_PACKAGES += library/pcre
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 2225
diff changeset
   106
REQUIRED_PACKAGES += shell/bash
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 2225
diff changeset
   107
REQUIRED_PACKAGES += system/library