6322N/A#
6322N/A# CDDL HEADER START
6322N/A#
6322N/A# The contents of this file are subject to the terms of the
6322N/A# Common Development and Distribution License (the "License").
6322N/A# You may not use this file except in compliance with the License.
6322N/A#
6322N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
6322N/A# or http://www.opensolaris.org/os/licensing.
6322N/A# See the License for the specific language governing permissions
6322N/A# and limitations under the License.
6322N/A#
6322N/A# When distributing Covered Code, include this CDDL HEADER in each
6322N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
6322N/A# If applicable, add the following below this CDDL HEADER, with the
6322N/A# fields enclosed by brackets "[]" replaced with your own identifying
6322N/A# information: Portions Copyright [yyyy] [name of copyright owner]
6322N/A#
6322N/A# CDDL HEADER END
6322N/A#
6322N/A
6322N/A#
6322N/A# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
6322N/A#
6322N/A
6322N/A# gobject-introspection bindings are only built correctly for gtk when building
6322N/A# with gcc, this would otherwise build with Studio.
6322N/ACOMPILER = gcc
6955N/ABUILD_BITS = 64_and_32
6322N/Ainclude ../../../make-rules/shared-macros.mk
6322N/A
6322N/ACOMPONENT_NAME= pygobject
6322N/ACOMPONENT_VERSION= 3.18.2
6322N/ACOMPONENT_PROJECT_URL= https://wiki.gnome.org/Projects/PyGObject
6322N/ACOMPONENT_ARCHIVE_HASH= \
6322N/A sha256:2a3cad1517916b74e131e6002c3824361aee0671ffb0d55ded119477fc1c2c5f
6955N/ACOMPONENT_BUGDB= gnome/libraries
6322N/A
6322N/ATPNO= 25832
6322N/A
6322N/A# Needs gobject-introspection >= 1.39.0, which is not available on S11.
6322N/Aifeq ($(BUILD_TYPE), evaluation)
6322N/ABUILD_32_and_64=
6322N/AINSTALL_32_and_64=
6322N/APUBLISH_STAMP=
6322N/Aendif
6322N/A
6955N/A# replicated from $(WS_MAKE_RULES)/setup.py.mk since this uses configure.mk
6955N/ACONFIGURE_64 += $(PYTHON3_VERSIONS:%=$(BUILD_DIR)/$(MACH64)-%/.configured)
6955N/A$(BUILD_DIR)/%-3.4/.configured: PYTHON_VERSION=3.4
6955N/A$(BUILD_DIR)/%-3.4/.configured: PYTHON_VENDOR_PACKAGES=$(PYTHON_VENDOR_PACKAGES.32)
6955N/A$(BUILD_DIR)/%-3.5/.configured: PYTHON_VERSION=3.5
6955N/A$(BUILD_DIR)/%-3.5/.configured: PYTHON_VENDOR_PACKAGES=$(PYTHON_VENDOR_PACKAGES.32)
6955N/A$(BUILD_DIR)/$(MACH64)-%/.configured: BITS=64
6955N/A
6955N/ABUILD_64 += $(PYTHON3_VERSIONS:%=$(BUILD_DIR)/$(MACH64)-%/.built)
6955N/A$(BUILD_DIR)/%-3.4/.built: PYTHON_VERSION=3.4
6955N/A$(BUILD_DIR)/%-3.5/.built: PYTHON_VERSION=3.5
6955N/A$(BUILD_DIR)/$(MACH64)-%/.built: BITS=64
6955N/A
6955N/AINSTALL_64 += $(PYTHON3_VERSIONS:%=$(BUILD_DIR)/$(MACH64)-%/.installed)
6955N/A$(BUILD_DIR)/%-3.4/.installed: PYTHON_VERSION=3.4
6955N/A$(BUILD_DIR)/%-3.5/.installed: PYTHON_VERSION=3.5
6955N/A$(BUILD_DIR)/$(MACH64)-%/.installed: BITS=64
6322N/A
6322N/A# Tests do not yet work with Userland framework - 23712631
6322N/ATEST_TARGET= $(SKIP_TEST)
6322N/Ainclude $(WS_MAKE_RULES)/gnome-component.mk
6322N/A
6322N/A# Required due to patch to configure.ac.
6322N/ACOMPONENT_PREP_ACTION += ( cd $(@D) ; NOCONFIGURE=1 $(CONFIG_SHELL) autogen.sh );
6322N/A
6322N/A# Needs -std=c99 at minimum for 'NAN', etc.
6322N/ACFLAGS += -std=c11
6322N/A
6322N/ACONFIGURE_OPTIONS += --disable-static
6322N/A
6322N/A# The build process modifies the shebang line to use the version of Python
6322N/A# automatically found; to avoid using the current system default, one is
6322N/A# explicitly specified here.
6322N/ACONFIGURE_OPTIONS += --with-python=$(PYTHON)
6322N/A
6322N/A# Ensure Python modules are installed into vendor package directories.
6322N/ACONFIGURE_ENV += am_cv_python_pythondir=$(PYTHON_VENDOR_PACKAGES)
6322N/ACONFIGURE_ENV += am_cv_python_pyexecdir=$(PYTHON_VENDOR_PACKAGES)
6322N/A
6955N/A# Temporary until build machines install pycairo for python3
6955N/APYCAIRO_BASE = $(WS_COMPONENTS)/python/pycairo/build/prototype/$(MACH)
6955N/APKG_CONFIG_PATHS += $(PYCAIRO_BASE)$(PKG_CONFIG_DEFAULT)
6955N/ACPPFLAGS += -I $(PYCAIRO_BASE)/usr/include/pycairo
6955N/A
6955N/A# Override $(PYTHON) for configure step so that configure can find
6955N/A# $(PYTHON)-config properly
6955N/A$(BUILD_DIR)/%-3.4/.configured: PYTHON=$(PYTHON.3.4)m
6955N/A$(BUILD_DIR)/%-3.5/.configured: PYTHON=$(PYTHON.3.5)m
6955N/A
6955N/A# Make install path match what autopyc transforms look for
6955N/ACOMPONENT_POST_INSTALL_ACTION += \
6955N/A case "$(PYTHON_VERSION)" in \
6955N/A 2.7) $(MKDIR) $(PROTO_DIR)$(PYTHON_VENDOR_PACKAGES.32)/gi ; \
6955N/A $(SYMLINK) ../64/gi $(PROTO_DIR)$(PYTHON_VENDOR_PACKAGES.32)/gi/64 ;; \
6955N/A 3.4) $(SYMLINK) . $(PROTO_DIR)$(PYTHON_VENDOR_PACKAGES.32)/gi/64 ;; \
6955N/A esac ;
6955N/A
6322N/AREQUIRED_PACKAGES += library/desktop/cairo
6322N/AREQUIRED_PACKAGES += library/desktop/gobject/gobject-introspection
6322N/AREQUIRED_PACKAGES += library/glib2
6322N/AREQUIRED_PACKAGES += library/libffi
6322N/AREQUIRED_PACKAGES += library/python/pycairo-27
6322N/A# Pyflakes is needed for tests, but not build or install
6322N/AREQUIRED_PACKAGES += library/python/pyflakes
6322N/AREQUIRED_PACKAGES += runtime/python-27
6955N/AREQUIRED_PACKAGES += runtime/python-34
6955N/AREQUIRED_PACKAGES += runtime/python-35