Makefile revision 5942
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster#
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# CDDL HEADER START
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster#
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# The contents of this file are subject to the terms of the
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# Common Development and Distribution License (the "License").
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# You may not use this file except in compliance with the License.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster#
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# or http://www.opensolaris.org/os/licensing.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# See the License for the specific language governing permissions
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# and limitations under the License.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster#
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# When distributing Covered Code, include this CDDL HEADER in each
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# If applicable, add the following below this CDDL HEADER, with the
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# fields enclosed by brackets "[]" replaced with your own identifying
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# information: Portions Copyright [yyyy] [name of copyright owner]
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster#
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# CDDL HEADER END
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster#
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster#
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster#
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# All components using gobject-introspection must be built with gcc as
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# gobject-introspection does not produce correct results when using Studio.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterCOMPILER= gcc
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterBUILD_BITS = 32_and_64
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterinclude ../../../make-rules/shared-macros.mk
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterCOMPONENT_NAME= gdk-pixbuf
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterCOMPONENT_VERSION= 2.32.1
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterCOMPONENT_PROJECT_URL= https://wiki.gnome.org/Projects/GdkPixbuf
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterCOMPONENT_ARCHIVE_HASH= \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster sha256:4432b74f25538c7d6bcb3ca51adabdd666168955f25812a2568dc9637697f3bc
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterTPNO= 24751
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterSYSTEM_TEST_TARGET= $(SYSTEM_TESTS_NOT_IMPLEMENTED)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterinclude $(WS_MAKE_RULES)/gnome-component.mk
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# Requires a reconf due to patch to configure.ac.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterCOMPONENT_PREP_ACTION += (cd $(@D); autoreconf -fiv);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# Requires gtk-doc >= 1.20, enable after that's available on build machines
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# CONFIGURE_OPTIONS += --enable-gtk-doc
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# Required for other components.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterCONFIGURE_OPTIONS += --enable-introspection
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# Build gdk-pixbuf-xlib required by xscreensaver & other software
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterCONFIGURE_OPTIONS += --with-x11
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# Workaround for build failures due to gdk-pixbuf Makefiles not passing CFLAGS
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# or LDFLAGS, especially the -m32/64 flag, to g-ir-scanner
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterCOMPONENT_BUILD_ENV += CFLAGS="$(strip $(CFLAGS))"
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterCOMPONENT_BUILD_ENV += LDFLAGS="$(strip $(LDFLAGS))"
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# Generate and install architecture-specific configuration files that define
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# the set of plugins available.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterPROTOLCACHEDIR.32= $(PROTO_DIR)/$(USRLIB.32)/gdk-pixbuf-2.0/2.10.0
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterPROTOLCACHEDIR.64= $(PROTO_DIR)/$(USRLIB.64)/gdk-pixbuf-2.0/2.10.0
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterPROTOLCACHECONF.32= $(PROTOLCACHEDIR.32)/loaders.cache
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterPROTOLCACHECONF.64= $(PROTOLCACHEDIR.64)/loaders.cache
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster$(PROTOLCACHECONF.32):
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster $(MKDIR) $(PROTOLCACHEDIR.32); \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster LD_LIBRARY_PATH="$(PROTO_DIR)/$(USRLIB.32):$(GLIB_LD_LIBRARY_PATH)" \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster $(PROTO_DIR)/$(USRBIN.32)/gdk-pixbuf-query-loaders \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster $(PROTOLCACHEDIR.32)/loaders/*.so | \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster $(GSED) -e "s#$(PROTO_DIR)/##" > $(PROTOLCACHECONF.32)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster$(PROTOLCACHECONF.64):
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster $(MKDIR) $(PROTOLCACHEDIR.64); \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster LD_LIBRARY_PATH="$(PROTO_DIR)/$(USRLIB.64):$(GLIB_LD_LIBRARY_PATH)" \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster $(PROTO_DIR)/$(USRBIN.64)/gdk-pixbuf-query-loaders \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster $(PROTOLCACHEDIR.64)/loaders/*.so | \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster $(GSED) -e "s#$(PROTO_DIR)/##" > $(PROTOLCACHECONF.64)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterinstall: $(PROTOLCACHECONF.32) $(PROTOLCACHECONF.64)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# Needed for "gmake test" to work successfully.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterunexport SHELLOPTS
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# pixbuf-randomly-modified tests have a different random suffix each time,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# so strip that out to allow repeatable comparisons
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterCOMPONENT_TEST_TRANSFORMS += \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster '-e "s%/pixbuf/randomly-modified/.*%/pixbuf/randomly-modified/...%"'
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# Standard automake test framework results transform
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterCOMPONENT_TEST_TRANSFORMS += \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster '-n ' \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster '-e "/TOTAL/p" ' \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster '-e "/SKIP/p" ' \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster '-e "/PASS/p" ' \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster '-e "/FAIL/p" ' \
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster '-e "/ERROR/p" '
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster# Requires >= 2.69 autoconf
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterREQUIRED_PACKAGES += image/library/libjpeg
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterREQUIRED_PACKAGES += image/library/libpng
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterREQUIRED_PACKAGES += image/library/libtiff
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterREQUIRED_PACKAGES += library/desktop/gobject/gobject-introspection
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterREQUIRED_PACKAGES += library/glib2
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterREQUIRED_PACKAGES += system/library/math
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan FosterREQUIRED_PACKAGES += x11/library/libx11
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster