oneliner-el-0.3.6.orig/ 0040755 0001750 0001750 00000000000 07765211451 014254 5 ustar mohura mohura oneliner-el-0.3.6.orig/doc/ 0040755 0001750 0001750 00000000000 07764574474 015041 5 ustar mohura mohura oneliner-el-0.3.6.orig/doc/readme.sdoc 0100644 0001750 0001750 00000011230 07764574474 017142 0 ustar mohura mohura
Oneliner README
Kiyoka Nishiyama
http://oneliner-elisp.sourceforge.net/
$Date: 2002/02/12 15:15:35 $
What is Oneliner
- Oneliner is free software.
- you can redistribute it and/or modify it under the terms of the GNU General Public License.
- Oneliner is hooks of Emacs standard shell-mode.
- Oneliner provides nice extentions for UNIX shell masters.
abstruct
- 簡単な操作で、shell-modeの標準入出力を Emacsのバッファに接続できます。
- Emacsとシェルプロセスのカレントディレクトリを完全かつ自動的に同期します。
- コマンドの完了をbeepで通知します。
- *shell*バッファに出力されたコントロールコードの処理を行ないます。
- You can connect command input/output to/from Emacs buffer with easy operation.
- You can sync directory-value between shell-mode and shell process.
- Oneliner gives you notice with beep when command execution was complete.
- Oneliner handles control codes.
Installation
Installation of software and documents
- ./configure を実行します。
環境による違いに対応するためには 以下のスイッチ等を使ってください。
また、Meadowユーザーの方は README.Meadow を参照してください。
- --prefix=path_to_install_DIR
- --with-emacs=yes
- --with-xemacs=yes
- --with-lispdir=path_to_site-lisp_dir
- make
- make install
- .emacs に以下の記述を追加します。
(require 'oneliner)
- シェル環境変数 TMPDIRを設定します。
TMPDIRには Onelinerが使うテンポラリディレクトリを指定します。
以下は、bashでの例です。
export TMPDIR='~/tmp/'
>
- Do "./configure".
If you need change parameter for you environment, please use switches as follows.
If you are a 'Meadow' user, please read the 'README.Meadow' file, too.
- --prefix=path_to_install_DIR
- --with-emacs=yes
- --with-xemacs=yes
- --with-lispdir=path_to_site-lisp_dir
- make
- make install
- Please add this code to .emacs
(require 'oneliner)
- Please set the environment variable 'TMPDIR'.
Set the temporary directory path to 'TMPDIR'.
The one of examples with 'bash' shell is as follows:
export TMPDIR='~/tmp/'
Uninstallation of software and documents
Make a tar.gz archive file
- CVSサーバーから Onelinerのソースツリーを取得します。
- make setup -f Makefile.in ; make archive
- Get the Oneliner's source tree from the CVS server.
- make setup -f Makefile.in ; make archive
Development members
- Kiyoka Nishiyama
- MISHIMA Masahiro
- IWAI, Masaharu
- OHURA Makoto
Bibliography
- Bil Lewis,Dan LaLiberte, Richard Stallman and the GNU Manual Gourp 著 大木 敦雄 訳
Emacs Lisp リファレンスマニュアル
(株)アスキー
- 山本 和彦 著
リスト遊び
(株)アスキー
- Bil Lewis,Dan LaLiberte, Richard Stallman and the GNU Manual Gourp
Emacs Lisp Reference Manual
oneliner-el-0.3.6.orig/scripts/ 0040755 0001750 0001750 00000000000 07764574474 015763 5 ustar mohura mohura oneliner-el-0.3.6.orig/scripts/el 0100755 0001750 0001750 00000012567 07764574474 016321 0 ustar mohura mohura #!/usr/bin/perl -w
my $ONELINER_VER="0.3.5";
#!/usr/bin/perl -w
use strict 'vars';
use vars qw($ONELINER_VER);
use Getopt::Long;
use File::Temp qw(mktemp);
use File::Spec::Functions qw(catfile);
if( !defined( $ENV{TMPDIR} ) ) {
print "Error: Please set environment variable TMPDIR (e.g. export TMPDIR=\"/home/youraccount/temp/\")\n";
exit 1;
}
if( !defined($ONELINER_VER)) {
$ONELINER_VER = "[testing version]";
}
# global variables
my $id_string = '$Id: el,v 1.1.2.8 2003/11/30 11:51:24 kiyoka Exp $';
my $version_string = 'el ' . $ONELINER_VER . '(revision ' . (split /\s/, $id_string)[2] . ')';
my $oneliner_std_start = $ENV{ONELINER_STD_START};
my $oneliner_std_end = $ENV{ONELINER_STD_END};
my $oneliner_ex_cmd_prefix = $ENV{ONELINER_EX_CMD_PREFIX};
# option variables
my %opt = (VERSION => '',
HELP => '',
ARGS => 0,
COMMAND => '',
DEBUG => '',
FORMAT => undef,
INPIPE => undef,
OUTPIPE => undef,
SERIAL => '',
EXECUTE => '',
);
GetOptions ('V|version!' => \$opt{VERSION},
'h|help!' => \$opt{HELP},
'a|args=i' => \$opt{ARGS},
'c|command=s' => \$opt{COMMAND},
'd|debug!' => \$opt{DEBUG},
'f|format=s' => \$opt{FORMAT},
'i|inpipe=s' => \$opt{INPIPE},
'o|outpipe=s' => \$opt{OUTPIPE},
's|serial!' => \$opt{SERIAL},
'x|execute!' => \$opt{EXECUTE},
) or die;
# debugging info
if ($opt{DEBUG}) {
debug ("============ Given Options ============\n");
for my $key (sort keys %opt) {
debugf ("%-10s = [%s]\n", lc($key), $opt{$key});
}
debug ("=======================================\n");
}
# branch for each option
if ($opt{VERSION}) {
version();
} elsif ($opt{HELP}) {
help();
} else {
# normal operation
my $print = build_print_func ();
my $use_stdin = (@ARGV==0); # check count of @ARGV
$opt{COMMAND} and unshift @ARGV, $opt{COMMAND}; # @ARGV may change
$opt{SERIAL} and undef $/; # read STDIN as a whole
$opt{EXECUTE} and print STDERR $oneliner_ex_cmd_prefix, "autoeval\n";
defined $opt{OUTPIPE}
and print STDERR $oneliner_ex_cmd_prefix, "outpipe $opt{OUTPIPE}\n";
if (defined $opt{INPIPE}) {
my $tmp = mktemp ('el-XXXX') . '.tmp';
my $tmppath = catfile($ENV{TMPDIR},$tmp);
my $try = 0;
$| = 1;
my $exp = qq((oneliner-write-buffer "$opt{INPIPE}"
(concat
(file-name-as-directory (getenv "TMPDIR")) "$tmp")));
$exp =~ s/\s+/ /g;
print STDERR $oneliner_ex_cmd_prefix,"eval $exp\n";
while (++$try <= 10) {
select(undef, undef, undef, 0.20); # sleep;
last if -f $tmppath;
}
$opt{DEBUG} and debug ("inpipe trial: $try\n");
open INPIPE, $tmppath or die "can't open $tmppath: $!\n";
$print->($_) while ();
close INPIPE;
unlink $tmppath;
} elsif ($use_stdin) {
$print->($_) while ();
} else {
$print->();
}
}
exit;
########## subroutines below ##########
##
## show version
##
sub version {
print $version_string, "\n";
}
##
## show help
##
sub help {
print $version_string, "\n", <<'END_OF_USAGE';
usage: el [options] [arg ...]
-a --args n number of arguments for given function
-c --command cmd use cmd as first argument for each line
-d --debug display additional info for debugging
-f --format fmt use fmt as format string of printf
-h --help give this help
-i --inpipe buf get input from pipe buffer
-o --outpipe buf put output to pipe buffer
-s --serial serialize stdin as single stream instead of multi lines
-V --version display version number
-x --execute put special string for automatic evaluation
END_OF_USAGE
}
##
## build function for output and return its reference
##
sub build_print_func {
my $format = $opt{FORMAT}; # format string for printf
my $args = $opt{ARGS}; # number of arguments
my $prefix = (($opt{EXECUTE} or defined $opt{OUTPIPE}) ? $oneliner_std_start : '');
my $suffix = (($opt{EXECUTE} or defined $opt{OUTPIPE}) ? $oneliner_std_end : '');
my $print_sub = undef; # defined later
# these variables will go into closure defined below
if (not defined $format) {
# if no format given, use print()
$print_sub = sub {
my $bareword = shift;
my @list = ($bareword, map {qq/"$_"/} @_);
print "(@list)";
};
} elsif ($format eq '') {
# if empty, put input as is
$print_sub = sub { print $_ };
} else {
if ($args == 0) {
# count single "%" for args
# use "%%" for escape instead of "\%"
while ($format =~ /[^%]*(%+)/g) {
++$args if length ($+) % 2 == 1;
}
}
$print_sub = sub{
my $fmt = eval "qq\000$format\000"; # expand \t, @_ etc.
chomp $fmt; # newline will added later
if ($opt{DEBUG}) {
debug ("format(raw) = [$format]\n");
debug ("format(used) = [$fmt]\n");
debug ("params(used) = [@_]\n");
}
printf $fmt, @_;
};
}
# return subroutine
return sub {
do { # loop at least once even if no input given
local $_ = shift || ''; # force string type
chomp;
my @list = split;
my $len = $args || @list;
if ($opt{DEBUG}) {
debug ("input: [$_]\n");
debug ("splice: [$len]\n");
}
do {
print $prefix;
$print_sub->( @ARGV, splice (@list, 0, $len) );
print $suffix;
print "\n"; # force newline
} while (@list);
} while (@_);
};
}
##
## print debugging info
##
sub debugf {
my $fmt = shift;
printf STDERR '[DEBUG] '.$fmt, @_;
}
sub debug {
print STDERR '[DEBUG] ',@_;
}
oneliner-el-0.3.6.orig/scripts/Makefile.in 0100644 0001750 0001750 00000001650 07764574474 020027 0 ustar mohura mohura ###
### Makefile for el command
###
### Author: Kiyoka Nishiyama
### Created: 11,Feb,2002
### Revised: 11,Feb,2002
srcdir = @srcdir@
VPATH = @srcdir@
prefix=@prefix@
infodir=@infodir@
################################################################
##
## EDIT THE FOLLOWINGS by configure scripts
##
################################################################
##
## DO NOT EDIT THE FOLLOWINGS
##
SCRIPT = el
TEMP = el.temp
CP = @CP@
RM = @RM@ -f
MKDIR = @MKDIR@ -p
RMDIR = @RMDIR@
CHMOD = @CHMOD@
VER = @ONELINER_VER@
PERL = @PERL5@
################################################################
all:
echo '#!'$(PERL) '-w' > $(TEMP)
echo 'my $$ONELINER_VER="'$(VER)'";' >> $(TEMP)
cat $(SCRIPT) >> $(TEMP)
install: $(TEMP)
$(CP) $(TEMP) $(prefix)/bin/$(SCRIPT)
$(CHMOD) +x $(prefix)/bin/$(SCRIPT)
uninstall:
$(RM) $(prefix)/bin/$(SCRIPT)
clean:
$(RM) $(TEMP)
##
## End of Makefile
##
oneliner-el-0.3.6.orig/info/ 0040755 0001750 0001750 00000000000 07764574474 015227 5 ustar mohura mohura oneliner-el-0.3.6.orig/info/oneliner.texi 0100644 0001750 0001750 00000102747 07764574474 017745 0 ustar mohura mohura \input texinfo @c -*-texinfo-*-
@c このファイルは EUCでセーブされていることを期待しています。(makeinfoで処理するため)
@c %**start of header
@setfilename oneliner.info
@settitle Oneliner(Shell-mode hooks for Oneliners)
@c %**end of header
@clear jp
@clear us
@set us
@ifset jp
@c Oneliner の texinfo
@c Copyright (C) 2001-2003 西山清香
@c M-x texinfo-format-buffer で info にしてください。
@end ifset
@ifset us
@c Texinfo for Oneliner
@c Copyright (C) 2001-2003 Kiyoka Nishiyama
@c Try "M-x texinfo-format-buffer" or makeinfo to get the Info.
@end ifset
@set version 0.3.x
@set modified 2003/10/15
@titlepage
@sp 10
@center
@subtitle Shell-mode hooks for Oneliners
@ifset jp
@title 『Oneliner』
@subtitle // ワンライナ //
@author Copyright @copyright{}2001-2003 西山清香
@end ifset
@ifset us
@title Oneliner
@author Copyright @copyright{}2001-2003 Kiyoka Nishiyama
@end ifset
@end titlepage
@ifset jp
@dircategory Emacs
@direntry
* Oneliner-J: (oneliner.jis.info). Shell-mode hooks for Oneliners
@end direntry
@end ifset
@ifset us
@dircategory Emacs
@direntry
* Oneliner: (oneliner.info). Shell-mode hooks for Oneliners
@end direntry
@end ifset
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@c Top
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@ifinfo
@node Top, Overview, (dir), (dir)
@ifset jp
@top Oneliner マニュアル
@end ifset
@ifset us
@top Oneliner Manual
@end ifset
@flushright
@ifset jp
西山清香
作成 2001/06/12
更新@value{modified}
@end ifset
@ifset us
Kiyoka Nishiyama
Created 2001/06/12
Modified@value{modified}
@end ifset
@end flushright
@ifset jp
この Info は Oneliner バージョン@value{version} について解説します。この Info
の他に、Oneliner に関する有益な情報は Oneliner の公式ホームページ
(http://oneliner-elisp.sourceforge.net/)から得られるかもしれません。
@end ifset
@ifset us
This Info documents Oneliner version @value{version}. In addition to this
Info, you may find useful information about Oneliner from Oneliner's official home
page(http://oneliner-elisp.sourceforge.net/)
@end ifset
@end ifinfo
@menu
@ifset jp
* Overview:: はじめに読んでね
* Start:: さぁ始めよう!
* E-Pipe:: e-パイプによるシェルとEmacsの統合
* El-Command:: el コマンドによるシェルとEmacsの統合
* KeyOperation:: キー操作
* Customize:: 自分好みのOnelinerにするには
* Example:: 応用・キメ技
* Avail:: 入手方法とメーリングリスト
@end ifset
@ifset us
* Overview:: Overview
* Start:: Let's get started
* E-Pipe:: Integration with e-pipe
* El-Command:: Integration with @samp{el} command
* KeyOperation:: Key operation
* Customize:: How to customize as you like
* Example:: Examples (various oneliner technique)
* Avail:: Availability and mailing-list
@end ifset
@end menu
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@c Overview
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@node Overview, Start, Top, Top
@ifset jp
@chapter はじめに読んでね
@end ifset
@ifset us
@chapter Overview(Read me first)
@end ifset
@ifset jp
Oneliner とは、Emacs標準 shell-mode へのフック集です。
シェルでワンライナをキメる UNIXユーザーのための便利な拡張を集めました。
@end ifset
@ifset us
Oneliner is hooks of Emacs standard shell-mode.
We gathered nice extension for UNIX shell geeks who loves one line script.
@end ifset
@ifset jp
Oneliner バージョン @value{version} の特長を以下に示します。
@end ifset
@ifset us
The features of Oneliner @value{version} are as follows:
@end ifset
@itemize @minus
@item
@ifset jp
簡単な操作で、Oneliner shell-modeの標準入出力を Emacsのバッファに接続できます。
@end ifset
@ifset us
You can connect standard input/output to/from Emacs-buffer with easy operation.
@end ifset
@item
@ifset jp
Emacsとシェルプロセスのカレントディレクトリを完全かつ自動的に同期します。
@end ifset
@ifset us
You can synchronize currect directory between oneliner-mode and shell process.
@end ifset
@item
@ifset jp
コマンドの完了をbeepで通知します。
@end ifset
@ifset us
Oneliner gives you notice with beep when command execution was done.
@end ifset
@item
@ifset jp
@samp{*Oneliner shell*}バッファに出力されたコントロールコードの処理を行ないます。
@end ifset
@ifset us
Oneliner can handle some control codes.
@end ifset
@end itemize
@ifset jp
対応する Emacsバージョンは以下の通りです。
@end ifset
@ifset us
You can use these versions of Emacs.
@end ifset
@itemize @minus
@item
FSF Emacs 20.7 or later
@item
XEmacs Emacs 21.1.14 or later
@item
Meadow 1.14 or later ( You must use it with cygwin )
@end itemize
@ifset jp
Oneliner には以下のライブラリが必要とします。
@end ifset
@ifset us
Oneliner needs libraries as follows:
@end ifset
@itemize @minus
@item
apel 10.6 or later
@end itemize
@ifset jp
付属の 'el'スクリプトを使うためには以下のプログラムが必要です。
@end ifset
@ifset us
If you use the Oneliner's accessories 'el' scripts, You need programs as follows:
@end ifset
@itemize @minus
@item
perl5 or later
@end itemize
@ifset jp
以下のシェルを使うことができます。
@end ifset
@ifset us
You can use these shell programs.
@end ifset
@itemize @minus
@item
bash
@item
csh
@item
tcsh
@item
zsh
@end itemize
@ifset jp
beta リリースである Emacs (たとえば Emacs 21)をサポートすることもあり
ますが、正式リリースになって仕様が変わったときは、正式リリースである
Emacs の仕様に合わせます。
@end ifset
@ifset us
Oneliner may support beta versions of Emacs (e.g. Emacs 21) but
Oneliner conforms the spec of official release when available.
@end ifset
@ifset jp
このマニュアルで単に Emacs と言った場合には、サポートしているすべての
プラットフォームを意味します。
@end ifset
@ifset us
Throughout this manual, "Emacs" means all supported platforms.
@end ifset
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@c Start
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@node Start, E-Pipe, Overview, Top
@ifset jp
@chapter さぁ始めよう!
@end ifset
@ifset us
@chapter Let's get started
@end ifset
@ifset jp
Oneliner の起動は @samp{M-x oneliner} です。
Onelinerをインストールしてもオリジナルのshell-mode の挙動は変わりません。
@end ifset
@ifset us
To start Oneliner, do @samp{M-x oneliner}.
If you install the Oneliner, action of original shell-mode is never changed.
@end ifset
@ifset jp
Oneliner を起動した際には、@samp{*Oneliner shell*}バッファと@samp{*Oneliner pipe*0}
バッファがオープンします。@samp{*Oneliner pipe*0}バッファ に Onelinerの起動
メッセージが出ればインストール成功です。
@end ifset
@ifset us
When Oneliner is started, @samp{*Oneliner shell*} buffer and @samp{*Oneliner pipe*0}
buffer appers. If you see the Oneliner's title message in
@samp{*Oneliner pipe*0} buffer, installing is success.
@end ifset
@ifset jp
もし Oneliner が起動しない場合は、@file{oneliner.el} がインストールさ
れているか、また以下が組織の設定ファイルか自分の .emacs で設定されてい
るか確かめて下さい。
@end ifset
@ifset us
If Oneliner is not started, see whether or not Oneliner is installed
and/or whether or not the following configurations are put into a site
configuration file or your ".emacs".
@end ifset
@example
(require 'oneliner)
@end example
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@c E-Pipe
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@node E-Pipe, e-pipe, Start, Top
@ifset jp
@chapter e-パイプによるシェルとEmacsの統合
@end ifset
@ifset us
@chapter To integrate shell with Emacs.
@end ifset
@ifset jp
Onelinerはe-パイプという機能でシェルとEmacsを統合します。
@end ifset
@ifset us
You can integrate shell with Emacs with @samp{e-pipe}.
@end ifset
@menu
@ifset jp
* e-pipe:: e-パイプとパイプバッファ
* syntax:: シンタックス
@end ifset
@ifset us
* e-pipe:: e-pipe and pipe-buffer
* syntax:: syntax
@end ifset
@end menu
@c %%%%%%%%%%%%%%%%%
@node e-pipe, syntax, E-Pipe, E-Pipe
@ifset jp
@section e-パイプ
@end ifset
@ifset us
@section e-Pipe
@end ifset
@ifset jp
通常 UNIXシェルでは、コマンド間の入出力をパイプ@samp{|} 記号で接続できます。
@end ifset
@ifset us
Almost UNIX shell can connect the command's stdout with the another command's stdin with @samp{|} syntax.
@end ifset
@ifset jp
一方、Onelinerはパイプ@samp{|} 記号を使って、コマンドの標準出力を Emacsバッファに接続したり、Emacsバッファをコマンドの標準入力に接続したりできます。
これを e-パイプと呼びます。下記の図はイメージ図です。
@end ifset
@ifset us
On the other hand,
Oneliner can connect the command's stdout with the Emacs-buffer, and it can connect the Emacs-buffer with the command's stdin, with @samp{|} syntax.
We call the syntax by the name of 'e-pipe'. The image diagram is as follows:
@end ifset
@example
@code{(Emacs Buffer) -> | commands | -> (Emacs Buffer)}
@end example
@ifset jp
@section パイプバッファ
@end ifset
@ifset us
@section PipeBuffer
@end ifset
@ifset jp
Onelinerではパイプバッファを頻繁に使います。
パイプバッファは @samp{|}(e-パイプ)を使って コマンドと接続できます。
以下のような単純な操作で 自動的にパイプバッファが用意されます。
@example
@code{commands |}
@end example
また、パイプバッファは番号を持っており、
複数のパイプバッファから番号で選択することができます。
用語を次のように定義します。
@end ifset
@ifset us
You will use 'pipe-buffer' frequently on Oneliner.
'pipe-buffer' can be connected command with @samp{|}(e-pipe).
'pipe-buffer' is appeared with simple operation as follows:
@example
@code{commands |}
@end example
'pipe-buffer' has the number.
When you append the number, you can select one 'pipe-buffer' from some 'pipe-buffer's.
We defined terms as follows:
@end ifset
@itemize @minus
@item
@ifset jp
バッファ@samp{*Oneliner pipe*N} をパイプバッファと呼びます。( Nは0〜 )
@end ifset
@ifset us
We call the buffer @samp{*Oneliner pipe*N} by the name of 'pipe-buffer'. ( N is 0 ... )
@end ifset
@item
@ifset jp
バッファ@samp{*Oneliner pipe*0} をデフォルトバイプバッファと呼びます。
@end ifset
@ifset us
We call the buffer @samp{*Oneliner pipe*0} by the name of 'default-pipe-buffer'.
@end ifset
@end itemize
@c %%%%%%%%%%%%%%%%%
@node syntax, El-Command, e-pipe, E-Pipe
@ifset jp
@subsection e-パイプのシンタックス
@end ifset
@ifset us
@subsection syntax of 'e-pipe'
@end ifset
@ifset jp
@subsubsection e-パイプシンタックスについて解説します。[]内は省略可能です。
@end ifset
@ifset us
@section This is an explanation of 'e-pipe' syntax. You can omit the syntax in '[]'.
@end ifset
@example
@code{[buf-spec]| commands [+]|[buf-spec][!]}
@end example
@ifset jp
[]内のシンタックスについて解説します。
@end ifset
@ifset us
This is explanations syntax in '[]'.
@end ifset
@table @samp
@item buf-spec
@ifset jp
@table @samp
@item 省略時
デフォルトパイプバッファの指定を意味します。
@item 番号指定時
指定番号のパイプバッファの指定を意味します。
@item @@バッファ名
この形式ではパイプバッファではなく既存のEmacsバッファの指定を意味します。
バッファ名の前後には余分な空白などを入れないように注意してください。
@end table
@end ifset
@ifset us
@table @samp
@item When omited.
It means the default pipe-buffer.
@item When specified a number.
It means the numbered pipe-buffer.
@item When specified @samp{@@buffer-name}
It means a Emacs-buffer( This is not a pipe-buffer ).
Do not insert space character at around the buffer name.
@end table
@end ifset
@item +
@ifset jp
出力バッファに対しての追記を意味します。
@end ifset
@ifset us
It means addition to pipe-buffer.
@end ifset
@item !
@ifset jp
出力後のバッファ全体をS式として評価します。
@end ifset
@ifset us
It means a request of evaluation of output pipe-buffer.
The action starts after output process was done.
@end ifset
@end table
@ifset jp
実際の記述例は以下のようになります。:
@end ifset
@ifset us
Some examples with 'e-pipe' syntax is as follows:
@end ifset
@example
@code{ find ./ -name \*.c | }
@code{ | wc }
@code{ | sort | }
@code{ 1| awk '@{print $1@}' | grep 10 | sort -n |9 }
@code{ cat file +| }
@code{ cat file +|@@*scratch* }
@code{ @@sample.c| wc }
@code{ echo "(emacs-version)" |! }
@code{ echo "(find-file \"a.c\")" |! }
@end example
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@c el command
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@node El-Command, el-command, syntax, Top
@ifset jp
@chapter elコマンドによるシェルとEmacsの統合
@end ifset
@ifset us
@chapter Integration with @samp{el} command
@end ifset
@ifset jp
Onelinerにはelというperlスクリプトが付属しています。よりshellとEmacsを深く統合します。
@end ifset
@ifset us
Oneliner has a perl script the name of @samp{el}.
You can more integrate shell with Emacs with @samp{el} command.
@end ifset
@menu
@ifset jp
* el-command:: elコマンドとは?
* el-command-man:: elコマンドマニュアル
* try-el-command:: elコマンドを使ってみよう
@end ifset
@ifset us
* el-command:: What is @samp{el} command?
* el-command-man:: Manual of @samp{el} command
* try-el-command:: Let's try @samp{el} command
@end ifset
@end menu
@c %%%%%%%%%%%%%%%%%
@node el-command, el-command-man, El-Command, El-Command
@ifset jp
@section elコマンドとは?
@end ifset
@ifset us
@section What is @samp{el} command ?
@end ifset
@ifset jp
elコマンドを使えばOneliner専用のshellコマンドを簡単に作ることができます。
elコマンドはshellバッファからS式をEmacsに送ったり、そのS式の実行を依頼したりできます。
つまり、shellコマンドからEmacsの機能を起動できます。
また、お好みのshellコマンドと Emacsの動作を連係させることができます。
@end ifset
@ifset us
You can make a tuned shell-command for Oneliner with @samp{el} command.
The @samp{el} command can send S-exp to Emacs, and it can make Emacs to evaluate it, too.
In other words, You can execute Emacs's function from shell-commands.
And you can make Emacs to work in closer cooperation with your favorite shell-commands.
@end ifset
@ifset jp
例えば、以下のような芸当もできます。(shellバッファで以下のように入力するとEmacsがa.cというファイルを自動的にオープンします。)
@end ifset
@ifset us
For example, You can perform a technique as follows:
(If you input the follows, Emacs opens a file ``a.c'' automatically.)
@end ifset
@example
$ find-file a.c
@end example
@ifset jp
さて、それを実現するためにはどうやれば良いのでしょうか?elを利用して次のようなaliasを定義します。
(bash,zshを想定しています。)
@end ifset
@ifset us
How do we implement to do it ? Let's define an alias with @samp{el} as follows:
@end ifset
@example
alias find-file="el -x -f '(display-buffer (find-file-noselect \"%s\"))'"
@end example
@c %%%%%%%%%%%%%%%%%
@node el-command-man, try-el-command, el-command, El-Command
@ifset jp
@section elコマンドマニュアル
@end ifset
@ifset us
@section Manual of @samp{el} command
@end ifset
@ifset jp
ここでは、elコマンドの詳細を解説します。
ここでの動作例は全てデフォルトパイプバッファに以下のデータが入っているものとします。
@end ifset
@ifset us
Here is explanation for @samp{el} command.
We assume that a default pipe-buffer has data as follows on all examples:
@end ifset
@example
1 2
3 4
@end example
@ifset jp
基本的な動作は、与えられたコマンドライン引数や標準入出力のデータからS式を組み立てて表示するものです。
以下に例を示します。
@end ifset
@ifset us
The primary actions are building S-exp from command line arguments and stdin. And then, display it.
@end ifset
@example
$ el 1 2 3 4
(1 "2" "3" "4")
$ echo 1 2 3 4 | el
(1 "2" "3" "4")
$ echo 1 2 | el 3 4
(3 "4")
$ | el
(1 "2")
(3 "4")
@end example
@ifset jp
elコマンドは多くのコマンドラインスイッチを持っています。
各スイッチの解説を行ないます。
@end ifset
@ifset us
@samp{el} command has many command line switches.
Here is explanation of switches.
@end ifset
@table @samp
@item -c (--command cmd)
@ifset jp
@samp{cmd}はElisp関数であると指定します。
コマンドライン引数や標準入力からはのデータは@samp{cmd}の引数とみなします。
-cスイッチだけを指定した場合は標準入力の1行につき1つのS式を出力します。
@end ifset
@ifset us
@samp{cmd} means a function of Elisp.
Command line arguments and data from stdin means arguments of @samp{cmd}.
If you specify the only -c switch, @samp{el} output one S-exp by one line of stdin.
@end ifset
@example
$ | el -c elisp-func
(elisp-func "1" "2")
(elisp-func "3" "4")
@end example
@item -a (--args n)
@ifset jp
-cスイッチで指定したElisp関数が取る引数の最大数を指定します。
@end ifset
@ifset us
Specifies the maximum number of arguments of a Elisp function with @samp{-c} switch.
@end ifset
@example
$ | el -a 1 -c elisp-func
(elisp-func "1")
(elisp-func "2")
(elisp-func "3")
(elisp-func "4")
@end example
@item -f (--format fmt)
@ifset jp
S式の組み立てにprintfのフォーマット文字列を使う
@end ifset
Allows you to use format string of printf for making a S-exp.
@ifset us
@end ifset
@example
$ | el -f '(elisp-func "%s")'
(elisp-func "1")
(elisp-func "2")
(elisp-func "3")
(elisp-func "4")
$ | el -f '(elisp-func "%s" "%s")'
(elisp-func "1" "2")
(elisp-func "3" "4")
@end example
@item -x (--execute)
@ifset jp
S式を@samp{*Oneliner auto-eval*}というバッファで評価することをOnelinerにリクエストします。
@end ifset
@ifset us
Requests to Oneliner to evaluate the S-exp to use @samp{*Oneliner auto-eval*} buffer.
@end ifset
@item -i (--inpipe buf)
@ifset jp
入力先のパイプバッファ番号またはバッファ名を指定します。
@end ifset
@ifset us
Gets input from pipe-buffer. You can specify a number of pipe-buffer, too.
@end ifset
@item -o (--outpipe buf)
@ifset jp
出力先のパイプバッファ番号またはバッファ名を指定します。
@end ifset
@ifset us
Puts output to pipe-buffer. You can specify a number of pipe-buffer, too.
@end ifset
@item -s (--serial)
@ifset jp
標準入力からの複数行を1行にシリアライズします。
@end ifset
@ifset us
Makes @samp{el} to serialize multiple lines to one line.
@end ifset
@example
$ | el -s -c elisp-func
(elisp-func "1" "2" "3" "4")
$ | el -s -a 3 -c elisp-func
(elisp-func "1" "2" "3")
(elisp-func "4")
@end example
@item -h (--help)
@ifset jp
ヘルプの表示を行ないます。
@end ifset
@ifset us
Display help message.
@end ifset
@item -V (--version)
@ifset jp
バージョン番号の表示を行ないます。
@end ifset
Display version identifiers.
@ifset us
@end ifset
@item -d (--debug)
@ifset jp
デバッグ情報の出力機能を有効にします。
@end ifset
@ifset us
Enable debugging state.
@end ifset
@end table
@c %%%%%%%%%%%%%%%%%
@node try-el-command, KeyOperation, el-command-man, El-Command
@ifset jp
@section elコマンドを使ってみよう
@end ifset
@ifset us
@section Let's try @samp{el} command
@end ifset
@ifset jp
@subsubsection 便利なaliasの紹介
@end ifset
@ifset us
@subsubsection Useful aliases
@end ifset
@table @code
@item alias find-file="el -x -f '(display-buffer (find-file-noselect \"%s\"))'"
@ifset jp
指定ファイルをEmacsにオープンさせます。以下のようなことができます。
@end ifset
@ifset us
Make Emacs to open files as follows:
@end ifset
@example
@code{ find-file file.c }
@code{ find ./ -name \*.c | find-file }
@end example
@item find-dired="el -x -f '(find-dired \"%s\" \"-name %s\")'"
@ifset jp
Emacsのfind-diredを指定パラメータで起動します。
@end ifset
@ifset us
Start a Emacs's function @samp{find-dired} with parameters which you specify.
@end ifset
@example
@code{ find-dired ./ \*.c }
@end example
@item alias dired='el -x -a 1 -c dired'
@ifset jp
指定パスでdiredを起動します。
@end ifset
@ifset us
Start @samp{dired} with directory path which you specify.
@end ifset
@example
@code{ dired /etc }
@end example
@item alias ediff-files='el -x -s -a 2 -c ediff-files'
@ifset jp
2つのファイル名を指定して、ediff-filesを起動します。
@end ifset
@ifset us
Start @samp{ediff-files} with two file names which you specify.
@end ifset
@example
@code{ ediff-files a.c b.c }
@end example
@item alias w3m-find-file='el -x -a 1 -c w3m-find-file'
@ifset jp
emacs-w3mで指定htmlファイルをオープンします。
@end ifset
Start w3m-find-file with a html file with you specify.
@ifset us
@end ifset
@example
@code{ w3m-find-file index.html }
@end example
@item alias cvs-update="el -x -f '(cvs-update \"%s\" nil)'"
@ifset jp
指定パスでpcl-cvsのcvs-update関数を起動します。
@end ifset
@ifset us
Start cvs-update function of pcl-cvs package with directory path which you specify.
@end ifset
@example
@code{ cvs-update . }
@end example
@item alias google="echo nil | el -x -f '(w3m \"http://www.google.co.jp/\" %s)'"
@ifset jp
emacs-w3mでgoogleのトップページを開きます。
@end ifset
@ifset us
Open the top page of google with emacs-w3m.
@end ifset
@example
@code{ google }
@end example
@end table
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@c KeyOperation
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@node KeyOperation, Customize, try-el-command, Top
@ifset jp
@chapter キー操作
@end ifset
@ifset us
@chapter Key Operation
@end ifset
@ifset jp
Onelinerで定義されているキーバインドの解説をします。
@end ifset
@ifset us
These are Oneliner's key bindings.
@end ifset
@table @kbd
@item C-c C-s
@ifset jp
shellと@samp{*Oneliner shell*}バッファのカレントディレクトリを強制的に同期させます。
カスタマイズ変数の @samp{oneliner-sync-default-directory-after-prompt} を non-nil
にするとこのキー操作は不要になります。(詳細は 「自分好みのOnelinerにするには」を参照のこと)
@end ifset
@ifset us
Force synchronize the current directory of buffer @samp{*Oneliner shell*} with the shell's current directoy.
If you set the customize variable @samp{oneliner-sync-default-directory-after-prompt} to 'non-nil',
you do not need to do this operaton.
@end ifset
@item C-c C-b
@ifset jp
@samp{*Oneliner pipe*0} バッファをもう一つのウィンドウにポップアップする
@end ifset
@ifset us
Pop up the @samp{*Oneliner pipe*0} buffer on the another window.
@end ifset
@item C-c C-0
@ifset jp
@samp{*Oneliner pipe*0} バッファをもう一つのウィンドウにポップアップする
@end ifset
@ifset us
Pop up the @samp{*Oneliner pipe*0} buffer on the another window.
@end ifset
@item C-c C-1
@ifset jp
@samp{*Oneliner pipe*1} バッファをもう一つのウィンドウにポップアップする
@end ifset
@ifset us
Pop up the @samp{*Oneliner pipe*1} buffer on the another window.
@end ifset
@item C-c C-2
@ifset jp
@samp{*Oneliner pipe*2} バッファをもう一つのウィンドウにポップアップする
@end ifset
@ifset us
Pop up the @samp{*Oneliner pipe*2} buffer on the another window.
@end ifset
@item C-c C-3
@ifset jp
@samp{*Oneliner pipe*3} バッファをもう一つのウィンドウにポップアップする
@end ifset
@ifset us
Pop up the @samp{*Oneliner pipe*3} buffer on the another window.
@end ifset
@item C-c C-4
@ifset jp
@samp{*Oneliner pipe*4} バッファをもう一つのウィンドウにポップアップする
@end ifset
@ifset us
Pop up the @samp{*Oneliner pipe*4} buffer on the another window.
@end ifset
@item C-c C-5
@ifset jp
@samp{*Oneliner pipe*5} バッファをもう一つのウィンドウにポップアップする
@end ifset
@ifset us
Pop up the @samp{*Oneliner pipe*5} buffer on the another window.
@end ifset
@item C-c C-6
@ifset jp
@samp{*Oneliner pipe*6} バッファをもう一つのウィンドウにポップアップする
@end ifset
@ifset us
Pop up the @samp{*Oneliner pipe*6} buffer on the another window.
@end ifset
@item C-c C-7
@ifset jp
@samp{*Oneliner pipe*7} バッファをもう一つのウィンドウにポップアップする
@end ifset
@ifset us
Pop up the @samp{*Oneliner pipe*7} buffer on the another window.
@end ifset
@item C-c C-8
@ifset jp
@samp{*Oneliner pipe*8} バッファをもう一つのウィンドウにポップアップする
@end ifset
@ifset us
Pop up the @samp{*Oneliner pipe*8} buffer on the another window.
@end ifset
@item C-c C-9
@ifset jp
@samp{*Oneliner pipe*9} バッファをもう一つのウィンドウにポップアップする
@end ifset
@ifset us
Pop up the @samp{*Oneliner pipe*9} buffer on the another window.
@end ifset
@item M-x oneliner-send-cd
@ifset jp
カレントバッファのカレントディレクトリ値を @samp{*Oneliner shell*}にセットする。
(内部では実際に shell に cd コマンドを送る)
以下のようなグローバルキーバインドに設定すると便利です。
@code{ (global-set-key "\C-cd" 'oneliner-send-cd) }
@end ifset
@ifset us
Set the current directory value of current buffer to the buffer @samp{*Oneliner shell*}.
(Inside of Oneliner: oneliner.el sends 'cd' command to shell process.)
Nice global key is follows, as you like:
@code{ (global-set-key "\C-cd" 'oneliner-send-cd) }
@end ifset
@item M-x oneliner-sync-default-directory
@ifset jp
@samp{*Oneliner shell*}バッファの default-directory をカンレトバッファにセット
する。
@end ifset
@ifset us
You can set the @samp{*Oneliner shell*} buffer's default-directory to current buffer.
@end ifset
@end table
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@c Customize
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@node Customize, Example, KeyOperation, Top
@ifset jp
@chapter 自分好みのOnelinerにするには
@end ifset
@ifset us
@chapter How to customize as you like
@end ifset
@ifset jp
Onelinerのカスタマイズ項目について解説します。
@end ifset
@ifset us
These are customizing variables:
@end ifset
@table @samp
@item oneliner-init-hook
@ifset jp
onelinerの起動時初期化ルーチンへのフック @*
(デフォルト:nil)
@end ifset
@ifset us
Hook of Oneliner's initial routine. @*
(default:nil)
@end ifset
@item oneliner-comint-send-hook
@ifset jp
oneliner-comint-send()用のフック。このフックはoneliner-comint-send()関数の最後で実行される。
(デフォルト:nil)
@end ifset
@ifset us
Hook for oneliner-comint-send(). oneliner-comint-send() runs this hook at last of function.@*
(default:nil)
@end ifset
@item oneliner-keep-temp-file
@ifset jp
Non-nilでテンポラリファイルを消さずに置いておく動作になる@*
(デフォルト:nil)
@end ifset
@ifset us
Non-nil means temporary files will not be deleted.@*
(default:nil)
@end ifset
@item oneliner-show-top-of-pipe-buffer
@ifset jp
Non-nilでパイプバッファ表示時にバッファの先頭に飛ぶ@*
(デフォルト:nil)
@end ifset
@ifset us
Non-nil means you can see the top of the pipe-buffer when you open one. @*
@end ifset
@item oneliner-beep
@ifset jp
Non-nilでコマンドの実行終了時にビープを鳴らす@*
(デフォルト:nil)
全てのコマンドの実行終了時にビープが鳴るわけではありません。
@samp{oneliner-beep-time} も参照してください。
@end ifset
@ifset us
Non-nil means beep after command execution. @*
(default:nil)
See also @samp{oneliner-beep-time}.
@end ifset
@item oneliner-beep-time
@ifset jp
oneliner-beepがNon nilの時、コマンド実行に何秒以上かかったらbeepを鳴らすかを指定する@*
(デフォルト:3)
@end ifset
@ifset us
Minimum interval in second after which @samp{oneliner-beep} will take effect. @*
(default:3)
@end ifset
@item oneliner-pwd-command-on-shell
@ifset jp
シェルがカレントディレクトリを返すコマンド@*
(デフォルト:" \\pwd")
デフォルトで 先頭にスペースを入れている理由は bashのヒストリに残らないようにするためです。
コマンドをエスケープしているのは シェルのエイリアス機能をOFFにするためです。
@end ifset
@ifset us
shell command name that your shell display current directory path. @*
(default:" \\pwd")
The first caracter (space) has a reason.
I don't want to add the record of 'pwd' command to bash's history.
@end ifset
@item oneliner-complement-newline-for-input
@ifset jp
Non-nilで入力パイプバッファの末尾に改行が無ければ補う@*
(デフォルト:nil)
@code{echo -n abc |} 等を実行すると通常改行が出力されません。これでは、そのバッファを出力に
使う時に改行が無くなり、ソフトウェアによっては、1行として認識されないことがあります。
これを補うためにも Non-nilにすることをお勧めします。
@end ifset
@ifset us
Non-nil means complement newline at the end of input data. @*
(default:nil)
You should set this variable to 'non-nil'.
Because when you execute this code @code{echo -n abc |}, 'pipe-buffer' doesn't have newline.
Some program needs newline for input to recognize it as one line.
@end ifset
@item oneliner-sync-default-directory-after-prompt
@ifset jp
Non-nilで プロンプトが出る度に@samp{*Oneliner shell*}バッファとシェルのカレントディレクトリを同期する@*
(デフォルト:nil)
Emacs標準のshell.elでは、 cd コマンドで シンボリックリンクを辿ったり @samp{cd ..} したりした場合、
シェルのカレントディレクトリに@samp{*shell*}バッファが追従するのを失敗することがあります。
Onelinerでは、この機能でカンレントディレクトリの同期に失敗することはありません。
それは、Onelinerがシェルのプロンプトに含まれるカレントディレクトリ文字列を毎回読み込むことで
ディレクトリ同期を実現しているからです。
@end ifset
@ifset us
Non-nil means auto synchronization default-directory after prompt @*
(default:nil)
The original shell.el offen misses to synchronize current directory.
We fixed it on oneliner.el to use directory string in shell prompt.
@end ifset
@item oneliner-indirect-buffer-alist
@ifset jp
指定パイプバッファと通常のバッファをindirect機能で写像する @*
(デフォルト:nil)
パイプバッファの番号と、それを indirectするバッファ名をリストで指定します。
例えば、9番を @samp{*scratch*} にindirectすると、@samp{*Oneliner pipe*9} と @samp{*scratch*} が常に
同じ内容で保たれます。良く使うバッファを写像すると便利です。
@end ifset
@ifset us
Hold pairs of pipe-buffer number and its base buffer name. @*
(default:nil)
e.g. If you specify to indirect the number '9' to @samp{*scratch*}, @samp{*Oneliner pipe*9} and @samp{*scratch*} are keeped same anytime.
@end ifset
@item oneliner-handle-control-codes-flag
@ifset jp
Non-nilで@samp{*Oneliner shell*}バッファに出力されたコントロールコードを処理する@*
(デフォルト:nil)
Emacs標準のshell.elでは、ホームフィード等の文字が表示された場合、表示が乱れますが、
Onelinerではこの機能で正しく処理しています。@*
これによって wget や apt-get の実行時に表示が乱れることを防ぐことができます。
@end ifset
@ifset us
Non-nil means handle control codes in oneliner-mode buffer. @*
(default:nil)
You can execute programs such as 'wget' and 'apt-get' without corrupted screen.
@end ifset
@item oneliner-outpipe-busy-check
@ifset jp
Non-nilでパイプバッファ出力中は、シェルコマンド実行できなくする。
(デフォルト:nil)
@end ifset
@ifset us
Non-nil means block the key input during outpipe busy. @*
(default:nil)
@end ifset
@item oneliner-display-evaled-value-flag
@ifset jp
Non-nilでパイプバッファの評価後、結果を表示する。@*
(デフォルト:nil)
@end ifset
@ifset us
Non-nil means display the evaluated value of pipe-buffer.@*
(default:nil)
@end ifset
@item oneliner-eol-for-write
@ifset jp
テンポラリファイルの改行コードのタイプ。
タイプは[default,unix,dos,mac]より選択可能。
(デフォルト:nil=default)
@end ifset
@ifset us
EOL-TYPE for writing temporary file.
You can select a type from [default,unix,dos,mac].
(default:nil=default)
@end ifset
@end table
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@c Example
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@node Example, Avail, Customize, Top
@ifset jp
@chapter 応用・キメ技
@end ifset
@ifset us
@chapter Examples (various oneliner technique)
@end ifset
@ifset jp
@section コマンドでキメる
@end ifset
@ifset us
@section Make shoot with commands
@end ifset
@table @code
@item dmesg |
@ifset jp
@samp{*oneliner pipe*0} に dmesg の結果を送って読む
@end ifset
@ifset us
Read the dmesg's result with @samp{*oneliner pipe*0}.
@end ifset
@item find ./ -name \*.c |1
@ifset jp
検索した cソースファイル名を @samp{*oneliner pipe*1} に送る
コマンド実行後 @samp{*oneliner pipe*1} から、いらないファイル名を削除する
@end ifset
@ifset us
Send the result which is list of finded c file names to @samp{*oneliner pipe*1}.
And then remove some c file names from @samp{*oneliner pipe*1}.
@end ifset
@item 1| xargs grep main |
@ifset jp
@samp{*oneliner pipe*1} にリストされた全ファイルから main という文字列を検索し、結果を
@samp{*oneliner pipe*0} に送る。
@end ifset
@ifset us
Do 'grep' by string 'main' from the list of file names in @samp{*oneliner pipe*1},
and then send the result to @samp{*oneliner pipe*0}.
@end ifset
@item | grep key |
@ifset jp
@samp{*Oneliner pipe*0}の結果を key という文字列でさらに絞り込む
@end ifset
@ifset us
And furthermore, Do 'grep' by string 'key' to narrow the result.
@end ifset
@item seq -f 'get %g' 1 10 +|@@+draft/1
@ifset jp
Mewのドラフトバッファに 1番から10番のメールを取り寄るコマンドリストを追記する。
(※ fmlメーリングリストサーバーを想定)
@end ifset
@ifset us
Append the command strings which is to get from 1st to 10th mail archives to Mew's draft-buffer.
(notice: It was suppose the mailing-list-server 'fml'.)
@end ifset
@item @@*Mew message*0| uudecode
@ifset jp
Mewのメッセージバッファの uuencode された本文をデコードする。(ファイルはカレントディレクトリにセーブされる)
@end ifset
@ifset us
Do 'uuencode' the text in Mew's message buffer.(The result file is saved on current directory.)
@end ifset
@end table
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@c Avail
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@node Avail, source, Example, Top
@ifset jp
@chapter 入手方法とメーリングリスト
@end ifset
@ifset us
@chapter Availability and mailing-list
@end ifset
@ifset jp
ここでは、Oneliner の入手方法とメーリングリストについて触れます。
@end ifset
@ifset us
This chapter describes how to get Oneliner and related mailing-lists.
@end ifset
@menu
@ifset jp
* source:: Oneliner の入手方法
* ml:: メーリングリスト
@end ifset
@ifset us
* source:: How to get Oneliner?
* ml:: Mailing list
@end ifset
@end menu
@c %%%%%%%%%%%%%%%%%
@node source, ml, Avail, Avail
@ifset jp
@section Oneliner の入手方法
@end ifset
@ifset us
@section How to get Oneliner?
@end ifset
@ifset jp
Onelinerの最新バージョンは以下のサイトから入手できます。
@end ifset
@ifset us
The latest Oneliner is available from the following repository.
@end ifset
@example
http://oneliner-elisp.sourceforge.net/
@end example
@c %%%%%%%%%%%%%%%%%
@node ml, , source, Avail
@ifset jp
@section メーリングリスト
@end ifset
@ifset us
@section Mailing list
@end ifset
@ifset jp
Oneliner の質問や議論、開発に関することは
@example
oneliner-el@@netfort.gr.jp
@end example
に日本語で投稿できます。oneliner-el ML へ入りたい人は、本文に
@example
subscribe あなたの名前
@end example
と書いたメッセージを
@example
oneliner-el-ctl@@netfort.gr.jp
@end example
というメールアドレスに送ってください。(自動登録です)
Oneliner の質問は、著者個人宛ではなく、できるだけ oneliner-el ML へお願いします。著
者には受け取ったすべての質問に答えている時間はありません。oneliner-el ML へ質
問すると、他の人が答えてくれることを期待できます。
@end ifset
@ifset us
There is no mailing-list service for English speakers.
If you have any questions, please send them to me directly via e-mail.
@example
kiyoka@@netfort.gr.jp
@end example
@end ifset
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@c Tailer
@c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@shortcontents
@contents
@bye
oneliner-el-0.3.6.orig/info/install-info.wrapper 0100755 0001750 0001750 00000002076 07764574474 021235 0 ustar mohura mohura #!bash
#
# supported versions of install-info
# These version's command line spec is different...
# 1)install-info 1.6.x (Debian (potato) system.)
# 2)install-info 1.9.x (Debian (woody) system.)
# 3)install-info 4.x (cygwin and almost Emacs application use this.)
PATH=/sbin:/usr/sbin:$PATH
if [[ $# < 2 ]] ; then
echo "usage) install-info infofile infodir [option]"
exit 1;
fi
install-info --version &> ./tmp.log
ver=`head -1 ./tmp.log | sed -e 's/^\(.*\)\( 1\.[0-9]\)\(.*\)$/\2/'`
/bin/rm ./tmp.log
case $3 in
"remove")
case $ver in
" 1.6")
install-info --info-dir=`dirname $2` --remove $1
;;
" 1.9")
install-info --info-dir=`dirname $2` --remove-exactly $1
;;
*)
install-info --remove $1 $2
;;
esac
;;
*)
case $ver in
" 1.6")
install-info --info-dir=`dirname $2` --section=Emacs $1
;;
" 1.9")
install-info --info-dir=`dirname $2` --section Emacs Emacs $1
;;
*)
install-info $1 $2
;;
esac
;;
esac
exit 0;
oneliner-el-0.3.6.orig/info/Makefile.in 0100644 0001750 0001750 00000003715 07764574474 017277 0 ustar mohura mohura ###
### Makefile for info
### (DO NOT EDIT THIS FILE)
###
### Author: Kiyoka Nishiyama
### Created: Aug 3, 2001
### Revised: Dec 30, 2001
srcdir = @srcdir@
VPATH = @srcdir@
prefix = @prefix@
infodir = @infodir@
EMACS = @EMACS@
################################################################
INSTALLINFO = bash ./install-info.wrapper
INSTALLINFO_EN_ARGS = oneliner.info $(infodir)/dir
INSTALLINFO_JA_ARGS = oneliner.jis.info $(infodir)/dir
MAKEINFO = @MAKEINFO@
RM = @RM@ -f
MKDIR = @MKDIR@ -p
TOUCH = @TOUCH@
# To save Emacses on Windows
PWD =
################################################################
##
## DO NOT EDIT THE FOLLOWINGS
##
INFO_EN = oneliner.info
INFO_JA = oneliner.jis.info
all: info-en info-ja
install: install-info-en install-info-ja
uninstall: uninstall-info-en uninstall-info-ja
info-en:
sed -e 's/@setfilename oneliner.jis.info/@setfilename oneliner.info/' \
-e 's/@set jp/@set us/' oneliner.texi > tmp.texi
mv tmp.texi oneliner.texi
$(RM) oneliner.info*
$(TOUCH) oneliner.info
$(MAKEINFO) --no-split oneliner.texi
info-ja:
sed -e 's/@setfilename oneliner.info/@setfilename oneliner.jis.info/' \
-e 's/@set us/@set jp/' oneliner.texi > tmp.texi
mv tmp.texi oneliner.texi
$(RM) oneliner.jis.info*
$(TOUCH) oneliner.jis.info
$(MAKEINFO) --no-split oneliner.texi
install-info-en:
-@if [ ! -d $(infodir) ]; then \
$(MKDIR) $(infodir); \
fi; \
cp $(INFO_EN) $(infodir)
$(INSTALLINFO) $(INSTALLINFO_EN_ARGS) $(INSTALLINFO_EN_OPTIONS);
uninstall-info-en:
$(INSTALLINFO) $(INSTALLINFO_EN_ARGS) $(INSTALLINFO_EN_OPTIONS) remove
install-info-ja:
-@if [ ! -d $(infodir) ]; then \
$(MKDIR) $(infodir); \
fi; \
cp $(INFO_JA) $(infodir)
$(INSTALLINFO) $(INSTALLINFO_JA_ARGS) $(INSTALLINFO_JA_OPTIONS);
uninstall-info-ja:
$(INSTALLINFO) $(INSTALLINFO_JA_ARGS) $(INSTALLINFO_JA_OPTIONS) remove
clean:
$(RM) oneliner*info*
##
## End of Makefile
##
oneliner-el-0.3.6.orig/oneliner.el 0100644 0001750 0001750 00000070501 07764574474 016431 0 ustar mohura mohura ;;; oneliner.el --- shell-mode hooks for Oneliners
;; Copyright (C) 2001,02,03 Kiyoka Nishiyama
;; Author: Kiyoka Nishiyama
;; Masahiro Mishima
;; Created: Jan 9, 2001
;; Revised: $Date: 2003/12/07 09:54:37 $
;; This file is part of Oneliner
;; Oneliner is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2, or (at your option)
;; any later version.
;; Oneliner is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with Oneliner; see the file COPYING.
;;; Commentary:
;; Minimum setup:
;; 1. Please add to ".emacs" file
;; (require 'oneliner)
;;
;; Recommend setup:
;; 1. change directory
;; (global-set-key "\C-cd" 'oneliner-send-cd)
;;
;;; Documentation:
;;; Code:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;
;;; User Options
;;;
;; hook
(defcustom oneliner-init-hook '()
"*Hook for customising oneliner."
:type 'hook
:group 'oneliner)
(defcustom oneliner-comint-send-hook '()
"*Hook for oneliner-comint-send().
oneliner-comint-send() runs this hook at last of function."
:type 'hook
:group 'oneliner)
;; flag
(defcustom oneliner-keep-temp-file nil
"*Non-nil means temporary files will not be deleted."
:type 'boolean
:group 'oneliner)
;; flag
(defcustom oneliner-show-top-of-pipe-buffer nil
"*Non-nil means you can see the top of the pipe buffer when you
open one with `oneliner-pipe-buffer-other-window' command."
:type 'boolean
:group 'oneliner)
;; flag
(defcustom oneliner-beep nil
"*Non-nil means beep after command execution. See also `oneliner-beep-time'."
:type 'boolean
:group 'oneliner)
;; time to beep
(defcustom oneliner-beep-time 3
"*Minimum interval in second after which `oneliner-beep' will
take effect."
:type 'integer
:group 'oneliner)
;; pwd command name
(defcustom oneliner-pwd-command-on-shell " \\pwd"
"*shell command name that your shell display current directory path."
:type 'string
:group 'oneliner)
;; flag
(defcustom oneliner-complement-newline-for-input nil
"*Non-nil means complement newline at the end of input data."
:type 'boolean
:group 'oneliner)
;; flag
(defcustom oneliner-sync-default-directory-after-prompt nil
"*Non-nil means sync default-directory after prompt."
:type 'boolean
:group 'oneliner)
;; alist
(defcustom oneliner-indirect-buffer-alist nil
"*Hold pairs of pipe buffer number and its base buffer name."
:type '(repeat (cons integer string))
:group 'oneliner)
;; flag
(defcustom oneliner-handle-control-codes-flag nil
"*Non-nil means Handle control codes in oneliner-mode buffer."
:type 'boolean
:group 'oneliner)
;; flag
(defcustom oneliner-outpipe-busy-check nil
"*Non-nil means block the key input during outpipe busy."
:type 'boolean
:group 'oneliner)
;; flag
(defcustom oneliner-display-evaled-value-flag nil
"*Non-nil means display the evaluated value of pipe-buffer."
:type 'boolean
:group 'oneliner)
;; EOL conversion
(defcustom oneliner-eol-for-write nil
"*EOL-TYPE for writing temporary file. Default is nil."
:type '(choice (const :tag "default" nil)
(const :tag "unix" 0)
(const :tag "dos" 1)
(const :tag "mac" 2))
:group 'oneliner)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;
;;; Variables for internal
;;;
(defvar oneliner-debug nil) ; debugging enable/disable flag.
(set-default 'oneliner-hook-enable nil) ;
(make-variable-buffer-local 'oneliner-hook-enable); hook action enable/disable flag.
(defvar oneliner-buffer-name-format ; FORMAT of pipe-buffer.
"*Oneliner pipe*%d")
(defvar oneliner-default-pipe-buffer-id 0) ; default id of in/out-pipe-buffer
(defvar oneliner-inpipe nil) ; input pipe process is done flag(no use)
;
(defvar oneliner-outpipe nil) ; output pipe process is done flag
; value takes 'buffer' or 'nil'
(defvar oneliner-eval nil) ; Eval flag when output pipe process is done
(defvar oneliner-beep-enable-flag nil) ; for beep
(defvar oneliner-reserved-time nil) ; for beep
(defvar oneliner-shell-buffer nil) ; shell buffer-name
(defvar oneliner-invisible-command-flag nil) ; for invisible-command
(defvar oneliner-invisible-command-result nil) ; for invisible-command
(defvar oneliner-invisible-command-point nil) ; for invisible-command
(defvar oneliner-shell-command-busy nil) ; shell-command busy flag
(defvar oneliner-random-key-number
(concat
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))
(number-to-string (random 10))))
(defvar oneliner-shell-prompt-start ; prompt key (start)
(concat "<" oneliner-random-key-number ":prompt>"))
(defvar oneliner-shell-prompt-end ; prompt key (end)
(concat "" oneliner-random-key-number ":prompt>"))
(defvar oneliner-shell-prompt-pattern ; matching pattern of prompt format
(concat oneliner-shell-prompt-start "\\(.*\\)" oneliner-shell-prompt-end))
(defvar oneliner-std-start ; key for stdout data (start)
(concat "<" oneliner-random-key-number ":std>"))
(defvar oneliner-std-end ; key for stdout data (end)
(concat "" oneliner-random-key-number ":std>"))
(defvar oneliner-std-pattern ; matching mattern of stdout data format
(concat oneliner-std-start "\\(.*\\)" oneliner-std-end))
(defvar oneliner-ex-cmd-prefix ; for special command given from external program
(concat "<" oneliner-random-key-number ":ex-cmd/>"))
(defvar oneliner-outpipe-command-string ; output-pipe processing command
(concat
"awk '{"
"printf(\""
oneliner-std-start
"%s"
oneliner-std-end
"\\n\", $0 );"
"}'"
))
(defvar oneliner-title-display-done nil) ; 'title displayed' flag
(defvar oneliner-deny-key-list ; deny keys during shell command execution.
(append
(split-string
" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~"
"")
'([delete] [backspace] [(control k)] [(control w)] [(control d)] [(control h)] [(control i)]
[return] [del] [?\177] [?\^h] )))
(defvar oneliner-backup-local-map nil) ; keymap for backup
(defvar oneliner-shell-type 'bash) ; shell type (bash,zsh,csh)
(defvar oneliner-deny-keymap nil) ; keymap for deny
(defvar oneliner-temp-dir-name (getenv "TMPDIR")) ; temp-dir-name always using environment "TMPDIR".
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;
;;; Program Code
;;;
(defconst oneliner-version-number "0.3.6")
(defconst oneliner-version (format "Oneliner version %s" oneliner-version-number) "Version string for this version of Oneliner.")
(defconst oneliner-shell-buffer-name "*Oneliner shell*")
(provide 'oneliner)
(require 'poe)
;;--- debugging message logger
(defmacro oneliner-debug-print (string)
`(if oneliner-debug
(let ((buffer (get-buffer-create "*oneliner-debug*")))
(with-current-buffer buffer
(goto-char (point-max))
(insert ,string)))))
(defun oneliner (&optional arg)
"Execute Oneliner."
(interactive "P")
;; directory for temporary file
(cond (oneliner-temp-dir-name
(let ((rename nil))
(cond ((get-buffer oneliner-shell-buffer-name)
(set-window-buffer (selected-window) oneliner-shell-buffer-name))
(t
(setenv "ONELINER_EX_CMD_PREFIX" oneliner-ex-cmd-prefix)
(setenv "ONELINER_STD_START" oneliner-std-start)
(setenv "ONELINER_STD_END" oneliner-std-end)
(when (get-buffer "*shell*")
(with-current-buffer (get-buffer "*shell*")
(rename-buffer "*shell*-rename")
(setq rename t)))
(add-hook 'shell-mode-hook 'oneliner-init)
(shell)
(remove-hook 'shell-mode-hook 'oneliner-init)
(when rename
(with-current-buffer (get-buffer "*shell*-rename")
(rename-buffer "*shell*")))))))
(t
(message "Error: Please set environment variable TMPDIR (e.g. export TMPDIR=\"/home/youraccount/temp/\")"))))
(defun oneliner-title-display (string)
(cond
(oneliner-title-display-done
nil)
(t
(setq oneliner-title-display-done t)
(let
((buffer (oneliner-get-pipe-buffer 0 t)))
(with-current-buffer buffer (progn
(erase-buffer)
(insert oneliner-version)
(insert " --- shell-mode hooks for Oneliners
Author: Kiyoka Nishiyama
Masahiro Mishima
------------------------------
Oneliner is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
")
(goto-char (point-min))
(set-buffer-modified-p nil)))
(oneliner-pipe-buffer-other-window)
(select-window (display-buffer oneliner-shell-buffer))
(goto-char (point-max))
(sit-for 30)
(with-current-buffer buffer (progn
(erase-buffer)
(set-buffer-modified-p nil)))))))
(defun oneliner-init ()
;;--- initialization of Oneliner hooks and variables.
(let
((buffer (oneliner-get-pipe-buffer 0 t))
(prompt-str))
(rename-buffer oneliner-shell-buffer-name)
(setq oneliner-hook-enable t)
(setq oneliner-title-display-done nil)
(oneliner-command-done)
(add-hook 'comint-output-filter-functions 'oneliner-handle-OL-control)
(add-hook 'comint-output-filter-functions 'oneliner-handle-control-codes)
(setq comint-input-sender (function oneliner-comint-send))
(setq comint-dynamic-complete-functions
(cons 'oneliner-buffer-complete
comint-dynamic-complete-functions))
(oneliner-set-keys)
(setq oneliner-shell-buffer (current-buffer))
(run-hooks 'oneliner-init-hook)
(cond ((string-match "csh$" shell-file-name)
(setq oneliner-shell-type 'csh))
((string-match "zsh$" shell-file-name)
(setq oneliner-shell-type 'zsh))
(t
(setq oneliner-shell-type 'bash)))
(cond ((eq 'csh oneliner-shell-type)
(setq prompt-str (concat
" set prompt = \""
oneliner-shell-prompt-start
"%/"
oneliner-shell-prompt-end
"\\n${prompt}"
"\"\n"
)))
((eq 'zsh oneliner-shell-type)
(setq prompt-str (concat
"unsetopt zle\nPROMPT=\$\'"
oneliner-shell-prompt-start
"\'%/\$'"
oneliner-shell-prompt-end
"\\n\'${PS1}\n"
)))
(t
(setq prompt-str (concat
" PS1=\""
oneliner-shell-prompt-start
"\\w"
oneliner-shell-prompt-end
"\\n${PS1}"
"\"\n"
))))
(comint-send-string oneliner-shell-buffer prompt-str)
(oneliner-debug-print (format "Info: prompt-setcomand=[%s]\n" prompt-str))
(oneliner-make-deny-keymap)))
;;--- setup key bindings
(defun oneliner-set-keys ()
(local-set-key "\C-c\C-s" 'oneliner-sync-default-directory)
(local-set-key "\C-c\C-b" 'oneliner-pipe-buffer-other-window)
(local-set-key [(control c) (control ?0)]
(lambda () (interactive)(oneliner-pipe-buffer-other-window 0)))
(local-set-key [(control c) (control ?1)]
(lambda () (interactive)(oneliner-pipe-buffer-other-window 1)))
(local-set-key [(control c) (control ?2)]
(lambda () (interactive)(oneliner-pipe-buffer-other-window 2)))
(local-set-key [(control c) (control ?3)]
(lambda () (interactive)(oneliner-pipe-buffer-other-window 3)))
(local-set-key [(control c) (control ?4)]
(lambda () (interactive)(oneliner-pipe-buffer-other-window 4)))
(local-set-key [(control c) (control ?5)]
(lambda () (interactive)(oneliner-pipe-buffer-other-window 5)))
(local-set-key [(control c) (control ?6)]
(lambda () (interactive)(oneliner-pipe-buffer-other-window 6)))
(local-set-key [(control c) (control ?7)]
(lambda () (interactive)(oneliner-pipe-buffer-other-window 7)))
(local-set-key [(control c) (control ?8)]
(lambda () (interactive)(oneliner-pipe-buffer-other-window 8)))
(local-set-key [(control c) (control ?9)]
(lambda () (interactive)(oneliner-pipe-buffer-other-window 9))))
;;--- pickup the prompt string.
(defun oneliner-get-prompt-string (str)
(string-match oneliner-shell-prompt-pattern str)
(match-string-no-properties 1 str))
;;--- resetting flags for when command execution done.
(defun oneliner-command-done nil
(oneliner-beeper)
(setq oneliner-inpipe nil)
(setq oneliner-outpipe nil)
(setq oneliner-eval nil)
(setq oneliner-shell-command-busy nil))
;;--- beeper
(defun oneliner-beeper nil
(if oneliner-beep
(if oneliner-beep-enable-flag
(beep))))
;;--- beep disabler (and enabler)
(defun oneliner-beep-disable (&optional en)
(setq oneliner-beep-enable-flag (not en)))
;; [command string sender ( Oneliner original version )]
;; This function processes the in-pipe '|' and out-pipe '|' syntax.
(defun oneliner-comint-send (&optional proc string invisible)
"Send input STRING to PROC."
"Override `comint-input-sender'(comint.el's default)."
(setq oneliner-invisible-command-flag nil)
(if invisible
(progn
(setq oneliner-invisible-command-flag t)
(setq oneliner-invisible-command-result nil)
(comint-send-string proc string)
(comint-send-string proc "\n")
(oneliner-debug-print (concat "COMMAND(invisible):" string "\n"))
string)
;; visible command processing
(cond ((and oneliner-outpipe oneliner-outpipe-busy-check)
(message "Oneliner : outpipe busy...")
nil)
(t
(setq oneliner-shell-command-busy t)
;; detection of in-pipe syntax
(if (string-match "^[ ]*\\([0-9]+\\|@[^|]+\\)?|" string)
(let* ((pipe (1- (match-end 0)))
(bufid (match-string-no-properties 1 string))
(buf (oneliner-get-buffer bufid))
(temp (concat
(make-temp-file
(concat
(file-name-as-directory oneliner-temp-dir-name)
"oneliner-")) ".tmp")))
(setq string
(if oneliner-keep-temp-file
(concat "cat " temp (substring string pipe))
(concat "(cat " temp ";rm -f " temp ")"
(substring string pipe))))
(oneliner-write-buffer buf temp)
(oneliner-debug-print
(format "INPUT : pipe=%s bufid=%s\n" pipe bufid))))
;; detection of out-pipe syntax
(if (string-match "\\(+\\)?|\\([0-9]+\\|@[^|!]+\\)?\\([!]\\)?[ ]*$" string)
(let* ((pipe (match-beginning 0))
(append (match-string-no-properties 1 string))
(bufid (match-string-no-properties 2 string))
(ev (match-string-no-properties 3 string))
(buf (oneliner-get-buffer bufid)))
(when ev (setq oneliner-eval buf))
(oneliner-debug-print
(format "OUT-PARAM: append=%s bufid=%s ev=%s\n" append bufid ev))
(setq string (concat
(substring string 0 pipe)
" | "
oneliner-outpipe-command-string
))
(setq oneliner-outpipe buf)
(if (not append)
(with-current-buffer buf (erase-buffer)))
(oneliner-debug-print
(format "OUTPUT: pipe=%s bufid=%s\n" pipe bufid))
(oneliner-set-deny-keys))
(setq oneliner-outpipe nil))
;; setting a beep timer.
(if oneliner-reserved-time
(cancel-timer oneliner-reserved-time))
(oneliner-beep-disable t)
(setq oneliner-reserved-time
(run-at-time oneliner-beep-time nil 'oneliner-beep-disable))
;; sending the execution command.
(oneliner-debug-print (concat "COMMAND:" string "\n"))
(comint-send-string proc string)
(comint-send-string proc "\n")
(run-hooks 'oneliner-comint-send-hook)))))
;;
;; [invisible command sender]
;; action: sending command and pickup first line of output.
;; return: first line of output / nil(when no outout)
;;
(defun oneliner-invisible-command-exec (&optional string error-disp-flag)
(let ((proc (get-buffer-process oneliner-shell-buffer)))
(cond (oneliner-shell-command-busy
(message "Oneliner Error : !!BUSY!! can't exec invisible command\n" )
nil)
(t
(cond ((string-equal "exit" (process-status proc))
nil)
(t
(oneliner-debug-print (format "invisible shell proc = %s\n" proc))
(with-current-buffer oneliner-shell-buffer
(setq oneliner-invisible-command-point (point)))
(oneliner-comint-send proc string t)
(oneliner-debug-print (format "invisible accept = %s\n" (accept-process-output proc 2)))
(if error-disp-flag
(unless oneliner-invisible-command-result
(message (concat "Can't execute command [" string "]"))))
(cond
((string-equal "exit" oneliner-invisible-command-result)
nil)
(t
oneliner-invisible-command-result))))))))
;;
;; [buffer-object resolver with object, name or id]
;;
(defun oneliner-get-buffer (buffer)
(cond ((bufferp buffer)
;; in case of buffer object
buffer)
((stringp buffer)
;; in case of string
(if (string-match "^[0-9]*$" buffer)
;; sequence of digits or empty string
(oneliner-get-pipe-buffer buffer t)
;; other string
(if (string-match "^@" buffer)
;; "@" and buffer name
(get-buffer-create (substring buffer (match-end 0)))
;; buffer name without prefix
(get-buffer-create buffer))))
(t
;; not sure ... perhaps integer or something
(oneliner-get-pipe-buffer buffer t))))
;;
;; [buffer-name resolver with id]
;;
(defun oneliner-get-pipe-buffer-name (&optional id)
(let ((name (format oneliner-buffer-name-format (oneliner-fix-id id))))
(oneliner-debug-print (format "get-pipe-buffer-name %s\n" name))
name))
;;
;; [buffer-object resolver with id ( and create action supported )]
;;
(defun oneliner-get-pipe-buffer (&optional id create)
(let ((name (oneliner-get-pipe-buffer-name id)))
(or (get-buffer name)
(if create
(let ((base
(cdr (assq (oneliner-fix-id id)
oneliner-indirect-buffer-alist))))
(unless (functionp 'make-indirect-buffer)
(progn
(setq base nil)
(message "oneliner.el [Warning]: make-indirect-buffer() is no exists.\n")
(sit-for 3)))
(cond (base
(get-buffer-create base)
(make-indirect-buffer base name))
(t
(get-buffer-create name))))))))
;;
;; popuping pipe-buffer
;;
(defun oneliner-pipe-buffer-other-window (&optional id)
"Visit the working buffer for standard I/O in another window."
(interactive "P")
(setq id (or (oneliner-fix-id id)
(string-to-number
(read-string
(format "Oneliner pipe buffer number (default %d): "
oneliner-default-pipe-buffer-id)))))
(let ((window (display-buffer (oneliner-get-pipe-buffer id t))))
(if oneliner-show-top-of-pipe-buffer
(set-window-point window 1))))
;;
;; buffer-name complementation on command line
;;
(defun oneliner-buffer-complete ()
(interactive)
(let ((pos-saved (point)))
(if (save-excursion (search-backward-regexp
"@\\([^#$%>|]*\\)$" (point-at-bol) t))
(let* ((buf-input (match-string-no-properties 1))
(pos-begin (match-beginning 1))
(buf-list (mapcar (lambda (b)
(list (buffer-name b) t))(buffer-list)))
(buf-name (try-completion buf-input buf-list)))
(cond ((eq buf-name t)
(setq buf-name buf-input))
((or (not buf-name) (string-equal buf-input buf-name))
(setq buf-name (completing-read
"Buffer name: " buf-list
nil nil (if buf-name buf-name buf-input)
buffer-name-history nil))))
(if buf-name
(progn
(delete-region pos-begin pos-saved)
(goto-char pos-begin)
(insert buf-name)
t))))))
;;
;; [default-direcoty synchronizer]
;;
(defun oneliner-sync-default-directory ()
"Sync the variable `default-directory' with current directory."
(interactive)
(let ((dir (oneliner-invisible-command-exec oneliner-pwd-command-on-shell))
(len 0))
(if dir (setq len (length (split-string dir " "))))
(if (= 1 len) (cd-absolute dir))
(if (interactive-p)
(message "Default directory is now '%s'" default-directory))
default-directory))
;;
;; [buffer-id resolver from buffer-id string, integer and 'nil'.]
;;
(defun oneliner-fix-id (id)
(cond ((not id) oneliner-default-pipe-buffer-id)
((stringp id) (string-to-int id))
((natnump id) id)))
;;
;; [current directory changer]
;;
(defun oneliner-send-cd (arg)
"Change directory of *Oneliner shell* to current buffer's `default-directory'."
(interactive "p")
(let ((curdir default-directory))
(oneliner-invisible-command-exec (concat "cd " curdir))
(when (interactive-p)
(message "Send to %s buffer 'cd %s'" (buffer-name oneliner-shell-buffer) curdir))))
;;
;; [control code hander( hook for comint-output-filter-functions )]
;;
(defun oneliner-handle-control-codes (string)
"Act properly when certain control codes are seen."
(when (and oneliner-handle-control-codes-flag oneliner-hook-enable)
(let ((len (length (split-string string "[\r\n]"))))
(save-excursion
(goto-char (point-max))
(forward-line (- len))
(while (< (point) (point-max))
(let ((char (char-after)))
(cond
((eq char ?\r)
(if t
(if (memq (char-after (1+ (point)))
'(?\n ?\r))
(delete-char 1)
(let ((end (1+ (point))))
(beginning-of-line)
(delete-region (point) end)))
(add-text-properties (point) (1+ (point))
'(invisible t))
(forward-char)))
((eq char ?\a)
(delete-char 1)
(beep))
((eq char ?\C-h)
(delete-backward-char 1)
(delete-char 1))
(t
(forward-char)))))))))
;;
;; [OL-control string handler( hook for comint-output-filter-functions )]
;;
(defun oneliner-handle-OL-control (string)
"Handle OL-control string."
(when oneliner-hook-enable
(progn
(let ((len (length (split-string string "[\n]")))
(str)
(prompt-flag nil)
(pwd)
(ma (point-marker)))
(set-marker-insertion-type ma t)
(save-excursion
(goto-char (point-max))
(forward-line (- len))
(oneliner-debug-print (format "[*oneliner*OUT] line=%d %s\n" len string))
(while (< (point-at-eol) (point-max))
;;(setq str (buffer-substring (point-at-bol) (point-at-eol)))
(goto-char (point-at-bol))
(progn
(cond ((re-search-forward oneliner-shell-prompt-pattern (point-at-eol) t)
;; find prompt pattern (may not be at beggining of line)
;; and remove whole line
(setq str (match-string-no-properties 1))
(delete-region (point-at-bol) (point-at-eol))
(delete-char 1)
(when (string-match "\\(^.+\\)" str)
(setq pwd (match-string-no-properties 1 str))
(oneliner-debug-print (format "[*oneliner*prompt(%s)]\n" pwd)))
(setq prompt-flag t))
((looking-at oneliner-std-pattern)
;; find stdout pattern (should be at beggining of line)
;; and redirect data into pipe-buffer
(setq str (match-string-no-properties 1))
(oneliner-debug-print (format "[*oneliner*std(%s)]\n" str))
(let ((l-ma))
(with-current-buffer oneliner-outpipe
(setq l-ma (point-marker))
(set-marker-insertion-type l-ma t)
(save-excursion
(goto-char (point-max))
(insert str "\n"))
(goto-char l-ma)))
(let ((str (buffer-substring (match-beginning 0) (match-end 0))))
(oneliner-debug-print (concat "[*oneliner*longdelete(" str ")]\n")))
(let ((str (buffer-substring (point-at-bol) (point-at-eol))))
(oneliner-debug-print (concat "[*oneliner*delete(" str ")]\n")))
(delete-region (match-beginning 0) (match-end 0))
(if (memq (char-after) '(?\n ?\r))
(delete-char 1))
)
((looking-at oneliner-ex-cmd-prefix)
;; find external command (should be at beggining of line)
;; and do special behavior
(goto-char (match-end 0))
(cond
((looking-at "autoeval")
;; eval whole output as elisp after comand finish
(let ((buf (get-buffer-create "*Oneliner auto-eval*")))
(unless oneliner-outpipe
(with-current-buffer buf (erase-buffer))
(setq oneliner-outpipe buf)
(setq oneliner-eval buf))))
((looking-at "eval *\\([^\r\n]*\\)")
;; eval argnument as elisp just now
(eval-region (match-beginning 1) (match-end 1)))
((looking-at "outpipe *\\([0-9]+\\|@[^|!\r\n]+\\)")
;; switch outpipe
(let* ((bufid (match-string-no-properties 1))
(buf (oneliner-get-buffer bufid)))
(with-current-buffer buf (erase-buffer))
(setq oneliner-outpipe buf))))
(delete-region (match-beginning 0) (match-end 0))
(if (memq (char-after) '(?\n ?\r))
(delete-char 1)))
(t
;; just leave output in shell buffer
(forward-line 1)
))))
;;
;; prompt proc (Comes here When prompt string was found.)
;;
(cond (prompt-flag
(unwind-protect
(when oneliner-eval
(oneliner-eval-buffer oneliner-eval))
(progn
(oneliner-unset-deny-keys)
(oneliner-debug-print (format "[*oneliner*PROMPT-flag-on]\n" ))
(oneliner-command-done)
(cond (oneliner-invisible-command-flag
(goto-char oneliner-invisible-command-point)
(setq str (buffer-substring (point-at-bol) (point-at-eol)))
(when (string-match "[ ]\\(.+$\\)" str)
(setq oneliner-invisible-command-result (match-string-no-properties 1 str)))
(oneliner-debug-print (format "[*oneliner*invisible command result] %s\n" oneliner-invisible-command-result))
(delete-region oneliner-invisible-command-point (point-max))
)
(t
(oneliner-title-display "")
(when oneliner-sync-default-directory-after-prompt
(when (featurep 'meadow)
(setq pwd (car (split-string (shell-command-to-string (concat "cygpath -w " pwd))))))
(cd-absolute pwd))))
)))))
(goto-char (marker-position ma))))))
;;
;; write buffer into file
;;
(defun oneliner-write-buffer (buffer file)
"Write specified buffer into file.
First arugment BUFFER specifies buffer, which may be buffer object,
buffer name or id number of pipe-buffer.
Second argument FILE should specifies output file name."
(let ((buf (oneliner-get-buffer buffer)))
(with-current-buffer buf
(let (;; If coding system of this buffer is not nil,
;; set EOL conversion to the customized type.
(coding-system-for-write
(if buffer-file-coding-system
(coding-system-change-eol-conversion
buffer-file-coding-system oneliner-eol-for-write))))
(write-region (point-min) (point-max) file nil 0)
(if (and oneliner-complement-newline-for-input
(not (eq ?\n (char-before (point-max)))))
(with-temp-buffer
(insert ?\n)
(write-region (point-min) (point-max) file t 0)))))))
;;
;; [buffer evaluater]
;;
(defun oneliner-eval-buffer (&optional buffer)
"Execute Oneliner."
(interactive "P")
(let ((curdir (with-current-buffer oneliner-shell-buffer default-directory)))
(if (not buffer) (setq buffer (oneliner-get-pipe-buffer 0)))
(with-current-buffer buffer
(setq default-directory curdir)
(eval-buffer nil oneliner-display-evaled-value-flag))))
;;
;; [key blocker during busy]
;;
(defun oneliner-set-deny-key (string)
(define-key oneliner-deny-keymap string '(lambda () (interactive)
(message (concat
(buffer-name oneliner-shell-buffer)
"buffer is busy...")))))
;; making deny keymap
(defun oneliner-make-deny-keymap nil
(setq oneliner-deny-keymap (copy-keymap (current-local-map)))
(mapcar 'oneliner-set-deny-key oneliner-deny-key-list))
;; setting deny keys
(defun oneliner-set-deny-keys nil
(setq oneliner-backup-local-map (copy-keymap (current-local-map)))
(use-local-map oneliner-deny-keymap))
;; resetting deny keys
(defun oneliner-unset-deny-keys nil
(when (keymapp oneliner-backup-local-map)
(use-local-map (copy-keymap oneliner-backup-local-map))))
;;; oneliner.el ends here
oneliner-el-0.3.6.orig/TODO 0100644 0001750 0001750 00000005154 07764574474 014766 0 ustar mohura mohura
TODO
'*' =done
* 1 Make a terminology.
* 2 Make a texinfo document.
* 3 Standardize coding style to refer to book "Emacs Reference Manual".
4 Support pipe-buffer output action by redirection to file.
'>' character of EOL means 'output to pipe-buffer'.
'>>' character of EOL means 'append to pipe-buffer'.
5 Support *oneliner-edit* ( It's the better for the name "*oneliner-scratch*"? )
6 Action on pipe-buffer : execution command on cursor point. (C-j ?)
7 Make a major mode "*Oneliner pipe*n" buffer.
Support C-cC-0 ... C-cC-9
8 Display the status to mode-line.
(command executing/prompting, lines of output-pipe-buffer, bytes of output-pipe-buffer,
command execution time)
* 9 Separate stdout and stderr.
SPEC: stdout -> pipe-buffer and stderr -> shell-buffer
* 10 Add a function that handle control code in *Oneliner shell* buffer.
* 11 Support embedding special string in PS1 environment variable to recognize shell prompt.
12 Add a function that send output of previos command to '*Oneliner pipe*0" buffer. (C-c C-t)
* 13 Expire a variable `oneliner-init-done'.
* 14 Support C-cC-0 .... C-cC-9 on XEmacs.
* 15 Add [return,delete,backspace] keys to deny-key-list.
* 16 Add a function to backup original keymap.
* 17 Solve the promplem "XEmacs 21.1 doesn't have make-indirect-buffer()".
-> HOWTO: Display a warning.
* 18 Change syntax "|@buffer!" -> "|@buffer".
19 Support 'UNDO' function of pipe-buffer. (roll back to previos snapshot)
20 Stop to write code "cygpath -w " immediate. ( variable is better )
21 Make new format to Oneliner control string. (new format is to carry S-exp.)
22 Make new Oneliner control string format ("stdln" and "std")
"stdln":string+return code. "std":string.
23 Solve the problem ( complementation conflicting sqlplus's '@' syntax and Oneliner's '@' syntax )
24 Implement a idea of auto popup pipe-buffer.
* 25 Make a document "README.Meadow".
* 26 Solve the problem ( temporary files of pipe-buffer conflicts on multi users and multi tasks )
* 27 Think to support zsh.
* 28 Think to support telnet,rsh,rlogin mode.
* 29 Add the target "archive" which make the oneliner-x.y.z.tar.gz(tarball) to Makefile.
* 30 Add a function that evaluate S-exp in pipe-buffer with '!' syntax.
* 31 Remove two functions (oneliner-get-std-string(), oneliner-eval-keyword())
* 32 Shift to Autoconf.
33 BUGFIX: Multiple oneliner's shell buffer can't use at the same time.
(Always oneliner-send-cd() send to *Oneliner shell* buffer, it's no good...)
oneliner-el-0.3.6.orig/TODO.ja 0100644 0001750 0001750 00000005536 07764574474 015363 0 ustar mohura mohura
TODO
'*' =done
* 1 用語集を作る(oneliner.el 特有の概念を説明する用語を定義したほうが議論しやすいので)
* 2 ユーザー用ドキュメントを作る。texinfoで作る
* 3 Emacsリファレンスマニュアルのコーディングスタイルを参考に統一
4 Emacsバッファへの出力を ファイルへのリダイレクトでも行なえるようにする
行末の > をファイル経由のバッファ出力
行末の >> をファイル経由のバッファアペンド にしてはどうか
5 *oneliner-edit* バッファのサポート ( *oneliner-scratch* という名前とどっちがいいか? )
6 pipe-bufferでの操作 : カーソル位置のコマンド実行 (C-j かな?)
7 *Oneliner pipe*n バッファをメジャーモードにする
C-cC-0 〜 C-cC-9 をサポート
8 モードラインにshellモードの状態を表示する
(コマンド実行中/停止中、行数、バイト数、現在の実行時間)
* 9 標準出力と標準エラー出力の分離
標準出力だけバッファに出力して、標準エラー出力は、shellバッファに出力する
* 10 *Oneliner shell*バッファ内でのコントロールコードのハンドリング機能を追加する
* 11 PS1環境変数に特殊な文字列を埋めこんでプロンプトを認識できるようにする
12 直前のコマンド一回分の文字列を*Oneliner pipe*0 にコピーする機能を追加する。(C-c C-t)
* 13 変数 oneliner-init-done を廃止する
* 14 XEmacs でも C-cC-0 〜 C-cC-9のキーバインドを動くようにする
* 15 パイプバッファへの出力中の キー入力キーリストの中に return と delete , backspace等を追加する
* 16 拒否キーリストを設定する直前に、オリジナルのローカルキーマップを保存しておいて 後で戻すようにする
* 17 XEmacs 21.1 で make-indirect-buffer() が存在しない問題の対応をする
-> make-indirect-buffer() が存在しない場合はワーニングを出すようにする
* 18 シンタックス "|@buffer!" を "|@buffer" に変更する
19 パイプバッファの内容を直前のコマンド実行の内容に戻す(UNDO) 機能を作る
20 "cygpath -w " をハードコーディングではなく、変数設定などにする
21 Oneliner制御文字列に S式を渡すフォーマットを追加する
22 Oneliner制御文字列の出力を 改行をする標準出力stdln / 改行をしない std の2種類にする
23 「'@'記号がバッファ名を表す」という仕様が sqlplus の'@' 記号とぶつかっており、
補完機能が動作するので不便。回避する案を考える。
24 複数のパイプバッファが自動的にポップアップするアイデアを実装する
* 25 README.Meadowを追加する (Meadowにインストールする場合の注意点などを記す)
* 26 パイプバッファ用テンポラリファイルが マルチユーザー・マルチタスクでの競合しないように考える。
* 27 zsh 対応方法を考える
* 28 telnet,rsh,rloginモードに対応できるかどうか考えてみる
* 29 Makefile にonelnier-x.y.z.tar.gz(tarball) を作成する "archive" ターゲットを追加する。
* 30 '!'で パイプバッファ中のS式を評価する機能を実装する。
* 31 2つの関数を削除する (oneliner-get-std-string(), oneliner-eval-keyword())
* 32 Autoconf化を行なう
33 バグフィックス: 複数のワンライナシェルバッファが同時に使えない。
(oneliner-send-cd() は常に *Oneliner shell* バッファに送ってしまう。良くない...)
oneliner-el-0.3.6.orig/COPYING 0100644 0001750 0001750 00000043550 07764574474 015333 0 ustar mohura mohura
NOTE!
the GPL below is copyrighted by the Free Software Foundation,
but the instance of code that it refers to (the Oneliner
) is copyrighted by me and others who actually wrote it.
Kiyoka Nishiyama
-----------------------------------------------------------------
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
675 Mass Ave, Cambridge, MA 02139, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
Appendix: How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
Copyright (C) 19yy
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) 19yy name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Library General
Public License instead of this License.
oneliner-el-0.3.6.orig/CREDITS 0100644 0001750 0001750 00000001273 07764574474 015314 0 ustar mohura mohura
This is at least a partial credits of people that have
contributed to the Oneliner project.
Formatted in a format that allows for easy grepping and
beautification by scripts. The fields are: name (N), email (E),
web-address (W), PGP key ID and fingerprint (P), description (D).
Thanks,
Kiyoka
----------
N: Kiyoka Nishiyama
E: kiyoka@netfort.gr.jp
D: Author of original Oneliner
W: http://www.netfort.gr.jp/~kiyoka/
N: MISHIMA Masahiro
E: mishima@momo.so-net.ne.jp
D: patches and hints for many versions of oneliner.el
N: IWAI, Masaharu
E: iwaim@cc.mbn.or.jp
D: maintainer of the Makefiles, rpm packages
N: OHURA Makoto
E: ohura@netfort.gr.jp
D: deb packages
oneliner-el-0.3.6.orig/CHANGELOG 0100644 0001750 0001750 00000025114 07764574474 015506 0 ustar mohura mohura
0.3.6
1. OHURA Makoto's patch applied.
1) BUGFIX: readme.sdoc file was not included in tar.gz release file (OHURA Makoto).
2) BUGFIX: README and README.ja file was removed with "make clean" (OHURA Makoto).
3) BUGFIX: Spell miss of Variable name 'oneliner-deny-keymap (OHURA Makoto).
4) BUGFIX: Compilation of oneliner.el failed because
macro 'oneliner-debug-print was not predefined. (OHURA Makoto).
2. BUGFIX: Bug#221019 from Debian ( ... security bug )
1) Using apel's make-temp-file() function instead of
emacs's make-temp-temp() (Kiyoka Nishiyama).
2) Changed message. (TMPDIR="/tmp/" is no good as security) (Kiyoka Nishiyama).
3) Added check code to 'el' script.
('el' exits If the environment variable TMPDIR is not defined.) (Kiyoka Nishiyama).
0.3.5
1. BUGFIX: Error occurs with XEmacs, because eval-current-buffer()'s
argument spec is different between GNU Emacs and XEmacs. (Kiyoka Nishiyama).
2. DONE: TODO's item No. 27 (zsh supporting) (Kiyoka Nishiyama).
3. DONE: Changed .... control keyword format
(Using random numbers) (Kiyoka Nishiyama).
4. BUGFIX: Fixed other some bugs (Kiyoka Nishiyama).
0.3.4
1. DONE: TODO's item No. 26 (MISHIMA Masahiro).
2. DONE: TODO's item No. 29 (IWAI, Masaharu).
3. DONE: TODO's item No. 30 (Kiyoka Nishiyama).
4. DONE: TODO's item No. 31 (Kiyoka Nishiyama).
5. Added new command 'el' in perl (MISHIMA Masahiro).
6. BUGFIX: missing to count lines with split-string()
in oneliner-handle-control-codes() and oneliner-handle-OL-control(). (MISHIMA Masahiro).
7. Added a new idea 'ex-cmd'(special command given from external program) (MISHIMA Masahiro).
8. Changed action (oneliner.el need the environment variable "TMPDIR") (Kiyoka Nishiyama).
9. Added a hook oneliner-comint-send-hook. (Kiyoka Nishiyama).
10. DONE: TODO's item No. 32 [Shifted to Autoconf] (Kiyoka Nishiyama).
11. Modified documents [oneliner.texi,readme.sdoc,README.Meadow] (Kiyoka Nishiyama).
12. Sorted CHANGELOG by newer version. (Kiyoka Nishiyama).
0.3.3
1. Made the English version of info.
2. Also made installer of English version of info.
3. Changed some comments in oneliner.el.
4. Made new file "README.Meadow".
5. Fixed the target name "jinfo" to "info-ja" in Makefile, bacause it was not clear.(IWAI, Masaharu)
6. Added the function "EOL conversion for writing temporary file."(MISHIMA Masahiro)
0.3.2
1. BUGFIX: I forget to include "CHANGELOG"(this file) in tar.gz release.
0.3.1
1. Separated "change log" section from oneliner.el file. -> Made a "CHANGELOG" file.
2. Rewrote file "oneliner.el" in English.
3. Rewrote file "TODO" in English.
4. Made new file "TODO.ja" in Japanese.
0.3.0
development branch
0.2.0
first stable release
0.0.30
1. The character "!" in "|@buffer!" syntax abolished.
0.0.29
1. BUGFIX: (on Meadow) Japanese character crumbling in .info file.
-> .info generating tool changed to 'makeinfo'.
2. install-info.wrapper supported install-info 1.6, 1.9 and 4.0 .
3. Added some comments for Meadow setting to Makefile.
4. IWAI, Masaharu's patch applied.
1) Makefile: info directory cleaning by "make clean" supported.
0.0.28
1. Added a README file in English.
0.0.27
1. Makefile: Install and uninstall section added.
2. Makefile: Installer for info reformed. (some install-info version supported)
3. .texi document section changed. ("Hooks" -> "Emacs")
4. Install document in README file modified.
0.0.26
1. BUGFIX: onliner's hook action was enable in original shell-mode, too.
2. Some codes modified.
0.0.25
1. shell-buffer name changed. ("*oneliner*" -> "*Oneliner shell*")
2. pipe-buffer name changed. ("*oneliner*N" -> "Oneliner pipe*N")
3. Comment changed. ("stdio buffer" -> "pipe buffer")
0.0.24
1. Changed to work original shell-mode.
1) *Oneliner shell* opening with "M-x oneliner" operation.
2) original shell-mode opening with "M-x shell" operation.
2. BUGFIX: keymap garbage remaining bug.
3. Changed to tar ball format to release.
0.0.23
1. csh,tcsh supported. ( only bash supported at previos version )
0.0.22
1. Key binds C-cC-0 ... C-cC-9 supported on XEmacs, too.
2. BUGFIX: prompt control string appears on Meadow when booting Oneliner.
3. Three key codes {return, delete, backspace} added to oneliner-deny-key-list.
4. Original keymap backup implimented.
5. Warning message displaying action added on Emacsen that has no make-indirect-buffer() function.
0.0.21
1. NEWIDEA: denied key input during being output pipe-buffer.
0.0.20
XEmacs 21.4.x, GNU Emacs 2x, Meadow+cygwin corresponded.
1. XEmacs coresponded(code simplify)
1) Implimented without 'comint-preoutput-filter-functions' hook. (XEmacs has no this hook.)
- Directory synchronization
Implimented with current directory string in prompt string.
- preout-filter-func() abolished.
- Some valiables abolished.
2) Function oneliner-handle-OL-control() set to hook 'comint-output-filter-functions'.
2. oneliner-beep-time's type changed.(boolean -> integer)
0.0.19
1. The title message function separated oneliner-title-display() from oneliner-init()
2. BUGFIX: (Meadow only) When oneliner starting, prompt don't displayed.
0.0.18
1. Separated of stdout and stderr completely.
1) oneliner-eval-keyword() modified.
2. NEWIDEA: The title message displaying action supported.
0.0.17
1. Output pipe-buffer via AWK supported.
2. BUGFIX: when restart "M-x oneliner" bug.
1) Function oneliner-command-done() evaluation added to last of function oneliner-init().
0.0.16
1. Variable shell-prompt-pattern abolished.
1) Embeded string (valiable oneliner-shell-prompt-{start,end}) added.
2) oneliner-get-prompt-string() added.
0.0.15
1. BUGFIX: directory synchronization bug.
Current buffer's default-directory is modifyed.
It must be changed *Oneliner shell*'s default-directory always.
0.0.14
1. Invisible command forbided during shell command execution.
2. Next command execution forbided during "command |" command exection.
3. BUGFIX: oneliner-sync-default-directory() cretical timing bug. (not smart resolve)
0.0.13
1. BUGFIX: Indirect buffer was been "narrowing".
2. NEW IDEA: Control code handling in shell added.
3. MISHIMA Masahiro's patch applied.
1) BUGFIX: Buffer name complement bug.
0.0.12
1. Variable oneliner-pwd-command-on-shell's default value set to " \\pwd".
2. Some changes for coding style reason.
1) Comments ";;; oneliner.el ends here" added to EOF.
2) Author: section's "then" deleted.
3) Created: section added.
4) Documentation: section added.
5) "ChangeLog:" -> "Change Log:" changed.
6) etc...
0.0.11
1. MISHIMA Masahiro's patch applied.
1) Indirect *oneliner*n buffer implimented.
2) oneliner-sync-default-directory()'s action changed.
2. oneliner-send-cd() added.
0.0.10
1. BUGFIX: preout-filter-func() returns 'nil' (this function must return string)
2. BUGFIX: When M-x shell, variable oneliner-shell-buffer was not set.
3. MISHIMA Masahiro's patch applied.
1) NEW IDEA: '+|' syntax. It appends stdout to output pipe buffer.
0.0.9
1. MISHIMA Masahiro's patch applied.
1) When input pipe buffer has no newline at EOL, it was made up for newline.
2. BUGFIX: oneliner-invisible-command-exec() process exit status check loss.
3. NEW IDEA: When shell command was done, default-directory was synchronized automatic.(customizable)
0.0.8
1. oneliner-invisible-command-exec() implimented.
2. Changed a variable `oneliner-pwd-command-on-shell' to customize variable.
3. MISHIMA Masahiro's patch applied.
1) oneliner-sync-default-directory () implimented.(It can sync default-directory)
4. Set key C-cC-s to oneliner-sync-default-directory ()
5. Set key C-cC-b to oneliner-stdio-buffer-other-window ()
0.0.8b
1. MISHIMA Masahiro's patch applied.
1) buffer name complemention after '@' character supported.
2) BUGFIX: buffer-position-is-promptp() bug
3) BUGFIX: "Wrote d:/tmp/oneliner.tmp" display bug
4) BUGFIX: prompt recognization bug
2. Added a code (require 'poe). 1-1),1-2) needs apel.
0.0.7
1. Variables separated up into customize variable/internal variable.
2. New key defined. oneliner-set-keys()
4. BUGFIX:beepper timer bug.
5. oneliner-stdio-buffer-other-window's argument changed.(It can use reg-id)
6. comint-oneliner-send()'s comment changed.
7. MISHIMA Masahiro's patch applied.
1) @buffername| command format supported.
2) command | @buffername! format supported.
3) M-x customize-group supported.
4) variable oneliner-show-top-of-stdio-buffer added.
5) oneliner-beep's default value set to 'nil'.
6) REGISTER concept abolished. (stdio-buffer can only select by id)
7) oneliner-stdio-buffer-other-window() changed.
9. BUGFIX: string-is-promptp() (result of spliting string is no good =nil )
0.0.6
1. beeper supported when Command execution done. (when oneliner-beep is t)
2. Variable 'oneliner-beep-time' supported.
3. naming changed. (*std* -> *oneliner*0)
4. buffer-position-is-promptp()'s argument changed.
5. string-is-promptp() added.
0.0.5
1. MISHIMA Masahiro's patch applied.
2. The Name of MISHIMA Masahiro added to Author field in oneliner.el
0.0.4
1. Starting by "M-x oneliner" supported.
2. oneliner-init's initial hook (oneliner-init-hook) supported.
3. oneliner-debug's initial value sets to 'nil'
4. BUGFIX: *std*'s write permission bug.
0.0.3
1. Code "(provide 'oneliner-vars)" deleted.
2. Testing code deleted.
3. BUGFIX: no argument for beginning-of-buffer-other-window()
0.0.2
1. MISHIMA Masahiro's patch applied.
2. Work up files into a file(oneliner.el).
0.0.1
1. first version
oneliner-el-0.3.6.orig/Makefile.in 0100644 0001750 0001750 00000007757 07764574474 016356 0 ustar mohura mohura ###
### Makefile for byte-compile
### (DO NOT EDIT THIS FILE)
###
### Author: Kiyoka Nishiyama
### Created: 11,Sep,2001
### Revised: 11,Feb,2002
srcdir = @srcdir@
VPATH = @srcdir@
prefix = @prefix@
infodir = @infodir@
EMACS = @EMACS@
elispdir = @lispdir@/oneliner
################################################################
OBJS = oneliner.elc
SRCS = oneliner.el
TEMPFILE = temp.el
DIST_COMMON = oneliner.el TODO TODO.ja COPYING CREDITS CHANGELOG \
Makefile.in README.Meadow README README.ja\
configure.in install-sh config.sub config.guess aclocal.m4
DIST_INFO = info/oneliner.texi info/install-info.wrapper info/Makefile.in
DIST_SCRIPTS = scripts/el scripts/Makefile.in
DIST_DOC = doc/readme.sdoc
CP = @CP@
RM = @RM@ -f
MV = @MV@
TAR = @TAR@
MKDIR = @MKDIR@ -p
RMDIR = @RMDIR@
SDOC = @SDOC@
# To save Emacses on Windows
PWD =
VER = @ONELINER_VER@
################################################################
all: $(OBJS) info-en info-ja make-scripts
doc: doc-en doc-ja
install: install-el install-info-en install-info-ja install-scripts
uninstall: uninstall-elc uninstall-info-en uninstall-info-ja uninstall-scripts
################################################################
$(OBJS): $(TEMPFILE) oneliner.el
@echo 'Compiling EL files of Oneliner ... '
@echo 'PLEASE IGNORE WARNINGS IF DISPLAYED. TAKE IT EASY!'
$(EMACS) -batch -q -no-site-file -l ./$(TEMPFILE) -f oneliner-compile
@echo 'Compiling EL files of Oneliner ... done'
$(TEMPFILE):
@echo '(setq load-path (cons "." load-path))' > $(TEMPFILE)
@echo '(defun oneliner-compile () (mapcar (function (lambda (x) (byte-compile-file x))) (list ' >> $(TEMPFILE)
@echo $(OBJS) | sed -e 's/\(oneliner[^ ]*\.el\)c/"\1"/g' >> $(TEMPFILE)
@echo ')))' >> $(TEMPFILE)
install-el: $(OBJS)
-@if [ ! -d $(elispdir) ]; then \
$(MKDIR) $(elispdir); \
fi
$(CP) $(SRCS) $(elispdir)
$(CP) $(OBJS) $(elispdir)
################################################################
info-en:
cd info; $(MAKE) info-en EMACS=$(EMACS)
install-info-en:
cd info; $(MAKE) install-info-en infodir=$(infodir)
################################################################
info-ja:
cd info; $(MAKE) info-ja EMACS=$(EMACS) prefix=$(prefix)
install-info-ja:
cd info; $(MAKE) install-info-ja infodir=$(infodir) prefix=$(prefix)
################################################################
make-scripts:
cd scripts; $(MAKE) all
install-scripts:
cd scripts; $(MAKE) install
################################################################
doc-en:
cd doc; \
$(SDOC) -masterLocale:en -locale:en -format:plain readme.sdoc; \
$(MV) readme.txt ../README; \
cd ..
doc-ja:
cd doc; \
$(SDOC) -locale:ja -format:plain readme.sdoc; \
$(MV) readme_ja.txt ../README.ja; \
cd ..
################################################################
clean:
$(RM) $(OBJS) $(TEMPFILE)
cd info; $(MAKE) clean
cd scripts; $(MAKE) clean
distclean: clean
$(RM) Makefile scripts/Makefile info/Makefile
$(RM) config.status config.log
realclean: distclean
$(RM) README README.ja
################################################################
uninstall-elc:
$(RM) $(elispdir)/*
$(RMDIR) $(elispdir)
uninstall-info-en:
cd info; $(MAKE) uninstall-info-en infodir=$(infodir)
uninstall-info-ja:
cd info; $(MAKE) uninstall-info-ja infodir=$(infodir)
uninstall-scripts:
cd scripts; $(MAKE) uninstall
################################################################
distdir: doc
$(MKDIR) oneliner-$(VER)/{doc,scripts,info}
$(CP) $(DIST_COMMON) oneliner-$(VER)
$(CP) $(DIST_SCRIPTS) oneliner-$(VER)/scripts
$(CP) $(DIST_INFO) oneliner-$(VER)/info
$(CP) $(DIST_DOC) oneliner-$(VER)/doc
#
# !! You must exec "make setup -f Makefile.in" before "make archive".
#
archive: distdir
cd oneliner-$(VER) ; autoconf
/bin/rm -rf oneliner-$(VER)/*.cache
$(TAR) zcf oneliner-$(VER).tar.gz oneliner-$(VER)
setup:
/bin/rm -rf *.cache
aclocal
autoconf
configure
##
## End of Makefile
##
oneliner-el-0.3.6.orig/README.Meadow 0100644 0001750 0001750 00000001523 07764574474 016365 0 ustar mohura mohura
README for Meadow users
If you want to use with Meadow, you should read this Document.
1. How to install to Meadow on MS-Windows
1) You must install "cygwin" system before installing Oneliner.
And you need these tools.
- texinfo
- make
- perl (version 5 or later)
2) Do "./configure" on cygwin system with some switchs as follows:
--prefix=/cygdrive/c/Meadow/1.14
--with-emacs=meadow
--with-lispdir=/cygdrive/c/Meadow/site-lisp
(and the drive-letter must be change, if you need.)
3) Do "make ; make install" on cygwin system.
2. How to setup (after installing)
1) Add this line to ".emacs"
(require 'oneliner)
2) Please set the environment variable 'TMPDIR'.
The one of examples with 'bash' shell is as follows:
export TMPDIR "c:/tmp/oneliner.tmp"
oneliner-el-0.3.6.orig/README 0100644 0001750 0001750 00000004226 07764574474 015155 0 ustar mohura mohura Oneliner README
===============
$Date: 2002/02/12 15:15:35 $
Kiyoka Nishiyama
http://oneliner-elisp.sourceforge.net/
1 What is Oneliner
------------------
- Oneliner is free software.
- you can redistribute it and/or modify it under the terms of the
GNU General Public License.
- Oneliner is hooks of Emacs standard shell-mode.
- Oneliner provides nice extentions for UNIX shell masters.
2 abstruct
----------
- You can connect command input/output to/from Emacs buffer with
easy operation.
- You can sync directory-value between shell-mode and shell
process.
- Oneliner gives you notice with beep when command execution was
complete.
- Oneliner handles control codes.
3 Installation
--------------
3.1 Installation of software and documents
------------------------------------------
- Do "./configure".
If you need change parameter for you environment, please use
switches as follows. If you are a 'Meadow' user, please read the
'README.Meadow' file, too.
- --prefix=path_to_install_DIR
- --with-emacs=yes
- --with-xemacs=yes
- --with-lispdir=path_to_site-lisp_dir
- make
- make install
- Please add this code to .emacs
(require 'oneliner)
- Please set the environment variable 'TMPDIR'.
Set the temporary directory path to 'TMPDIR'.
The one of examples with 'bash' shell is as follows:
export TMPDIR='~/tmp/'
3.2 Uninstallation of software and documents
--------------------------------------------
- make uninstall
3.3 Make a tar.gz archive file
------------------------------
- Get the Oneliner's source tree from the CVS server.
- make setup -f Makefile.in ; make archive
4 Development members
---------------------
- Kiyoka Nishiyama
- MISHIMA Masahiro
- IWAI, Masaharu
- OHURA Makoto
5 Bibliography
--------------
- Bil Lewis,Dan LaLiberte, Richard Stallman and the GNU Manual
Gourp
Emacs Lisp Reference Manual
oneliner-el-0.3.6.orig/README.ja 0100644 0001750 0001750 00000004267 07764574474 015553 0 ustar mohura mohura Oneliner README
===============
$Date: 2002/02/12 15:15:35 $
Kiyoka Nishiyama
http://oneliner-elisp.sourceforge.net/
1 OnelinerH
----------------
- Onelinert[\tgEFAB
- GNU General Public License (GPL2) zz
B
- OnelinerAEmacsWshell-modetbNWB
- VFCiLUNIX[U[gW
B
2 Tv
------
- PAshell-modeWoEmacsobt@
B
- EmacsVFvZXJgfBNgSゥI
B
- R}hbeepmB
- *shell*obt@oRg[R[hs
B
3 CXg[@
------------------
3.1 \tgEFAEhLgCXg[
--------------------------------------------
- ./configureタsB
XCb`g
BAMeadow[U[README.MeadowQ
B
- --prefix=path_to_install_DIR
- --with-emacs=yes
- --with-xemacs=yes
- --with-lispdir=path_to_site-lisp_dir
- make
- make install
- .emacsLqB
(require 'oneliner)
- VFTMPDIRB
TMPDIROnelinerge|fBNgwB
AbashB
export TMPDIR='~/tmp/'
3.2 \tgEFAEhLgACXg[
------------------------------------------------
- make uninstall
3.3 tar.gzA[JCu
--------------------------
- CVST[o[Oneliner\[Xc[B
- make setup -f Makefile.in ; make archive
4 Jo[
--------------
- Kiyoka Nishiyama
- MISHIMA Masahiro
- IWAI, Masaharu
- OHURA Makoto
5 Ql
----------
- Bil Lewis,Dan LaLiberte, Richard Stallman and the GNU Manual
GourpY
Emacs Lispt@X}jA
()AXL[
- R{aF
XgV
()AXL[
oneliner-el-0.3.6.orig/configure.in 0100644 0001750 0001750 00000004244 07764574474 016606 0 ustar mohura mohura dnl
dnl Process this file with autoconf to produce a configure script.
dnl
AC_INIT(oneliner.el)
dnl
dnl We use a path for perl so the #! line in autoscan will work.
dnl
AC_PATH_PROGS(CP, cp, /bin/cp, $PATH)
AC_PATH_PROGS(RM, rm, /bin/rm, $PATH)
AC_PATH_PROGS(MV, mv, /bin/mv, $PATH)
AC_PATH_PROGS(TAR, tar, /bin/tar, $PATH)
AC_PATH_PROGS(MKDIR, mkdir, /bin/mkdir, $PATH)
AC_PATH_PROGS(RMDIR, rmdir, /bin/rmdir, $PATH)
AC_PATH_PROGS(CHMOD, chmod, /bin/chmod, $PATH)
AC_PATH_PROGS(MAKEINFO, makeinfo, /bin/makeinfo, $PATH)
AC_PATH_PROGS(SDOC, sdoc, /usr/bin/sdoc, $PATH)
AC_PATH_PROGS(TOUCH, touch, /bin/touch, $PATH)
AC_PATH_PROGS(PERL5, perl5 perl, no)
AC_SUBST(PERL5)dnl
if test "$PERL5" != no; then
perl -e 'require 5'
if test $? != 0 ; then
PERL5=no
AC_MSG_WARN(perl version 5 required)
fi
fi
ONELINER_VER=`cat oneliner.el | grep "defconst oneliner-version-number" | sed -e 's/(//g' | sed -e 's/)//g' | sed -e 's/\"//g' | awk '{ print $3; }'`
AC_MSG_RESULT(oneliner.el version is $ONELINER_VER)
AC_SUBST(ONELINER_VER)
# Emacs set environment variable EMACS as t
test "x$EMACS" = xt && EMACS=
emacsen="emacs xemacs"
AC_CANONICAL_HOST
case $host_os in
*cygwin*)
with_bash=yes
emacsen="$emacsen MeadowNT.exe Meadow95.exe meadow"
;;
esac
AC_ARG_WITH(bash,
[ --with-bash Use Bash to build],
[case $withval in
yes) SHELL=bash ;;
no) ;;
*) SHELL="$withval" ;;
esac])
AC_ARG_WITH(xemacs,
[ --with-xemacs Use XEmacs to build],
[case $withval in
yes) emacsen="xemacs" ;;
no) emacsen="emacs" ;;
*) EMACS="$withval" ;;
esac])
AC_ARG_WITH(emacs,
[ --with-emacs Use Emacs to build],
[case $withval in
yes) emacsen="emacs" ;;
no) emacsen="xemacs" ;;
*) EMACS="$withval" ;;
esac])
if test -n "${with_xemacs+set}" && test -n "${with_emacs+set}"; then
AC_MSG_ERROR(specify one of --with-xemacs or --with-emacs)
fi
AC_MSG_RESULT(emacsen is ${emacsen})
AC_CHECK_PROGS(EMACS, ${emacsen}, no)
if test $EMACS = "no"; then
AC_MSG_ERROR(cannot find emacs)
fi
AM_PATH_LISPDIR
AC_OUTPUT(Makefile info/Makefile scripts/Makefile)
oneliner-el-0.3.6.orig/install-sh 0100755 0001750 0001750 00000012736 07764574474 016306 0 ustar mohura mohura #!/bin/sh
#
# install - install a program, script, or datafile
# This comes from X11R5 (mit/util/scripts/install.sh).
#
# Copyright 1991 by the Massachusetts Institute of Technology
#
# Permission to use, copy, modify, distribute, and sell this software and its
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
# documentation, and that the name of M.I.T. not be used in advertising or
# publicity pertaining to distribution of the software without specific,
# written prior permission. M.I.T. makes no representations about the
# suitability of this software for any purpose. It is provided "as is"
# without express or implied warranty.
#
# Calling this script install-sh is preferred over install.sh, to prevent
# `make' implicit rules from creating a file called install from it
# when there is no Makefile.
#
# This script is compatible with the BSD install script, but was written
# from scratch. It can only install one file at a time, a restriction
# shared with many OS's install programs.
# set DOITPROG to echo to test this script
# Don't use :- since 4.3BSD and earlier shells don't like it.
doit="${DOITPROG-}"
# put in absolute paths if you don't have them in your path; or use env. vars.
mvprog="${MVPROG-mv}"
cpprog="${CPPROG-cp}"
chmodprog="${CHMODPROG-chmod}"
chownprog="${CHOWNPROG-chown}"
chgrpprog="${CHGRPPROG-chgrp}"
stripprog="${STRIPPROG-strip}"
rmprog="${RMPROG-rm}"
mkdirprog="${MKDIRPROG-mkdir}"
transformbasename=""
transform_arg=""
instcmd="$mvprog"
chmodcmd="$chmodprog 0755"
chowncmd=""
chgrpcmd=""
stripcmd=""
rmcmd="$rmprog -f"
mvcmd="$mvprog"
src=""
dst=""
dir_arg=""
while [ x"$1" != x ]; do
case $1 in
-c) instcmd="$cpprog"
shift
continue;;
-d) dir_arg=true
shift
continue;;
-m) chmodcmd="$chmodprog $2"
shift
shift
continue;;
-o) chowncmd="$chownprog $2"
shift
shift
continue;;
-g) chgrpcmd="$chgrpprog $2"
shift
shift
continue;;
-s) stripcmd="$stripprog"
shift
continue;;
-t=*) transformarg=`echo $1 | sed 's/-t=//'`
shift
continue;;
-b=*) transformbasename=`echo $1 | sed 's/-b=//'`
shift
continue;;
*) if [ x"$src" = x ]
then
src=$1
else
# this colon is to work around a 386BSD /bin/sh bug
:
dst=$1
fi
shift
continue;;
esac
done
if [ x"$src" = x ]
then
echo "install: no input file specified"
exit 1
else
true
fi
if [ x"$dir_arg" != x ]; then
dst=$src
src=""
if [ -d $dst ]; then
instcmd=:
chmodcmd=""
else
instcmd=mkdir
fi
else
# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if [ -f $src -o -d $src ]
then
true
else
echo "install: $src does not exist"
exit 1
fi
if [ x"$dst" = x ]
then
echo "install: no destination specified"
exit 1
else
true
fi
# If destination is a directory, append the input filename; if your system
# does not like double slashes in filenames, you may need to add some logic
if [ -d $dst ]
then
dst="$dst"/`basename $src`
else
true
fi
fi
## this sed command emulates the dirname command
dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
# Make sure that the destination directory exists.
# this part is taken from Noah Friedman's mkinstalldirs script
# Skip lots of stat calls in the usual case.
if [ ! -d "$dstdir" ]; then
defaultIFS='
'
IFS="${IFS-${defaultIFS}}"
oIFS="${IFS}"
# Some sh's can't handle IFS=/ for some reason.
IFS='%'
set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'`
IFS="${oIFS}"
pathcomp=''
while [ $# -ne 0 ] ; do
pathcomp="${pathcomp}${1}"
shift
if [ ! -d "${pathcomp}" ] ;
then
$mkdirprog "${pathcomp}"
else
true
fi
pathcomp="${pathcomp}/"
done
fi
if [ x"$dir_arg" != x ]
then
$doit $instcmd $dst &&
if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi &&
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi &&
if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi &&
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi
else
# If we're going to rename the final executable, determine the name now.
if [ x"$transformarg" = x ]
then
dstfile=`basename $dst`
else
dstfile=`basename $dst $transformbasename |
sed $transformarg`$transformbasename
fi
# don't allow the sed command to completely eliminate the filename
if [ x"$dstfile" = x ]
then
dstfile=`basename $dst`
else
true
fi
# Make a temp file name in the proper directory.
dsttmp=$dstdir/#inst.$$#
# Move or copy the file name to the temp name
$doit $instcmd $src $dsttmp &&
trap "rm -f ${dsttmp}" 0 &&
# and set any options; do chmod last to preserve setuid bits
# If any of these fail, we abort the whole thing. If we want to
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $instcmd $src $dsttmp" command.
if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi &&
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi &&
if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi &&
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi &&
# Now rename the file to the real destination.
$doit $rmcmd -f $dstdir/$dstfile &&
$doit $mvcmd $dsttmp $dstdir/$dstfile
fi &&
exit 0
oneliner-el-0.3.6.orig/config.sub 0100755 0001750 0001750 00000070453 07764574474 016265 0 ustar mohura mohura #! /bin/sh
# Configuration validation subroutine script.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002 Free Software Foundation, Inc.
timestamp='2002-01-02'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
# can handle that machine. It does not imply ALL GNU software can.
#
# This file is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# Please send patches to . Submit a context
# diff and a properly formatted ChangeLog entry.
#
# Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument.
# If it is invalid, we print an error message on stderr and exit with code 1.
# Otherwise, we print the canonical config type on stdout and succeed.
# This file is supposed to be the same for all GNU packages
# and recognize all the CPU types, system types and aliases
# that are meaningful with *any* GNU software.
# Each package is responsible for reporting which valid configurations
# it does not support. The user should be able to distinguish
# a failure to support a valid configuration from a meaningless
# configuration.
# The goal of this file is to map all the various variations of a given
# machine specification into a single specification in the form:
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
# or in some cases, the newer four-part form:
# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
# It is wrong to echo any other type of specification.
me=`echo "$0" | sed -e 's,.*/,,'`
usage="\
Usage: $0 [OPTION] CPU-MFR-OPSYS
$0 [OPTION] ALIAS
Canonicalize a configuration name.
Operation modes:
-h, --help print this help, then exit
-t, --time-stamp print date of last modification, then exit
-v, --version print version number, then exit
Report bugs and patches to ."
version="\
GNU config.sub ($timestamp)
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
help="
Try \`$me --help' for more information."
# Parse command line
while test $# -gt 0 ; do
case $1 in
--time-stamp | --time* | -t )
echo "$timestamp" ; exit 0 ;;
--version | -v )
echo "$version" ; exit 0 ;;
--help | --h* | -h )
echo "$usage"; exit 0 ;;
-- ) # Stop option processing
shift; break ;;
- ) # Use stdin as input.
break ;;
-* )
echo "$me: invalid option $1$help"
exit 1 ;;
*local*)
# First pass through any local machine types.
echo $1
exit 0;;
* )
break ;;
esac
done
case $# in
0) echo "$me: missing argument$help" >&2
exit 1;;
1) ;;
*) echo "$me: too many arguments$help" >&2
exit 1;;
esac
# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
nto-qnx* | linux-gnu* | storm-chaos* | os2-emx* | windows32-*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
*)
basic_machine=`echo $1 | sed 's/-[^-]*$//'`
if [ $basic_machine != $1 ]
then os=`echo $1 | sed 's/.*-/-/'`
else os=; fi
;;
esac
### Let's recognize common machines as not being operating systems so
### that things like config.sub decstation-3100 work. We also
### recognize some manufacturers as not being operating systems, so we
### can provide default operating systems below.
case $os in
-sun*os*)
# Prevent following clause from handling this invalid input.
;;
-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-apple | -axis)
os=
basic_machine=$1
;;
-sim | -cisco | -oki | -wec | -winbond)
os=
basic_machine=$1
;;
-scout)
;;
-wrs)
os=-vxworks
basic_machine=$1
;;
-chorusos*)
os=-chorusos
basic_machine=$1
;;
-chorusrdb)
os=-chorusrdb
basic_machine=$1
;;
-hiux*)
os=-hiuxwe2
;;
-sco5)
os=-sco3.2v5
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco4)
os=-sco3.2v4
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco3.2.[4-9]*)
os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco3.2v[4-9]*)
# Don't forget version if it is 3.2v4 or newer.
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco*)
os=-sco3.2v2
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-udk*)
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-isc)
os=-isc2.2
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-clix*)
basic_machine=clipper-intergraph
;;
-isc*)
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-lynx*)
os=-lynxos
;;
-ptx*)
basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
;;
-windowsnt*)
os=`echo $os | sed -e 's/windowsnt/winnt/'`
;;
-psos*)
os=-psos
;;
-mint | -mint[0-9]*)
basic_machine=m68k-atari
os=-mint
;;
esac
# Decode aliases for certain CPU-COMPANY combinations.
case $basic_machine in
# Recognize the basic CPU types without company name.
# Some are omitted here because they have special meanings below.
1750a | 580 \
| a29k \
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
| c4x | clipper \
| d10v | d30v | dsp16xx \
| fr30 \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| i370 | i860 | i960 | ia64 \
| m32r | m68000 | m68k | m88k | mcore \
| mips16 | mips64 | mips64el | mips64orion | mips64orionel \
| mips64vr4100 | mips64vr4100el | mips64vr4300 \
| mips64vr4300el | mips64vr5000 | mips64vr5000el \
| mipsbe | mipseb | mipsel | mipsle | mipstx39 | mipstx39el \
| mipsisa32 \
| mn10200 | mn10300 \
| ns16k | ns32k \
| openrisc \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
| pyramid \
| sh | sh[34] | sh[34]eb | shbe | shle \
| sparc | sparc64 | sparclet | sparclite | sparcv9 | sparcv9b \
| strongarm \
| tahoe | thumb | tic80 | tron \
| v850 | v850e \
| we32k \
| x86 | xscale | xstormy16 | xtensa \
| z8k)
basic_machine=$basic_machine-unknown
;;
m6811 | m68hc11 | m6812 | m68hc12)
# Motorola 68HC11/12.
basic_machine=$basic_machine-unknown
os=-none
;;
m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
;;
# We use `pc' rather than `unknown'
# because (1) that's what they normally are, and
# (2) the word "unknown" tends to confuse beginning users.
i*86 | x86_64)
basic_machine=$basic_machine-pc
;;
# Object if more than one company name word.
*-*-*)
echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
exit 1
;;
# Recognize the basic CPU types with company name.
580-* \
| a29k-* \
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
| arm-* | armbe-* | armle-* | armv*-* \
| avr-* \
| bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c54x-* \
| clipper-* | cray2-* | cydra-* \
| d10v-* | d30v-* \
| elxsi-* \
| f30[01]-* | f700-* | fr30-* | fx80-* \
| h8300-* | h8500-* \
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
| i*86-* | i860-* | i960-* | ia64-* \
| m32r-* \
| m68000-* | m680[01234]0-* | m68360-* | m683?2-* | m68k-* \
| m88110-* | m88k-* | mcore-* \
| mips-* | mips16-* | mips64-* | mips64el-* | mips64orion-* \
| mips64orionel-* | mips64vr4100-* | mips64vr4100el-* \
| mips64vr4300-* | mips64vr4300el-* | mipsbe-* | mipseb-* \
| mipsle-* | mipsel-* | mipstx39-* | mipstx39el-* \
| none-* | np1-* | ns16k-* | ns32k-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
| pyramid-* \
| romp-* | rs6000-* \
| sh-* | sh[34]-* | sh[34]eb-* | shbe-* | shle-* \
| sparc-* | sparc64-* | sparc86x-* | sparclite-* \
| sparcv9-* | sparcv9b-* | strongarm-* | sv1-* \
| t3e-* | tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \
| v850-* | v850e-* | vax-* \
| we32k-* \
| x86-* | x86_64-* | xmp-* | xps100-* | xscale-* | xstormy16-* \
| xtensa-* \
| ymp-* \
| z8k-*)
;;
# Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS.
386bsd)
basic_machine=i386-unknown
os=-bsd
;;
3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
basic_machine=m68000-att
;;
3b*)
basic_machine=we32k-att
;;
a29khif)
basic_machine=a29k-amd
os=-udi
;;
adobe68k)
basic_machine=m68010-adobe
os=-scout
;;
alliant | fx80)
basic_machine=fx80-alliant
;;
altos | altos3068)
basic_machine=m68k-altos
;;
am29k)
basic_machine=a29k-none
os=-bsd
;;
amdahl)
basic_machine=580-amdahl
os=-sysv
;;
amiga | amiga-*)
basic_machine=m68k-unknown
;;
amigaos | amigados)
basic_machine=m68k-unknown
os=-amigaos
;;
amigaunix | amix)
basic_machine=m68k-unknown
os=-sysv4
;;
apollo68)
basic_machine=m68k-apollo
os=-sysv
;;
apollo68bsd)
basic_machine=m68k-apollo
os=-bsd
;;
aux)
basic_machine=m68k-apple
os=-aux
;;
balance)
basic_machine=ns32k-sequent
os=-dynix
;;
convex-c1)
basic_machine=c1-convex
os=-bsd
;;
convex-c2)
basic_machine=c2-convex
os=-bsd
;;
convex-c32)
basic_machine=c32-convex
os=-bsd
;;
convex-c34)
basic_machine=c34-convex
os=-bsd
;;
convex-c38)
basic_machine=c38-convex
os=-bsd
;;
cray | ymp)
basic_machine=ymp-cray
os=-unicos
;;
cray2)
basic_machine=cray2-cray
os=-unicos
;;
[cjt]90)
basic_machine=${basic_machine}-cray
os=-unicos
;;
crds | unos)
basic_machine=m68k-crds
;;
cris | cris-* | etrax*)
basic_machine=cris-axis
;;
da30 | da30-*)
basic_machine=m68k-da30
;;
decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
basic_machine=mips-dec
;;
decsystem10* | dec10*)
basic_machine=pdp10-dec
os=-tops10
;;
decsystem20* | dec20*)
basic_machine=pdp10-dec
os=-tops20
;;
delta | 3300 | motorola-3300 | motorola-delta \
| 3300-motorola | delta-motorola)
basic_machine=m68k-motorola
;;
delta88)
basic_machine=m88k-motorola
os=-sysv3
;;
dpx20 | dpx20-*)
basic_machine=rs6000-bull
os=-bosx
;;
dpx2* | dpx2*-bull)
basic_machine=m68k-bull
os=-sysv3
;;
ebmon29k)
basic_machine=a29k-amd
os=-ebmon
;;
elxsi)
basic_machine=elxsi-elxsi
os=-bsd
;;
encore | umax | mmax)
basic_machine=ns32k-encore
;;
es1800 | OSE68k | ose68k | ose | OSE)
basic_machine=m68k-ericsson
os=-ose
;;
fx2800)
basic_machine=i860-alliant
;;
genix)
basic_machine=ns32k-ns
;;
gmicro)
basic_machine=tron-gmicro
os=-sysv
;;
go32)
basic_machine=i386-pc
os=-go32
;;
h3050r* | hiux*)
basic_machine=hppa1.1-hitachi
os=-hiuxwe2
;;
h8300hms)
basic_machine=h8300-hitachi
os=-hms
;;
h8300xray)
basic_machine=h8300-hitachi
os=-xray
;;
h8500hms)
basic_machine=h8500-hitachi
os=-hms
;;
harris)
basic_machine=m88k-harris
os=-sysv3
;;
hp300-*)
basic_machine=m68k-hp
;;
hp300bsd)
basic_machine=m68k-hp
os=-bsd
;;
hp300hpux)
basic_machine=m68k-hp
os=-hpux
;;
hp3k9[0-9][0-9] | hp9[0-9][0-9])
basic_machine=hppa1.0-hp
;;
hp9k2[0-9][0-9] | hp9k31[0-9])
basic_machine=m68000-hp
;;
hp9k3[2-9][0-9])
basic_machine=m68k-hp
;;
hp9k6[0-9][0-9] | hp6[0-9][0-9])
basic_machine=hppa1.0-hp
;;
hp9k7[0-79][0-9] | hp7[0-79][0-9])
basic_machine=hppa1.1-hp
;;
hp9k78[0-9] | hp78[0-9])
# FIXME: really hppa2.0-hp
basic_machine=hppa1.1-hp
;;
hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
# FIXME: really hppa2.0-hp
basic_machine=hppa1.1-hp
;;
hp9k8[0-9][13679] | hp8[0-9][13679])
basic_machine=hppa1.1-hp
;;
hp9k8[0-9][0-9] | hp8[0-9][0-9])
basic_machine=hppa1.0-hp
;;
hppa-next)
os=-nextstep3
;;
hppaosf)
basic_machine=hppa1.1-hp
os=-osf
;;
hppro)
basic_machine=hppa1.1-hp
os=-proelf
;;
i370-ibm* | ibm*)
basic_machine=i370-ibm
;;
# I'm not sure what "Sysv32" means. Should this be sysv3.2?
i*86v32)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv32
;;
i*86v4*)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv4
;;
i*86v)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv
;;
i*86sol2)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-solaris2
;;
i386mach)
basic_machine=i386-mach
os=-mach
;;
i386-vsta | vsta)
basic_machine=i386-unknown
os=-vsta
;;
iris | iris4d)
basic_machine=mips-sgi
case $os in
-irix*)
;;
*)
os=-irix4
;;
esac
;;
isi68 | isi)
basic_machine=m68k-isi
os=-sysv
;;
m88k-omron*)
basic_machine=m88k-omron
;;
magnum | m3230)
basic_machine=mips-mips
os=-sysv
;;
merlin)
basic_machine=ns32k-utek
os=-sysv
;;
mingw32)
basic_machine=i386-pc
os=-mingw32
;;
miniframe)
basic_machine=m68000-convergent
;;
*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
basic_machine=m68k-atari
os=-mint
;;
mipsel*-linux*)
basic_machine=mipsel-unknown
os=-linux-gnu
;;
mips*-linux*)
basic_machine=mips-unknown
os=-linux-gnu
;;
mips3*-*)
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
;;
mips3*)
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
;;
mmix*)
basic_machine=mmix-knuth
os=-mmixware
;;
monitor)
basic_machine=m68k-rom68k
os=-coff
;;
morphos)
basic_machine=powerpc-unknown
os=-morphos
;;
msdos)
basic_machine=i386-pc
os=-msdos
;;
mvs)
basic_machine=i370-ibm
os=-mvs
;;
ncr3000)
basic_machine=i486-ncr
os=-sysv4
;;
netbsd386)
basic_machine=i386-unknown
os=-netbsd
;;
netwinder)
basic_machine=armv4l-rebel
os=-linux
;;
news | news700 | news800 | news900)
basic_machine=m68k-sony
os=-newsos
;;
news1000)
basic_machine=m68030-sony
os=-newsos
;;
news-3600 | risc-news)
basic_machine=mips-sony
os=-newsos
;;
necv70)
basic_machine=v70-nec
os=-sysv
;;
next | m*-next )
basic_machine=m68k-next
case $os in
-nextstep* )
;;
-ns2*)
os=-nextstep2
;;
*)
os=-nextstep3
;;
esac
;;
nh3000)
basic_machine=m68k-harris
os=-cxux
;;
nh[45]000)
basic_machine=m88k-harris
os=-cxux
;;
nindy960)
basic_machine=i960-intel
os=-nindy
;;
mon960)
basic_machine=i960-intel
os=-mon960
;;
nonstopux)
basic_machine=mips-compaq
os=-nonstopux
;;
np1)
basic_machine=np1-gould
;;
nsr-tandem)
basic_machine=nsr-tandem
;;
op50n-* | op60c-*)
basic_machine=hppa1.1-oki
os=-proelf
;;
OSE68000 | ose68000)
basic_machine=m68000-ericsson
os=-ose
;;
os68k)
basic_machine=m68k-none
os=-os68k
;;
pa-hitachi)
basic_machine=hppa1.1-hitachi
os=-hiuxwe2
;;
paragon)
basic_machine=i860-intel
os=-osf
;;
pbd)
basic_machine=sparc-tti
;;
pbb)
basic_machine=m68k-tti
;;
pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
pentium | p5 | k5 | k6 | nexgen | viac3)
basic_machine=i586-pc
;;
pentiumpro | p6 | 6x86 | athlon)
basic_machine=i686-pc
;;
pentiumii | pentium2)
basic_machine=i686-pc
;;
pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pentiumpro-* | p6-* | 6x86-* | athlon-*)
basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pentiumii-* | pentium2-*)
basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pn)
basic_machine=pn-gould
;;
power) basic_machine=power-ibm
;;
ppc) basic_machine=powerpc-unknown
;;
ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppcle | powerpclittle | ppc-le | powerpc-little)
basic_machine=powerpcle-unknown
;;
ppcle-* | powerpclittle-*)
basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppc64) basic_machine=powerpc64-unknown
;;
ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppc64le | powerpc64little | ppc64-le | powerpc64-little)
basic_machine=powerpc64le-unknown
;;
ppc64le-* | powerpc64little-*)
basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ps2)
basic_machine=i386-ibm
;;
pw32)
basic_machine=i586-unknown
os=-pw32
;;
rom68k)
basic_machine=m68k-rom68k
os=-coff
;;
rm[46]00)
basic_machine=mips-siemens
;;
rtpc | rtpc-*)
basic_machine=romp-ibm
;;
s390 | s390-*)
basic_machine=s390-ibm
;;
s390x | s390x-*)
basic_machine=s390x-ibm
;;
sa29200)
basic_machine=a29k-amd
os=-udi
;;
sequent)
basic_machine=i386-sequent
;;
sh)
basic_machine=sh-hitachi
os=-hms
;;
sparclite-wrs | simso-wrs)
basic_machine=sparclite-wrs
os=-vxworks
;;
sps7)
basic_machine=m68k-bull
os=-sysv2
;;
spur)
basic_machine=spur-unknown
;;
st2000)
basic_machine=m68k-tandem
;;
stratus)
basic_machine=i860-stratus
os=-sysv4
;;
sun2)
basic_machine=m68000-sun
;;
sun2os3)
basic_machine=m68000-sun
os=-sunos3
;;
sun2os4)
basic_machine=m68000-sun
os=-sunos4
;;
sun3os3)
basic_machine=m68k-sun
os=-sunos3
;;
sun3os4)
basic_machine=m68k-sun
os=-sunos4
;;
sun4os3)
basic_machine=sparc-sun
os=-sunos3
;;
sun4os4)
basic_machine=sparc-sun
os=-sunos4
;;
sun4sol2)
basic_machine=sparc-sun
os=-solaris2
;;
sun3 | sun3-*)
basic_machine=m68k-sun
;;
sun4)
basic_machine=sparc-sun
;;
sun386 | sun386i | roadrunner)
basic_machine=i386-sun
;;
sv1)
basic_machine=sv1-cray
os=-unicos
;;
symmetry)
basic_machine=i386-sequent
os=-dynix
;;
t3e)
basic_machine=t3e-cray
os=-unicos
;;
tic54x | c54x*)
basic_machine=tic54x-unknown
os=-coff
;;
tx39)
basic_machine=mipstx39-unknown
;;
tx39el)
basic_machine=mipstx39el-unknown
;;
toad1)
basic_machine=pdp10-xkl
os=-tops20
;;
tower | tower-32)
basic_machine=m68k-ncr
;;
udi29k)
basic_machine=a29k-amd
os=-udi
;;
ultra3)
basic_machine=a29k-nyu
os=-sym1
;;
v810 | necv810)
basic_machine=v810-nec
os=-none
;;
vaxv)
basic_machine=vax-dec
os=-sysv
;;
vms)
basic_machine=vax-dec
os=-vms
;;
vpp*|vx|vx-*)
basic_machine=f301-fujitsu
;;
vxworks960)
basic_machine=i960-wrs
os=-vxworks
;;
vxworks68)
basic_machine=m68k-wrs
os=-vxworks
;;
vxworks29k)
basic_machine=a29k-wrs
os=-vxworks
;;
w65*)
basic_machine=w65-wdc
os=-none
;;
w89k-*)
basic_machine=hppa1.1-winbond
os=-proelf
;;
windows32)
basic_machine=i386-pc
os=-windows32-msvcrt
;;
xmp)
basic_machine=xmp-cray
os=-unicos
;;
xps | xps100)
basic_machine=xps100-honeywell
;;
z8k-*-coff)
basic_machine=z8k-unknown
os=-sim
;;
none)
basic_machine=none-none
os=-none
;;
# Here we handle the default manufacturer of certain CPU types. It is in
# some cases the only manufacturer, in others, it is the most popular.
w89k)
basic_machine=hppa1.1-winbond
;;
op50n)
basic_machine=hppa1.1-oki
;;
op60c)
basic_machine=hppa1.1-oki
;;
mips)
if [ x$os = x-linux-gnu ]; then
basic_machine=mips-unknown
else
basic_machine=mips-mips
fi
;;
romp)
basic_machine=romp-ibm
;;
rs6000)
basic_machine=rs6000-ibm
;;
vax)
basic_machine=vax-dec
;;
pdp10)
# there are many clones, so DEC is not a safe bet
basic_machine=pdp10-unknown
;;
pdp11)
basic_machine=pdp11-dec
;;
we32k)
basic_machine=we32k-att
;;
sh3 | sh4 | sh3eb | sh4eb)
basic_machine=sh-unknown
;;
sparc | sparcv9 | sparcv9b)
basic_machine=sparc-sun
;;
cydra)
basic_machine=cydra-cydrome
;;
orion)
basic_machine=orion-highlevel
;;
orion105)
basic_machine=clipper-highlevel
;;
mac | mpw | mac-mpw)
basic_machine=m68k-apple
;;
pmac | pmac-mpw)
basic_machine=powerpc-apple
;;
c4x*)
basic_machine=c4x-none
os=-coff
;;
*-unknown)
# Make sure to match an already-canonicalized machine name.
;;
*)
echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
exit 1
;;
esac
# Here we canonicalize certain aliases for manufacturers.
case $basic_machine in
*-digital*)
basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
;;
*-commodore*)
basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
;;
*)
;;
esac
# Decode manufacturer-specific aliases for certain operating systems.
if [ x"$os" != x"" ]
then
case $os in
# First match some system type aliases
# that might get confused with valid system types.
# -solaris* is a basic system type, with this one exception.
-solaris1 | -solaris1.*)
os=`echo $os | sed -e 's|solaris1|sunos4|'`
;;
-solaris)
os=-solaris2
;;
-svr4*)
os=-sysv4
;;
-unixware*)
os=-sysv4.2uw
;;
-gnu/linux*)
os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
;;
# First accept the basic system types.
# The portable systems comes first.
# Each alternative MUST END IN A *, to match a version number.
# -sysv* is not here because it comes later, after sysvr4.
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
| -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
| -aos* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
| -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
| -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -chorusos* | -chorusrdb* \
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
| -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* | -morphos*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
case $basic_machine in
x86-* | i*86-*)
;;
*)
os=-nto$os
;;
esac
;;
-nto*)
os=-nto-qnx
;;
-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
| -windows* | -osx | -abug | -netware* | -os9* | -beos* \
| -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
;;
-mac*)
os=`echo $os | sed -e 's|mac|macos|'`
;;
-linux*)
os=`echo $os | sed -e 's|linux|linux-gnu|'`
;;
-sunos5*)
os=`echo $os | sed -e 's|sunos5|solaris2|'`
;;
-sunos6*)
os=`echo $os | sed -e 's|sunos6|solaris3|'`
;;
-opened*)
os=-openedition
;;
-wince*)
os=-wince
;;
-osfrose*)
os=-osfrose
;;
-osf*)
os=-osf
;;
-utek*)
os=-bsd
;;
-dynix*)
os=-bsd
;;
-acis*)
os=-aos
;;
-atheos*)
os=-atheos
;;
-386bsd)
os=-bsd
;;
-ctix* | -uts*)
os=-sysv
;;
-ns2 )
os=-nextstep2
;;
-nsk*)
os=-nsk
;;
# Preserve the version number of sinix5.
-sinix5.*)
os=`echo $os | sed -e 's|sinix|sysv|'`
;;
-sinix*)
os=-sysv4
;;
-triton*)
os=-sysv3
;;
-oss*)
os=-sysv3
;;
-svr4)
os=-sysv4
;;
-svr3)
os=-sysv3
;;
-sysvr4)
os=-sysv4
;;
# This must come after -sysvr4.
-sysv*)
;;
-ose*)
os=-ose
;;
-es1800*)
os=-ose
;;
-xenix)
os=-xenix
;;
-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
os=-mint
;;
-none)
;;
*)
# Get rid of the `-' at the beginning of $os.
os=`echo $os | sed 's/[^-]*-//'`
echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
exit 1
;;
esac
else
# Here we handle the default operating systems that come with various machines.
# The value should be what the vendor currently ships out the door with their
# machine or put another way, the most popular os provided with the machine.
# Note that if you're going to try to match "-MANUFACTURER" here (say,
# "-sun"), then you have to tell the case statement up towards the top
# that MANUFACTURER isn't an operating system. Otherwise, code above
# will signal an error saying that MANUFACTURER isn't an operating
# system, and we'll never get to this point.
case $basic_machine in
*-acorn)
os=-riscix1.2
;;
arm*-rebel)
os=-linux
;;
arm*-semi)
os=-aout
;;
# This must come before the *-dec entry.
pdp10-*)
os=-tops20
;;
pdp11-*)
os=-none
;;
*-dec | vax-*)
os=-ultrix4.2
;;
m68*-apollo)
os=-domain
;;
i386-sun)
os=-sunos4.0.2
;;
m68000-sun)
os=-sunos3
# This also exists in the configure program, but was not the
# default.
# os=-sunos4
;;
m68*-cisco)
os=-aout
;;
mips*-cisco)
os=-elf
;;
mips*-*)
os=-elf
;;
*-tti) # must be before sparc entry or we get the wrong os.
os=-sysv3
;;
sparc-* | *-sun)
os=-sunos4.1.1
;;
*-be)
os=-beos
;;
*-ibm)
os=-aix
;;
*-wec)
os=-proelf
;;
*-winbond)
os=-proelf
;;
*-oki)
os=-proelf
;;
*-hp)
os=-hpux
;;
*-hitachi)
os=-hiux
;;
i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
os=-sysv
;;
*-cbm)
os=-amigaos
;;
*-dg)
os=-dgux
;;
*-dolphin)
os=-sysv3
;;
m68k-ccur)
os=-rtu
;;
m88k-omron*)
os=-luna
;;
*-next )
os=-nextstep
;;
*-sequent)
os=-ptx
;;
*-crds)
os=-unos
;;
*-ns)
os=-genix
;;
i370-*)
os=-mvs
;;
*-next)
os=-nextstep3
;;
*-gould)
os=-sysv
;;
*-highlevel)
os=-bsd
;;
*-encore)
os=-bsd
;;
*-sgi)
os=-irix
;;
*-siemens)
os=-sysv4
;;
*-masscomp)
os=-rtu
;;
f30[01]-fujitsu | f700-fujitsu)
os=-uxpv
;;
*-rom68k)
os=-coff
;;
*-*bug)
os=-coff
;;
*-apple)
os=-macos
;;
*-atari*)
os=-mint
;;
*)
os=-none
;;
esac
fi
# Here we handle the case where we know the os, and the CPU type, but not the
# manufacturer. We pick the logical manufacturer.
vendor=unknown
case $basic_machine in
*-unknown)
case $os in
-riscix*)
vendor=acorn
;;
-sunos*)
vendor=sun
;;
-aix*)
vendor=ibm
;;
-beos*)
vendor=be
;;
-hpux*)
vendor=hp
;;
-mpeix*)
vendor=hp
;;
-hiux*)
vendor=hitachi
;;
-unos*)
vendor=crds
;;
-dgux*)
vendor=dg
;;
-luna*)
vendor=omron
;;
-genix*)
vendor=ns
;;
-mvs* | -opened*)
vendor=ibm
;;
-ptx*)
vendor=sequent
;;
-vxsim* | -vxworks*)
vendor=wrs
;;
-aux*)
vendor=apple
;;
-hms*)
vendor=hitachi
;;
-mpw* | -macos*)
vendor=apple
;;
-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
vendor=atari
;;
-vos*)
vendor=stratus
;;
esac
basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
;;
esac
echo $basic_machine$os
exit 0
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "timestamp='"
# time-stamp-format: "%:y-%02m-%02d"
# time-stamp-end: "'"
# End:
oneliner-el-0.3.6.orig/config.guess 0100755 0001750 0001750 00000112706 07764574474 016620 0 ustar mohura mohura #! /bin/sh
# Attempt to guess a canonical system name.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002 Free Software Foundation, Inc.
timestamp='2002-01-02'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# Originally written by Per Bothner .
# Please send patches to . Submit a context
# diff and a properly formatted ChangeLog entry.
#
# This script attempts to guess a canonical system name similar to
# config.sub. If it succeeds, it prints the system name on stdout, and
# exits with 0. Otherwise, it exits with 1.
#
# The plan is that this can be called by configure scripts if you
# don't specify an explicit build system type.
me=`echo "$0" | sed -e 's,.*/,,'`
usage="\
Usage: $0 [OPTION]
Output the configuration name of the system \`$me' is run on.
Operation modes:
-h, --help print this help, then exit
-t, --time-stamp print date of last modification, then exit
-v, --version print version number, then exit
Report bugs and patches to ."
version="\
GNU config.guess ($timestamp)
Originally written by Per Bothner.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
help="
Try \`$me --help' for more information."
# Parse command line
while test $# -gt 0 ; do
case $1 in
--time-stamp | --time* | -t )
echo "$timestamp" ; exit 0 ;;
--version | -v )
echo "$version" ; exit 0 ;;
--help | --h* | -h )
echo "$usage"; exit 0 ;;
-- ) # Stop option processing
shift; break ;;
- ) # Use stdin as input.
break ;;
-* )
echo "$me: invalid option $1$help" >&2
exit 1 ;;
* )
break ;;
esac
done
if test $# != 0; then
echo "$me: too many arguments$help" >&2
exit 1
fi
dummy=dummy-$$
trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15
# CC_FOR_BUILD -- compiler used by this script.
# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
# use `HOST_CC' if defined, but it is deprecated.
set_cc_for_build='case $CC_FOR_BUILD,$HOST_CC,$CC in
,,) echo "int dummy(){}" > $dummy.c ;
for c in cc gcc c89 ; do
($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ;
if test $? = 0 ; then
CC_FOR_BUILD="$c"; break ;
fi ;
done ;
rm -f $dummy.c $dummy.o $dummy.rel ;
if test x"$CC_FOR_BUILD" = x ; then
CC_FOR_BUILD=no_compiler_found ;
fi
;;
,,*) CC_FOR_BUILD=$CC ;;
,*,*) CC_FOR_BUILD=$HOST_CC ;;
esac'
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (ghazi@noc.rutgers.edu 1994-08-24)
if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
PATH=$PATH:/.attbin ; export PATH
fi
UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
# Note: order is significant - the case branches are not exclusive.
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
*:NetBSD:*:*)
# NetBSD (nbsd) targets should (where applicable) match one or
# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
# *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
# switched to ELF, *-*-netbsd* would select the old
# object file format. This provides both forward
# compatibility and a consistent mechanism for selecting the
# object file format.
#
# Note: NetBSD doesn't particularly care about the vendor
# portion of the name. We always set it to "unknown".
UNAME_MACHINE_ARCH=`(uname -p) 2>/dev/null` || \
UNAME_MACHINE_ARCH=unknown
case "${UNAME_MACHINE_ARCH}" in
arm*) machine=arm-unknown ;;
sh3el) machine=shl-unknown ;;
sh3eb) machine=sh-unknown ;;
*) machine=${UNAME_MACHINE_ARCH}-unknown ;;
esac
# The Operating System including object format, if it has switched
# to ELF recently, or will in the future.
case "${UNAME_MACHINE_ARCH}" in
arm*|i386|m68k|ns32k|sh3*|sparc|vax)
eval $set_cc_for_build
if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
| grep __ELF__ >/dev/null
then
# Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
# Return netbsd for either. FIX?
os=netbsd
else
os=netbsdelf
fi
;;
*)
os=netbsd
;;
esac
# The OS release
release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
# contains redundant information, the shorter form:
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
echo "${machine}-${os}${release}"
exit 0 ;;
amiga:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
arc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
hp300:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mac68k:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
macppc:OpenBSD:*:*)
echo powerpc-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mvme68k:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mvme88k:OpenBSD:*:*)
echo m88k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mvmeppc:OpenBSD:*:*)
echo powerpc-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
pmax:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
sgi:OpenBSD:*:*)
echo mipseb-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
sun3:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
wgrisc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
*:OpenBSD:*:*)
echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
alpha:OSF1:*:*)
if test $UNAME_RELEASE = "V4.0"; then
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
fi
# A Vn.n version is a released version.
# A Tn.n version is a released field test version.
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
cat <$dummy.s
.data
\$Lformat:
.byte 37,100,45,37,120,10,0 # "%d-%x\n"
.text
.globl main
.align 4
.ent main
main:
.frame \$30,16,\$26,0
ldgp \$29,0(\$27)
.prologue 1
.long 0x47e03d80 # implver \$0
lda \$2,-1
.long 0x47e20c21 # amask \$2,\$1
lda \$16,\$Lformat
mov \$0,\$17
not \$1,\$18
jsr \$26,printf
ldgp \$29,0(\$26)
mov 0,\$16
jsr \$26,exit
.end main
EOF
eval $set_cc_for_build
$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
if test "$?" = 0 ; then
case `./$dummy` in
0-0)
UNAME_MACHINE="alpha"
;;
1-0)
UNAME_MACHINE="alphaev5"
;;
1-1)
UNAME_MACHINE="alphaev56"
;;
1-101)
UNAME_MACHINE="alphapca56"
;;
2-303)
UNAME_MACHINE="alphaev6"
;;
2-307)
UNAME_MACHINE="alphaev67"
;;
2-1307)
UNAME_MACHINE="alphaev68"
;;
esac
fi
rm -f $dummy.s $dummy
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
exit 0 ;;
Alpha\ *:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# Should we change UNAME_MACHINE based on the output of uname instead
# of the specific Alpha model?
echo alpha-pc-interix
exit 0 ;;
21064:Windows_NT:50:3)
echo alpha-dec-winnt3.5
exit 0 ;;
Amiga*:UNIX_System_V:4.0:*)
echo m68k-unknown-sysv4
exit 0;;
*:[Aa]miga[Oo][Ss]:*:*)
echo ${UNAME_MACHINE}-unknown-amigaos
exit 0 ;;
*:[Mm]orph[Oo][Ss]:*:*)
echo ${UNAME_MACHINE}-unknown-morphos
exit 0 ;;
*:OS/390:*:*)
echo i370-ibm-openedition
exit 0 ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
echo arm-acorn-riscix${UNAME_RELEASE}
exit 0;;
SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
echo hppa1.1-hitachi-hiuxmpp
exit 0;;
Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
if test "`(/bin/universe) 2>/dev/null`" = att ; then
echo pyramid-pyramid-sysv3
else
echo pyramid-pyramid-bsd
fi
exit 0 ;;
NILE*:*:*:dcosx)
echo pyramid-pyramid-svr4
exit 0 ;;
sun4H:SunOS:5.*:*)
echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
i86pc:SunOS:5.*:*)
echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
sun4*:SunOS:6*:*)
# According to config.sub, this is the proper way to canonicalize
# SunOS6. Hard to guess exactly what SunOS6 will be like, but
# it's likely to be more like Solaris than SunOS4.
echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
sun4*:SunOS:*:*)
case "`/usr/bin/arch -k`" in
Series*|S4*)
UNAME_RELEASE=`uname -v`
;;
esac
# Japanese Language versions have a version number like `4.1.3-JL'.
echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
exit 0 ;;
sun3*:SunOS:*:*)
echo m68k-sun-sunos${UNAME_RELEASE}
exit 0 ;;
sun*:*:4.2BSD:*)
UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
case "`/bin/arch`" in
sun3)
echo m68k-sun-sunos${UNAME_RELEASE}
;;
sun4)
echo sparc-sun-sunos${UNAME_RELEASE}
;;
esac
exit 0 ;;
aushp:SunOS:*:*)
echo sparc-auspex-sunos${UNAME_RELEASE}
exit 0 ;;
# The situation for MiNT is a little confusing. The machine name
# can be virtually everything (everything which is not
# "atarist" or "atariste" at least should have a processor
# > m68000). The system name ranges from "MiNT" over "FreeMiNT"
# to the lowercase version "mint" (or "freemint"). Finally
# the system name "TOS" denotes a system which is actually not
# MiNT. But MiNT is downward compatible to TOS, so this should
# be no problem.
atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
exit 0 ;;
atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
exit 0 ;;
*falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
exit 0 ;;
milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
echo m68k-milan-mint${UNAME_RELEASE}
exit 0 ;;
hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
echo m68k-hades-mint${UNAME_RELEASE}
exit 0 ;;
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
echo m68k-unknown-mint${UNAME_RELEASE}
exit 0 ;;
powerpc:machten:*:*)
echo powerpc-apple-machten${UNAME_RELEASE}
exit 0 ;;
RISC*:Mach:*:*)
echo mips-dec-mach_bsd4.3
exit 0 ;;
RISC*:ULTRIX:*:*)
echo mips-dec-ultrix${UNAME_RELEASE}
exit 0 ;;
VAX*:ULTRIX*:*:*)
echo vax-dec-ultrix${UNAME_RELEASE}
exit 0 ;;
2020:CLIX:*:* | 2430:CLIX:*:*)
echo clipper-intergraph-clix${UNAME_RELEASE}
exit 0 ;;
mips:*:*:UMIPS | mips:*:*:RISCos)
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#ifdef __cplusplus
#include /* for printf() prototype */
int main (int argc, char *argv[]) {
#else
int main (argc, argv) int argc; char *argv[]; {
#endif
#if defined (host_mips) && defined (MIPSEB)
#if defined (SYSTYPE_SYSV)
printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
#endif
#if defined (SYSTYPE_SVR4)
printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
#endif
#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
#endif
#endif
exit (-1);
}
EOF
$CC_FOR_BUILD $dummy.c -o $dummy \
&& ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
&& rm -f $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
echo mips-mips-riscos${UNAME_RELEASE}
exit 0 ;;
Motorola:PowerMAX_OS:*:*)
echo powerpc-motorola-powermax
exit 0 ;;
Night_Hawk:Power_UNIX:*:*)
echo powerpc-harris-powerunix
exit 0 ;;
m88k:CX/UX:7*:*)
echo m88k-harris-cxux7
exit 0 ;;
m88k:*:4*:R4*)
echo m88k-motorola-sysv4
exit 0 ;;
m88k:*:3*:R3*)
echo m88k-motorola-sysv3
exit 0 ;;
AViiON:dgux:*:*)
# DG/UX returns AViiON for all architectures
UNAME_PROCESSOR=`/usr/bin/uname -p`
if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
then
if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
[ ${TARGET_BINARY_INTERFACE}x = x ]
then
echo m88k-dg-dgux${UNAME_RELEASE}
else
echo m88k-dg-dguxbcs${UNAME_RELEASE}
fi
else
echo i586-dg-dgux${UNAME_RELEASE}
fi
exit 0 ;;
M88*:DolphinOS:*:*) # DolphinOS (SVR3)
echo m88k-dolphin-sysv3
exit 0 ;;
M88*:*:R3*:*)
# Delta 88k system running SVR3
echo m88k-motorola-sysv3
exit 0 ;;
XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
echo m88k-tektronix-sysv3
exit 0 ;;
Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
echo m68k-tektronix-bsd
exit 0 ;;
*:IRIX*:*:*)
echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
exit 0 ;;
????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
i*86:AIX:*:*)
echo i386-ibm-aix
exit 0 ;;
ia64:AIX:*:*)
if [ -x /usr/bin/oslevel ] ; then
IBM_REV=`/usr/bin/oslevel`
else
IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
fi
echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
exit 0 ;;
*:AIX:2:3)
if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#include
main()
{
if (!__power_pc())
exit(1);
puts("powerpc-ibm-aix3.2.5");
exit(0);
}
EOF
$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
echo rs6000-ibm-aix3.2.5
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
echo rs6000-ibm-aix3.2.4
else
echo rs6000-ibm-aix3.2
fi
exit 0 ;;
*:AIX:*:[45])
IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
IBM_ARCH=rs6000
else
IBM_ARCH=powerpc
fi
if [ -x /usr/bin/oslevel ] ; then
IBM_REV=`/usr/bin/oslevel`
else
IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
fi
echo ${IBM_ARCH}-ibm-aix${IBM_REV}
exit 0 ;;
*:AIX:*:*)
echo rs6000-ibm-aix
exit 0 ;;
ibmrt:4.4BSD:*|romp-ibm:BSD:*)
echo romp-ibm-bsd4.4
exit 0 ;;
ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
exit 0 ;; # report: romp-ibm BSD 4.3
*:BOSX:*:*)
echo rs6000-bull-bosx
exit 0 ;;
DPX/2?00:B.O.S.:*:*)
echo m68k-bull-sysv3
exit 0 ;;
9000/[34]??:4.3bsd:1.*:*)
echo m68k-hp-bsd
exit 0 ;;
hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
echo m68k-hp-bsd4.4
exit 0 ;;
9000/[34678]??:HP-UX:*:*)
HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
case "${UNAME_MACHINE}" in
9000/31? ) HP_ARCH=m68000 ;;
9000/[34]?? ) HP_ARCH=m68k ;;
9000/[678][0-9][0-9])
if [ -x /usr/bin/getconf ]; then
sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
case "${sc_cpu_version}" in
523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
532) # CPU_PA_RISC2_0
case "${sc_kernel_bits}" in
32) HP_ARCH="hppa2.0n" ;;
64) HP_ARCH="hppa2.0w" ;;
'') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
esac ;;
esac
fi
if [ "${HP_ARCH}" = "" ]; then
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#define _HPUX_SOURCE
#include
#include
int main ()
{
#if defined(_SC_KERNEL_BITS)
long bits = sysconf(_SC_KERNEL_BITS);
#endif
long cpu = sysconf (_SC_CPU_VERSION);
switch (cpu)
{
case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
case CPU_PA_RISC2_0:
#if defined(_SC_KERNEL_BITS)
switch (bits)
{
case 64: puts ("hppa2.0w"); break;
case 32: puts ("hppa2.0n"); break;
default: puts ("hppa2.0"); break;
} break;
#else /* !defined(_SC_KERNEL_BITS) */
puts ("hppa2.0"); break;
#endif
default: puts ("hppa1.0"); break;
}
exit (0);
}
EOF
(CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null) && HP_ARCH=`./$dummy`
if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
rm -f $dummy.c $dummy
fi ;;
esac
echo ${HP_ARCH}-hp-hpux${HPUX_REV}
exit 0 ;;
ia64:HP-UX:*:*)
HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
echo ia64-hp-hpux${HPUX_REV}
exit 0 ;;
3050*:HI-UX:*:*)
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#include
int
main ()
{
long cpu = sysconf (_SC_CPU_VERSION);
/* The order matters, because CPU_IS_HP_MC68K erroneously returns
true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
results, however. */
if (CPU_IS_PA_RISC (cpu))
{
switch (cpu)
{
case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
default: puts ("hppa-hitachi-hiuxwe2"); break;
}
}
else if (CPU_IS_HP_MC68K (cpu))
puts ("m68k-hitachi-hiuxwe2");
else puts ("unknown-hitachi-hiuxwe2");
exit (0);
}
EOF
$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
echo unknown-hitachi-hiuxwe2
exit 0 ;;
9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
echo hppa1.1-hp-bsd
exit 0 ;;
9000/8??:4.3bsd:*:*)
echo hppa1.0-hp-bsd
exit 0 ;;
*9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
echo hppa1.0-hp-mpeix
exit 0 ;;
hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
echo hppa1.1-hp-osf
exit 0 ;;
hp8??:OSF1:*:*)
echo hppa1.0-hp-osf
exit 0 ;;
i*86:OSF1:*:*)
if [ -x /usr/sbin/sysversion ] ; then
echo ${UNAME_MACHINE}-unknown-osf1mk
else
echo ${UNAME_MACHINE}-unknown-osf1
fi
exit 0 ;;
parisc*:Lites*:*:*)
echo hppa1.1-hp-lites
exit 0 ;;
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
echo c1-convex-bsd
exit 0 ;;
C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
if getsysinfo -f scalar_acc
then echo c32-convex-bsd
else echo c2-convex-bsd
fi
exit 0 ;;
C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
echo c34-convex-bsd
exit 0 ;;
C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
echo c38-convex-bsd
exit 0 ;;
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
echo c4-convex-bsd
exit 0 ;;
CRAY*X-MP:*:*:*)
echo xmp-cray-unicos
exit 0 ;;
CRAY*Y-MP:*:*:*)
echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
CRAY*[A-Z]90:*:*:*)
echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
-e 's/\.[^.]*$/.X/'
exit 0 ;;
CRAY*TS:*:*:*)
echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
CRAY*T3D:*:*:*)
echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
CRAY*T3E:*:*:*)
echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
CRAY*SV1:*:*:*)
echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
CRAY-2:*:*:*)
echo cray2-cray-unicos
exit 0 ;;
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit 0 ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
exit 0 ;;
sparc*:BSD/OS:*:*)
echo sparc-unknown-bsdi${UNAME_RELEASE}
exit 0 ;;
*:BSD/OS:*:*)
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
exit 0 ;;
*:FreeBSD:*:*)
echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
exit 0 ;;
i*:CYGWIN*:*)
echo ${UNAME_MACHINE}-pc-cygwin
exit 0 ;;
i*:MINGW*:*)
echo ${UNAME_MACHINE}-pc-mingw32
exit 0 ;;
i*:PW*:*)
echo ${UNAME_MACHINE}-pc-pw32
exit 0 ;;
x86:Interix*:3*)
echo i386-pc-interix3
exit 0 ;;
i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
# UNAME_MACHINE based on the output of uname instead of i386?
echo i386-pc-interix
exit 0 ;;
i*:UWIN*:*)
echo ${UNAME_MACHINE}-pc-uwin
exit 0 ;;
p*:CYGWIN*:*)
echo powerpcle-unknown-cygwin
exit 0 ;;
prep*:SunOS:5.*:*)
echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
*:GNU:*:*)
echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
exit 0 ;;
i*86:Minix:*:*)
echo ${UNAME_MACHINE}-pc-minix
exit 0 ;;
arm*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
ia64:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux
exit 0 ;;
m68*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
mips:Linux:*:*)
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#undef CPU
#undef mips
#undef mipsel
#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
CPU=mipsel
#else
#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
CPU=mips
#else
CPU=
#endif
#endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
rm -f $dummy.c
test x"${CPU}" != x && echo "${CPU}-pc-linux-gnu" && exit 0
;;
ppc:Linux:*:*)
echo powerpc-unknown-linux-gnu
exit 0 ;;
ppc64:Linux:*:*)
echo powerpc64-unknown-linux-gnu
exit 0 ;;
alpha:Linux:*:*)
case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
EV5) UNAME_MACHINE=alphaev5 ;;
EV56) UNAME_MACHINE=alphaev56 ;;
PCA56) UNAME_MACHINE=alphapca56 ;;
PCA57) UNAME_MACHINE=alphapca56 ;;
EV6) UNAME_MACHINE=alphaev6 ;;
EV67) UNAME_MACHINE=alphaev67 ;;
EV68*) UNAME_MACHINE=alphaev68 ;;
esac
objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
exit 0 ;;
parisc:Linux:*:* | hppa:Linux:*:*)
# Look for CPU level
case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
PA7*) echo hppa1.1-unknown-linux-gnu ;;
PA8*) echo hppa2.0-unknown-linux-gnu ;;
*) echo hppa-unknown-linux-gnu ;;
esac
exit 0 ;;
parisc64:Linux:*:* | hppa64:Linux:*:*)
echo hppa64-unknown-linux-gnu
exit 0 ;;
s390:Linux:*:* | s390x:Linux:*:*)
echo ${UNAME_MACHINE}-ibm-linux
exit 0 ;;
sh*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
sparc:Linux:*:* | sparc64:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
x86_64:Linux:*:*)
echo x86_64-unknown-linux-gnu
exit 0 ;;
i*86:Linux:*:*)
# The BFD linker knows what the default object file format is, so
# first see if it will tell us. cd to the root directory to prevent
# problems with other programs or directories called `ld' in the path.
ld_supported_targets=`cd /; ld --help 2>&1 \
| sed -ne '/supported targets:/!d
s/[ ][ ]*/ /g
s/.*supported targets: *//
s/ .*//
p'`
case "$ld_supported_targets" in
elf32-i386)
TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
;;
a.out-i386-linux)
echo "${UNAME_MACHINE}-pc-linux-gnuaout"
exit 0 ;;
coff-i386)
echo "${UNAME_MACHINE}-pc-linux-gnucoff"
exit 0 ;;
"")
# Either a pre-BFD a.out linker (linux-gnuoldld) or
# one that does not give us useful --help.
echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
exit 0 ;;
esac
# Determine whether the default compiler is a.out or elf
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#include
#ifdef __ELF__
# ifdef __GLIBC__
# if __GLIBC__ >= 2
LIBC=gnu
# else
LIBC=gnulibc1
# endif
# else
LIBC=gnulibc1
# endif
#else
LIBC=gnuaout
#endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
rm -f $dummy.c
test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
;;
i*86:DYNIX/ptx:4*:*)
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
# earlier versions are messed up and put the nodename in both
# sysname and nodename.
echo i386-sequent-sysv4
exit 0 ;;
i*86:UNIX_SV:4.2MP:2.*)
# Unixware is an offshoot of SVR4, but it has its own version
# number series starting with 2...
# I am not positive that other SVR4 systems won't match this,
# I just have to hope. -- rms.
# Use sysv4.2uw... so that sysv4* matches it.
echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
exit 0 ;;
i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
else
echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
fi
exit 0 ;;
i*86:*:5:[78]*)
case `/bin/uname -X | grep "^Machine"` in
*486*) UNAME_MACHINE=i486 ;;
*Pentium) UNAME_MACHINE=i586 ;;
*Pent*|*Celeron) UNAME_MACHINE=i686 ;;
esac
echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
exit 0 ;;
i*86:*:3.2:*)
if test -f /usr/options/cb.name; then
UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then
UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
&& UNAME_MACHINE=i586
(/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
&& UNAME_MACHINE=i686
(/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
&& UNAME_MACHINE=i686
echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
else
echo ${UNAME_MACHINE}-pc-sysv32
fi
exit 0 ;;
i*86:*DOS:*:*)
echo ${UNAME_MACHINE}-pc-msdosdjgpp
exit 0 ;;
pc:*:*:*)
# Left here for compatibility:
# uname -m prints for DJGPP always 'pc', but it prints nothing about
# the processor, so we play safe by assuming i386.
echo i386-pc-msdosdjgpp
exit 0 ;;
Intel:Mach:3*:*)
echo i386-pc-mach3
exit 0 ;;
paragon:*:*:*)
echo i860-intel-osf1
exit 0 ;;
i860:*:4.*:*) # i860-SVR4
if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
else # Add other i860-SVR4 vendors below as they are discovered.
echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
fi
exit 0 ;;
mini*:CTIX:SYS*5:*)
# "miniframe"
echo m68010-convergent-sysv
exit 0 ;;
M68*:*:R3V[567]*:*)
test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0)
OS_REL=''
test -r /etc/.relid \
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
&& echo i486-ncr-sysv4.3${OS_REL} && exit 0
/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
&& echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
&& echo i486-ncr-sysv4 && exit 0 ;;
m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
echo m68k-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
mc68030:UNIX_System_V:4.*:*)
echo m68k-atari-sysv4
exit 0 ;;
i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
echo i386-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
TSUNAMI:LynxOS:2.*:*)
echo sparc-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
rs6000:LynxOS:2.*:*)
echo rs6000-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
echo powerpc-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
SM[BE]S:UNIX_SV:*:*)
echo mips-dde-sysv${UNAME_RELEASE}
exit 0 ;;
RM*:ReliantUNIX-*:*:*)
echo mips-sni-sysv4
exit 0 ;;
RM*:SINIX-*:*:*)
echo mips-sni-sysv4
exit 0 ;;
*:SINIX-*:*:*)
if uname -p 2>/dev/null >/dev/null ; then
UNAME_MACHINE=`(uname -p) 2>/dev/null`
echo ${UNAME_MACHINE}-sni-sysv4
else
echo ns32k-sni-sysv
fi
exit 0 ;;
PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
# says
echo i586-unisys-sysv4
exit 0 ;;
*:UNIX_System_V:4*:FTX*)
# From Gerald Hewes .
# How about differentiating between stratus architectures? -djm
echo hppa1.1-stratus-sysv4
exit 0 ;;
*:*:*:FTX*)
# From seanf@swdc.stratus.com.
echo i860-stratus-sysv4
exit 0 ;;
*:VOS:*:*)
# From Paul.Green@stratus.com.
echo hppa1.1-stratus-vos
exit 0 ;;
mc68*:A/UX:*:*)
echo m68k-apple-aux${UNAME_RELEASE}
exit 0 ;;
news*:NEWS-OS:6*:*)
echo mips-sony-newsos6
exit 0 ;;
R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
if [ -d /usr/nec ]; then
echo mips-nec-sysv${UNAME_RELEASE}
else
echo mips-unknown-sysv${UNAME_RELEASE}
fi
exit 0 ;;
BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
echo powerpc-be-beos
exit 0 ;;
BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
echo powerpc-apple-beos
exit 0 ;;
BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
echo i586-pc-beos
exit 0 ;;
SX-4:SUPER-UX:*:*)
echo sx4-nec-superux${UNAME_RELEASE}
exit 0 ;;
SX-5:SUPER-UX:*:*)
echo sx5-nec-superux${UNAME_RELEASE}
exit 0 ;;
Power*:Rhapsody:*:*)
echo powerpc-apple-rhapsody${UNAME_RELEASE}
exit 0 ;;
*:Rhapsody:*:*)
echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
exit 0 ;;
*:Darwin:*:*)
echo `uname -p`-apple-darwin${UNAME_RELEASE}
exit 0 ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
if test "${UNAME_MACHINE}" = "x86pc"; then
UNAME_MACHINE=pc
fi
echo `uname -p`-${UNAME_MACHINE}-nto-qnx
exit 0 ;;
*:QNX:*:4*)
echo i386-pc-qnx
exit 0 ;;
NSR-[GKLNPTVW]:NONSTOP_KERNEL:*:*)
echo nsr-tandem-nsk${UNAME_RELEASE}
exit 0 ;;
*:NonStop-UX:*:*)
echo mips-compaq-nonstopux
exit 0 ;;
BS2000:POSIX*:*:*)
echo bs2000-siemens-sysv
exit 0 ;;
DS/*:UNIX_System_V:*:*)
echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
exit 0 ;;
*:Plan9:*:*)
# "uname -m" is not consistent, so use $cputype instead. 386
# is converted to i386 for consistency with other x86
# operating systems.
if test "$cputype" = "386"; then
UNAME_MACHINE=i386
else
UNAME_MACHINE="$cputype"
fi
echo ${UNAME_MACHINE}-unknown-plan9
exit 0 ;;
i*86:OS/2:*:*)
# If we were able to find `uname', then EMX Unix compatibility
# is probably installed.
echo ${UNAME_MACHINE}-pc-os2-emx
exit 0 ;;
*:TOPS-10:*:*)
echo pdp10-unknown-tops10
exit 0 ;;
*:TENEX:*:*)
echo pdp10-unknown-tenex
exit 0 ;;
KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
echo pdp10-dec-tops20
exit 0 ;;
XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
echo pdp10-xkl-tops20
exit 0 ;;
*:TOPS-20:*:*)
echo pdp10-unknown-tops20
exit 0 ;;
*:ITS:*:*)
echo pdp10-unknown-its
exit 0 ;;
i*86:XTS-300:*:STOP)
echo ${UNAME_MACHINE}-unknown-stop
exit 0 ;;
i*86:atheos:*:*)
echo ${UNAME_MACHINE}-unknown-atheos
exit 0 ;;
esac
#echo '(No uname command or uname output not recognized.)' 1>&2
#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
eval $set_cc_for_build
cat >$dummy.c <
# include
#endif
main ()
{
#if defined (sony)
#if defined (MIPSEB)
/* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
I don't know.... */
printf ("mips-sony-bsd\n"); exit (0);
#else
#include
printf ("m68k-sony-newsos%s\n",
#ifdef NEWSOS4
"4"
#else
""
#endif
); exit (0);
#endif
#endif
#if defined (__arm) && defined (__acorn) && defined (__unix)
printf ("arm-acorn-riscix"); exit (0);
#endif
#if defined (hp300) && !defined (hpux)
printf ("m68k-hp-bsd\n"); exit (0);
#endif
#if defined (NeXT)
#if !defined (__ARCHITECTURE__)
#define __ARCHITECTURE__ "m68k"
#endif
int version;
version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
if (version < 4)
printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
else
printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
exit (0);
#endif
#if defined (MULTIMAX) || defined (n16)
#if defined (UMAXV)
printf ("ns32k-encore-sysv\n"); exit (0);
#else
#if defined (CMU)
printf ("ns32k-encore-mach\n"); exit (0);
#else
printf ("ns32k-encore-bsd\n"); exit (0);
#endif
#endif
#endif
#if defined (__386BSD__)
printf ("i386-pc-bsd\n"); exit (0);
#endif
#if defined (sequent)
#if defined (i386)
printf ("i386-sequent-dynix\n"); exit (0);
#endif
#if defined (ns32000)
printf ("ns32k-sequent-dynix\n"); exit (0);
#endif
#endif
#if defined (_SEQUENT_)
struct utsname un;
uname(&un);
if (strncmp(un.version, "V2", 2) == 0) {
printf ("i386-sequent-ptx2\n"); exit (0);
}
if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
printf ("i386-sequent-ptx1\n"); exit (0);
}
printf ("i386-sequent-ptx\n"); exit (0);
#endif
#if defined (vax)
# if !defined (ultrix)
# include
# if defined (BSD)
# if BSD == 43
printf ("vax-dec-bsd4.3\n"); exit (0);
# else
# if BSD == 199006
printf ("vax-dec-bsd4.3reno\n"); exit (0);
# else
printf ("vax-dec-bsd\n"); exit (0);
# endif
# endif
# else
printf ("vax-dec-bsd\n"); exit (0);
# endif
# else
printf ("vax-dec-ultrix\n"); exit (0);
# endif
#endif
#if defined (alliant) && defined (i860)
printf ("i860-alliant-bsd\n"); exit (0);
#endif
exit (1);
}
EOF
$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
# Apollos put the system type in the environment.
test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
# Convex versions that predate uname can use getsysinfo(1)
if [ -x /usr/convex/getsysinfo ]
then
case `getsysinfo -f cpu_type` in
c1*)
echo c1-convex-bsd
exit 0 ;;
c2*)
if getsysinfo -f scalar_acc
then echo c32-convex-bsd
else echo c2-convex-bsd
fi
exit 0 ;;
c34*)
echo c34-convex-bsd
exit 0 ;;
c38*)
echo c38-convex-bsd
exit 0 ;;
c4*)
echo c4-convex-bsd
exit 0 ;;
esac
fi
cat >&2 < in order to provide the needed
information to handle your system.
config.guess timestamp = $timestamp
uname -m = `(uname -m) 2>/dev/null || echo unknown`
uname -r = `(uname -r) 2>/dev/null || echo unknown`
uname -s = `(uname -s) 2>/dev/null || echo unknown`
uname -v = `(uname -v) 2>/dev/null || echo unknown`
/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
hostinfo = `(hostinfo) 2>/dev/null`
/bin/universe = `(/bin/universe) 2>/dev/null`
/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
/bin/arch = `(/bin/arch) 2>/dev/null`
/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
UNAME_MACHINE = ${UNAME_MACHINE}
UNAME_RELEASE = ${UNAME_RELEASE}
UNAME_SYSTEM = ${UNAME_SYSTEM}
UNAME_VERSION = ${UNAME_VERSION}
EOF
exit 1
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "timestamp='"
# time-stamp-format: "%:y-%02m-%02d"
# time-stamp-end: "'"
# End:
oneliner-el-0.3.6.orig/aclocal.m4 0100644 0001750 0001750 00000002470 07764574474 016134 0 ustar mohura mohura # generated automatically by aclocal 1.7 -*- Autoconf -*-
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002
# Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
# grab and hack from lispdir.m4
# serial 3
AC_DEFUN([AM_PATH_LISPDIR],
[AC_ARG_WITH(lispdir,
[ --with-lispdir Override the default lisp directory],
[ lispdir="$withval"
AC_MSG_CHECKING([where .elc files should go])
AC_MSG_RESULT([$lispdir])],
[
if test x${lispdir+set} != xset; then
AC_CACHE_CHECK([where .elc files should go], [am_cv_lispdir], [dnl
am_cv_lispdir=`$EMACS -batch -q -eval '(while load-path (princ (concat (car load-path) "\n")) (setq load-path (cdr load-path)))' | sed -n -e 's,/$,,' -e '/site-lisp$/ { p; q; }'`
if test -z "$am_cv_lispdir"; then
am_cv_lispdir='${datadir}/emacs/site-lisp'
fi
am_cv_lispdir="$am_cv_lispdir/oneliner"
])
lispdir="$am_cv_lispdir"
fi
])
AC_SUBST(lispdir)])
oneliner-el-0.3.6.orig/configure 0100755 0001750 0001750 00000124521 07764574475 016206 0 ustar mohura mohura #! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated automatically using autoconf version 2.13
# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
#
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
# Defaults:
ac_help=
ac_default_prefix=/usr/local
# Any additions from configure.in:
ac_help="$ac_help
--with-bash Use Bash to build"
ac_help="$ac_help
--with-xemacs Use XEmacs to build"
ac_help="$ac_help
--with-emacs Use Emacs to build"
ac_help="$ac_help
--with-lispdir Override the default lisp directory"
# Initialize some variables set by options.
# The variables have the same names as the options, with
# dashes changed to underlines.
build=NONE
cache_file=./config.cache
exec_prefix=NONE
host=NONE
no_create=
nonopt=NONE
no_recursion=
prefix=NONE
program_prefix=NONE
program_suffix=NONE
program_transform_name=s,x,x,
silent=
site=
srcdir=
target=NONE
verbose=
x_includes=NONE
x_libraries=NONE
bindir='${exec_prefix}/bin'
sbindir='${exec_prefix}/sbin'
libexecdir='${exec_prefix}/libexec'
datadir='${prefix}/share'
sysconfdir='${prefix}/etc'
sharedstatedir='${prefix}/com'
localstatedir='${prefix}/var'
libdir='${exec_prefix}/lib'
includedir='${prefix}/include'
oldincludedir='/usr/include'
infodir='${prefix}/info'
mandir='${prefix}/man'
# Initialize some other variables.
subdirs=
MFLAGS= MAKEFLAGS=
SHELL=${CONFIG_SHELL-/bin/sh}
# Maximum number of lines to put in a shell here document.
ac_max_here_lines=12
ac_prev=
for ac_option
do
# If the previous option needs an argument, assign it.
if test -n "$ac_prev"; then
eval "$ac_prev=\$ac_option"
ac_prev=
continue
fi
case "$ac_option" in
-*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
*) ac_optarg= ;;
esac
# Accept the important Cygnus configure options, so we can diagnose typos.
case "$ac_option" in
-bindir | --bindir | --bindi | --bind | --bin | --bi)
ac_prev=bindir ;;
-bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
bindir="$ac_optarg" ;;
-build | --build | --buil | --bui | --bu)
ac_prev=build ;;
-build=* | --build=* | --buil=* | --bui=* | --bu=*)
build="$ac_optarg" ;;
-cache-file | --cache-file | --cache-fil | --cache-fi \
| --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
ac_prev=cache_file ;;
-cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
| --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
cache_file="$ac_optarg" ;;
-datadir | --datadir | --datadi | --datad | --data | --dat | --da)
ac_prev=datadir ;;
-datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
| --da=*)
datadir="$ac_optarg" ;;
-disable-* | --disable-*)
ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
# Reject names that are not valid shell variable names.
if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
{ echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
fi
ac_feature=`echo $ac_feature| sed 's/-/_/g'`
eval "enable_${ac_feature}=no" ;;
-enable-* | --enable-*)
ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
# Reject names that are not valid shell variable names.
if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
{ echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
fi
ac_feature=`echo $ac_feature| sed 's/-/_/g'`
case "$ac_option" in
*=*) ;;
*) ac_optarg=yes ;;
esac
eval "enable_${ac_feature}='$ac_optarg'" ;;
-exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
| --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
| --exec | --exe | --ex)
ac_prev=exec_prefix ;;
-exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
| --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
| --exec=* | --exe=* | --ex=*)
exec_prefix="$ac_optarg" ;;
-gas | --gas | --ga | --g)
# Obsolete; use --with-gas.
with_gas=yes ;;
-help | --help | --hel | --he)
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat << EOF
Usage: configure [options] [host]
Options: [defaults in brackets after descriptions]
Configuration:
--cache-file=FILE cache test results in FILE
--help print this message
--no-create do not create output files
--quiet, --silent do not print \`checking...' messages
--version print the version of autoconf that created configure
Directory and file names:
--prefix=PREFIX install architecture-independent files in PREFIX
[$ac_default_prefix]
--exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
[same as prefix]
--bindir=DIR user executables in DIR [EPREFIX/bin]
--sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
--libexecdir=DIR program executables in DIR [EPREFIX/libexec]
--datadir=DIR read-only architecture-independent data in DIR
[PREFIX/share]
--sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
--sharedstatedir=DIR modifiable architecture-independent data in DIR
[PREFIX/com]
--localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
--libdir=DIR object code libraries in DIR [EPREFIX/lib]
--includedir=DIR C header files in DIR [PREFIX/include]
--oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
--infodir=DIR info documentation in DIR [PREFIX/info]
--mandir=DIR man documentation in DIR [PREFIX/man]
--srcdir=DIR find the sources in DIR [configure dir or ..]
--program-prefix=PREFIX prepend PREFIX to installed program names
--program-suffix=SUFFIX append SUFFIX to installed program names
--program-transform-name=PROGRAM
run sed PROGRAM on installed program names
EOF
cat << EOF
Host type:
--build=BUILD configure for building on BUILD [BUILD=HOST]
--host=HOST configure for HOST [guessed]
--target=TARGET configure for TARGET [TARGET=HOST]
Features and packages:
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
--x-includes=DIR X include files are in DIR
--x-libraries=DIR X library files are in DIR
EOF
if test -n "$ac_help"; then
echo "--enable and --with options recognized:$ac_help"
fi
exit 0 ;;
-host | --host | --hos | --ho)
ac_prev=host ;;
-host=* | --host=* | --hos=* | --ho=*)
host="$ac_optarg" ;;
-includedir | --includedir | --includedi | --included | --include \
| --includ | --inclu | --incl | --inc)
ac_prev=includedir ;;
-includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
| --includ=* | --inclu=* | --incl=* | --inc=*)
includedir="$ac_optarg" ;;
-infodir | --infodir | --infodi | --infod | --info | --inf)
ac_prev=infodir ;;
-infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
infodir="$ac_optarg" ;;
-libdir | --libdir | --libdi | --libd)
ac_prev=libdir ;;
-libdir=* | --libdir=* | --libdi=* | --libd=*)
libdir="$ac_optarg" ;;
-libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
| --libexe | --libex | --libe)
ac_prev=libexecdir ;;
-libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
| --libexe=* | --libex=* | --libe=*)
libexecdir="$ac_optarg" ;;
-localstatedir | --localstatedir | --localstatedi | --localstated \
| --localstate | --localstat | --localsta | --localst \
| --locals | --local | --loca | --loc | --lo)
ac_prev=localstatedir ;;
-localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
| --localstate=* | --localstat=* | --localsta=* | --localst=* \
| --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
localstatedir="$ac_optarg" ;;
-mandir | --mandir | --mandi | --mand | --man | --ma | --m)
ac_prev=mandir ;;
-mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
mandir="$ac_optarg" ;;
-nfp | --nfp | --nf)
# Obsolete; use --without-fp.
with_fp=no ;;
-no-create | --no-create | --no-creat | --no-crea | --no-cre \
| --no-cr | --no-c)
no_create=yes ;;
-no-recursion | --no-recursion | --no-recursio | --no-recursi \
| --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
no_recursion=yes ;;
-oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
| --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
| --oldin | --oldi | --old | --ol | --o)
ac_prev=oldincludedir ;;
-oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
| --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
| --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
oldincludedir="$ac_optarg" ;;
-prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
ac_prev=prefix ;;
-prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
prefix="$ac_optarg" ;;
-program-prefix | --program-prefix | --program-prefi | --program-pref \
| --program-pre | --program-pr | --program-p)
ac_prev=program_prefix ;;
-program-prefix=* | --program-prefix=* | --program-prefi=* \
| --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
program_prefix="$ac_optarg" ;;
-program-suffix | --program-suffix | --program-suffi | --program-suff \
| --program-suf | --program-su | --program-s)
ac_prev=program_suffix ;;
-program-suffix=* | --program-suffix=* | --program-suffi=* \
| --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
program_suffix="$ac_optarg" ;;
-program-transform-name | --program-transform-name \
| --program-transform-nam | --program-transform-na \
| --program-transform-n | --program-transform- \
| --program-transform | --program-transfor \
| --program-transfo | --program-transf \
| --program-trans | --program-tran \
| --progr-tra | --program-tr | --program-t)
ac_prev=program_transform_name ;;
-program-transform-name=* | --program-transform-name=* \
| --program-transform-nam=* | --program-transform-na=* \
| --program-transform-n=* | --program-transform-=* \
| --program-transform=* | --program-transfor=* \
| --program-transfo=* | --program-transf=* \
| --program-trans=* | --program-tran=* \
| --progr-tra=* | --program-tr=* | --program-t=*)
program_transform_name="$ac_optarg" ;;
-q | -quiet | --quiet | --quie | --qui | --qu | --q \
| -silent | --silent | --silen | --sile | --sil)
silent=yes ;;
-sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
ac_prev=sbindir ;;
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
| --sbi=* | --sb=*)
sbindir="$ac_optarg" ;;
-sharedstatedir | --sharedstatedir | --sharedstatedi \
| --sharedstated | --sharedstate | --sharedstat | --sharedsta \
| --sharedst | --shareds | --shared | --share | --shar \
| --sha | --sh)
ac_prev=sharedstatedir ;;
-sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
| --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
| --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
| --sha=* | --sh=*)
sharedstatedir="$ac_optarg" ;;
-site | --site | --sit)
ac_prev=site ;;
-site=* | --site=* | --sit=*)
site="$ac_optarg" ;;
-srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
ac_prev=srcdir ;;
-srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
srcdir="$ac_optarg" ;;
-sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
| --syscon | --sysco | --sysc | --sys | --sy)
ac_prev=sysconfdir ;;
-sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
| --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
sysconfdir="$ac_optarg" ;;
-target | --target | --targe | --targ | --tar | --ta | --t)
ac_prev=target ;;
-target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
target="$ac_optarg" ;;
-v | -verbose | --verbose | --verbos | --verbo | --verb)
verbose=yes ;;
-version | --version | --versio | --versi | --vers)
echo "configure generated by autoconf version 2.13"
exit 0 ;;
-with-* | --with-*)
ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
# Reject names that are not valid shell variable names.
if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
{ echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
fi
ac_package=`echo $ac_package| sed 's/-/_/g'`
case "$ac_option" in
*=*) ;;
*) ac_optarg=yes ;;
esac
eval "with_${ac_package}='$ac_optarg'" ;;
-without-* | --without-*)
ac_package=`echo $ac_option|sed -e 's/-*without-//'`
# Reject names that are not valid shell variable names.
if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
{ echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
fi
ac_package=`echo $ac_package| sed 's/-/_/g'`
eval "with_${ac_package}=no" ;;
--x)
# Obsolete; use --with-x.
with_x=yes ;;
-x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
| --x-incl | --x-inc | --x-in | --x-i)
ac_prev=x_includes ;;
-x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
| --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
x_includes="$ac_optarg" ;;
-x-libraries | --x-libraries | --x-librarie | --x-librari \
| --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
ac_prev=x_libraries ;;
-x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
| --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
x_libraries="$ac_optarg" ;;
-*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
;;
*)
if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
echo "configure: warning: $ac_option: invalid host type" 1>&2
fi
if test "x$nonopt" != xNONE; then
{ echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
fi
nonopt="$ac_option"
;;
esac
done
if test -n "$ac_prev"; then
{ echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
fi
trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
# File descriptor usage:
# 0 standard input
# 1 file creation
# 2 errors and warnings
# 3 some systems may open it to /dev/tty
# 4 used on the Kubota Titan
# 6 checking for... messages and results
# 5 compiler messages saved in config.log
if test "$silent" = yes; then
exec 6>/dev/null
else
exec 6>&1
fi
exec 5>./config.log
echo "\
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
" 1>&5
# Strip out --no-create and --no-recursion so they do not pile up.
# Also quote any args containing shell metacharacters.
ac_configure_args=
for ac_arg
do
case "$ac_arg" in
-no-create | --no-create | --no-creat | --no-crea | --no-cre \
| --no-cr | --no-c) ;;
-no-recursion | --no-recursion | --no-recursio | --no-recursi \
| --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
*" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
ac_configure_args="$ac_configure_args '$ac_arg'" ;;
*) ac_configure_args="$ac_configure_args $ac_arg" ;;
esac
done
# NLS nuisances.
# Only set these to C if already set. These must not be set unconditionally
# because not all systems understand e.g. LANG=C (notably SCO).
# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
# Non-C LC_CTYPE values break the ctype check.
if test "${LANG+set}" = set; then LANG=C; export LANG; fi
if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
# confdefs.h avoids OS command line length limits that DEFS can exceed.
rm -rf conftest* confdefs.h
# AIX cpp loses on an empty file, so make sure it contains at least a newline.
echo > confdefs.h
# A filename unique to this package, relative to the directory that
# configure is in, which we can look for to find out if srcdir is correct.
ac_unique_file=oneliner.el
# Find the source files, if location was not specified.
if test -z "$srcdir"; then
ac_srcdir_defaulted=yes
# Try the directory containing this script, then its parent.
ac_prog=$0
ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
srcdir=$ac_confdir
if test ! -r $srcdir/$ac_unique_file; then
srcdir=..
fi
else
ac_srcdir_defaulted=no
fi
if test ! -r $srcdir/$ac_unique_file; then
if test "$ac_srcdir_defaulted" = yes; then
{ echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
else
{ echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
fi
fi
srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
# Prefer explicitly selected file to automatically selected ones.
if test -z "$CONFIG_SITE"; then
if test "x$prefix" != xNONE; then
CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
else
CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
fi
fi
for ac_site_file in $CONFIG_SITE; do
if test -r "$ac_site_file"; then
echo "loading site script $ac_site_file"
. "$ac_site_file"
fi
done
if test -r "$cache_file"; then
echo "loading cache $cache_file"
. $cache_file
else
echo "creating cache $cache_file"
> $cache_file
fi
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
ac_cpp='$CPP $CPPFLAGS'
ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
cross_compiling=$ac_cv_prog_cc_cross
ac_exeext=
ac_objext=o
if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
# Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
ac_n= ac_c='
' ac_t=' '
else
ac_n=-n ac_c= ac_t=
fi
else
ac_n= ac_c='\c' ac_t=
fi
for ac_prog in cp
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:540: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_CP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
case "$CP" in
/*)
ac_cv_path_CP="$CP" # Let the user override the test with a path.
;;
?:/*)
ac_cv_path_CP="$CP" # Let the user override the test with a dos path.
;;
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
ac_cv_path_CP="$ac_dir/$ac_word"
break
fi
done
IFS="$ac_save_ifs"
;;
esac
fi
CP="$ac_cv_path_CP"
if test -n "$CP"; then
echo "$ac_t""$CP" 1>&6
else
echo "$ac_t""no" 1>&6
fi
test -n "$CP" && break
done
test -n "$CP" || CP="/bin/cp"
for ac_prog in rm
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:581: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_RM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
case "$RM" in
/*)
ac_cv_path_RM="$RM" # Let the user override the test with a path.
;;
?:/*)
ac_cv_path_RM="$RM" # Let the user override the test with a dos path.
;;
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
ac_cv_path_RM="$ac_dir/$ac_word"
break
fi
done
IFS="$ac_save_ifs"
;;
esac
fi
RM="$ac_cv_path_RM"
if test -n "$RM"; then
echo "$ac_t""$RM" 1>&6
else
echo "$ac_t""no" 1>&6
fi
test -n "$RM" && break
done
test -n "$RM" || RM="/bin/rm"
for ac_prog in mv
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:622: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_MV'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
case "$MV" in
/*)
ac_cv_path_MV="$MV" # Let the user override the test with a path.
;;
?:/*)
ac_cv_path_MV="$MV" # Let the user override the test with a dos path.
;;
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
ac_cv_path_MV="$ac_dir/$ac_word"
break
fi
done
IFS="$ac_save_ifs"
;;
esac
fi
MV="$ac_cv_path_MV"
if test -n "$MV"; then
echo "$ac_t""$MV" 1>&6
else
echo "$ac_t""no" 1>&6
fi
test -n "$MV" && break
done
test -n "$MV" || MV="/bin/mv"
for ac_prog in tar
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:663: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_TAR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
case "$TAR" in
/*)
ac_cv_path_TAR="$TAR" # Let the user override the test with a path.
;;
?:/*)
ac_cv_path_TAR="$TAR" # Let the user override the test with a dos path.
;;
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
ac_cv_path_TAR="$ac_dir/$ac_word"
break
fi
done
IFS="$ac_save_ifs"
;;
esac
fi
TAR="$ac_cv_path_TAR"
if test -n "$TAR"; then
echo "$ac_t""$TAR" 1>&6
else
echo "$ac_t""no" 1>&6
fi
test -n "$TAR" && break
done
test -n "$TAR" || TAR="/bin/tar"
for ac_prog in mkdir
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:704: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_MKDIR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
case "$MKDIR" in
/*)
ac_cv_path_MKDIR="$MKDIR" # Let the user override the test with a path.
;;
?:/*)
ac_cv_path_MKDIR="$MKDIR" # Let the user override the test with a dos path.
;;
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
ac_cv_path_MKDIR="$ac_dir/$ac_word"
break
fi
done
IFS="$ac_save_ifs"
;;
esac
fi
MKDIR="$ac_cv_path_MKDIR"
if test -n "$MKDIR"; then
echo "$ac_t""$MKDIR" 1>&6
else
echo "$ac_t""no" 1>&6
fi
test -n "$MKDIR" && break
done
test -n "$MKDIR" || MKDIR="/bin/mkdir"
for ac_prog in rmdir
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:745: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_RMDIR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
case "$RMDIR" in
/*)
ac_cv_path_RMDIR="$RMDIR" # Let the user override the test with a path.
;;
?:/*)
ac_cv_path_RMDIR="$RMDIR" # Let the user override the test with a dos path.
;;
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
ac_cv_path_RMDIR="$ac_dir/$ac_word"
break
fi
done
IFS="$ac_save_ifs"
;;
esac
fi
RMDIR="$ac_cv_path_RMDIR"
if test -n "$RMDIR"; then
echo "$ac_t""$RMDIR" 1>&6
else
echo "$ac_t""no" 1>&6
fi
test -n "$RMDIR" && break
done
test -n "$RMDIR" || RMDIR="/bin/rmdir"
for ac_prog in chmod
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:786: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_CHMOD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
case "$CHMOD" in
/*)
ac_cv_path_CHMOD="$CHMOD" # Let the user override the test with a path.
;;
?:/*)
ac_cv_path_CHMOD="$CHMOD" # Let the user override the test with a dos path.
;;
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
ac_cv_path_CHMOD="$ac_dir/$ac_word"
break
fi
done
IFS="$ac_save_ifs"
;;
esac
fi
CHMOD="$ac_cv_path_CHMOD"
if test -n "$CHMOD"; then
echo "$ac_t""$CHMOD" 1>&6
else
echo "$ac_t""no" 1>&6
fi
test -n "$CHMOD" && break
done
test -n "$CHMOD" || CHMOD="/bin/chmod"
for ac_prog in makeinfo
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:827: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_MAKEINFO'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
case "$MAKEINFO" in
/*)
ac_cv_path_MAKEINFO="$MAKEINFO" # Let the user override the test with a path.
;;
?:/*)
ac_cv_path_MAKEINFO="$MAKEINFO" # Let the user override the test with a dos path.
;;
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
ac_cv_path_MAKEINFO="$ac_dir/$ac_word"
break
fi
done
IFS="$ac_save_ifs"
;;
esac
fi
MAKEINFO="$ac_cv_path_MAKEINFO"
if test -n "$MAKEINFO"; then
echo "$ac_t""$MAKEINFO" 1>&6
else
echo "$ac_t""no" 1>&6
fi
test -n "$MAKEINFO" && break
done
test -n "$MAKEINFO" || MAKEINFO="/bin/makeinfo"
for ac_prog in sdoc
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:868: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_SDOC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
case "$SDOC" in
/*)
ac_cv_path_SDOC="$SDOC" # Let the user override the test with a path.
;;
?:/*)
ac_cv_path_SDOC="$SDOC" # Let the user override the test with a dos path.
;;
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
ac_cv_path_SDOC="$ac_dir/$ac_word"
break
fi
done
IFS="$ac_save_ifs"
;;
esac
fi
SDOC="$ac_cv_path_SDOC"
if test -n "$SDOC"; then
echo "$ac_t""$SDOC" 1>&6
else
echo "$ac_t""no" 1>&6
fi
test -n "$SDOC" && break
done
test -n "$SDOC" || SDOC="/usr/bin/sdoc"
for ac_prog in touch
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:909: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_TOUCH'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
case "$TOUCH" in
/*)
ac_cv_path_TOUCH="$TOUCH" # Let the user override the test with a path.
;;
?:/*)
ac_cv_path_TOUCH="$TOUCH" # Let the user override the test with a dos path.
;;
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
ac_cv_path_TOUCH="$ac_dir/$ac_word"
break
fi
done
IFS="$ac_save_ifs"
;;
esac
fi
TOUCH="$ac_cv_path_TOUCH"
if test -n "$TOUCH"; then
echo "$ac_t""$TOUCH" 1>&6
else
echo "$ac_t""no" 1>&6
fi
test -n "$TOUCH" && break
done
test -n "$TOUCH" || TOUCH="/bin/touch"
for ac_prog in perl5 perl
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:950: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_PERL5'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
case "$PERL5" in
/*)
ac_cv_path_PERL5="$PERL5" # Let the user override the test with a path.
;;
?:/*)
ac_cv_path_PERL5="$PERL5" # Let the user override the test with a dos path.
;;
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
ac_cv_path_PERL5="$ac_dir/$ac_word"
break
fi
done
IFS="$ac_save_ifs"
;;
esac
fi
PERL5="$ac_cv_path_PERL5"
if test -n "$PERL5"; then
echo "$ac_t""$PERL5" 1>&6
else
echo "$ac_t""no" 1>&6
fi
test -n "$PERL5" && break
done
test -n "$PERL5" || PERL5="no"
if test "$PERL5" != no; then
perl -e 'require 5'
if test $? != 0 ; then
PERL5=no
echo "configure: warning: perl version 5 required" 1>&2
fi
fi
ONELINER_VER=`cat oneliner.el | grep "defconst oneliner-version-number" | sed -e 's/(//g' | sed -e 's/)//g' | sed -e 's/\"//g' | awk '{ print $3; }'`
echo "$ac_t""oneliner.el version is $ONELINER_VER" 1>&6
# Emacs set environment variable EMACS as t
test "x$EMACS" = xt && EMACS=
emacsen="emacs xemacs"
ac_aux_dir=
for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
if test -f $ac_dir/install-sh; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/install-sh -c"
break
elif test -f $ac_dir/install.sh; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/install.sh -c"
break
fi
done
if test -z "$ac_aux_dir"; then
{ echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; }
fi
ac_config_guess=$ac_aux_dir/config.guess
ac_config_sub=$ac_aux_dir/config.sub
ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
# Make sure we can run config.sub.
if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
fi
echo $ac_n "checking host system type""... $ac_c" 1>&6
echo "configure:1029: checking host system type" >&5
host_alias=$host
case "$host_alias" in
NONE)
case $nonopt in
NONE)
if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
fi ;;
*) host_alias=$nonopt ;;
esac ;;
esac
host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
echo "$ac_t""$host" 1>&6
case $host_os in
*cygwin*)
with_bash=yes
emacsen="$emacsen MeadowNT.exe Meadow95.exe meadow"
;;
esac
# Check whether --with-bash or --without-bash was given.
if test "${with_bash+set}" = set; then
withval="$with_bash"
case $withval in
yes) SHELL=bash ;;
no) ;;
*) SHELL="$withval" ;;
esac
fi
# Check whether --with-xemacs or --without-xemacs was given.
if test "${with_xemacs+set}" = set; then
withval="$with_xemacs"
case $withval in
yes) emacsen="xemacs" ;;
no) emacsen="emacs" ;;
*) EMACS="$withval" ;;
esac
fi
# Check whether --with-emacs or --without-emacs was given.
if test "${with_emacs+set}" = set; then
withval="$with_emacs"
case $withval in
yes) emacsen="emacs" ;;
no) emacsen="xemacs" ;;
*) EMACS="$withval" ;;
esac
fi
if test -n "${with_xemacs+set}" && test -n "${with_emacs+set}"; then
{ echo "configure: error: specify one of --with-xemacs or --with-emacs" 1>&2; exit 1; }
fi
echo "$ac_t""emacsen is ${emacsen}" 1>&6
for ac_prog in ${emacsen}
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:1101: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_EMACS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
if test -n "$EMACS"; then
ac_cv_prog_EMACS="$EMACS" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
ac_cv_prog_EMACS="$ac_prog"
break
fi
done
IFS="$ac_save_ifs"
fi
fi
EMACS="$ac_cv_prog_EMACS"
if test -n "$EMACS"; then
echo "$ac_t""$EMACS" 1>&6
else
echo "$ac_t""no" 1>&6
fi
test -n "$EMACS" && break
done
test -n "$EMACS" || EMACS="no"
if test $EMACS = "no"; then
{ echo "configure: error: cannot find emacs" 1>&2; exit 1; }
fi
# Check whether --with-lispdir or --without-lispdir was given.
if test "${with_lispdir+set}" = set; then
withval="$with_lispdir"
lispdir="$withval"
echo $ac_n "checking where .elc files should go""... $ac_c" 1>&6
echo "configure:1140: checking where .elc files should go" >&5
echo "$ac_t""$lispdir" 1>&6
else
if test x${lispdir+set} != xset; then
echo $ac_n "checking where .elc files should go""... $ac_c" 1>&6
echo "configure:1146: checking where .elc files should go" >&5
if eval "test \"`echo '$''{'am_cv_lispdir'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
am_cv_lispdir=`$EMACS -batch -q -eval '(while load-path (princ (concat (car load-path) "\n")) (setq load-path (cdr load-path)))' | sed -n -e 's,/$,,' -e '/site-lisp$/ { p; q; }'`
if test -z "$am_cv_lispdir"; then
am_cv_lispdir='${datadir}/emacs/site-lisp'
fi
am_cv_lispdir="$am_cv_lispdir/oneliner"
fi
echo "$ac_t""$am_cv_lispdir" 1>&6
lispdir="$am_cv_lispdir"
fi
fi
trap '' 1 2 15
cat > confcache <<\EOF
# This file is a shell script that caches the results of configure
# tests run on this system so they can be shared between configure
# scripts and configure runs. It is not useful on other systems.
# If it contains results you don't want to keep, you may remove or edit it.
#
# By default, configure uses ./config.cache as the cache file,
# creating it if it does not exist already. You can give configure
# the --cache-file=FILE option to use a different cache file; that is
# what configure does when it calls configure scripts in
# subdirectories, so they share the cache.
# Giving --cache-file=/dev/null disables caching, for debugging configure.
# config.status only pays attention to the cache file if you give it the
# --recheck option to rerun configure.
#
EOF
# The following way of writing the cache mishandles newlines in values,
# but we know of no workaround that is simple, portable, and efficient.
# So, don't put newlines in cache variables' values.
# Ultrix sh set writes to stderr and can't be redirected directly,
# and sets the high bit in the cache file unless we assign to the vars.
(set) 2>&1 |
case `(ac_space=' '; set | grep ac_space) 2>&1` in
*ac_space=\ *)
# `set' does not quote correctly, so add quotes (double-quote substitution
# turns \\\\ into \\, and sed turns \\ into \).
sed -n \
-e "s/'/'\\\\''/g" \
-e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
;;
*)
# `set' quotes correctly as required by POSIX, so do not add quotes.
sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
;;
esac >> confcache
if cmp -s $cache_file confcache; then
:
else
if test -w $cache_file; then
echo "updating cache $cache_file"
cat confcache > $cache_file
else
echo "not updating unwritable cache $cache_file"
fi
fi
rm -f confcache
trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
test "x$prefix" = xNONE && prefix=$ac_default_prefix
# Let make expand exec_prefix.
test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
# Any assignment to VPATH causes Sun make to only execute
# the first set of double-colon rules, so remove it if not needed.
# If there is a colon in the path, we need to keep it.
if test "x$srcdir" = x.; then
ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d'
fi
trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
# Transform confdefs.h into DEFS.
# Protect against shell expansion while executing Makefile rules.
# Protect against Makefile macro expansion.
cat > conftest.defs <<\EOF
s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g
s%\[%\\&%g
s%\]%\\&%g
s%\$%$$%g
EOF
DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
rm -f conftest.defs
# Without the "./", some shells look in PATH for config.status.
: ${CONFIG_STATUS=./config.status}
echo creating $CONFIG_STATUS
rm -f $CONFIG_STATUS
cat > $CONFIG_STATUS </dev/null | sed 1q`:
#
# $0 $ac_configure_args
#
# Compiler output produced by configure, useful for debugging
# configure, is in ./config.log if it exists.
ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
for ac_option
do
case "\$ac_option" in
-recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
-version | --version | --versio | --versi | --vers | --ver | --ve | --v)
echo "$CONFIG_STATUS generated by autoconf version 2.13"
exit 0 ;;
-help | --help | --hel | --he | --h)
echo "\$ac_cs_usage"; exit 0 ;;
*) echo "\$ac_cs_usage"; exit 1 ;;
esac
done
ac_given_srcdir=$srcdir
trap 'rm -fr `echo "Makefile info/Makefile scripts/Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
EOF
cat >> $CONFIG_STATUS < conftest.subs <<\\CEOF
$ac_vpsub
$extrasub
s%@SHELL@%$SHELL%g
s%@CFLAGS@%$CFLAGS%g
s%@CPPFLAGS@%$CPPFLAGS%g
s%@CXXFLAGS@%$CXXFLAGS%g
s%@FFLAGS@%$FFLAGS%g
s%@DEFS@%$DEFS%g
s%@LDFLAGS@%$LDFLAGS%g
s%@LIBS@%$LIBS%g
s%@exec_prefix@%$exec_prefix%g
s%@prefix@%$prefix%g
s%@program_transform_name@%$program_transform_name%g
s%@bindir@%$bindir%g
s%@sbindir@%$sbindir%g
s%@libexecdir@%$libexecdir%g
s%@datadir@%$datadir%g
s%@sysconfdir@%$sysconfdir%g
s%@sharedstatedir@%$sharedstatedir%g
s%@localstatedir@%$localstatedir%g
s%@libdir@%$libdir%g
s%@includedir@%$includedir%g
s%@oldincludedir@%$oldincludedir%g
s%@infodir@%$infodir%g
s%@mandir@%$mandir%g
s%@CP@%$CP%g
s%@RM@%$RM%g
s%@MV@%$MV%g
s%@TAR@%$TAR%g
s%@MKDIR@%$MKDIR%g
s%@RMDIR@%$RMDIR%g
s%@CHMOD@%$CHMOD%g
s%@MAKEINFO@%$MAKEINFO%g
s%@SDOC@%$SDOC%g
s%@TOUCH@%$TOUCH%g
s%@PERL5@%$PERL5%g
s%@ONELINER_VER@%$ONELINER_VER%g
s%@host@%$host%g
s%@host_alias@%$host_alias%g
s%@host_cpu@%$host_cpu%g
s%@host_vendor@%$host_vendor%g
s%@host_os@%$host_os%g
s%@EMACS@%$EMACS%g
s%@lispdir@%$lispdir%g
CEOF
EOF
cat >> $CONFIG_STATUS <<\EOF
# Split the substitutions into bite-sized pieces for seds with
# small command number limits, like on Digital OSF/1 and HP-UX.
ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
ac_file=1 # Number of current file.
ac_beg=1 # First line for current file.
ac_end=$ac_max_sed_cmds # Line after last line for current file.
ac_more_lines=:
ac_sed_cmds=""
while $ac_more_lines; do
if test $ac_beg -gt 1; then
sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
else
sed "${ac_end}q" conftest.subs > conftest.s$ac_file
fi
if test ! -s conftest.s$ac_file; then
ac_more_lines=false
rm -f conftest.s$ac_file
else
if test -z "$ac_sed_cmds"; then
ac_sed_cmds="sed -f conftest.s$ac_file"
else
ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
fi
ac_file=`expr $ac_file + 1`
ac_beg=$ac_end
ac_end=`expr $ac_end + $ac_max_sed_cmds`
fi
done
if test -z "$ac_sed_cmds"; then
ac_sed_cmds=cat
fi
EOF
cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF
for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
# Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
case "$ac_file" in
*:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
*) ac_file_in="${ac_file}.in" ;;
esac
# Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
# Remove last slash and all that follows it. Not all systems have dirname.
ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
# The file is in a subdirectory.
test ! -d "$ac_dir" && mkdir "$ac_dir"
ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
# A "../" for each directory in $ac_dir_suffix.
ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
else
ac_dir_suffix= ac_dots=
fi
case "$ac_given_srcdir" in
.) srcdir=.
if test -z "$ac_dots"; then top_srcdir=.
else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
/*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
*) # Relative path.
srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
top_srcdir="$ac_dots$ac_given_srcdir" ;;
esac
echo creating "$ac_file"
rm -f "$ac_file"
configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
case "$ac_file" in
*Makefile*) ac_comsub="1i\\
# $configure_input" ;;
*) ac_comsub= ;;
esac
ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
sed -e "$ac_comsub
s%@configure_input@%$configure_input%g
s%@srcdir@%$srcdir%g
s%@top_srcdir@%$top_srcdir%g
" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
fi; done
rm -f conftest.s*
EOF
cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF
exit 0
EOF
chmod +x $CONFIG_STATUS
rm -fr confdefs* $ac_clean_files
test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1