Makefile revision 2716
9384cec630155c229c70dfb8a445c6ccf433045aJohann 'Myrkraverk' Oskarsson# CDDL HEADER START
e50226eccc6dfcba3cc6f0df38438900e3df225cYuri Pankov# The contents of this file are subject to the terms of the
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# Common Development and Distribution License (the "License").
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# You may not use this file except in compliance with the License.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# or http://www.opensolaris.org/os/licensing.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# See the License for the specific language governing permissions
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# and limitations under the License.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# When distributing Covered Code, include this CDDL HEADER in each
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# If applicable, add the following below this CDDL HEADER, with the
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# fields enclosed by brackets "[]" replaced with your own identifying
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# information: Portions Copyright [yyyy] [name of copyright owner]
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# CDDL HEADER END
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'AmoreCOMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
84441f85b19f6b8080883f30109e58e43c893709Garrett D'AmoreCOMPONENT_PROJECT_URL= http://www.isc.org/software/bind/
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# hash from: sha256sum $(COMPONENT_ARCHIVE) | sed 's/\(.[^ ]*\).*/sha256:\1/'
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore sha256:4f052195a62218c05a05033774452e6a9e329b865c01e594cc20a6adf11e0d0f
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore http://ftp.isc.org/isc/bind9/$(COMPONENT_VERSION)/$(COMPONENT_ARCHIVE)
e50226eccc6dfcba3cc6f0df38438900e3df225cYuri Pankov# FYI, The configure options are displayed by 'named -V'. Previously
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# that was overriden by setting CONFIGARGS to hide build server
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# Traditionally all BIND executables are installed in sbin not bin.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# DNS libraries are in usr/lib/dns - Override settings from configure.mk
84441f85b19f6b8080883f30109e58e43c893709Garrett D'AmoreCONFIGURE_BINDIR.32 = $(CONFIGURE_PREFIX)/sbin
84441f85b19f6b8080883f30109e58e43c893709Garrett D'AmoreCONFIGURE_LIBDIR.32 = $(CONFIGURE_PREFIX)/lib/dns
84441f85b19f6b8080883f30109e58e43c893709Garrett D'AmoreCONFIGURE_OPTIONS += --sbindir=$(CONFIGURE_BINDIR.$(BITS))
84441f85b19f6b8080883f30109e58e43c893709Garrett D'AmoreCONFIGURE_OPTIONS += --disable-openssl-version-check
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# Bind configure will check for libxml2 versions 2.6.x/2.7.x/2.8.x.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# To make it use version 2.9.x we need to skip this check by
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# specifying path where libxml2 is installed.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# Configure will add "-mt" to CC which is already set in CFLAGS, so override.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# Enable ASLR for this component
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# Currently manual pages are distributed from pkg:/system/manual@.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# While there are some changes in our manuals, for example section
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# numbering and additions to named(1M) for SMF - that could be fixed
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# In addition to BIND deliverables we also deliver SMF files and
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# migration notes. There is no need to install these extras into the
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# prototype directory, they are simply referenced in relevant manifest
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# sumarize nawk script; reads ISC output which is of the form:
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# /^T:/ = Start of a test.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# /^I:/ = Info from a test; colleced for possible use later.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# /^A:/ = About: summary of the test - not used here.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# /^R:/ = Result: If 'PASS' then continue, else print line and collected info.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# Known issues may then be accounted for by adding tests, for example:
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# /^R:UNTESTED/ && name ~ /^T:dst:2:A/ {known++;}\
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# /^R:UNRESOLVED/ && name ~ /^T:dst:1:A/ {known++;}\
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# @ EOF = Display count of RESULTS: i.e. R:PASS=124 R:UNTESTED=26 Total=150
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# if not 100% pass rate and issue is not known the word 'issues!' is appended
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# to resulting string.
e50226eccc6dfcba3cc6f0df38438900e3df225cYuri Pankov /^T:/ {name=$$0;info="";}\
e50226eccc6dfcba3cc6f0df38438900e3df225cYuri Pankov /^I:/ {info=sprintf("%s%s\n", info, $$0);}\
e50226eccc6dfcba3cc6f0df38438900e3df225cYuri Pankov /^R:/ {test++; result[$$1]++;}\
e50226eccc6dfcba3cc6f0df38438900e3df225cYuri Pankov /^R:PASS/ {next;}\
e50226eccc6dfcba3cc6f0df38438900e3df225cYuri Pankov /^R:/ {printf("%s: %s\n%s\n", $$1, name, info);}\
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore END{for (item in result)\
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore printf("%s=%d ", item, result[item]);\
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore printf("(known=%d) Total=%d%s\n", known, test, \
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore ((result["R:PASS"] + known) < test)? \
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore " issues!" : "");\
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# fulltest requires sufficient privileges to configures IP addresses
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# 10.53.0.1 through 10.53.0.5 as aliases on the loopback interface.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore# Note PATH is being set so that isc_ifconfig can find ifconfig.
e50226eccc6dfcba3cc6f0df38438900e3df225cYuri Pankov cd $(COMPONENT_SRC) && PATH=/sbin:$(PATH) $(SHELL) $(isc_ifconfig) up
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore -cd $(COMPONENT_SRC) && PATH=/sbin:$(PATH) $(SHELL) $(isc_ifconfig) down
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore -cd $(@D) && $(MAKE) force-test 2>&1 | $(TEE) $@
e50226eccc6dfcba3cc6f0df38438900e3df225cYuri Pankov# test-summary shows summary for targets test and fulltest. Use target
e50226eccc6dfcba3cc6f0df38438900e3df225cYuri Pankov# test-clean to remove previous tests.
84441f85b19f6b8080883f30109e58e43c893709Garrett D'Amore if [ -f $$file ]; then \