Makefile revision 3909
281N/A#
281N/A# CDDL HEADER START
281N/A#
281N/A# The contents of this file are subject to the terms of the
281N/A# Common Development and Distribution License (the "License").
281N/A# You may not use this file except in compliance with the License.
281N/A#
281N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
281N/A# or http://www.opensolaris.org/os/licensing.
281N/A# See the License for the specific language governing permissions
281N/A# and limitations under the License.
281N/A#
281N/A# When distributing Covered Code, include this CDDL HEADER in each
281N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
281N/A# If applicable, add the following below this CDDL HEADER, with the
281N/A# fields enclosed by brackets "[]" replaced with your own identifying
281N/A# information: Portions Copyright [yyyy] [name of copyright owner]
281N/A#
281N/A# CDDL HEADER END
281N/A#
281N/A
281N/A#
844N/A# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
281N/A#
281N/A
281N/A# 14275946 parfait doesn't know about i, _imaginary_i
281N/APARFAIT_BUILD=no
281N/A
281N/Ainclude ../../make-rules/shared-macros.mk
618N/A
281N/ACOMPONENT_NAME= ImageMagick
281N/ACOMPONENT_VERSION= 6.8.3
844N/ACOMPONENT_SUBVERSION= 5
844N/AHUMAN_VERSION= $(COMPONENT_VERSION)-$(COMPONENT_SUBVERSION)
313N/ACOMPONENT_PROJECT_URL= http://www.imagemagick.org/
281N/ACOMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
281N/ACOMPONENT_ARCHIVE= $(COMPONENT_SRC)-$(COMPONENT_SUBVERSION).tar.gz
281N/ACOMPONENT_ARCHIVE_HASH= \
281N/A sha256:daead80170bc6d44cf6a54b4817446cbb7211b8ee445532b64033af190265fe3
281N/ACOMPONENT_ARCHIVE_URL= http://image_magick.veidrodis.com/image_magick/$(COMPONENT_ARCHIVE)
281N/ACOMPONENT_BUGDB= utility/imagemagick
281N/A
281N/Ainclude ../../make-rules/prep.mk
281N/Ainclude ../../make-rules/configure.mk
281N/Ainclude ../../make-rules/ips.mk
281N/A
281N/APATH=$(SPRO_VROOT)/bin:/usr/bin:/usr/gnu/bin
281N/A
281N/A# IPS_COMPONENT_VERSION is by default set to $(COMPONENT_VERSION) but in
281N/A# this case we need to replace the '-' by '.'.
281N/A#
281N/AIPS_COMPONENT_VERSION= $(COMPONENT_VERSION).$(COMPONENT_SUBVERSION)
281N/A
281N/ACOMPONENT_POST_UNPACK_ACTION= ( $(MV) $(COMPONENT_SRC)-$(COMPONENT_SUBVERSION) \
281N/A $(COMPONENT_SRC))
281N/A
281N/A# To get the Perl modules built it is necessary to copy the PerlMagick directory
281N/A# to the build directory
281N/A#
281N/ACOMPONENT_PRE_CONFIGURE_ACTION= ($(CP) -R $(SOURCE_DIR)/PerlMagick $(@D))
281N/A
281N/ALIBS += -lsocket -lnsl
281N/ACONFIGURE_ENV += LIBS="$(LIBS)"
281N/A
281N/A# Show name of "error tag" as part of the warning
281N/A#
281N/ACFLAGS += -errtags=yes
281N/A# To remove the complier complaints about __restrict keyword,
281N/A# -D_magickcore_restrict should be used.
281N/ACFLAGS += -xc99=%all -D_magickcore_restrict=
281N/A
281N/A# Needed to generate a decent RUNPATH for Magick.so
281N/A#
281N/ACOMPONENT_BUILD_ARGS += LD="$(CC)"
COMPONENT_BUILD_ARGS += LD_RUN_PATH="$(CONFIGURE_LIBDIR.$(BITS))"
CONFIGURE_OPTIONS+= CFLAGS="$(CFLAGS)"
CONFIGURE_OPTIONS+= CXXFLAGS="$(CXXFLAGS)"
CONFIGURE_OPTIONS+= --with-modules
CONFIGURE_OPTIONS+= --enable-shared=yes
CONFIGURE_OPTIONS+= --enable-static=no
CONFIGURE_OPTIONS+= --without-gvc
CONFIGURE_OPTIONS+= --disable-openmp
# Using option 'with-fontconfig=no' so that the fonts/fonts path specified in
# configuration file 'type-ghostscript.xml' is being used.
CONFIGURE_OPTIONS+= --with-fontconfig=no
# Configure option 'with-gs-font-dir' is required because some build systems might
# not have ghostscript fonts installed.
CONFIGURE_OPTIONS+= --with-gs-font-dir="/usr/share/ghostscript/fonts"
CONFIGURE_OPTIONS+= --x-libraries=$(CONFIGURE_LIBDIR.$(BITS))
CONFIGURE_OPTIONS.32+= --with-perl=$(PERL)
CONFIGURE_OPTIONS.32+= --with-perl-options="INSTALLDIRS=vendor"
CONFIGURE_OPTIONS.64+= --without-perl
# common targets
#
build: $(BUILD_32_and_64)
# Remove build machine runpath from libMagick++-6.Q16.so.1.0.0 and
# libMagickCore-6.Q16.so.1.0.0
install: $(INSTALL_32_and_64)
/usr/bin/elfedit -e 'dyn:delete RUNPATH' \
$(PROTO_DIR)/usr/lib/libMagick++-6.Q16.so.1.0.0; \
/usr/bin/elfedit -e 'dyn:delete RUNPATH' \
$(PROTO_DIR)/usr/lib/$(MACH64)/libMagick++-6.Q16.so.1.0.0; \
/usr/bin/elfedit -e 'dyn:delete RPATH' \
$(PROTO_DIR)/usr/lib/libMagick++-6.Q16.so.1.0.0; \
/usr/bin/elfedit -e 'dyn:delete RPATH' \
$(PROTO_DIR)/usr/lib/$(MACH64)/libMagick++-6.Q16.so.1.0.0
/usr/bin/elfedit -e 'dyn:delete RUNPATH' \
$(PROTO_DIR)/usr/lib/libMagickCore-6.Q16.so.1.0.0; \
/usr/bin/elfedit -e 'dyn:delete RUNPATH' \
$(PROTO_DIR)/usr/lib/$(MACH64)/libMagickCore-6.Q16.so.1.0.0; \
/usr/bin/elfedit -e 'dyn:delete RPATH' \
$(PROTO_DIR)/usr/lib/libMagickCore-6.Q16.so.1.0.0; \
/usr/bin/elfedit -e 'dyn:delete RPATH' \
$(PROTO_DIR)/usr/lib/$(MACH64)/libMagickCore-6.Q16.so.1.0.0
# ImageMagick tests have hard-coded absolute paths inside, so essentially they
# can be run only after ImageMagick is actually installed and this is not
# possible, so the tests are not invoked.
#
test: $(NO_TESTS)
@echo "Tests can be run only after ImageMagick is installed."
BUILD_PKG_DEPENDENCIES= $(BUILD_TOOLS)
include ../../make-rules/depend.mk