make-rules/justmake.mk
author Shawn Walker-Salas <shawn.walker@oracle.com>
Wed, 30 Mar 2016 13:33:31 -0700
changeset 5682 94c0ca64c022
parent 5331 9c955076ffe3
child 6608 a98160718cfc
permissions -rw-r--r--
15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh 22228656 remove redundant declarations and additions from makefiles 22252545 simplify build rules for components from common upstream 22378457 tclConfig.sh compiler settings are too specific 22727315 httping curses gui missing 22750630 procmail ignores userland cflags and may use private strstr function 22758725 wdiff uses diff from PATH instead of /usr/gnu/bin/diff 22926847 cloog Makefile typo when setting ASLR_MODE 22935090 tk config script has wrong linker flags
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
     1
#
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
     2
# CDDL HEADER START
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
     3
#
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
     4
# The contents of this file are subject to the terms of the
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
     5
# Common Development and Distribution License (the "License").
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
     6
# You may not use this file except in compliance with the License.
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
     7
#
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
     8
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
     9
# or http://www.opensolaris.org/os/licensing.
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    10
# See the License for the specific language governing permissions
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    11
# and limitations under the License.
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    12
#
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    13
# When distributing Covered Code, include this CDDL HEADER in each
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    14
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    15
# If applicable, add the following below this CDDL HEADER, with the
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    16
# fields enclosed by brackets "[]" replaced with your own identifying
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    17
# information: Portions Copyright [yyyy] [name of copyright owner]
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    18
#
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    19
# CDDL HEADER END
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    20
#
5682
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5331
diff changeset
    21
94c0ca64c022 15558602 TCL_LD_SEARCH_FLAGS is wrongly defined in tclConfig.sh
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5331
diff changeset
    22
#
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3558
diff changeset
    23
# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    24
#
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    25
#
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    26
# Rules and Macros for building opens source software that just uses their
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    27
# own make and no autoconf-style tools.
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    28
#
3817
30b42c38bbc4 15786608 SUNBT7162754 create new meta package developer/opensolaris/userland
Norm Jacobs <Norm.Jacobs@Sun.COM>
parents: 3558
diff changeset
    29
# To use these rules, include $(WS_MAKE_RULES)/justmake.mk in your Makefile
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    30
# and define "build", "install" targets appropriate to building your component.
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    31
# Ex:
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    32
#
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    33
# 	build:		$(BUILD_32) \
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    34
#	 		$(BUILD_64)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    35
# 
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    36
#	install:	$(INSTALL_32) \
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    37
#	 		$(INSTALL_64)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    38
#
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    39
# Any additional pre/post configure, build, or install actions can be specified
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    40
# in your Makefile by setting them in on of the following macros:
5331
9c955076ffe3 PSARC/2015/203 Google Go version 1.5
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5125
diff changeset
    41
#	COMPONENT_PRE_BUILD_ACTION, COMPONENT_BUILD_ACTION,
9c955076ffe3 PSARC/2015/203 Google Go version 1.5
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5125
diff changeset
    42
#	COMPONENT_POST_BUILD_ACTION, COMPONENT_PRE_INSTALL_ACTION,
9c955076ffe3 PSARC/2015/203 Google Go version 1.5
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5125
diff changeset
    43
#	COMPONENT_INSTALL_ACTION, COMPONENT_POST_INSTALL_ACTION
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    44
#
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    45
# If component specific make targets need to be used for build or install, they
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    46
# can be specified in
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    47
#	COMPONENT_BUILD_TARGETS, COMPONENT_INSTALL_TARGETS
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    48
#
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    49
278
77b380ba9d84 7045614 Move Apache Web server to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents: 181
diff changeset
    50
COMPONENT_INSTALL_ARGS += DESTDIR=$(PROTO_DIR)
5125
34cc580c62c2 21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 4393
diff changeset
    51
COMPONENT_INSTALL_ARGS += $(COMPONENT_INSTALL_ARGS.$(BITS))
278
77b380ba9d84 7045614 Move Apache Web server to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents: 181
diff changeset
    52
5331
9c955076ffe3 PSARC/2015/203 Google Go version 1.5
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5125
diff changeset
    53
COMPONENT_BUILD_ACTION ?= \
9c955076ffe3 PSARC/2015/203 Google Go version 1.5
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5125
diff changeset
    54
	cd $(@D); $(ENV) $(COMPONENT_BUILD_ENV) \
9c955076ffe3 PSARC/2015/203 Google Go version 1.5
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5125
diff changeset
    55
	$(GMAKE) $(COMPONENT_BUILD_ARGS) $(COMPONENT_BUILD_TARGETS)
