39 |
40 |
40 include ../../make-rules/prep.mk |
41 include ../../make-rules/prep.mk |
41 include ../../make-rules/configure.mk |
42 include ../../make-rules/configure.mk |
42 include ../../make-rules/ips.mk |
43 include ../../make-rules/ips.mk |
43 |
44 |
44 PATH = /usr/bin:/usr/gnu/bin:/usr/php/5.2/bin |
45 PATH = /usr/php/5.3/bin:/usr/bin:/usr/gnu/bin |
45 |
46 |
46 # GMP header files for the guile extension (no --with- flag) |
47 # GMP header files for the guile extension (no --with- flag) |
47 # The guile build is broken with studio (7073649), so we disable this for now. |
48 # The guile build is broken with studio (15732452), so we disable this for now. |
48 # CPPFLAGS += -I/usr/include/gmp |
49 # CPPFLAGS += -I/usr/include/gmp |
49 # Java header files (--with-javaincludedir allows for only one directory) |
50 # Java header files (--with-javaincludedir allows for only one directory) |
50 CPPFLAGS += -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/solaris |
51 CPPFLAGS += -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/solaris |
51 # PHP header files (no --with- flag) |
52 # PHP header files (no --with- flag) |
52 CPPFLAGS += $(shell PATH=$(PATH) php-config --includes) |
53 CPPFLAGS += $(shell PATH=$(PATH) php-config --includes) |
53 CXX += $(studio_NORUNPATH) |
54 CXX += $(studio_NORUNPATH) |
54 |
55 |
55 CONFIGURE_ENV += CPPFLAGS="$(CPPFLAGS)" |
56 CONFIGURE_ENV += CPPFLAGS="$(CPPFLAGS)" |
56 CONFIGURE_ENV += PERL=$(PERL) |
57 CONFIGURE_ENV += CFLAGS="$(CFLAGS)" |
57 # Explicitly use Ruby 1.8. Allows switching Ruby default without |
58 CONFIGURE_ENV += CXXFLAGS="$(CXXFLAGS)" |
58 # affecting graphviz build. |
59 # Make sure to use the right python, depending on the 32/64-bit build. |
59 CONFIGURE_ENV += RUBY=$(RUBY.1.8) |
60 CONFIGURE_ENV += PYTHON26=$(PYTHON.2.6) |
|
61 CONFIGURE_ENV += PYTHON27=$(PYTHON.2.7) |
60 CONFIGURE_OPTIONS += --without-included-ltdl |
62 CONFIGURE_OPTIONS += --without-included-ltdl |
61 CONFIGURE_OPTIONS += --enable-python=no |
63 CONFIGURE_OPTIONS += --enable-python=no |
62 CONFIGURE_OPTIONS += --enable-python26=yes |
64 CONFIGURE_OPTIONS += --enable-python26=yes |
63 CONFIGURE_OPTIONS += --enable-python27=yes |
65 CONFIGURE_OPTIONS += --enable-python27=yes |
64 CONFIGURE_OPTIONS += --x-libraries=$(CONFIGURE_LIBDIR.$(BITS)) |
66 CONFIGURE_OPTIONS += --x-libraries=$(CONFIGURE_LIBDIR.$(BITS)) |
65 |
67 |
66 COMPONENT_BUILD_ARGS += GREP=/usr/bin/ggrep |
68 COMPONENT_BUILD_ARGS += GREP=/usr/bin/ggrep |
67 |
69 |
68 # common targets |
70 # Both perl and ruby ship 64-bit only. |
69 build: $(BUILD_32) |
71 $(CONFIGURE_32): CONFIGURE_OPTIONS += --enable-perl=no |
|
72 $(CONFIGURE_32): CONFIGURE_OPTIONS += --enable-ruby=no |
|
73 $(CONFIGURE_64): CONFIGURE_ENV += PERL=$(PERL) |
|
74 $(CONFIGURE_64): CONFIGURE_ENV += RUBY=$(RUBY.1.9) |
|
75 # PHP ships 32-bit only. |
|
76 $(CONFIGURE_64): CONFIGURE_OPTIONS += --enable-php=no |
|
77 $(INSTALL_64): COMPONENT_INSTALL_ARGS += PHP_INSTALL_DIR=$(shell PATH=$(PATH) php-config --extension-dir) |
|
78 # tcl ships both 32 and 64 bit, but even though /usr/bin/tclsh is 64-bit, there |
|
79 # is no place to stick 64-bit modules, so skip it. On the other hand, make |
|
80 # sure to find the right tcl bits when building 32-bit. |
|
81 $(CONFIGURE_64): CONFIGURE_OPTIONS += --enable-tcl=no |
|
82 $(CONFIGURE_32): CONFIGURE_OPTIONS += --with-tclsh=/usr/bin/$(MACH32)/tclsh |
|
83 $(CONFIGURE_32): CONFIGURE_ENV += TCLCONFIG=/usr/lib/tclConfig.sh |
|
84 # Put the 64-bit lua module in a 64-bit directory. |
|
85 $(INSTALL_32): COMPONENT_INSTALL_ARGS += LUA_INSTALL_DIR=/usr/lib/lua/5.2 |
|
86 $(INSTALL_64): COMPONENT_INSTALL_ARGS += LUA_INSTALL_DIR=/usr/lib/lua/5.2/64 |
|
87 # Use GNU ln, which supports the -r (--relative) option. |
|
88 COMPONENT_INSTALL_ARGS += LN_S="gln -s" |
70 |
89 |
71 install: $(INSTALL_32) |
90 ASLR_MODE = $(ASLR_ENABLE) |
|
91 |
|
92 # We build 32 and 64 bit because we build libraries, and we build modules for |
|
93 # runtimes which provide 64 or 32 (or both) bit environments. |
|
94 build: $(BUILD_32_and_64) |
|
95 |
|
96 install: $(INSTALL_32_and_64) |
72 env LD_LIBRARY_PATH=$(PROTO_DIR)/usr/lib GVBINDIR=$(PROTO_DIR)/usr/lib/graphviz $(PROTO_DIR)/usr/bin/dot -c |
97 env LD_LIBRARY_PATH=$(PROTO_DIR)/usr/lib GVBINDIR=$(PROTO_DIR)/usr/lib/graphviz $(PROTO_DIR)/usr/bin/dot -c |
73 $(PYTHON.2.6.32) -m compileall $(PROTO_DIR)/usr/lib/graphviz/python26 |
98 $(PYTHON.2.6.32) -m compileall $(PROTO_DIR)/$(PYTHON.2.6.VENDOR_PACKAGES) |
74 $(PYTHON.2.7.32) -m compileall $(PROTO_DIR)/usr/lib/graphviz/python27 |
99 $(PYTHON.2.7.32) -m compileall $(PROTO_DIR)/$(PYTHON.2.7.VENDOR_PACKAGES) |
75 |
100 |
76 # The test infrastructure doesn't run in a VPATHed environment. |
101 # The test infrastructure doesn't run in a VPATHed environment. |
77 COMPONENT_PRE_TEST_ACTION = \ |
102 COMPONENT_PRE_TEST_ACTION = \ |
78 (cd $(@D)/rtest; ln -s $(SOURCE_DIR)/rtest/* .) |
103 (cd $(@D)/rtest; ln -s $(SOURCE_DIR)/rtest/* .) |
79 |
104 |