2810N/A#
2810N/A# CDDL HEADER START
2810N/A#
2810N/A# The contents of this file are subject to the terms of the
2810N/A# Common Development and Distribution License (the "License").
2810N/A# You may not use this file except in compliance with the License.
2810N/A#
2810N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
2810N/A# or http://www.opensolaris.org/os/licensing.
2810N/A# See the License for the specific language governing permissions
2810N/A# and limitations under the License.
2810N/A#
2810N/A# When distributing Covered Code, include this CDDL HEADER in each
2810N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
2810N/A# If applicable, add the following below this CDDL HEADER, with the
2810N/A# fields enclosed by brackets "[]" replaced with your own identifying
2810N/A# information: Portions Copyright [yyyy] [name of copyright owner]
2810N/A#
2810N/A# CDDL HEADER END
2810N/A#
2810N/A
2810N/A#
6033N/A# Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
2810N/A#
4070N/A
2810N/Ainclude ../../../make-rules/shared-macros.mk
2810N/A
2810N/ACOMPONENT_NAME= swift
4070N/ACOMPONENT_CODENAME= kilo
6033N/ACOMPONENT_VERSION= 2.3.0
6033N/ACOMPONENT_BE_VERSION= 2015.1
2810N/ACOMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
2810N/ACOMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz
2810N/ACOMPONENT_ARCHIVE_HASH= \
6033N/A sha256:7225061f92597e7eaf6196c9336c5e590c7626b7e84126c51e8ca5bf5b7bdae1
2810N/ACOMPONENT_ARCHIVE_URL= http://launchpad.net/$(COMPONENT_NAME)/$(COMPONENT_CODENAME)/$(COMPONENT_VERSION)/+download/$(COMPONENT_ARCHIVE)
2810N/ACOMPONENT_PROJECT_URL= http://www.openstack.org/
4676N/ACOMPONENT_BUGDB= service/swift
2810N/A
6033N/ATPNO= 25793
3661N/A
3996N/Ainclude $(WS_MAKE_RULES)/prep.mk
3996N/Ainclude $(WS_MAKE_RULES)/setup.py.mk
3996N/Ainclude $(WS_MAKE_RULES)/ips.mk
2810N/A
2810N/AASLR_MODE = $(ASLR_NOT_APPLICABLE)
2810N/A
2810N/A# Since this is an app, and doesn't provide any public library interfaces, we
2810N/A# only need to deliver one version. The manifest is parameterized, though.
4623N/APYTHON_VERSIONS= 2.7
2810N/A
4070N/APKG_MACROS += COMPONENT_BE_VERSION=$(COMPONENT_BE_VERSION)
2810N/APKG_MACROS += PYVER=$(PYTHON_VERSIONS)
4070N/APKG_MACROS += PYV=$(shell echo $(PYTHON_VERSIONS) | tr -d .)
4070N/A
4070N/A#
6033N/A# All of the swift SMF manifests depend on swift-upgrade so copy them
4070N/A# into the proto directory for pkgdepend(1) to find.
4070N/A#
4070N/ACOMPONENT_POST_INSTALL_ACTION += \
6033N/A ($(MKDIR) $(PROTO_DIR)/lib/svc/manifest/application/openstack; \
6033N/A $(CP) \
6033N/A files/swift-*.xml \
6033N/A $(PROTO_DIR)/lib/svc/manifest/application/openstack)
2810N/A
2810N/ACOMPONENT_TEST_DIR = $(SOURCE_DIR)
2810N/ACOMPONENT_TEST_CMD = nosetests
3482N/ACOMPONENT_TEST_ENV += SWIFT_TEST_CONFIG_FILE=$(SWIFT_TEST_CONFIG_FILE)
6033N/ACOMPONENT_TEST_ARGS = \
6033N/A --with-xunit \
6033N/A --xunit-file=$(BUILD_DIR)/nosetests-$(MACH).xml \
6033N/A test/unit
2810N/A
2810N/A# common targets
2810N/Abuild: $(BUILD_NO_ARCH)
2810N/A
2810N/Ainstall: $(INSTALL_NO_ARCH)
2810N/A
2810N/Atest: $(TEST_NO_ARCH)
2810N/A
2810N/A
4312N/AREQUIRED_PACKAGES += cloud/openstack/openstack-common
4623N/AREQUIRED_PACKAGES += library/python/eventlet-27
4623N/AREQUIRED_PACKAGES += library/python/simplejson-27
4623N/AREQUIRED_PACKAGES += library/python/swiftclient-27
6033N/AREQUIRED_PACKAGES += network/rsync
3996N/AREQUIRED_PACKAGES += service/memcached
3996N/AREQUIRED_PACKAGES += system/core-os