diff options
author | Evan Martin <martine@danga.com> | 2011-03-06 00:27:25 (GMT) |
---|---|---|
committer | Evan Martin <martine@danga.com> | 2011-03-07 19:31:11 (GMT) |
commit | 07ffa9195dd83176ddb96bbfb1eca0a3ca938a8b (patch) | |
tree | 03b240b89fa2500cf8b6285ad8e2f7be277eb667 /src/inline.sh | |
parent | 15d4695878749c3525c96e856ef08dfb19a2c3e5 (diff) | |
download | Ninja-07ffa9195dd83176ddb96bbfb1eca0a3ca938a8b.zip Ninja-07ffa9195dd83176ddb96bbfb1eca0a3ca938a8b.tar.gz Ninja-07ffa9195dd83176ddb96bbfb1eca0a3ca938a8b.tar.bz2 |
use a shell script to inline browse.py
Relying on the inline-assembly trick was cute but it didn't work on
other platforms; relying on xxd will make us depend on xxd being
available. Instead, inline browse.py into a header using a shell
script.
(Making this work required fixing multiple bugs in ninja...)
Diffstat (limited to 'src/inline.sh')
-rwxr-xr-x | src/inline.sh | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/inline.sh b/src/inline.sh new file mode 100755 index 0000000..e32f33d --- /dev/null +++ b/src/inline.sh @@ -0,0 +1,29 @@ +#!/bin/sh +# +# Copyright 2001 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This quick script converts a text file into an #include-able header. +# It expects the name of the variable as its first argument, and reads +# stdin and writes stdout. + +varname="$1" +echo "const char $varname[] =" +IFS= +while read line; do + escaped=$(echo "$line" | sed -e 's|\\|\\\\|g; s|"|\\"|g') + echo "\"$escaped\\n\"" +done +echo ";" + |