14e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.org#!/bin/bash
204d7d22bb835408a82600244e09b9dcacbc0fa11alokp@chromium.org# Copyright (c) 2012 The ANGLE Project Authors. All rights reserved.
34e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.org# Use of this source code is governed by a BSD-style license that can be
44e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.org# found in the LICENSE file.
54e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.org
604d7d22bb835408a82600244e09b9dcacbc0fa11alokp@chromium.org# Generates various components of GLSL ES preprocessor.
74e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.org
84e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.orgrun_flex()
94e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.org{
1004d7d22bb835408a82600244e09b9dcacbc0fa11alokp@chromium.orginput_file=$script_dir/$1
1104d7d22bb835408a82600244e09b9dcacbc0fa11alokp@chromium.orgoutput_source=$script_dir/$2
124e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.orgflex --noline --nounistd --outfile=$output_source $input_file
134e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.org}
144e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.org
154e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.orgrun_bison()
164e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.org{
1704d7d22bb835408a82600244e09b9dcacbc0fa11alokp@chromium.orginput_file=$script_dir/$1
1804d7d22bb835408a82600244e09b9dcacbc0fa11alokp@chromium.orgoutput_source=$script_dir/$2
1904d7d22bb835408a82600244e09b9dcacbc0fa11alokp@chromium.orgbison --no-lines --skeleton=yacc.c --output=$output_source $input_file
204e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.org}
214e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.org
224e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.orgscript_dir=$(dirname $0)
234e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.org
244e4b807d219f58fad5f7b96ed23c9fdd1fc5de15alokp@chromium.org# Generate preprocessor
2504d7d22bb835408a82600244e09b9dcacbc0fa11alokp@chromium.orgrun_flex Tokenizer.l Tokenizer.cpp
2604d7d22bb835408a82600244e09b9dcacbc0fa11alokp@chromium.orgrun_bison ExpressionParser.y ExpressionParser.cpp
275aecab5f9d34b46cbd10f234ee7d3c88ea0ed953Shannon Woodspatch --silent --forward < 64bit-tokenizer-safety.patch
28