components/graphviz/Makefile
author Danek Duvall <danek.duvall@oracle.com>
Wed, 23 Jul 2014 16:54:28 -0700
changeset 2010 cb03afa45934
parent 1948 2d1537e7942d
child 2225 f064d3d3190d
permissions -rw-r--r--
18685168 graphviz should move to ruby 1.9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
457
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     1
#
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     2
# CDDL HEADER START
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     3
#
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     4
# The contents of this file are subject to the terms of the
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     5
# Common Development and Distribution License (the "License").
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     6
# You may not use this file except in compliance with the License.
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     7
#
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     8
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
     9
# or http://www.opensolaris.org/os/licensing.
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    10
# See the License for the specific language governing permissions
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    11
# and limitations under the License.
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    12
#
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    13
# When distributing Covered Code, include this CDDL HEADER in each
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    14
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    15
# If applicable, add the following below this CDDL HEADER, with the
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    16
# fields enclosed by brackets "[]" replaced with your own identifying
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    17
# information: Portions Copyright [yyyy] [name of copyright owner]
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    18
#
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    19
# CDDL HEADER END
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    20
#
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    21
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    22
#
1948
2d1537e7942d 18978320 Userland components should specify TPNOs in Makefiles instead of pkg manifests
John Beck <John.Beck@Oracle.COM>
parents: 1482
diff changeset
    23
# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
457
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    24
#
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    25
2010
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    26
PERL_VERSION =		5.16
457
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    27
include ../../make-rules/shared-macros.mk
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    28
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    29
COMPONENT_NAME=		graphviz
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    30
COMPONENT_VERSION=	2.28.0
609
775168282b2f 7037821 Userland migration of data from Makefile to manifest may have been a little overzealous
Rich Burridge <rich.burridge@oracle.com>
parents: 457
diff changeset
    31
COMPONENT_PROJECT_URL=	http://www.graphviz.org/
457
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    32
COMPONENT_SRC=		$(COMPONENT_NAME)-$(COMPONENT_VERSION)
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    33
COMPONENT_ARCHIVE=	$(COMPONENT_SRC).tar.gz
800
2ad056ed89ec 7163771 sha1 should not be used in userland-fetch and userland component/*/Makefile
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 706
diff changeset
    34
COMPONENT_ARCHIVE_HASH=	\
2ad056ed89ec 7163771 sha1 should not be used in userland-fetch and userland component/*/Makefile
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 706
diff changeset
    35
    sha256:d3aa7973c578cae4cc26d9d6498c57ed06680cab9a4e940d0357a3c6527afc76
609
775168282b2f 7037821 Userland migration of data from Makefile to manifest may have been a little overzealous
Rich Burridge <rich.burridge@oracle.com>
parents: 457
diff changeset
    36
COMPONENT_ARCHIVE_URL=	$(COMPONENT_PROJECT_URL)pub/graphviz/stable/SOURCES/$(COMPONENT_ARCHIVE)
1058
34d7aaa03423 15886624 Auto-generation of Userland gate list - Phase 3
Rich Burridge <rich.burridge@oracle.com>
parents: 938
diff changeset
    37
COMPONENT_BUGDB=	utility/graphviz
457
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    38
1948
2d1537e7942d 18978320 Userland components should specify TPNOs in Makefiles instead of pkg manifests
John Beck <John.Beck@Oracle.COM>
parents: 1482
diff changeset
    39
TPNO=			17707
2d1537e7942d 18978320 Userland components should specify TPNOs in Makefiles instead of pkg manifests
John Beck <John.Beck@Oracle.COM>
parents: 1482
diff changeset
    40
457
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    41
include ../../make-rules/prep.mk
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    42
include ../../make-rules/configure.mk
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    43
include ../../make-rules/ips.mk
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    44
2010
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    45
PATH =		/usr/php/5.3/bin:/usr/bin:/usr/gnu/bin
457
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    46
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    47
# GMP header files for the guile extension (no --with- flag)
2010
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    48
# The guile build is broken with studio (15732452), so we disable this for now.
457
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    49
# CPPFLAGS +=	-I/usr/include/gmp
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    50
# Java header files (--with-javaincludedir allows for only one directory)
938
2c2880af6a0b 7187873 graphviz isn't using the right java header files
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 800
diff changeset
    51
