summaryrefslogtreecommitdiffstats
path: root/crypto/kerberosIV/cf/make-proto.pl
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/kerberosIV/cf/make-proto.pl')
-rw-r--r--crypto/kerberosIV/cf/make-proto.pl199
1 files changed, 0 insertions, 199 deletions
diff --git a/crypto/kerberosIV/cf/make-proto.pl b/crypto/kerberosIV/cf/make-proto.pl
deleted file mode 100644
index 9a47aed..0000000
--- a/crypto/kerberosIV/cf/make-proto.pl
+++ /dev/null
@@ -1,199 +0,0 @@
-# Make prototypes from .c files
-# $Id: make-proto.pl,v 1.11 1999/04/15 12:37:54 joda Exp $
-
-##use Getopt::Std;
-require 'getopts.pl';
-
-$brace = 0;
-$line = "";
-$debug = 0;
-
-do Getopts('o:p:d') || die "foo";
-
-if($opt_d) {
- $debug = 1;
-}
-
-while(<>) {
- print $brace, " ", $_ if($debug);
- if(/^\#if 0/) {
- $if_0 = 1;
- }
- if($if_0 && /^\#endif/) {
- $if_0 = 0;
- }
- if($if_0) { next }
- if(/^\s*\#/) {
- next;
- }
- if(/^\s*$/) {
- $line = "";
- next;
- }
- if(/\{/){
- $_ = $line;
- while(s/\*\//\ca/){
- s/\/\*(.|\n)*\ca//;
- }
- s/^\s*//;
- s/\s$//;
- s/\s+/ /g;
- if($line =~ /\)\s$/){
- if(!/^static/ && !/^PRIVATE/){
- if(/(.*)(__attribute__\s?\(.*\))/) {
- $attr = $2;
- $_ = $1;
- } else {
- $attr = "";
- }
- # remove outer ()
- s/\s*\(/@/;
- s/\)\s?$/@/;
- # remove , within ()
- while(s/\(([^()]*),(.*)\)/($1\$$2)/g){}
- s/,\s*/,\n\t/g;
- # fix removed ,
- s/\$/,/g;
- # match function name
- /([a-zA-Z0-9_]+)\s*@/;
- $f = $1;
- # only add newline if more than one parameter
- $LP = "(("; # XXX workaround for indentation bug in emacs
- $RP = "))";
- $P = "__P((";
- if(/,/){
- s/@/ __P$LP\n\t/;
- }else{
- s/@/ __P$LP/;
- }
- s/@/$RP/;
- # insert newline before function name
- s/(.*)\s([a-zA-Z0-9_]+ __P)/$1\n$2/;
- if($attr ne "") {
- $_ .= "\n $attr";
- }
- $_ = $_ . ";";
- $funcs{$f} = $_;
- }
- }
- $line = "";
- $brace++;
- }
- if(/\}/){
- $brace--;
- }
- if(/^\}/){
- $brace = 0;
- }
- if($brace == 0) {
- $line = $line . " " . $_;
- }
-}
-
-sub foo {
- local ($arg) = @_;
- $_ = $arg;
- s/.*\/([^\/]*)/$1/;
- s/[^a-zA-Z0-9]/_/g;
- "__" . $_ . "__";
-}
-
-if($opt_o) {
- open(OUT, ">$opt_o");
- $block = &foo($opt_o);
-} else {
- $block = "__public_h__";
-}
-
-if($opt_p) {
- open(PRIV, ">$opt_p");
- $private = &foo($opt_p);
-} else {
- $private = "__private_h__";
-}
-
-$public_h = "";
-$private_h = "";
-
-$public_h_header = "/* This is a generated file */
-#ifndef $block
-#define $block
-
-#ifdef __STDC__
-#include <stdarg.h>
-#ifndef __P
-#define __P(x) x
-#endif
-#else
-#ifndef __P
-#define __P(x) ()
-#endif
-#endif
-
-";
-
-$private_h_header = "/* This is a generated file */
-#ifndef $private
-#define $private
-
-#ifdef __STDC__
-#include <stdarg.h>
-#ifndef __P
-#define __P(x) x
-#endif
-#else
-#ifndef __P
-#define __P(x) ()
-#endif
-#endif
-
-";
-
-foreach(sort keys %funcs){
- if(/^(main)$/) { next }
- if(/^_/) {
- $private_h .= $funcs{$_} . "\n\n";
- if($funcs{$_} =~ /__attribute__/) {
- $private_attribute_seen = 1;
- }
- } else {
- $public_h .= $funcs{$_} . "\n\n";
- if($funcs{$_} =~ /__attribute__/) {
- $public_attribute_seen = 1;
- }
- }
-}
-
-if ($public_attribute_seen) {
- $public_h_header .= "#if !defined(__GNUC__) && !defined(__attribute__)
-#define __attribute__(x)
-#endif
-
-";
-}
-
-if ($private_attribute_seen) {
- $private_h_header .= "#if !defined(__GNUC__) && !defined(__attribute__)
-#define __attribute__(x)
-#endif
-
-";
-}
-
-
-if ($public_h ne "") {
- $public_h = $public_h_header . $public_h . "#endif /* $block */\n";
-}
-if ($private_h ne "") {
- $private_h = $private_h_header . $private_h . "#endif /* $private */\n";
-}
-
-if($opt_o) {
- print OUT $public_h;
-}
-if($opt_p) {
- print PRIV $private_h;
-}
-
-close OUT;
-close PRIV;
OpenPOWER on IntegriCloud