9c955076ffe3 PSARC/2015/203 Google Go version 1.5
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5125
diff changeset
    56
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    57
# build the configured source
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    58
$(BUILD_DIR)/%/.built:	$(SOURCE_DIR)/.prep
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    59
	$(RM) -r $(@D) ; $(MKDIR) $(@D)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    60
	$(CLONEY) $(SOURCE_DIR) $(@D)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    61
	$(COMPONENT_PRE_BUILD_ACTION)
5331
9c955076ffe3 PSARC/2015/203 Google Go version 1.5
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5125
diff changeset
    62
	($(COMPONENT_BUILD_ACTION))
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    63
	$(COMPONENT_POST_BUILD_ACTION)
774
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 278
diff changeset
    64
ifeq   ($(strip $(PARFAIT_BUILD)),yes)
1352
1358a1e1ff4c 16921386 move to parfait 1.2.0.1
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 774
diff changeset
    65
	-$(PARFAIT) $(@D)
774
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 278
diff changeset
    66
endif
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    67
	$(TOUCH) $@
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    68
5331
9c955076ffe3 PSARC/2015/203 Google Go version 1.5
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5125
diff changeset
    69
COMPONENT_INSTALL_ACTION ?= \
9c955076ffe3 PSARC/2015/203 Google Go version 1.5
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5125
diff changeset
    70
	cd $(@D) ; $(ENV) $(COMPONENT_INSTALL_ENV) \
9c955076ffe3 PSARC/2015/203 Google Go version 1.5
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5125
diff changeset
    71
	$(GMAKE) $(COMPONENT_INSTALL_ARGS) $(COMPONENT_INSTALL_TARGETS)
9c955076ffe3 PSARC/2015/203 Google Go version 1.5
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5125
diff changeset
    72
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    73
# install the built source into a prototype area
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    74
$(BUILD_DIR)/%/.installed:	$(BUILD_DIR)/%/.built
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    75
	$(COMPONENT_PRE_INSTALL_ACTION)
5331
9c955076ffe3 PSARC/2015/203 Google Go version 1.5
Shawn Walker-Salas <shawn.walker@oracle.com>
parents: 5125
diff changeset
    76
	($(COMPONENT_INSTALL_ACTION))
61
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    77
	$(COMPONENT_POST_INSTALL_ACTION)
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    78
	$(TOUCH) $@
7684fe2a9eb5 7011958 some things lost during move to userland
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents:
diff changeset
    79
181
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 138
diff changeset
    80
# test the built source
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
    81
$(BUILD_DIR)/%/.tested-and-compared:    $(BUILD_DIR)/%/.built
3864
77a09e73626b 20548962 generated test files should be in the build directory for clobbering time
Rich Burridge <rich.burridge@oracle.com>
parents: 3817
diff changeset
    82
	$(RM) -rf $(COMPONENT_TEST_BUILD_DIR)
77a09e73626b 20548962 generated test files should be in the build directory for clobbering time
Rich Burridge <rich.burridge@oracle.com>
parents: 3817
diff changeset
    83
	$(MKDIR) $(COMPONENT_TEST_BUILD_DIR)
181
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 138
diff changeset
    84
	$(COMPONENT_PRE_TEST_ACTION)
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
    85
	-(cd $(COMPONENT_TEST_DIR) ; \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
    86
		$(COMPONENT_TEST_ENV_CMD) $(COMPONENT_TEST_ENV) \
2106
adb848b3a7d4 19535379 lua's self tests are a bit of a mess
Rich Burridge <rich.burridge@oracle.com>
parents: 2022
diff changeset
    87
		$(COMPONENT_TEST_CMD) \
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
    88
		$(COMPONENT_TEST_ARGS) $(COMPONENT_TEST_TARGETS)) \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
    89
		&> $(COMPONENT_TEST_OUTPUT)
181
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 138
diff changeset
    90
	$(COMPONENT_POST_TEST_ACTION)
3558
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
    91
	$(COMPONENT_TEST_CREATE_TRANSFORMS)
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
    92
	$(COMPONENT_TEST_PERFORM_TRANSFORM)
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
    93
	$(COMPONENT_TEST_COMPARE)
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
    94
	$(COMPONENT_TEST_CLEANUP)
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
    95
	$(TOUCH) $@
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
    96
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
    97
$(BUILD_DIR)/%/.tested:    $(BUILD_DIR)/%/.built
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
    98
	$(COMPONENT_PRE_TEST_ACTION)
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
    99
	(cd $(COMPONENT_TEST_DIR) ; \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
   100
		$(COMPONENT_TEST_ENV_CMD) $(COMPONENT_TEST_ENV) \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
   101
		$(COMPONENT_TEST_CMD) \
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
   102
		$(COMPONENT_TEST_ARGS) $(COMPONENT_TEST_TARGETS))
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
   103
	$(COMPONENT_POST_TEST_ACTION)
