OLD | NEW |
1 # Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import os.path | 5 import os.path |
6 import re | 6 import re |
7 | 7 |
8 Import('env') | 8 Import('env') |
9 | 9 |
10 webcore = env.Dir('$CHROME_SRC_DIR/third_party/WebKit/WebCore') | 10 webcore = env.Dir('$CHROME_SRC_DIR/third_party/WebKit/WebCore') |
(...skipping 554 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
565 t = str(target[1]) | 565 t = str(target[1]) |
566 fp = open(t, 'w') | 566 fp = open(t, 'w') |
567 define = os.path.splitext(os.path.split(t)[1])[0] | 567 define = os.path.splitext(os.path.split(t)[1])[0] |
568 fp.write('#ifndef %s_h\n' % define) | 568 fp.write('#ifndef %s_h\n' % define) |
569 fp.write('#define %s_h\n' % define) | 569 fp.write('#define %s_h\n' % define) |
570 fp.write(open(t + 'pp', 'r').read()) | 570 fp.write(open(t + 'pp', 'r').read()) |
571 fp.write('#endif // %s_h\n' % define) | 571 fp.write('#endif // %s_h\n' % define) |
572 | 572 |
573 # TODO(sgk): make this a real pseudo-Builder | 573 # TODO(sgk): make this a real pseudo-Builder |
574 def BuildYacc(env, dir, name, file): | 574 def BuildYacc(env, dir, name, file): |
575 env.Command(['$DERIVED_DIR/%s.cpp' % file, | 575 yacc_env = env.Clone() |
576 '$DERIVED_DIR/%s.h' % file], | 576 yacc_env['YACC'] = env.Detect('bison') or 'yacc' |
577 ['$PORT_DIR/%s/%s.y' % (dir, file)], | 577 yacc_env.Command(['$DERIVED_DIR/%s.cpp' % file, |
578 ['$YACC -d -p %s ${SOURCES[0].posix} ' % name + | 578 '$DERIVED_DIR/%s.h' % file], |
579 '-o ${TARGET.posix}', | 579 ['$PORT_DIR/%s/%s.y' % (dir, file)], |
580 Action(create_h_wrapper), | 580 ['$YACC -d -p %s ${SOURCES[0].posix} ' % name + |
581 Delete('${TARGETS[1]}pp')]) | 581 '-o ${TARGET.posix}', |
| 582 Action(create_h_wrapper), |
| 583 Delete('${TARGETS[1]}pp')]) |
582 | 584 |
583 BuildYacc(env, 'xml', 'xpathyy', 'XPathGrammar') | 585 BuildYacc(env, 'xml', 'xpathyy', 'XPathGrammar') |
584 BuildYacc(env, 'css', 'cssyy', 'CSSGrammar') | 586 BuildYacc(env, 'css', 'cssyy', 'CSSGrammar') |
585 | 587 |
586 # TODO(bradnelson): need to add in error checking | 588 # TODO(bradnelson): need to add in error checking |
587 | 589 |
588 env.Command('$PORT_DIR/SVGCSSValueKeywords.in', | 590 env.Command('$PORT_DIR/SVGCSSValueKeywords.in', |
589 '$PORT_DIR/css/SVGCSSValueKeywords.in', | 591 '$PORT_DIR/css/SVGCSSValueKeywords.in', |
590 '$PERL -ne "print lc" $SOURCES > $TARGET') | 592 '$PERL -ne "print lc" $SOURCES > $TARGET') |
591 | 593 |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
635 env.Command('$DERIVED_DIR/HTMLEntityNames.c', | 637 env.Command('$DERIVED_DIR/HTMLEntityNames.c', |
636 '$PORT_DIR/html/HTMLEntityNames.gperf', | 638 '$PORT_DIR/html/HTMLEntityNames.gperf', |
637 'gperf -a -L ANSI-C -C -G -c -o -t -k "*" -N findEntity ' + \ | 639 'gperf -a -L ANSI-C -C -G -c -o -t -k "*" -N findEntity ' + \ |
638 '-D -s 2 $SOURCE > $TARGET') | 640 '-D -s 2 $SOURCE > $TARGET') |
639 | 641 |
640 # CSS tokenizer | 642 # CSS tokenizer |
641 env.Command('$DERIVED_DIR/tokenizer.cpp', | 643 env.Command('$DERIVED_DIR/tokenizer.cpp', |
642 ['$PORT_DIR/css/tokenizer.flex', | 644 ['$PORT_DIR/css/tokenizer.flex', |
643 '$PORT_DIR/css/maketokenizer'], | 645 '$PORT_DIR/css/maketokenizer'], |
644 'flex --nowarn -t $SOURCE | perl ${SOURCES[1]} > $TARGET') | 646 'flex --nowarn -t $SOURCE | perl ${SOURCES[1]} > $TARGET') |
OLD | NEW |