CPPFLAGS +=	-I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/solaris
457
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    52
# PHP header files (no --with- flag)
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    53
CPPFLAGS +=	$(shell PATH=$(PATH) php-config --includes)
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    54
CXX +=		$(studio_NORUNPATH)
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    55
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    56
CONFIGURE_ENV +=	CPPFLAGS="$(CPPFLAGS)"
2010
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    57
CONFIGURE_ENV +=	CFLAGS="$(CFLAGS)"
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    58
CONFIGURE_ENV +=	CXXFLAGS="$(CXXFLAGS)"
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    59
# Make sure to use the right python, depending on the 32/64-bit build.
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    60
CONFIGURE_ENV +=	PYTHON26=$(PYTHON.2.6)
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    61
CONFIGURE_ENV +=	PYTHON27=$(PYTHON.2.7)
457
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    62
CONFIGURE_OPTIONS +=	--without-included-ltdl
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    63
CONFIGURE_OPTIONS +=	--enable-python=no
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    64
CONFIGURE_OPTIONS +=	--enable-python26=yes
706
6e61f0012046 7108059 Userland should have python2.7 version of its python modules
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 683
diff changeset
    65
CONFIGURE_OPTIONS +=	--enable-python27=yes
623
15f87c23a86e 7109831 userland pkglint should audit runpaths
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 609
diff changeset
    66
CONFIGURE_OPTIONS +=	--x-libraries=$(CONFIGURE_LIBDIR.$(BITS))
457
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    67
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    68
COMPONENT_BUILD_ARGS += 	GREP=/usr/bin/ggrep
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    69
2010
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    70
# Both perl and ruby ship 64-bit only.
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    71
$(CONFIGURE_32): CONFIGURE_OPTIONS +=	--enable-perl=no
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    72
$(CONFIGURE_32): CONFIGURE_OPTIONS +=	--enable-ruby=no
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    73
$(CONFIGURE_64): CONFIGURE_ENV +=	PERL=$(PERL)
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    74
$(CONFIGURE_64): CONFIGURE_ENV +=	RUBY=$(RUBY.1.9)
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    75
# PHP ships 32-bit only.
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    76
$(CONFIGURE_64): CONFIGURE_OPTIONS +=	--enable-php=no
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    77
$(INSTALL_64): COMPONENT_INSTALL_ARGS += PHP_INSTALL_DIR=$(shell PATH=$(PATH) php-config --extension-dir)
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    78
# tcl ships both 32 and 64 bit, but even though /usr/bin/tclsh is 64-bit, there
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    79
# is no place to stick 64-bit modules, so skip it.  On the other hand, make
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    80
# sure to find the right tcl bits when building 32-bit.
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    81
$(CONFIGURE_64): CONFIGURE_OPTIONS +=	--enable-tcl=no
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    82
$(CONFIGURE_32): CONFIGURE_OPTIONS +=	--with-tclsh=/usr/bin/$(MACH32)/tclsh
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    83
$(CONFIGURE_32): CONFIGURE_ENV += 	TCLCONFIG=/usr/lib/tclConfig.sh
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    84
# Put the 64-bit lua module in a 64-bit directory.
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    85
$(INSTALL_32): COMPONENT_INSTALL_ARGS += LUA_INSTALL_DIR=/usr/lib/lua/5.2
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    86
$(INSTALL_64): COMPONENT_INSTALL_ARGS += LUA_INSTALL_DIR=/usr/lib/lua/5.2/64
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    87
# Use GNU ln, which supports the -r (--relative) option.
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    88
COMPONENT_INSTALL_ARGS += LN_S="gln -s"
457
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    89
2010
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    90
ASLR_MODE = $(ASLR_ENABLE)
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    91
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    92
# We build 32 and 64 bit because we build libraries, and we build modules for
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    93
# runtimes which provide 64 or 32 (or both) bit environments.
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    94
build:		$(BUILD_32_and_64)
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    95
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    96
install:	$(INSTALL_32_and_64)
457
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
    97
	env LD_LIBRARY_PATH=$(PROTO_DIR)/usr/lib GVBINDIR=$(PROTO_DIR)/usr/lib/graphviz $(PROTO_DIR)/usr/bin/dot -c
2010
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    98
	$(PYTHON.2.6.32) -m compileall $(PROTO_DIR)/$(PYTHON.2.6.VENDOR_PACKAGES)
cb03afa45934 18685168 graphviz should move to ruby 1.9
Danek Duvall <danek.duvall@oracle.com>
parents: 1948
diff changeset
    99
	$(PYTHON.2.7.32) -m compileall $(PROTO_DIR)/$(PYTHON.2.7.VENDOR_PACKAGES)
457
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   100
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   101
# The test infrastructure doesn't run in a VPATHed environment.
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   102
COMPONENT_PRE_TEST_ACTION = \
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   103
	(cd $(@D)/rtest; ln -s $(SOURCE_DIR)/rtest/* .)
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   104
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   105
# There are tests, but they fail consistently because the test samples are out
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   106
# of date and not generated with a known configuration.  See
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   107
# http://graphviz.org/bugs/b2063.html
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   108
test:		$(NO_TESTS)
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   109
aa27b836c528 PSARC/2011/269 Graphviz
Danek Duvall <danek.duvall@oracle.com>
parents:
diff changeset
   110
BUILD_PKG_DEPENDENCIES =	$(BUILD_TOOLS)