| |
| |
| add_custom_command(OUTPUT tikz-uml.sty |
| COMMAND wget http://perso.ensta-paristech.fr/~kielbasi/tikzuml/var/files/src/tikzuml-v1.0-2016-03-29.tbz |
| COMMAND tar xf tikzuml-v1.0-2016-03-29.tbz |
| COMMAND mv tikzuml-v1.0-2016-03-29/tikz-uml.sty tikz-uml.sty |
| ) |
| add_custom_command(OUTPUT header.tex footer.tex |
| COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/common-header.tex header.tex |
| COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/common-footer.tex footer.tex |
| DEPENDS |
| ${CMAKE_CURRENT_SOURCE_DIR}/common-header.tex |
| ${CMAKE_CURRENT_SOURCE_DIR}/common-footer.tex |
| ) |
| |
| set(LATEX_SOURCES |
| bar_handler.tex |
| bind.tex |
| bind_instance.tex |
| cached_greeter.tex |
| cached_greeter_test.tex |
| car_component.tex |
| checked_adder.tex |
| checked_incrementer.tex |
| component_composition.tex |
| component_dep_loop.tex |
| foo_handler.tex |
| greeter.tex |
| incrementer.tex |
| incrementer_component.tex |
| inject_macro.tex |
| inject_macro_no_args.tex |
| inject_macro_template.tex |
| inject_typedef_greeter.tex |
| inject_typedef_writer.tex |
| inject_typedef_writer2.tex |
| inject_typedef_templated_constructor.tex |
| multiplier.tex |
| parametrized_component.tex |
| provider.tex |
| provider_functor.tex |
| register_constructor.tex |
| register_constructor_component.tex |
| register_factory.tex |
| register_factory_use.tex |
| register_factory_macro.tex |
| request_dispatcher.tex |
| request_injector.tex |
| scaler.tex |
| server.tex |
| simple_greeter.tex |
| simple_incrementer.tex |
| simple_adder.tex |
| templated_component.tex |
| ) |
| |
| foreach(S ${LATEX_SOURCES}) |
| string(REPLACE ".tex" "" N ${S}) |
| add_custom_command(OUTPUT ${N}.png |
| COMMAND pdflatex -halt-on-error ${CMAKE_CURRENT_SOURCE_DIR}/${N}.tex |
| COMMAND convert -density 300 -trim ${N}.pdf -quality 100 -sharpen 0x1.0 ${N}.png |
| # This normalizes the PNG files, so that we avoid tracking multiple copies of the same file in the Github wiki repo. |
| COMMAND exiftool -all= -overwrite_original ${N}.png |
| DEPENDS |
| tikz-uml.sty |
| header.tex |
| footer.tex |
| ${N}.tex |
| ) |
| add_custom_target(${N}-png ALL |
| DEPENDS ${N}.png) |
| endforeach(S) |
| |
| set(EXAMPLE_DIRECTORIES |
| hello_world |
| server |
| scaling_doubles |
| multibindings |
| simple_injection |
| ) |
| |
| foreach(D ${EXAMPLE_DIRECTORIES}) |
| add_custom_command(OUTPUT ${D}-deps.png |
| COMMAND bash < ${CMAKE_CURRENT_SOURCE_DIR}/extract_dependencies.sh > ${CMAKE_CURRENT_BINARY_DIR}/${D}.dot |
| COMMAND dot -Goverlap=prism10000 ${CMAKE_CURRENT_BINARY_DIR}/${D}.dot -Tpng -o ${CMAKE_CURRENT_BINARY_DIR}/${D}-deps.png |
| # This normalizes the PNG files, so that we avoid tracking multiple copies of the same file in the Github wiki repo. |
| COMMAND exiftool -all= -overwrite_original ${CMAKE_CURRENT_BINARY_DIR}/${D}-deps.png |
| WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../examples/${D} |
| DEPENDS |
| ../../examples/${D} |
| extract_dependencies.sh |
| ) |
| add_custom_target(${D}-deps ALL |
| DEPENDS ${D}-deps.png) |
| endforeach(D) |
| |