Makefile revision 5680
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose#
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# CDDL HEADER START
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose#
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# The contents of this file are subject to the terms of the
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# Common Development and Distribution License (the "License").
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# You may not use this file except in compliance with the License.
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose#
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# or http://www.opensolaris.org/os/licensing.
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# See the License for the specific language governing permissions
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# and limitations under the License.
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose#
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# When distributing Covered Code, include this CDDL HEADER in each
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# If applicable, add the following below this CDDL HEADER, with the
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# fields enclosed by brackets "[]" replaced with your own identifying
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# information: Portions Copyright [yyyy] [name of copyright owner]
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose#
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# CDDL HEADER END
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose#
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose#
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose#
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Boseinclude ../../../make-rules/shared-macros.mk
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseRUBY_VERSION=2.1
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseRUBY_LIB_VERSION=2.1.0
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseRUBY_VERSIONS=2.1.0
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseCOMPONENT_NAME= puppet
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseCOMPONENT_VERSION= 3.6.2
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseCOMPONENT_PROJECT_URL= http://puppetlabs.com/
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseCOMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseCOMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseCOMPONENT_ARCHIVE_HASH= \
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose sha256:9114c63108c58e39db84937cb8f7e1add3dcbaa08fd730f631de6a7f64a3c360
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseCOMPONENT_ARCHIVE_URL= $(COMPONENT_PROJECT_URL)downloads/puppet/$(COMPONENT_ARCHIVE)
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseCOMPONENT_BUGDB= utility/puppet
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseTPNO= 18128
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Boseinclude $(WS_MAKE_RULES)/prep.mk
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Boseinclude $(WS_MAKE_RULES)/install.rb.mk
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Boseinclude $(WS_MAKE_RULES)/ips.mk
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Boseinclude $(WS_MAKE_RULES)/ruby.mk
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# puppet requires facter and hiera as part of the install phase
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseFACTER_LIB=$(WS_TOP)/components/ruby/facter/build/$(MACH64)/lib
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseHIERA_LIB=$(WS_TOP)/components/ruby/hiera/build/$(MACH64)/lib
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseCOMPONENT_INSTALL_ENV += RUBYLIB="$(FACTER_LIB):$(HIERA_LIB)"
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose../facter/build/%/.installed:
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose (cd ../facter ; $(GMAKE) install)
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose../hiera/build/%/.installed:
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose (cd ../hiera ; $(GMAKE) install)
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# Collect and print puppet module manifests for cherry picking into group
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# dependencies as a helper for the package maintainer
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BosePUPPET_MODULE_MANIFESTS = $(sort $(wildcard $(WS_TOP)/components/ruby/puppet-modules/*-*/*.p5m))
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Boseprint-modules: $(PUPPET_MODULE_MANIFESTS)
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose $(PKGMOGRIFY) -i -O /dev/null $(WS_TRANSFORMS)/group-dependency $(PUPPET_MODULE_MANIFESTS)
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# set the bindir to /usr/sbin
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseINSTALL_RB_BINDIR_OPTION = --bindir=$(USRSBINDIR)
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# --sbindir option not supported by Puppet install.rb
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseINSTALL_RB_SBINDIR_OPTION =
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseASLR_MODE = $(ASLR_NOT_APPLICABLE)
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BosePKG_OPTIONS += -I $(BUILD_DIR)
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# common targets
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bosebuild:: $(BUILD_64)
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# make sure facter and hiera are installed first
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Boseinstall: ../facter/build/$(MACH64)/.installed ../hiera/build/$(MACH64)/.installed $(INSTALL_64)
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Boseclean::
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# puppet requires the installation of the following rubygems to run
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# the unittests: rspec rspec-expectations mocha rack rgen
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose# Disable the tests until these rubygems are available.
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bosetest: $(NO_TESTS)
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bosesystem-test: $(NO_TESTS)
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseREQUIRED_PACKAGES += runtime/ruby-21
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseREQUIRED_PACKAGES += library/ruby/hiera
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit BoseREQUIRED_PACKAGES += system/management/facter
db36dca3d45e6eefbb30042ee65876566f1a6014Sumit Bose