lib/scripts/feeder.pl
author wenzelm
Fri, 09 Nov 2001 00:01:55 +0100
changeset 12111 d942348d8faf
parent 9961 5a9626118941
child 14981 e73f8140af78
permissions -rw-r--r--
got rid of obsolete input filtering;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4501
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
     1
#
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
     2
# $Id$
9789
wenzelm
parents: 6281
diff changeset
     3
# Author: Markus Wenzel, TU Muenchen
wenzelm
parents: 6281
diff changeset
     4
# License: GPL (GNU GENERAL PUBLIC LICENSE)
4501
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
     5
#
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
     6
# feeder.pl - feed isabelle session
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
     7
#
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
     8
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
     9
# args
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    10
12111
d942348d8faf got rid of obsolete input filtering;
wenzelm
parents: 9961
diff changeset
    11
($head, $emitpid, $quit, $tail) = @ARGV;
4501
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    12
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    13
4504
2f39aa4bebf3 removed -i option;
wenzelm
parents: 4501
diff changeset
    14
# setup signal handlers
4501
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    15
4504
2f39aa4bebf3 removed -i option;
wenzelm
parents: 4501
diff changeset
    16
sub hangup { exit(0); }
4501
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    17
$SIG{'HUP'} = "hangup";
4504
2f39aa4bebf3 removed -i option;
wenzelm
parents: 4501
diff changeset
    18
$SIG{'INT'} = "IGNORE";
4501
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    19
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    20
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    21
# main
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    22
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    23
#buffer lines
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    24
$| = 1;
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    25
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    26
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    27
$emitpid && (print $$, "\n");
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    28
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    29
$head && (print "$head", "\n");
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    30
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    31
if (!$quit) {
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    32
    while (<STDIN>) {
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    33
	print;
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    34
    }
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    35
}
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    36
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    37
$tail && (print "$tail", "\n");
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    38
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    39
4504
2f39aa4bebf3 removed -i option;
wenzelm
parents: 4501
diff changeset
    40
# wait forever
4501
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    41
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    42
close STDOUT;
5f629ee2502b feed isabelle session;
wenzelm
parents:
diff changeset
    43
sleep;