5889N/A#
5889N/A# CDDL HEADER START
5889N/A#
5889N/A# The contents of this file are subject to the terms of the
5889N/A# Common Development and Distribution License (the "License").
5889N/A# You may not use this file except in compliance with the License.
5889N/A#
5889N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
5889N/A# or http://www.opensolaris.org/os/licensing.
5889N/A# See the License for the specific language governing permissions
5889N/A# and limitations under the License.
5889N/A#
5889N/A# When distributing Covered Code, include this CDDL HEADER in each
5889N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
5889N/A# If applicable, add the following below this CDDL HEADER, with the
5889N/A# fields enclosed by brackets "[]" replaced with your own identifying
5889N/A# information: Portions Copyright [yyyy] [name of copyright owner]
5889N/A#
5889N/A# CDDL HEADER END
5889N/A#
5889N/A
5889N/A#
5889N/A# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
5889N/A#
5889N/A
5889N/ACOMPILER = gcc
5889N/ABUILD_BITS = 32_and_64
5889N/Ainclude ../../../make-rules/shared-macros.mk
5889N/A
5889N/ACOMPONENT_NAME= glib
5889N/ACOMPONENT_VERSION= 2.46.0
5889N/ACOMPONENT_PROJECT_URL= https://wiki.gnome.org/Projects/GLib/
5889N/ACOMPONENT_ARCHIVE_HASH= \
5889N/A sha256:b1cee83469ae7d80f17c267c37f090414e93960bd62d2b254a5a96fbc5baacb4
5889N/ACOMPONENT_BUGDB= gnome/glib
5889N/A
5889N/ATPNO= 24986
5889N/A
5889N/A# No need to build for older versions.
5889N/APYTHON_VERSIONS= 3.4
5889N/A
5889N/Ainclude $(WS_MAKE_RULES)/gnome-component.mk
5889N/A
5889N/A# Necessary to ensure patches applied to configure.ac take effect.
5889N/ACOMPONENT_PREP_ACTION += ( cd $(@D); NOCONFIGURE=1 $(CONFIG_SHELL) autogen.sh );
5889N/A
5889N/ACFLAGS += $(CPP_XPG6MODE)
5889N/ACFLAGS.gcc += -std=gnu11
5889N/ACFLAGS.studio += -std=c11 -xlang=c11
5889N/A
6279N/A# using the setting from shared-macros.mk results in 23665701
6279N/A# overriding it here till we can get gdm rebuilt
6279N/Agcc_STACK_ALIGN.i386.32 =
6279N/A
5889N/A# Disabled by default (temporarily disabled here because it significantly
5889N/A# increases build time).
5889N/ACONFIGURE_OPTIONS += --disable-gtk-doc
5889N/A
5889N/A# Building dtrace probes doesn't work correctly (results in undefined symbols
5889N/A# in programs), disable until we can figure out how to fix.
5889N/ACONFIGURE_OPTIONS += --disable-dtrace
5889N/A
5889N/A# The build process modifies the shebang line to use the version of Python
5889N/A# automatically found; to avoid using the current system default, one is
5889N/A# explicitly specified here.
5889N/ACONFIGURE_OPTIONS += --with-python=$(PYTHON.3.4)
5889N/A
5889N/A# Configure doesn't find this since it's not in $PATH
5889N/ACONFIGURE_OPTIONS += DBUS_DAEMON=/usr/lib/dbus-daemon
5889N/A
5889N/A# configure sets this to gcc's -fvisibility=hidden, replace with correct
5889N/A# flag for Studio builds
5889N/ACOMPONENT_BUILD_ARGS.studio += GLIB_HIDDEN_VISIBILITY_CFLAGS='-xldscope=hidden'
5889N/ACOMPONENT_BUILD_ARGS += $(COMPONENT_BUILD_ARGS.$(COMPILER))
5889N/A
5889N/A# Assumes GNU msgfmt in PATH.
5889N/A# Need to include /usr/sbin so configure can find dtrace
5889N/ACONFIGURE_ENV += PATH="$(PATH):/usr/sbin"
5889N/ACOMPONENT_BUILD_ENV += PATH="$(GNUBIN):$(PATH):/usr/sbin"
5889N/A
6100N/A# Make sure SMF manifests are valid
6100N/A$(BUILD_DIR)/.validated-smf-manifests-$(MACH): $(BUILD_DIR)
6100N/A @for f in files/*.xml ; do \
6100N/A (set -ex ; /usr/sbin/svccfg validate "$$f") ; \
6100N/A done
6100N/A $(TOUCH) $@
6100N/A
6100N/Avalidate-smf: $(BUILD_DIR)/.validated-smf-manifests-$(MACH)
6100N/Abuild: $(BUILD_DIR)/.validated-smf-manifests-$(MACH)
6100N/A
5889N/A# Needed for "gmake test" to work successfully.
5889N/A# If SHELLOPTS is exported (as it is by the userland makefiles),
5889N/A# then all shell options get exported to child invocations of bash,
5889N/A# which results in test failures due to nounset and xtrace being
5889N/A# set unexpectedly, and errors such as "$1: unbound variable" and
5889N/A# diffs failing due to script tracing in output files.
5889N/Aunexport SHELLOPTS
5889N/A
5889N/A# Strip random seeds from glib tests that use different values each run
5889N/ACOMPONENT_TEST_TRANSFORMS += \
5889N/A '-e "s/seed:[0-9]*/seed:/"'
5889N/A
5889N/A# Strip filenames that are reported in different order between runs
5889N/ACOMPONENT_TEST_TRANSFORMS += \
5889N/A '-e "s%/bookmarks/parse/.*%%"' \
5889N/A '-e "s%/markup/parse/.*%%"' \
5889N/A
5889N/A# Standard automake test framework results transform
5889N/ACOMPONENT_TEST_TRANSFORMS += \
5889N/A '-n ' \
5889N/A '-e "/TOTAL/p" ' \
5889N/A '-e "/SKIP/p" ' \
5889N/A '-e "/PASS/p" ' \
5889N/A '-e "/FAIL/p" ' \
5889N/A '-e "/ERROR/p" '
5889N/A
5889N/AREQUIRED_PACKAGES += data/docbook
5889N/AREQUIRED_PACKAGES += developer/documentation-tool/gtk-doc
5889N/AREQUIRED_PACKAGES += library/file-monitor/gamin
5889N/AREQUIRED_PACKAGES += library/libffi
5889N/AREQUIRED_PACKAGES += library/pcre
5889N/AREQUIRED_PACKAGES += library/zlib
5889N/AREQUIRED_PACKAGES += $(PERL_PKG)
5889N/AREQUIRED_PACKAGES += runtime/python-34
6100N/AREQUIRED_PACKAGES += system/core-os
5889N/AREQUIRED_PACKAGES += system/library/dbus
5889N/AREQUIRED_PACKAGES += system/library/gcc/gcc-c-runtime