roken.awk revision 78527
178527Sassar# $Id: roken.awk,v 1.7 2001/03/26 09:26:35 joda Exp $
272445Sassar
355682SmarkmBEGIN {
455682Smarkm	print "#include <stdio.h>"
555682Smarkm	print "#ifdef HAVE_CONFIG_H"
655682Smarkm	print "#include <config.h>"
755682Smarkm	print "#endif"
855682Smarkm	print ""
955682Smarkm	print "int main()"
1055682Smarkm	print "{"
1155682Smarkm	    print "puts(\"/* This is an OS dependent, generated file */\");"
1255682Smarkm	print "puts(\"\\n\");"
1355682Smarkm	print "puts(\"#ifndef __ROKEN_H__\");"
1455682Smarkm	print "puts(\"#define __ROKEN_H__\");"
1555682Smarkm	print "puts(\"\");"
1655682Smarkm}
1755682Smarkm
1855682Smarkm$1 == "\#ifdef" || $1 == "\#ifndef" || $1 == "\#if" || $1 == "\#else" || $1 == "\#elif" || $1 == "\#endif" || $1 == "#ifdef" || $1 == "#ifndef" || $1 == "#if" || $1 == "#else" || $1 == "#elif" || $1 == "#endif" {
1955682Smarkm	print $0;
2055682Smarkm	next
2155682Smarkm}
2255682Smarkm
2355682Smarkm{
2455682Smarkm	s = ""
2555682Smarkm	for(i = 1; i <= length; i++){
2655682Smarkm		x = substr($0, i, 1)
2755682Smarkm		if(x == "\"" || x == "\\")
2855682Smarkm			s = s "\\";
2955682Smarkm		s = s x;
3055682Smarkm	}
3155682Smarkm	print "puts(\"" s "\");"
3255682Smarkm}
3378527Sassar
3478527SassarEND {
3578527Sassar	print "puts(\"#define ROKEN_VERSION \" VERSION );"
3678527Sassar	print "puts(\"\");"
3778527Sassar	print "puts(\"#endif /* __ROKEN_H__ */\");"
3878527Sassar	print "return 0;"
3978527Sassar	print "}"
4078527Sassar}
41