Makefile revision 5232
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove#
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# CDDL HEADER START
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove#
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# The contents of this file are subject to the terms of the
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# Common Development and Distribution License (the "License").
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# You may not use this file except in compliance with the License.
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove#
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# or http://www.opensolaris.org/os/licensing.
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# See the License for the specific language governing permissions
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# and limitations under the License.
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove#
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# When distributing Covered Code, include this CDDL HEADER in each
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# If applicable, add the following below this CDDL HEADER, with the
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# fields enclosed by brackets "[]" replaced with your own identifying
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# information: Portions Copyright [yyyy] [name of copyright owner]
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove#
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# CDDL HEADER END
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove#
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove#
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Groveinclude ../../make-rules/shared-macros.mk
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_NAME = lcms2
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_VERSION= 2.7
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_PROJECT_URL= http://www.littlecms.com/
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_ARCHIVE_HASH= \
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove sha256:4524234ae7de185e6b6da5d31d6875085b2198bc63b1211f7dde6e2d197d6a53
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_ARCHIVE_URL= http://sourceforge.net/projects/lcms/files/lcms/$(COMPONENT_VERSION)/$(COMPONENT_ARCHIVE)
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_BUGDB= utility/lcms
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveTPNO= 25712
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Groveinclude $(WS_MAKE_RULES)/prep.mk
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Groveinclude $(WS_MAKE_RULES)/configure.mk
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Groveinclude $(WS_MAKE_RULES)/ips.mk
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Groveinclude $(WS_MAKE_RULES)/lint-libraries.mk
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# In order to run the tests, we need to use cloney
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_PRE_CONFIGURE_ACTION = ($(CLONEY) $(SOURCE_DIR) $(@D))
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# Seems that we have no other way to designate that we want large file support.
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCFLAGS += $(CPP_LARGEFILES)
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCONFIGURE_BINDIR.64 = $(CONFIGURE_PREFIX)/bin
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCONFIGURE_ENV += CFLAGS="$(CFLAGS)"
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCONFIGURE_ENV += PKG_CONFIG_PATH="$(PKG_CONFIG_PATH)"
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCONFIGURE_OPTIONS += --includedir=/usr/include/lcms
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCONFIGURE_OPTIONS += --enable-shared
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCONFIGURE_OPTIONS += --disable-static
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCONFIGURE_OPTIONS += --with-jpeg
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCONFIGURE_OPTIONS += --with-tiff
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCONFIGURE_OPTIONS += --with-zlib
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCONFIGURE_OPTIONS += --with-pic
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_POST_INSTALL_ACTION += \
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove $(CP) $(SOURCE_DIR)/utils/linkicc/linkicc.1 $(PROTOUSRSHAREMAN1DIR) ;
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_POST_INSTALL_ACTION += \
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove $(CP) $(SOURCE_DIR)/utils/psicc/psicc.1 $(PROTOUSRSHAREMAN1DIR) ;
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_POST_INSTALL_ACTION += \
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove $(CP) $(SOURCE_DIR)/utils/transicc/transicc.1 $(PROTOUSRSHAREMAN1DIR) ;
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# Needed to get past trying to copy identical files because the top_srcdir
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove# is not the same as the top_builddir.
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_TEST_ARGS = -k -i
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_TEST_DIR = $(@D)/testbed
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_TEST_MASTER = $(COMPONENT_TEST_RESULTS_DIR)/results-all.master
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveCOMPONENT_TEST_TRANSFORMS += \
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove '-e "s|^.*test bed.*$$|XXX_REMOVE_XXX|g" ' \
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove '-e "s|^.*MPixel.*$$|XXX_REMOVE_XXX|g" ' \
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove '-e "s|^.*Single block hit.*$$|XXX_REMOVE_XXX|g" ' \
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove '-e "s|^.*$(CC).*$$|XXX_REMOVE_XXX|g" ' \
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove '-e "s|^.*source=.*libtool=no.*$$|XXX_REMOVE_XXX|g" ' \
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove '-e "s|^.*DEPDIR=.deps.*$$|XXX_REMOVE_XXX|g" ' \
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove '-e "s|^make.*: Leaving directory.*$$|XXX_REMOVE_XXX|g" ' \
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove '-e "s|^make.*: Entering directory.*$$|XXX_REMOVE_XXX|g" ' \
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove '-e "/^XXX_REMOVE_XXX$$/d" '
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveASLR_MODE = $(ASLR_ENABLE)
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Groveconfigure: $(CONFIGURE_32_and_64)
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grovebuild: $(BUILD_32_and_64)
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Groveinstall: $(INSTALL_32_and_64)
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grovetest: $(TEST_32_and_64)
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grovesystem-test: $(SYSTEM_TESTS_NOT_IMPLEMENTED)
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveREQUIRED_PACKAGES += image/library/libjpeg
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveREQUIRED_PACKAGES += image/library/libtiff
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveREQUIRED_PACKAGES += system/library
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan GroveREQUIRED_PACKAGES += system/library/math
1b7d9ee6f1128c8cb5e16c3a11ba045998296171Ryan Grove