# HG changeset patch # User Danek Duvall # Date 1460587027 25200 # Node ID fe100422ef26edd8499526689894fd169f1e2bb4 # Parent ae78071b3cad211e15bb4cb4bc960136e1eac046 23078708 dot command seems a bit broken diff -r ae78071b3cad -r fe100422ef26 components/graphviz/Makefile --- a/components/graphviz/Makefile Wed Apr 13 15:05:17 2016 -0700 +++ b/components/graphviz/Makefile Wed Apr 13 15:37:07 2016 -0700 @@ -40,6 +40,13 @@ # of date and not generated with a known configuration. See # http://graphviz.org/bugs/b2063.html TEST_TARGET= $(SKIP_TEST) + +# We want to build a couple of extra things after the installs are done, so set +# the install targets appropriately. +INSTALL_TARGET = $(INSTALL_$(MK_BITS)) +INSTALL_TARGET += $(PROTOUSRLIBDIR)/graphviz/config6 +INSTALL_TARGET += $(PROTO_DIR)/$(PYTHON.2.7.VENDOR_PACKAGES)/gv.pyc + include $(WS_MAKE_RULES)/common.mk PATH = /usr/php/5.6/bin:/usr/bin:/usr/gnu/bin @@ -81,12 +88,20 @@ # Use GNU ln, which supports the -r (--relative) option. COMPONENT_INSTALL_ARGS += LN_S="gln -s" -# We build 32 and 64 bit because we build libraries, and we build modules for -# runtimes which provide 64 or 32 (or both) bit environments. -COMPONENT_POST_INSTALL_ACTION += \ +# Create the config file once the 32-bit build is complete. This runs the bits +# we just built, so we have to set a handful of variables to the right place. +# The 32-bit executables are in their own directory, so we have to point to +# that version of dot explicitly. +$(PROTOUSRLIBDIR)/graphviz/config6: $(INSTALL_32) env LD_LIBRARY_PATH=$(PROTOUSRLIBDIR) GVBINDIR=$(PROTOUSRLIBDIR)/graphviz \ - $(PROTOUSRBINDIR)/dot -c; \ - $(PYTHON.2.7.32) -m compileall $(PROTO_DIR)/$(PYTHON.2.7.VENDOR_PACKAGES) + $(PROTOUSRBINDIR)/$(MACH32)/dot -c + +# Once the build is complete, compile the .py file. There's no need to compile +# the one in the "64" directory, so don't recurse. And make sure that the +# build path doesn't get embedded in the .pyc file. +$(PROTO_DIR)/$(PYTHON.2.7.VENDOR_PACKAGES)/gv.pyc: $(INSTALL_32) + $(PYTHON.2.7.32) -m compileall -l -d $(PYTHON.2.7.VENDOR_PACKAGES) \ + $(PROTO_DIR)/$(PYTHON.2.7.VENDOR_PACKAGES) # The test infrastructure doesn't run in a VPATHed environment. COMPONENT_PRE_TEST_ACTION = \