github.phpd.cn/thought-machine/please@v12.2.0+incompatible/docs/BUILD (about) 1 deps = [] 2 3 for src in glob(['*.html'], exclude=['template.html', 'lexicon*.html', 'language.html']): 4 templated_rule = genrule( 5 name = src.replace('.', '_'), 6 srcs = ['template.html', src], 7 tools = [':templater'], 8 outs = [src], 9 cmd = '$TOOL $SRCS > $OUT', 10 ) 11 deps += [templated_rule] 12 13 genrule( 14 name = 'lexicon_html', 15 srcs = [ 16 'lexicon.html', 17 'lexicon_entry.html', 18 'template.html', 19 '//src/parse/args', 20 ], 21 outs = ['lexicon.html'], 22 cmd = '$TOOLS_LEX > temp.html && $TOOLS_TMPL docs/template.html temp.html > $OUT', 23 tools = { 24 'lex': [':lexicon_templater'], 25 'tmpl': [':templater'], 26 }, 27 ) 28 29 genrule( 30 name = 'language_html', 31 srcs = { 32 'html': [ 33 'template.html', 34 'language.html', 35 ], 36 'grammar': ['grammar.txt'], 37 }, 38 outs = ['language.html'], 39 cmd = '$TOOLS_TEMPLATE $SRCS_HTML | $TOOLS_GRAMMAR > $OUT', 40 tools = { 41 'grammar': [':grammar_templater'], 42 'template': [':templater'], 43 }, 44 ) 45 46 # Downscale images from original resolution 47 for colour, scale in [('teal', '50%'), ('white', '20%')]: 48 for src in glob(['images/%s*.png' % colour]): 49 image_rule = genrule( 50 name = src.replace('.', '_').replace('/', '_'), 51 srcs = [src], 52 outs = [src], 53 cmd = 'mkdir -p images && $TOOL $SRC -crop 500x510+230+30 -resize %s $OUT' % scale, 54 tools = ['convert'], 55 ) 56 deps += [image_rule] 57 58 filegroup( 59 name = 'docs', 60 srcs = deps + [ 61 ':language_html', 62 ':lexicon_html', 63 'styles.css', 64 'action.js', 65 'images/thoughtmachine.png', 66 'plz-recording.json', 67 '//third_party/js:asciinema', 68 ], 69 ) 70 71 go_binary( 72 name = 'templater', 73 srcs = ['template.go'], 74 ) 75 76 go_binary( 77 name = 'lexicon_templater', 78 srcs = ['template_lexicon.go'], 79 ) 80 81 go_binary( 82 name = 'grammar_templater', 83 srcs = ['template_grammar.go'], 84 )