Makefile revision 1258
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley#
b0e8629055a766d4555a005a283c2889a5974945Mark Andrews# CDDL HEADER START
75c0816e8295e180f4bc7f10db3d0d880383bc1cMark Andrews#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# The contents of this file are subject to the terms of the
4a14ce5ba00ab7bc55c99ffdcf59c7a4ab902721Automatic Updater# Common Development and Distribution License (the "License").
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley# You may not use this file except in compliance with the License.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
8a66318e41ed14c5a88130e8c362610e8faa2121Mark Andrews# or http://www.opensolaris.org/os/licensing.
8a66318e41ed14c5a88130e8c362610e8faa2121Mark Andrews# See the License for the specific language governing permissions
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# and limitations under the License.
8a66318e41ed14c5a88130e8c362610e8faa2121Mark Andrews#
8a66318e41ed14c5a88130e8c362610e8faa2121Mark Andrews# When distributing Covered Code, include this CDDL HEADER in each
8a66318e41ed14c5a88130e8c362610e8faa2121Mark Andrews# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
8a66318e41ed14c5a88130e8c362610e8faa2121Mark Andrews# If applicable, add the following below this CDDL HEADER, with the
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley# fields enclosed by brackets "[]" replaced with your own identifying
4a14ce5ba00ab7bc55c99ffdcf59c7a4ab902721Automatic Updater# information: Portions Copyright [yyyy] [name of copyright owner]
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# CDDL HEADER END
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
e21a2904f02a03fa06b6db04d348f65fe9c67b2bMark Andrews#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininclude ../../make-rules/shared-macros.mk
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# The archive untars to directory without the '-2' suffix, so
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# COMPONENT_SUBVERSION had to be introduced
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_NAME= ImageMagick
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_VERSION= 6.3.4
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_SUBVERSION= 2
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinHUMAN_VERSION= $(COMPONENT_VERSION)-$(COMPONENT_SUBVERSION)
b0e8629055a766d4555a005a283c2889a5974945Mark AndrewsCOMPONENT_PROJECT_URL= http://www.imagemagick.org/
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_ARCHIVE= $(COMPONENT_SRC)-$(COMPONENT_SUBVERSION).tar.gz
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_ARCHIVE_HASH= \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein sha256:25fb373ac3889e81555e5b48c8a22a3deabeac8b6129387cec9dc7e13804914e
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_ARCHIVE_URL= http://image_magick.veidrodis.com/image_magick/$(COMPONENT_ARCHIVE)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_BUGDB= utility/imagemagick
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininclude ../../make-rules/prep.mk
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininclude ../../make-rules/configure.mk
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininclude ../../make-rules/ips.mk
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinPATH=$(SPRO_VROOT)/bin:/usr/bin:/usr/gnu/bin
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
c247e3f281613fabe1af362e9f3157e35ebbe52cMark Andrews# IPS_COMPONENT_VERSION is by default set to $(COMPONENT_VERSION) but in
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# this case we need to replace the '-' by '.'.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinIPS_COMPONENT_VERSION= $(COMPONENT_VERSION).$(COMPONENT_SUBVERSION)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# The archive contains pre-generated magick-config.h header, which is later on
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# being used and the build fails. However, we want to use the header generated
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# by configure from BUILD_DIR_32 / BUILD_DIR_64 directory, so the pre-generated
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# header file needs to be deleted.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_PREP_ACTION= (cd $(@D) ; $(RM) magick/magick-config.h)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# To get the Perl modules built it is necessary to copy the PerlMagick directory
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# to the build directory
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
b0e8629055a766d4555a005a283c2889a5974945Mark AndrewsCOMPONENT_PRE_CONFIGURE_ACTION= ($(CP) -R $(SOURCE_DIR)/PerlMagick $(@D); cd $(SOURCE_DIR); $(AUTORECONF) -f)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Show name of "error tag" as part of the warning
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCFLAGS+= -errtags
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Needed to generate a decent RUNPATH for Magick.so
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_BUILD_ARGS += LD="$(CC)"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_BUILD_ARGS += LD_RUN_PATH="$(CONFIGURE_LIBDIR.$(BITS))"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS+= CFLAGS="$(CFLAGS)"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS+= CXXFLAGS="$(CXXFLAGS)"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS+= --with-modules
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS+= --enable-shared=yes
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS+= --enable-static=no
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS+= --without-gvc
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS+= --x-libraries=$(CONFIGURE_LIBDIR.$(BITS))
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS.32+= --with-perl=$(PERL)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS.32+= --with-perl-options="INSTALLDIRS=vendor"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS.64+= --without-perl
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# common targets
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinbuild: $(BUILD_32_and_64)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininstall: $(INSTALL_32_and_64)
1224c3b69b3d18f7127aa042644936af25a2d679Mark Andrews
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# ImageMagick tests have hard-coded absolute paths inside, so essentially they
1224c3b69b3d18f7127aa042644936af25a2d679Mark Andrews# can be run only after ImageMagick is actually installed and this is not
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# possible, so the tests are not invoked.
1224c3b69b3d18f7127aa042644936af25a2d679Mark Andrews#
1224c3b69b3d18f7127aa042644936af25a2d679Mark Andrewstest: $(NO_TESTS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein @echo "Tests can be run only after ImageMagick is installed."
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinBUILD_PKG_DEPENDENCIES= $(BUILD_TOOLS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininclude ../../make-rules/depend.mk
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein