diff --git a/build/struct_layout/Makefile b/build/struct_layout/Makefile index ec26bacb5..1d15f379a 100644 --- a/build/struct_layout/Makefile +++ b/build/struct_layout/Makefile @@ -1,5 +1,10 @@ products += apps/main.ast build/struct_layout/data.json +.PHONY: apps_container_struct_layout +OPEN = open + +ifeq ($(CXX),clang++) + %.ast: %.cpp %.o @echo "AST $@" @$(CXX) -fno-color-diagnostics -Xclang -fdump-record-layouts $(SFLAGS) $(CXXFLAGS) -MF /dev/null -c $< -o /dev/null > $@ @@ -7,3 +12,13 @@ products += apps/main.ast build/struct_layout/data.json %.ast.json: %.ast @echo "JSON $@" @cat $< | ruby build/struct_layout/ast_to_json.rb AppsContainer > $@ + +apps_container_struct_layout: apps/main.ast.json + $(OPEN) build/struct_layout/visualization.html + +else + +apps_container_struct_layout: + @echo "Struct layout requires the use of Clang" + +endif diff --git a/build/struct_layout/visualisation.html b/build/struct_layout/visualization.html similarity index 99% rename from build/struct_layout/visualisation.html rename to build/struct_layout/visualization.html index fc9e0e93a..3230546d5 100644 --- a/build/struct_layout/visualisation.html +++ b/build/struct_layout/visualization.html @@ -104,7 +104,7 @@ grandparent.append("text") .attr("y", 6 - margin.top) .attr("dy", ".75em"); -d3.json("../apps/main.ast.json", function(root) { +d3.json("../../apps/main.ast.json", function(root) { initialize(root); accumulate(root); layout(root);