2cec274f17fc 20222479 Need a method to compare test results against a master in Userland
Rich Burridge <rich.burridge@oracle.com>
parents: 2164
diff changeset
   104
	$(COMPONENT_TEST_CLEANUP)
181
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 138
diff changeset
   105
	$(TOUCH) $@
87e11e685b1f 7003927 userland should postprocess packaged files
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 138
diff changeset
   106
4393
963a977eeb62 21179642 pigz should have some master test results to compare against
John Beck <John.Beck@Oracle.COM>
parents: 4252
diff changeset
   107
# Test the installed packages.  The targets above depend on .built which
963a977eeb62 21179642 pigz should have some master test results to compare against
John Beck <John.Beck@Oracle.COM>
parents: 4252
diff changeset
   108
# means $(CLONEY) has already run.  System-test needs cloning but not
963a977eeb62 21179642 pigz should have some master test results to compare against
John Beck <John.Beck@Oracle.COM>
parents: 4252
diff changeset
   109
# building; thus ideally, we would want to depend on .cloned here and below,
963a977eeb62 21179642 pigz should have some master test results to compare against
John Beck <John.Beck@Oracle.COM>
parents: 4252
diff changeset
   110
# but since we don't have that, we depend on .prep and run $(CLONEY) here.
4091
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   111
$(BUILD_DIR)/%/.system-tested-and-compared:    $(SOURCE_DIR)/.prep
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   112
	$(RM) -rf $(COMPONENT_TEST_BUILD_DIR)
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   113
	$(MKDIR) $(COMPONENT_TEST_BUILD_DIR)
4393
963a977eeb62 21179642 pigz should have some master test results to compare against
John Beck <John.Beck@Oracle.COM>
parents: 4252
diff changeset
   114
	$(CLONEY) $(SOURCE_DIR) $(@D)
4091
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   115
	$(COMPONENT_PRE_SYSTEM_TEST_ACTION)
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   116
	-(cd $(COMPONENT_SYSTEM_TEST_DIR) ; \
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   117
		$(COMPONENT_SYSTEM_TEST_ENV_CMD) $(COMPONENT_SYSTEM_TEST_ENV) \
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   118
		$(COMPONENT_SYSTEM_TEST_CMD) \
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   119
		$(COMPONENT_SYSTEM_TEST_ARGS) $(COMPONENT_SYSTEM_TEST_TARGETS)) \
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   120
		&> $(COMPONENT_TEST_OUTPUT)
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   121
	$(COMPONENT_POST_SYSTEM_TEST_ACTION)
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   122
	$(COMPONENT_TEST_CREATE_TRANSFORMS)
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   123
	$(COMPONENT_TEST_PERFORM_TRANSFORM)
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   124
	$(COMPONENT_TEST_COMPARE)
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   125
	$(COMPONENT_SYSTEM_TEST_CLEANUP)
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   126
	$(TOUCH) $@
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   127
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   128
$(BUILD_DIR)/%/.system-tested:    $(SOURCE_DIR)/.prep
4393
963a977eeb62 21179642 pigz should have some master test results to compare against
John Beck <John.Beck@Oracle.COM>
parents: 4252
diff changeset
   129
	$(CLONEY) $(SOURCE_DIR) $(@D)
4091
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   130
	$(COMPONENT_PRE_SYSTEM_TEST_ACTION)
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   131
	(cd $(COMPONENT_SYSTEM_TEST_DIR) ; \
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   132
		$(COMPONENT_SYSTEM_TEST_ENV_CMD) $(COMPONENT_SYSTEM_TEST_ENV) \
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   133
		$(COMPONENT_SYSTEM_TEST_CMD) \
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   134
		$(COMPONENT_SYSTEM_TEST_ARGS) $(COMPONENT_SYSTEM_TEST_TARGETS))
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   135
	$(COMPONENT_POST_SYSTEM_TEST_ACTION)
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   136
	$(COMPONENT_SYSTEM_TEST_CLEANUP)
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   137
	$(TOUCH) $@
fca9099ab398 20808505 gmake system-test
John Beck <John.Beck@Oracle.COM>
parents: 3864
diff changeset
   138
774
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 278
diff changeset
   139
ifeq   ($(strip $(PARFAIT_BUILD)),yes)
1352
1358a1e1ff4c 16921386 move to parfait 1.2.0.1
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 774
diff changeset
   140
parfait: build
774
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 278
diff changeset
   141
else
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 278
diff changeset
   142
parfait:
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 278
diff changeset
   143
	$(MAKE) PARFAIT_BUILD=yes parfait
d0cbca26a17c 7035978 parfait support for userland bits
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 278
diff changeset
   144
endif