#!/usr/bin/python # Copyright 2003 Vladimir Prus # Distributed under the Boost Software License, Version 1.0. # (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) import sys from string import strip def quote_line(line): result = "" for i in line: if (i == '\\'): result = result + '\\\\' elif (i == '\"'): result = result + '\\\"' elif (i != '\r' and i != '\n'): result = result + i; return '\"' + result + '\\n\"' def quote_file(file): result = "" for i in file.readlines(): result = result + quote_line(i) + "\n" return result if len(sys.argv) < 3: print "Usage: inline_file.py output_c_file file_to_include" else: output_c_file = sys.argv[1] out_file = open(output_c_file, "w"); file_to_include = sys.argv[2] in_file = open(file_to_include, "r"); variable_name = strip(in_file.readline()) out_file.write("extern const char %s[] = {\n%s};\n\n" % (variable_name, quote_file(in_file))) in_file.close() out_file.close()