Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
adam.huang
Config
Commits
0fe94fc2
Commit
0fe94fc2
authored
Jan 27, 2014
by
Igor Pečovnik
Browse files
patched source
parent
f1b7b622
Changes
50
Show whitespace changes
Inline
Side-by-side
src/scanbuttond-0.2.3/backends/plustek_umax.c
0 → 100644
View file @
0fe94fc2
// plustek_umax.c: Plustek device backend for UMAX models
// This file is part of scanbuttond.
// Copyleft )c( 2005 by Hans Verkuil
// Copyleft )c( 2005-2006 by Bernhard Stiftner
//
// 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.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <errno.h>
#include <syslog.h>
#include "scanbuttond/scanbuttond.h"
#include "scanbuttond/libusbi.h"
#include "plustek_umax.h"
static
char
*
backend_name
=
"Plustek USB for UMAX"
;
#define NUM_SUPPORTED_USB_DEVICES 1
static
int
supported_usb_devices
[
NUM_SUPPORTED_USB_DEVICES
][
3
]
=
{
// vendor, product, num_buttons
{
0x1606
,
0x0060
,
4
}
// UMAX Astra 3400 (3450?)
};
static
char
*
usb_device_descriptions
[
NUM_SUPPORTED_USB_DEVICES
][
2
]
=
{
{
"UMAX"
,
"Astra 3400/3450"
}
};
libusb_handle_t
*
libusb_handle
;
scanner_t
*
plustek_scanners
=
NULL
;
// returns -1 if the scanner is unsupported, or the index of the
// corresponding vendor-product pair in the supported_usb_devices array.
int
plustek_match_libusb_scanner
(
libusb_device_t
*
device
)
{
int
index
;
for
(
index
=
0
;
index
<
NUM_SUPPORTED_USB_DEVICES
;
index
++
)
{
if
(
supported_usb_devices
[
index
][
0
]
==
device
->
vendorID
&&
supported_usb_devices
[
index
][
1
]
==
device
->
productID
)
{
break
;
}
}
if
(
index
>=
NUM_SUPPORTED_USB_DEVICES
)
return
-
1
;
return
index
;
}
void
plustek_attach_libusb_scanner
(
libusb_device_t
*
device
)
{
const
char
*
descriptor_prefix
=
"plustek:libusb:"
;
int
index
=
plustek_match_libusb_scanner
(
device
);
if
(
index
<
0
)
return
;
// unsupported
scanner_t
*
scanner
=
(
scanner_t
*
)
malloc
(
sizeof
(
scanner_t
));
scanner
->
vendor
=
usb_device_descriptions
[
index
][
0
];
scanner
->
product
=
usb_device_descriptions
[
index
][
1
];
scanner
->
connection
=
CONNECTION_LIBUSB
;
scanner
->
internal_dev_ptr
=
(
void
*
)
device
;
scanner
->
lastbutton
=
0
;
scanner
->
sane_device
=
(
char
*
)
malloc
(
strlen
(
device
->
location
)
+
strlen
(
descriptor_prefix
)
+
1
);
strcpy
(
scanner
->
sane_device
,
descriptor_prefix
);
strcat
(
scanner
->
sane_device
,
device
->
location
);
scanner
->
num_buttons
=
supported_usb_devices
[
index
][
2
];
scanner
->
is_open
=
0
;
scanner
->
next
=
plustek_scanners
;
plustek_scanners
=
scanner
;
}
void
plustek_detach_scanners
(
void
)
{
scanner_t
*
next
;
while
(
plustek_scanners
!=
NULL
)
{
next
=
plustek_scanners
->
next
;
free
(
plustek_scanners
->
sane_device
);
free
(
plustek_scanners
);
plustek_scanners
=
next
;
}
}
void
plustek_scan_devices
(
libusb_device_t
*
devices
)
{
int
index
;
libusb_device_t
*
device
=
devices
;
while
(
device
!=
NULL
)
{
index
=
plustek_match_libusb_scanner
(
device
);
if
(
index
>=
0
)
plustek_attach_libusb_scanner
(
device
);
device
=
device
->
next
;
}
}
int
plustek_init_libusb
(
void
)
{
libusb_device_t
*
devices
;
libusb_handle
=
libusb_init
();
devices
=
libusb_get_devices
(
libusb_handle
);
plustek_scan_devices
(
devices
);
return
0
;
}
const
char
*
scanbtnd_get_backend_name
(
void
)
{
return
backend_name
;
}
int
scanbtnd_init
(
void
)
{
plustek_scanners
=
NULL
;
syslog
(
LOG_INFO
,
"plustek-umax-backend: init"
);
return
plustek_init_libusb
();
}
int
scanbtnd_rescan
(
void
)
{
libusb_device_t
*
devices
;
plustek_detach_scanners
();
plustek_scanners
=
NULL
;
libusb_rescan
(
libusb_handle
);
devices
=
libusb_get_devices
(
libusb_handle
);
plustek_scan_devices
(
devices
);
return
0
;
}
const
scanner_t
*
scanbtnd_get_supported_devices
(
void
)
{
return
plustek_scanners
;
}
int
scanbtnd_open
(
scanner_t
*
scanner
)
{
int
result
=
-
ENOSYS
;
if
(
scanner
->
is_open
)
return
-
EINVAL
;
switch
(
scanner
->
connection
)
{
case
CONNECTION_LIBUSB
:
// if devices have been added/removed, return -ENODEV to
// make scanbuttond update its device list
if
(
libusb_get_changed_device_count
()
!=
0
)
return
-
ENODEV
;
result
=
libusb_open
((
libusb_device_t
*
)
scanner
->
internal_dev_ptr
);
break
;
}
if
(
result
==
0
)
scanner
->
is_open
=
1
;
return
result
;
}
int
scanbtnd_close
(
scanner_t
*
scanner
)
{
int
result
=
-
ENOSYS
;
if
(
!
scanner
->
is_open
)
return
-
EINVAL
;
switch
(
scanner
->
connection
)
{
case
CONNECTION_LIBUSB
:
result
=
libusb_close
((
libusb_device_t
*
)
scanner
->
internal_dev_ptr
);
break
;
}
if
(
result
==
0
)
scanner
->
is_open
=
0
;
return
result
;
}
int
plustek_read
(
scanner_t
*
scanner
,
void
*
buffer
,
int
bytecount
)
{
switch
(
scanner
->
connection
)
{
case
CONNECTION_LIBUSB
:
return
libusb_read
((
libusb_device_t
*
)
scanner
->
internal_dev_ptr
,
buffer
,
bytecount
);
break
;
}
return
-
1
;
}
int
plustek_write
(
scanner_t
*
scanner
,
void
*
buffer
,
int
bytecount
)
{
switch
(
scanner
->
connection
)
{
case
CONNECTION_LIBUSB
:
return
libusb_write
((
libusb_device_t
*
)
scanner
->
internal_dev_ptr
,
buffer
,
bytecount
);
break
;
}
return
-
1
;
}
void
plustek_flush
(
scanner_t
*
scanner
)
{
switch
(
scanner
->
connection
)
{
case
CONNECTION_LIBUSB
:
libusb_flush
((
libusb_device_t
*
)
scanner
->
internal_dev_ptr
);
break
;
}
}
int
scanbtnd_get_button
(
scanner_t
*
scanner
)
{
unsigned
char
bytes
[
255
];
int
num_bytes
;
int
button
=
0
;
bytes
[
0
]
=
1
;
bytes
[
1
]
=
2
;
bytes
[
2
]
=
0
;
bytes
[
3
]
=
1
;
if
(
!
scanner
->
is_open
)
return
-
EINVAL
;
num_bytes
=
plustek_write
(
scanner
,
(
void
*
)
bytes
,
4
);
if
(
num_bytes
!=
4
)
{
plustek_flush
(
scanner
);
return
0
;
}
num_bytes
=
plustek_read
(
scanner
,
(
void
*
)
bytes
,
1
);
if
(
num_bytes
!=
1
)
{
plustek_flush
(
scanner
);
return
0
;
}
switch
(
scanner
->
num_buttons
)
{
case
1
:
// not tested
if
((
bytes
[
0
]
&
0x04
)
!=
0
)
button
=
1
;
break
;
case
2
:
// not tested
if
((
bytes
[
0
]
&
0x08
)
!=
0
)
button
=
1
;
if
((
bytes
[
0
]
&
0x04
)
!=
0
)
button
=
2
;
break
;
case
3
:
// not tested
if
((
bytes
[
0
]
&
0x10
)
!=
0
)
button
=
1
;
if
((
bytes
[
0
]
&
0x08
)
!=
0
)
button
=
2
;
if
((
bytes
[
0
]
&
0x04
)
!=
0
)
button
=
3
;
break
;
case
4
:
// only tested on UMAX Astra 3400
if
((
bytes
[
0
]
&
0x04
)
!=
0
)
button
=
1
;
if
((
bytes
[
0
]
&
0x08
)
!=
0
)
button
=
2
;
if
((
bytes
[
0
]
&
0x40
)
!=
0
)
button
=
3
;
if
((
bytes
[
0
]
&
0x20
)
!=
0
)
button
=
4
;
break
;
}
return
button
;
}
const
char
*
scanbtnd_get_sane_device_descriptor
(
scanner_t
*
scanner
)
{
return
scanner
->
sane_device
;
}
int
scanbtnd_exit
(
void
)
{
syslog
(
LOG_INFO
,
"plustek-umax-backend: exit"
);
plustek_detach_scanners
();
libusb_exit
(
libusb_handle
);
return
0
;
}
src/scanbuttond-0.2.3/backends/plustek_umax.h
0 → 100644
View file @
0fe94fc2
// plustek_umax.h: Plustek device backend for UMAX models
// This file is part of scanbuttond.
// Copyleft )c( 2005 by Hans Verkuil
// Copyleft )c( 2005 by Bernhard Stiftner
//
// 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.
#ifndef __PLUSTEK_UMAX_H_INCLUDED
#define __PLUSTEK_UMAX_H_INCLUDED
#include "scanbuttond/backend.h"
#endif
src/scanbuttond-0.2.3/backends/snapscan.c
0 → 100644
View file @
0fe94fc2
// snapscan.c: Snapscan device backend
// This file is part of scanbuttond.
// Copyleft )c( 2005-2006 by Bernhard Stiftner
// Thanks to J. Javier Maestro for sniffing the button codes ;-)
//
// 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.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <errno.h>
#include <syslog.h>
#include "scanbuttond/scanbuttond.h"
#include "scanbuttond/libusbi.h"
#include "snapscan.h"
static
char
*
backend_name
=
"Snapscan USB"
;
#define NUM_SUPPORTED_USB_DEVICES 3
static
int
supported_usb_devices
[
NUM_SUPPORTED_USB_DEVICES
][
3
]
=
{
{
0x04b8
,
0x0121
,
4
},
// Epson Perfection 2480
{
0x04b8
,
0x011f
,
4
},
// Epson Perfection 1670
{
0x04b8
,
0x0122
,
4
}
// Epson Perfection 3490
};
// TODO: check if this backend really works on the Epson 2580 too...
static
char
*
usb_device_descriptions
[
NUM_SUPPORTED_USB_DEVICES
][
2
]
=
{
{
"Epson"
,
"Perfection 2480 / 2580"
},
{
"Epson"
,
"Perfection 1670"
},
{
"Epson"
,
"Perfection 3490"
}
};
libusb_handle_t
*
libusb_handle
;
scanner_t
*
snapscan_scanners
=
NULL
;
// returns -1 if the scanner is unsupported, or the index of the
// corresponding vendor-product pair in the supported_usb_devices array.
int
snapscan_match_libusb_scanner
(
libusb_device_t
*
device
)
{
int
index
;
for
(
index
=
0
;
index
<
NUM_SUPPORTED_USB_DEVICES
;
index
++
)
{
if
(
supported_usb_devices
[
index
][
0
]
==
device
->
vendorID
&&
supported_usb_devices
[
index
][
1
]
==
device
->
productID
)
{
break
;
}
}
if
(
index
>=
NUM_SUPPORTED_USB_DEVICES
)
return
-
1
;
return
index
;
}
void
snapscan_attach_libusb_scanner
(
libusb_device_t
*
device
)
{
const
char
*
descriptor_prefix
=
"snapscan:libusb:"
;
int
index
=
snapscan_match_libusb_scanner
(
device
);
if
(
index
<
0
)
return
;
// unsupported
scanner_t
*
scanner
=
(
scanner_t
*
)
malloc
(
sizeof
(
scanner_t
));
scanner
->
vendor
=
usb_device_descriptions
[
index
][
0
];
scanner
->
product
=
usb_device_descriptions
[
index
][
1
];
scanner
->
connection
=
CONNECTION_LIBUSB
;
scanner
->
internal_dev_ptr
=
(
void
*
)
device
;
scanner
->
lastbutton
=
0
;
scanner
->
sane_device
=
(
char
*
)
malloc
(
strlen
(
device
->
location
)
+
strlen
(
descriptor_prefix
)
+
1
);
strcpy
(
scanner
->
sane_device
,
descriptor_prefix
);
strcat
(
scanner
->
sane_device
,
device
->
location
);
scanner
->
num_buttons
=
supported_usb_devices
[
index
][
2
];
scanner
->
is_open
=
0
;
scanner
->
next
=
snapscan_scanners
;
snapscan_scanners
=
scanner
;
}
void
snapscan_detach_scanners
(
void
)
{
scanner_t
*
next
;
while
(
snapscan_scanners
!=
NULL
)
{
next
=
snapscan_scanners
->
next
;
free
(
snapscan_scanners
->
sane_device
);
free
(
snapscan_scanners
);
snapscan_scanners
=
next
;
}
}
void
snapscan_scan_devices
(
libusb_device_t
*
devices
)
{
int
index
;
libusb_device_t
*
device
=
devices
;
while
(
device
!=
NULL
)
{
index
=
snapscan_match_libusb_scanner
(
device
);
if
(
index
>=
0
)
snapscan_attach_libusb_scanner
(
device
);
device
=
device
->
next
;
}
}
int
snapscan_init_libusb
(
void
)
{
libusb_device_t
*
devices
;
libusb_handle
=
libusb_init
();
devices
=
libusb_get_devices
(
libusb_handle
);
snapscan_scan_devices
(
devices
);
return
0
;
}
const
char
*
scanbtnd_get_backend_name
(
void
)
{
return
backend_name
;
}
int
scanbtnd_init
(
void
)
{
snapscan_scanners
=
NULL
;
syslog
(
LOG_INFO
,
"snapscan-backend: init"
);
return
snapscan_init_libusb
();
}
int
scanbtnd_rescan
(
void
)
{
libusb_device_t
*
devices
;
snapscan_detach_scanners
();
snapscan_scanners
=
NULL
;
libusb_rescan
(
libusb_handle
);
devices
=
libusb_get_devices
(
libusb_handle
);
snapscan_scan_devices
(
devices
);
return
0
;
}
const
scanner_t
*
scanbtnd_get_supported_devices
(
void
)
{
return
snapscan_scanners
;
}
int
scanbtnd_open
(
scanner_t
*
scanner
)
{
int
result
=
-
ENOSYS
;
if
(
scanner
->
is_open
)
return
-
EINVAL
;
switch
(
scanner
->
connection
)
{
case
CONNECTION_LIBUSB
:
// if devices have been added/removed, return -ENODEV to
// make scanbuttond update its device list
if
(
libusb_get_changed_device_count
()
!=
0
)
return
-
ENODEV
;
result
=
libusb_open
((
libusb_device_t
*
)
scanner
->
internal_dev_ptr
);
break
;
}
if
(
result
==
0
)
scanner
->
is_open
=
1
;
return
result
;
}
int
scanbtnd_close
(
scanner_t
*
scanner
)
{
int
result
=
-
ENOSYS
;
if
(
!
scanner
->
is_open
)
return
-
EINVAL
;
switch
(
scanner
->
connection
)
{
case
CONNECTION_LIBUSB
:
result
=
libusb_close
((
libusb_device_t
*
)
scanner
->
internal_dev_ptr
);
break
;
}
if
(
result
==
0
)
scanner
->
is_open
=
0
;
return
result
;
}
int
snapscan_read
(
scanner_t
*
scanner
,
void
*
buffer
,
int
bytecount
)
{
switch
(
scanner
->
connection
)
{
case
CONNECTION_LIBUSB
:
return
libusb_read
((
libusb_device_t
*
)
scanner
->
internal_dev_ptr
,
buffer
,
bytecount
);
break
;
}
return
-
1
;
}
int
snapscan_write
(
scanner_t
*
scanner
,
void
*
buffer
,
int
bytecount
)
{
switch
(
scanner
->
connection
)
{
case
CONNECTION_LIBUSB
:
return
libusb_write
((
libusb_device_t
*
)
scanner
->
internal_dev_ptr
,
buffer
,
bytecount
);
break
;
}
return
-
1
;
}
void
snapscan_flush
(
scanner_t
*
scanner
)
{
switch
(
scanner
->
connection
)
{
case
CONNECTION_LIBUSB
:
libusb_flush
((
libusb_device_t
*
)
scanner
->
internal_dev_ptr
);
break
;
}
}
int
scanbtnd_get_button
(
scanner_t
*
scanner
)
{
unsigned
char
bytes
[
255
];
int
num_bytes
;
int
button
=
0
;
bytes
[
0
]
=
0x03
;
bytes
[
1
]
=
0x00
;
bytes
[
2
]
=
0x00
;
bytes
[
3
]
=
0x00
;
bytes
[
4
]
=
0x14
;
bytes
[
5
]
=
0x00
;
if
(
!
scanner
->
is_open
)
return
-
EINVAL
;
num_bytes
=
snapscan_write
(
scanner
,
(
void
*
)
bytes
,
6
);
if
(
num_bytes
!=
6
)
{
snapscan_flush
(
scanner
);
return
0
;
}
num_bytes
=
snapscan_read
(
scanner
,
(
void
*
)
bytes
,
8
);
if
(
num_bytes
!=
8
||
bytes
[
0
]
!=
0xF9
)
{
snapscan_flush
(
scanner
);
return
0
;
}
num_bytes
=
snapscan_read
(
scanner
,
(
void
*
)
bytes
,
20
);
if
(
num_bytes
!=
20
||
bytes
[
0
]
!=
0xF0
)
{
snapscan_flush
(
scanner
);
return
0
;
}
if
(
bytes
[
2
]
==
0x06
)
{
switch
(
bytes
[
18
]
&
0xF0
)
{
case
0x10
:
button
=
1
;
break
;
case
0x20
:
button
=
2
;
break
;
case
0x40
:
button
=
3
;
break
;
case
0x80
:
button
=
4
;
break
;
default:
button
=
0
;
break
;
}
}
num_bytes
=
snapscan_read
(
scanner
,
(
void
*
)
bytes
,
8
);
if
(
num_bytes
!=
8
||
bytes
[
0
]
!=
0xFB
)
{
snapscan_flush
(
scanner
);
return
0
;
}
return
button
;
}
const
char
*
scanbtnd_get_sane_device_descriptor
(
scanner_t
*
scanner
)
{
return
scanner
->
sane_device
;
}
int
scanbtnd_exit
(
void
)
{
syslog
(
LOG_INFO
,
"snapscan-backend: exit"
);
snapscan_detach_scanners
();
libusb_exit
(
libusb_handle
);
return
0
;
}
src/scanbuttond-0.2.3/backends/snapscan.h
0 → 100644
View file @
0fe94fc2
// snapscan.h: Snapscan device backend
// This file is part of scanbuttond.
// Copyleft )c( 2005 by Bernhard Stiftner
// Thanks to J. Javier Maestro for sniffing the button codes ;-)
//
// 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.
#ifndef __SNAPSCAN_H_INCLUDED
#define __SNAPSCAN_H_INCLUDED
#include "scanbuttond/backend.h"
#endif
src/scanbuttond-0.2.3/config.guess
0 → 100644
View file @
0fe94fc2
#! /bin/sh
# Attempt to guess a canonical system name.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
timestamp
=
'2005-12-23'
# 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., 51 Franklin Street - Fifth Floor, Boston, MA
# 02110-1301, 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 <per@bothner.com>.
# Please send patches to <config-patches@gnu.org>. 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 <config-patches@gnu.org>."
version
=
"
\
GNU config.guess (
$timestamp
)
Originally written by Per Bothner.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
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
;;
--version
|
-v
)
echo
"
$version
"
;
exit
;;
--help
|
--h
*
|
-h
)
echo
"
$usage
"
;
exit
;;
--
)
# 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
trap
'exit 1'
1 2 15
# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
# compiler to aid in system detection is discouraged as it requires
# temporary files to be created and, as you can see below, it is a
# headache to deal with in a portable fashion.
# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
# use `HOST_CC' if defined, but it is deprecated.
# Portable tmp directory creation inspired by the Autoconf team.
set_cc_for_build
=
'
trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
: ${TMPDIR=/tmp} ;
{ tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
{ test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
{ tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
{ echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
dummy=$tmp/dummy ;
tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
case $CC_FOR_BUILD,$HOST_CC,$CC in
,,) echo "int x;" > $dummy.c ;
for c in cc gcc c89 c99 ; do
if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
CC_FOR_BUILD="$c"; break ;
fi ;
done ;
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 ; set_cc_for_build= ;'
# 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
if
[
"
${
UNAME_SYSTEM
}
"
=
"Linux"
]
;
then
eval
$set_cc_for_build
cat
<<
EOF
>
$dummy
.c
#include <features.h>
#ifdef __UCLIBC__
# ifdef __UCLIBC_CONFIG_VERSION__
LIBC=uclibc __UCLIBC_CONFIG_VERSION__
# else
LIBC=uclibc
# endif
#else
LIBC=gnu
#endif
EOF
eval
`
$CC_FOR_BUILD
-E
$dummy
.c 2>/dev/null |
grep
LIBC
=
|
sed
-e
's: ::g'
`
fi
# 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".
sysctl
=
"sysctl -n hw.machine_arch"
UNAME_MACHINE_ARCH
=
`
(
/sbin/
$sysctl
2>/dev/null
||
\
/usr/sbin/
$sysctl
2>/dev/null
||
echo
unknown
)
`
case
"
${
UNAME_MACHINE_ARCH
}
"
in
armeb
)
machine
=
armeb-unknown
;;
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
# Debian GNU/NetBSD machines have a different userland, and
# thus, need a distinct triplet. However, they do not need
# kernel version information, so it can be replaced with a
# suitable tag, in the style of linux-gnu.
case
"
${
UNAME_VERSION
}
"
in
Debian
*
)
release
=
'-gnu'
;;
*
)
release
=
`
echo
${
UNAME_RELEASE
}
|sed
-e
's/[-_].*/\./'
`
;;
esac
# 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
;;
*
:OpenBSD:
*
:
*
)
UNAME_MACHINE_ARCH
=
`
arch
|
sed
's/OpenBSD.//'
`
echo
${
UNAME_MACHINE_ARCH
}
-unknown-openbsd
${
UNAME_RELEASE
}
exit
;;
*
:ekkoBSD:
*
:
*
)
echo
${
UNAME_MACHINE
}
-unknown-ekkobsd
${
UNAME_RELEASE
}
exit
;;
macppc:MirBSD:
*
:
*
)
echo
powerppc-unknown-mirbsd
${
UNAME_RELEASE
}
exit
;;
*
:MirBSD:
*
:
*
)
echo
${
UNAME_MACHINE
}
-unknown-mirbsd
${
UNAME_RELEASE
}
exit
;;
alpha:OSF1:
*
:
*
)
case
$UNAME_RELEASE
in
*
4.0
)
UNAME_RELEASE
=
`
/usr/sbin/sizer
-v
|
awk
'{print $3}'
`
;;
*
5.
*
)
UNAME_RELEASE
=
`
/usr/sbin/sizer
-v
|
awk
'{print $4}'
`
;;
esac
# According to Compaq, /usr/sbin/psrinfo has been available on
# OSF/1 and Tru64 systems produced since 1995. I hope that
# covers most systems running today. This code pipes the CPU
# types through head -n 1, so we only detect the type of CPU 0.
ALPHA_CPU_TYPE
=
`
/usr/sbin/psrinfo
-v
|
sed
-n
-e
's/^ The alpha \(.*\) processor.*$/\1/p'
|
head
-n
1
`
case
"
$ALPHA_CPU_TYPE
"
in
"EV4 (21064)"
)
UNAME_MACHINE
=
"alpha"
;;
"EV4.5 (21064)"
)
UNAME_MACHINE
=
"alpha"
;;
"LCA4 (21066/21068)"
)
UNAME_MACHINE
=
"alpha"
;;
"EV5 (21164)"
)
UNAME_MACHINE
=
"alphaev5"
;;
"EV5.6 (21164A)"
)
UNAME_MACHINE
=
"alphaev56"
;;
"EV5.6 (21164PC)"
)
UNAME_MACHINE
=
"alphapca56"
;;
"EV5.7 (21164PC)"
)
UNAME_MACHINE
=
"alphapca57"
;;
"EV6 (21264)"
)
UNAME_MACHINE
=
"alphaev6"
;;
"EV6.7 (21264A)"
)
UNAME_MACHINE
=
"alphaev67"
;;
"EV6.8CB (21264C)"
)
UNAME_MACHINE
=
"alphaev68"
;;
"EV6.8AL (21264B)"
)
UNAME_MACHINE
=
"alphaev68"
;;
"EV6.8CX (21264D)"
)
UNAME_MACHINE
=
"alphaev68"
;;
"EV6.9A (21264/EV69A)"
)
UNAME_MACHINE
=
"alphaev69"
;;
"EV7 (21364)"
)
UNAME_MACHINE
=
"alphaev7"
;;
"EV7.9 (21364A)"
)
UNAME_MACHINE
=
"alphaev79"
;;
esac
# A Pn.n version is a patched version.
# 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.
echo
${
UNAME_MACHINE
}
-dec-osf
`
echo
${
UNAME_RELEASE
}
|
sed
-e
's/^[PVTX]//'
|
tr
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
'abcdefghijklmnopqrstuvwxyz'
`
exit
;;
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
;;
21064:Windows_NT:50:3
)
echo
alpha-dec-winnt3.5
exit
;;
Amiga
*
:UNIX_System_V:4.0:
*
)
echo
m68k-unknown-sysv4
exit
;;
*
:[Aa]miga[Oo][Ss]:
*
:
*
)
echo
${
UNAME_MACHINE
}
-unknown-amigaos
exit
;;
*
:[Mm]orph[Oo][Ss]:
*
:
*
)
echo
${
UNAME_MACHINE
}
-unknown-morphos
exit
;;
*
:OS/390:
*
:
*
)
echo
i370-ibm-openedition
exit
;;
*
:z/VM:
*
:
*
)
echo
s390-ibm-zvmoe
exit
;;
*
:OS400:
*
:
*
)
echo
powerpc-ibm-os400
exit
;;
arm:RISC
*
:1.[012]
*
:
*
|
arm:riscix:1.[012]
*
:
*
)
echo
arm-acorn-riscix
${
UNAME_RELEASE
}
exit
;;
arm:riscos:
*
:
*
|
arm:RISCOS:
*
:
*
)
echo
arm-unknown-riscos
exit
;;
SR2?01:HI-UX/MPP:
*
:
*
|
SR8000:HI-UX/MPP:
*
:
*
)
echo
hppa1.1-hitachi-hiuxmpp
exit
;;
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
;;
NILE
*
:
*
:
*
:dcosx
)
echo
pyramid-pyramid-svr4
exit
;;
DRS?6000:unix:4.0:6
*
)
echo
sparc-icl-nx6
exit
;;
DRS?6000:UNIX_SV:4.2
*
:7
*
|
DRS?6000:isis:4.2
*
:7
*
)
case
`
/usr/bin/uname
-p
`
in
sparc
)
echo
sparc-icl-nx7
;
exit
;;
esac
;;
sun4H:SunOS:5.
*
:
*
)
echo
sparc-hal-solaris2
`
echo
${
UNAME_RELEASE
}
|sed
-e
's/[^.]*//'
`
exit
;;
sun4
*
:SunOS:5.
*
:
*
|
tadpole
*
:SunOS:5.
*
:
*
)
echo
sparc-sun-solaris2
`
echo
${
UNAME_RELEASE
}
|sed
-e
's/[^.]*//'
`
exit
;;
i86pc:SunOS:5.
*
:
*
)
echo
i386-pc-solaris2
`
echo
${
UNAME_RELEASE
}
|sed
-e
's/[^.]*//'
`
exit
;;
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
;;
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
;;
sun3
*
:SunOS:
*
:
*
)
echo
m68k-sun-sunos
${
UNAME_RELEASE
}
exit
;;
sun
*
:
*
:4.2BSD:
*
)
UNAME_RELEASE
=
`
(
sed
1q /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
;;
aushp:SunOS:
*
:
*
)
echo
sparc-auspex-sunos
${
UNAME_RELEASE
}
exit
;;
# 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
;;
atari
*
:
*
MiNT:
*
:
*
|
atari
*
:
*
mint:
*
:
*
|
atarist[e]:
*
TOS:
*
:
*
)
echo
m68k-atari-mint
${
UNAME_RELEASE
}
exit
;;
*
falcon
*
:
*
MiNT:
*
:
*
|
*
falcon
*
:
*
mint:
*
:
*
|
*
falcon
*
:
*
TOS:
*
:
*
)
echo
m68k-atari-mint
${
UNAME_RELEASE
}
exit
;;
milan
*
:
*
MiNT:
*
:
*
|
milan
*
:
*
mint:
*
:
*
|
*
milan
*
:
*
TOS:
*
:
*
)
echo
m68k-milan-mint
${
UNAME_RELEASE
}
exit
;;
hades
*
:
*
MiNT:
*
:
*
|
hades
*
:
*
mint:
*
:
*
|
*
hades
*
:
*
TOS:
*
:
*
)
echo
m68k-hades-mint
${
UNAME_RELEASE
}
exit
;;
*
:
*
MiNT:
*
:
*
|
*
:
*
mint:
*
:
*
|
*
:
*
TOS:
*
:
*
)
echo
m68k-unknown-mint
${
UNAME_RELEASE
}
exit
;;
m68k:machten:
*
:
*
)
echo
m68k-apple-machten
${
UNAME_RELEASE
}
exit
;;
powerpc:machten:
*
:
*
)
echo
powerpc-apple-machten
${
UNAME_RELEASE
}
exit
;;
RISC
*
:Mach:
*
:
*
)
echo
mips-dec-mach_bsd4.3
exit
;;
RISC
*
:ULTRIX:
*
:
*
)
echo
mips-dec-ultrix
${
UNAME_RELEASE
}
exit
;;
VAX
*
:ULTRIX
*
:
*
:
*
)
echo
vax-dec-ultrix
${
UNAME_RELEASE
}
exit
;;
2020:CLIX:
*
:
*
|
2430:CLIX:
*
:
*
)
echo
clipper-intergraph-clix
${
UNAME_RELEASE
}
exit
;;
mips:
*
:
*
:UMIPS
|
mips:
*
:
*
:RISCos
)
eval
$set_cc_for_build
sed
's/^ //'
<<
EOF
>
$dummy
.c
#ifdef __cplusplus
#include <stdio.h> /* 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
-o
$dummy
$dummy
.c
&&
dummyarg
=
`
echo
"
${
UNAME_RELEASE
}
"
|
sed
-n
's/\([0-9]*\).*/\1/p'
`
&&
SYSTEM_NAME
=
`
$dummy
$dummyarg
`
&&
{
echo
"
$SYSTEM_NAME
"
;
exit
;
}
echo
mips-mips-riscos
${
UNAME_RELEASE
}
exit
;;
Motorola:PowerMAX_OS:
*
:
*
)
echo
powerpc-motorola-powermax
exit
;;
Motorola:
*
:4.3:PL8-
*
)
echo
powerpc-harris-powermax
exit
;;
Night_Hawk:
*
:
*
:PowerMAX_OS
|
Synergy:PowerMAX_OS:
*
:
*
)
echo
powerpc-harris-powermax
exit
;;
Night_Hawk:Power_UNIX:
*
:
*
)
echo
powerpc-harris-powerunix
exit
;;
m88k:CX/UX:7
*
:
*
)
echo
m88k-harris-cxux7
exit
;;
m88k:
*
:4
*
:R4
*
)
echo
m88k-motorola-sysv4
exit
;;
m88k:
*
:3
*
:R3
*
)
echo
m88k-motorola-sysv3
exit
;;
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
;;
M88
*
:DolphinOS:
*
:
*
)
# DolphinOS (SVR3)
echo
m88k-dolphin-sysv3
exit
;;
M88
*
:
*
:R3
*
:
*
)
# Delta 88k system running SVR3
echo
m88k-motorola-sysv3
exit
;;
XD88
*
:
*
:
*
:
*
)
# Tektronix XD88 system running UTekV (SVR3)
echo
m88k-tektronix-sysv3
exit
;;
Tek43[0-9][0-9]:UTek:
*
:
*
)
# Tektronix 4300 system running UTek (BSD)
echo
m68k-tektronix-bsd
exit
;;
*
:IRIX
*
:
*
:
*
)
echo
mips-sgi-irix
`
echo
${
UNAME_RELEASE
}
|sed
-e
's/-/_/g'
`
exit
;;
????????: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
;;
# Note that: echo "'`uname -s`'" gives 'AIX '
i
*
86:AIX:
*
:
*
)
echo
i386-ibm-aix
exit
;;
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
;;
*
: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 <sys/systemcfg.h>
main()
{
if (!__power_pc())
exit(1);
puts("powerpc-ibm-aix3.2.5");
exit(0);
}
EOF
if
$CC_FOR_BUILD
-o
$dummy
$dummy
.c
&&
SYSTEM_NAME
=
`
$dummy
`
then
echo
"
$SYSTEM_NAME
"
else
echo
rs6000-ibm-aix3.2.5
fi
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
;;
*
:AIX:
*
:[45]
)
IBM_CPU_ID
=
`
/usr/sbin/lsdev
-C
-c
processor
-S
available |
sed
1q |
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
;;
*
:AIX:
*
:
*
)
echo
rs6000-ibm-aix
exit
;;
ibmrt:4.4BSD:
*
|
romp-ibm:BSD:
*
)
echo
romp-ibm-bsd4.4
exit
;;
ibmrt:
*
BSD:
*
|
romp-ibm:BSD:
*
)
# covers RT/PC BSD and
echo
romp-ibm-bsd
${
UNAME_RELEASE
}
# 4.3 with uname added to
exit
;;
# report: romp-ibm BSD 4.3
*
:BOSX:
*
:
*
)
echo
rs6000-bull-bosx
exit
;;
DPX/2?00:B.O.S.:
*
:
*
)
echo
m68k-bull-sysv3
exit
;;
9000/[34]??:4.3bsd:1.
*
:
*
)
echo
m68k-hp-bsd
exit
;;
hp300:4.4BSD:
*
:
*
|
9000/[34]??:4.3bsd:2.
*
:
*
)
echo
m68k-hp-bsd4.4
exit
;;
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 <stdlib.h>
#include <unistd.h>
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
-o
$dummy
$dummy
.c 2>/dev/null
)
&&
HP_ARCH
=
`
$dummy
`
test
-z
"
$HP_ARCH
"
&&
HP_ARCH
=
hppa
fi
;;
esac
if
[
${
HP_ARCH
}
=
"hppa2.0w"
]
then
eval
$set_cc_for_build
# hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
# 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
# generating 64-bit code. GNU and HP use different nomenclature:
#
# $ CC_FOR_BUILD=cc ./config.guess
# => hppa2.0w-hp-hpux11.23
# $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
# => hppa64-hp-hpux11.23
if
echo
__LP64__ |
(
CCOPTS
=
$CC_FOR_BUILD
-E
- 2>/dev/null
)
|
grep
__LP64__
>
/dev/null
then
HP_ARCH
=
"hppa2.0w"
else
HP_ARCH
=
"hppa64"
fi
fi
echo
${
HP_ARCH
}
-hp-hpux
${
HPUX_REV
}
exit
;;
ia64:HP-UX:
*
:
*
)
HPUX_REV
=
`
echo
${
UNAME_RELEASE
}
|sed
-e
's/[^.]*.[0B]*//'
`
echo
ia64-hp-hpux
${
HPUX_REV
}
exit
;;
3050
*
:HI-UX:
*
:
*
)
eval
$set_cc_for_build
sed
's/^ //'
<<
EOF
>
$dummy
.c
#include <unistd.h>
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
-o
$dummy
$dummy
.c
&&
SYSTEM_NAME
=
`
$dummy
`
&&
{
echo
"
$SYSTEM_NAME
"
;
exit
;
}
echo
unknown-hitachi-hiuxwe2
exit
;;
9000/7??:4.3bsd:
*
:
*
|
9000/8?[79]:4.3bsd:
*
:
*
)
echo
hppa1.1-hp-bsd
exit
;;
9000/8??:4.3bsd:
*
:
*
)
echo
hppa1.0-hp-bsd
exit
;;
*
9??
*
:MPE/iX:
*
:
*
|
*
3000
*
:MPE/iX:
*
:
*
)
echo
hppa1.0-hp-mpeix
exit
;;
hp7??:OSF1:
*
:
*
|
hp8?[79]:OSF1:
*
:
*
)
echo
hppa1.1-hp-osf
exit
;;
hp8??:OSF1:
*
:
*
)
echo
hppa1.0-hp-osf
exit
;;
i
*
86:OSF1:
*
:
*
)
if
[
-x
/usr/sbin/sysversion
]
;
then
echo
${
UNAME_MACHINE
}
-unknown-osf1mk
else
echo
${
UNAME_MACHINE
}
-unknown-osf1
fi
exit
;;
parisc
*
:Lites
*
:
*
:
*
)
echo
hppa1.1-hp-lites
exit
;;
C1
*
:ConvexOS:
*
:
*
|
convex:ConvexOS:C1
*
:
*
)
echo
c1-convex-bsd
exit
;;
C2
*
:ConvexOS:
*
:
*
|
convex:ConvexOS:C2
*
:
*
)
if
getsysinfo
-f
scalar_acc
then
echo
c32-convex-bsd
else
echo
c2-convex-bsd
fi
exit
;;
C34
*
:ConvexOS:
*
:
*
|
convex:ConvexOS:C34
*
:
*
)
echo
c34-convex-bsd
exit
;;
C38
*
:ConvexOS:
*
:
*
|
convex:ConvexOS:C38
*
:
*
)
echo
c38-convex-bsd
exit
;;
C4
*
:ConvexOS:
*
:
*
|
convex:ConvexOS:C4
*
:
*
)
echo
c4-convex-bsd
exit
;;
CRAY
*
Y-MP:
*
:
*
:
*
)
echo
ymp-cray-unicos
${
UNAME_RELEASE
}
|
sed
-e
's/\.[^.]*$/.X/'
exit
;;
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
;;
CRAY
*
TS:
*
:
*
:
*
)
echo
t90-cray-unicos
${
UNAME_RELEASE
}
|
sed
-e
's/\.[^.]*$/.X/'
exit
;;
CRAY
*
T3E:
*
:
*
:
*
)
echo
alphaev5-cray-unicosmk
${
UNAME_RELEASE
}
|
sed
-e
's/\.[^.]*$/.X/'
exit
;;
CRAY
*
SV1:
*
:
*
:
*
)
echo
sv1-cray-unicos
${
UNAME_RELEASE
}
|
sed
-e
's/\.[^.]*$/.X/'
exit
;;
*
:UNICOS/mp:
*
:
*
)
echo
craynv-cray-unicosmp
${
UNAME_RELEASE
}
|
sed
-e
's/\.[^.]*$/.X/'
exit
;;
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
;;
5000:UNIX_System_V:4.
*
:
*
)
FUJITSU_SYS
=
`
uname
-p
|
tr
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
'abcdefghijklmnopqrstuvwxyz'
|
sed
-e
's/\///'
`
FUJITSU_REL
=
`
echo
${
UNAME_RELEASE
}
|
tr
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
'abcdefghijklmnopqrstuvwxyz'
|
sed
-e
's/ /_/'
`
echo
"sparc-fujitsu-
${
FUJITSU_SYS
}${
FUJITSU_REL
}
"
exit
;;
i
*
86:BSD/386:
*
:
*
|
i
*
86:BSD/OS:
*
:
*
|
*
:Ascend
\
Embedded/OS:
*
:
*
)
echo
${
UNAME_MACHINE
}
-pc-bsdi
${
UNAME_RELEASE
}
exit
;;
sparc
*
:BSD/OS:
*
:
*
)
echo
sparc-unknown-bsdi
${
UNAME_RELEASE
}
exit
;;
*
:BSD/OS:
*
:
*
)
echo
${
UNAME_MACHINE
}
-unknown-bsdi
${
UNAME_RELEASE
}
exit
;;
*
:FreeBSD:
*
:
*
)
case
${
UNAME_MACHINE
}
in
pc98
)
echo
i386-unknown-freebsd
`
echo
${
UNAME_RELEASE
}
|sed
-e
's/[-(].*//'
`
;;
*
)
echo
${
UNAME_MACHINE
}
-unknown-freebsd
`
echo
${
UNAME_RELEASE
}
|sed
-e
's/[-(].*//'
`
;;
esac
exit
;;
i
*
:CYGWIN
*
:
*
)
echo
${
UNAME_MACHINE
}
-pc-cygwin
exit
;;
i
*
:MINGW
*
:
*
)
echo
${
UNAME_MACHINE
}
-pc-mingw32
exit
;;
i
*
:windows32
*
:
*
)
# uname -m includes "-pc" on this system.
echo
${
UNAME_MACHINE
}
-mingw32
exit
;;
i
*
:PW
*
:
*
)
echo
${
UNAME_MACHINE
}
-pc-pw32
exit
;;
x86:Interix
*
:[345]
*
)
echo
i586-pc-interix
${
UNAME_RELEASE
}
|sed
-e
's/\..*//'
exit
;;
[
345]86:Windows_95:
*
|
[
345]86:Windows_98:
*
|
[
345]86:Windows_NT:
*
)
echo
i
${
UNAME_MACHINE
}
-pc-mks
exit
;;
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
i586-pc-interix
exit
;;
i
*
:UWIN
*
:
*
)
echo
${
UNAME_MACHINE
}
-pc-uwin
exit
;;
amd64:CYGWIN
*
:
*
:
*
|
x86_64:CYGWIN
*
:
*
:
*
)
echo
x86_64-unknown-cygwin
exit
;;
p
*
:CYGWIN
*
:
*
)
echo
powerpcle-unknown-cygwin
exit
;;
prep
*
:SunOS:5.
*
:
*
)
echo
powerpcle-unknown-solaris2
`
echo
${
UNAME_RELEASE
}
|sed
-e
's/[^.]*//'
`
exit
;;
*
:GNU:
*
:
*
)
# the GNU system
echo
`
echo
${
UNAME_MACHINE
}
|sed
-e
's,[-/].*$,,'
`
-unknown-gnu
`
echo
${
UNAME_RELEASE
}
|sed
-e
's,/.*$,,'
`
exit
;;
*
:GNU/
*
:
*
:
*
)
# other systems with GNU libc and userland
echo
${
UNAME_MACHINE
}
-unknown-
`
echo
${
UNAME_SYSTEM
}
|
sed
's,^[^/]*/,,'
|
tr
'[A-Z]'
'[a-z]'
``
echo
${
UNAME_RELEASE
}
|sed
-e
's/[-(].*//'
`
-gnu
exit
;;
i
*
86:Minix:
*
:
*
)
echo
${
UNAME_MACHINE
}
-pc-minix
exit
;;
arm
*
:Linux:
*
:
*
)
echo
${
UNAME_MACHINE
}
-unknown-linux-
${
LIBC
}
exit
;;
cris:Linux:
*
:
*
)
echo
cris-axis-linux-
${
LIBC
}
exit
;;
crisv32:Linux:
*
:
*
)
echo
crisv32-axis-linux-
${
LIBC
}
exit
;;
frv:Linux:
*
:
*
)
echo
frv-unknown-linux-
${
LIBC
}
exit
;;
ia64:Linux:
*
:
*
)
echo
${
UNAME_MACHINE
}
-unknown-linux-
${
LIBC
}
exit
;;
m32r
*
:Linux:
*
:
*
)
echo
${
UNAME_MACHINE
}
-unknown-linux-
${
LIBC
}
exit
;;
m68
*
:Linux:
*
:
*
)
echo
${
UNAME_MACHINE
}
-unknown-linux-
${
LIBC
}
exit
;;
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 |
sed
-n
'/^CPU/{s: ::g;p;}'
`
"
test
x
"
${
CPU
}
"
!=
x
&&
{
echo
"
${
CPU
}
-unknown-linux-
${
LIBC
}
"
;
exit
;
}
;;
mips64:Linux:
*
:
*
)
eval
$set_cc_for_build
sed
's/^ //'
<<
EOF
>
$dummy
.c
#undef CPU
#undef mips64
#undef mips64el
#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
CPU=mips64el
#else
#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
CPU=mips64
#else
CPU=
#endif
#endif
EOF
eval
"
`
$CC_FOR_BUILD
-E
$dummy
.c 2>/dev/null |
sed
-n
'/^CPU/{s: ::g;p;}'
`
"
test
x
"
${
CPU
}
"
!=
x
&&
{
echo
"
${
CPU
}
-unknown-linux-
${
LIBC
}
"
;
exit
;
}
;;
or32:Linux:
*
:
*
)
echo
or32-unknown-linux-
${
LIBC
}
exit
;;
ppc:Linux:
*
:
*
)
echo
powerpc-unknown-linux-
${
LIBC
}
exit
;;
ppc64:Linux:
*
:
*
)
echo
powerpc64-unknown-linux-
${
LIBC
}
exit
;;
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
=
"gnulibc1"
;
fi
echo
${
UNAME_MACHINE
}
-unknown-linux-
${
LIBC
}
exit
;;
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-
${
LIBC
}
;;
PA8
*
)
echo
hppa2.0-unknown-linux-
${
LIBC
}
;;
*
)
echo
hppa-unknown-linux-
${
LIBC
}
;;
esac
exit
;;
parisc64:Linux:
*
:
*
|
hppa64:Linux:
*
:
*
)
echo
hppa64-unknown-linux-
${
LIBC
}
exit
;;
s390:Linux:
*
:
*
|
s390x:Linux:
*
:
*
)
echo
${
UNAME_MACHINE
}
-ibm-linux
exit
;;
sh64
*
:Linux:
*
:
*
)
echo
${
UNAME_MACHINE
}
-unknown-linux-
${
LIBC
}
exit
;;
sh
*
:Linux:
*
:
*
)
echo
${
UNAME_MACHINE
}
-unknown-linux-
${
LIBC
}
exit
;;
sparc:Linux:
*
:
*
|
sparc64:Linux:
*
:
*
)
echo
${
UNAME_MACHINE
}
-unknown-linux-
${
LIBC
}
exit
;;
vax:Linux:
*
:
*
)
echo
${
UNAME_MACHINE
}
-dec-linux-
${
LIBC
}
exit
;;
x86_64:Linux:
*
:
*
)
echo
x86_64-unknown-linux-
${
LIBC
}
exit
;;
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.
# Set LC_ALL=C to ensure ld outputs messages in English.
ld_supported_targets
=
`
cd
/
;
LC_ALL
=
C 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-
${
LIBC
}
"
;;
a.out-i386-linux
)
echo
"
${
UNAME_MACHINE
}
-pc-linux-
${
LIBC
}
aout"
exit
;;
coff-i386
)
echo
"
${
UNAME_MACHINE
}
-pc-linux-
${
LIBC
}
coff"
exit
;;
""
)
# Either a pre-BFD a.out linker (linux-gnuoldld) or
# one that does not give us useful --help.
echo
"
${
UNAME_MACHINE
}
-pc-linux-
${
LIBC
}
oldld"
exit
;;
esac
# This should get integrated into the C code below, but now we hack
if
[
"
$LIBC
"
!=
"gnu"
]
;
then
echo
"
$TENTATIVE
"
&&
exit
0
;
fi
# Determine whether the default compiler is a.out or elf
eval
$set_cc_for_build
sed
's/^ //'
<<
EOF
>
$dummy
.c
#include <features.h>
#ifdef __ELF__
# ifdef __GLIBC__
# if __GLIBC__ >= 2
LIBC=gnu
# else
LIBC=gnulibc1
# endif
# else
LIBC=gnulibc1
# endif
#else
#if defined(__INTEL_COMPILER) || defined(__PGI)
LIBC=gnu
#else
LIBC=gnuaout
#endif
#endif
#ifdef __dietlibc__
LIBC=dietlibc
#endif
EOF
eval
"
`
$CC_FOR_BUILD
-E
$dummy
.c 2>/dev/null |
sed
-n
'/^LIBC/{s: ::g;p;}'
`
"
test
x
"
${
LIBC
}
"
!=
x
&&
{
echo
"
${
UNAME_MACHINE
}
-pc-linux-
${
LIBC
}
"
exit
}
test
x
"
${
TENTATIVE
}
"
!=
x
&&
{
echo
"
${
TENTATIVE
}
"
;
exit
;
}
;;
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
;;
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
;;
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
;;
i
*
86:XTS-300:
*
:STOP
)
echo
${
UNAME_MACHINE
}
-unknown-stop
exit
;;
i
*
86:atheos:
*
:
*
)
echo
${
UNAME_MACHINE
}
-unknown-atheos
exit
;;
i
*
86:syllable:
*
:
*
)
echo
${
UNAME_MACHINE
}
-pc-syllable
exit
;;
i
*
86:LynxOS:2.
*
:
*
|
i
*
86:LynxOS:3.[01]
*
:
*
|
i
*
86:LynxOS:4.0
*
:
*
)
echo
i386-unknown-lynxos
${
UNAME_RELEASE
}
exit
;;
i
*
86:
*
DOS:
*
:
*
)
echo
${
UNAME_MACHINE
}
-pc-msdosdjgpp
exit
;;
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
;;
i
*
86:
*
:5:[678]
*
)
# UnixWare 7.x, OpenUNIX and OpenServer 6.
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
;;
i
*
86:
*
:3.2:
*
)
if
test
-f
/usr/options/cb.name
;
then
UNAME_REL
=
`
sed
-n
's/.*Version //p'
</usr/options/cb.name
`
echo
${
UNAME_MACHINE
}
-pc-isc
$UNAME_REL
elif
/bin/uname
-X
2>/dev/null
>
/dev/null
;
then
UNAME_REL
=
`
(
/bin/uname
-X
|grep Release|sed
-e
's/.*= //'
)
`
(
/bin/uname
-X
|grep i80486
>
/dev/null
)
&&
UNAME_MACHINE
=
i486
(
/bin/uname
-X
|grep
'^Machine.*Pentium'
>
/dev/null
)
\
&&
UNAME_MACHINE
=
i586
(
/bin/uname
-X
|grep
'^Machine.*Pent *II'
>
/dev/null
)
\
&&
UNAME_MACHINE
=
i686
(
/bin/uname
-X
|grep
'^Machine.*Pentium Pro'
>
/dev/null
)
\
&&
UNAME_MACHINE
=
i686
echo
${
UNAME_MACHINE
}
-pc-sco
$UNAME_REL
else
echo
${
UNAME_MACHINE
}
-pc-sysv32
fi
exit
;;
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
;;
Intel:Mach:3
*
:
*
)
echo
i386-pc-mach3
exit
;;
paragon:
*
:
*
:
*
)
echo
i860-intel-osf1
exit
;;
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
;;
mini
*
:CTIX:SYS
*
5:
*
)
# "miniframe"
echo
m68010-convergent-sysv
exit
;;
mc68k:UNIX:SYSTEM5:3.51m
)
echo
m68k-convergent-sysv
exit
;;
M680?0:D-NIX:5.3:
*
)
echo
m68k-diab-dnix
exit
;;
M68
*
:
*
:R3V[5678]
*
:
*
)
test
-r
/sysV68
&&
{
echo
'm68k-motorola-sysv'
;
exit
;
}
;;
3[345]??:
*
:4.0:3.0
|
3[34]??A:
*
:4.0:3.0
|
3[34]??,
*
:
*
:4.0:3.0
|
3[34]??/
*
:
*
:4.0:3.0
|
4400:
*
:4.0:3.0
|
4850:
*
:4.0:3.0
|
SKA40:
*
:4.0:3.0
|
SDS2:
*
:4.0:3.0
|
SHG2:
*
:4.0:3.0
|
S7501
*
:
*
: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
;
}
/bin/uname
-p
2>/dev/null | /bin/grep entium
>
/dev/null
\
&&
{
echo
i586-ncr-sysv4.3
${
OS_REL
}
;
exit
;
}
;;
3[34]??:
*
:4.0:
*
|
3[34]??,
*
:
*
:4.0:
*
)
/bin/uname
-p
2>/dev/null |
grep
86
>
/dev/null
\
&&
{
echo
i486-ncr-sysv4
;
exit
;
}
;;
m68
*
:LynxOS:2.
*
:
*
|
m68
*
:LynxOS:3.0
*
:
*
)
echo
m68k-unknown-lynxos
${
UNAME_RELEASE
}
exit
;;
mc68030:UNIX_System_V:4.
*
:
*
)
echo
m68k-atari-sysv4
exit
;;
TSUNAMI:LynxOS:2.
*
:
*
)
echo
sparc-unknown-lynxos
${
UNAME_RELEASE
}
exit
;;
rs6000:LynxOS:2.
*
:
*
)
echo
rs6000-unknown-lynxos
${
UNAME_RELEASE
}
exit
;;
PowerPC:LynxOS:2.
*
:
*
|
PowerPC:LynxOS:3.[01]
*
:
*
|
PowerPC:LynxOS:4.0
*
:
*
)
echo
powerpc-unknown-lynxos
${
UNAME_RELEASE
}
exit
;;
SM[BE]S:UNIX_SV:
*
:
*
)
echo
mips-dde-sysv
${
UNAME_RELEASE
}
exit
;;
RM
*
:ReliantUNIX-
*
:
*
:
*
)
echo
mips-sni-sysv4
exit
;;
RM
*
:SINIX-
*
:
*
:
*
)
echo
mips-sni-sysv4
exit
;;
*
: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
;;
PENTIUM:
*
:4.0
*
:
*
)
# Unisys `ClearPath HMP IX 4000' SVR4/MP effort
# says <Richard.M.Bartel@ccMail.Census.GOV>
echo
i586-unisys-sysv4
exit
;;
*
:UNIX_System_V:4
*
:FTX
*
)
# From Gerald Hewes <hewes@openmarket.com>.
# How about differentiating between stratus architectures? -djm
echo
hppa1.1-stratus-sysv4
exit
;;
*
:
*
:
*
:FTX
*
)
# From seanf@swdc.stratus.com.
echo
i860-stratus-sysv4
exit
;;
i
*
86:VOS:
*
:
*
)
# From Paul.Green@stratus.com.
echo
${
UNAME_MACHINE
}
-stratus-vos
exit
;;
*
:VOS:
*
:
*
)
# From Paul.Green@stratus.com.
echo
hppa1.1-stratus-vos
exit
;;
mc68
*
:A/UX:
*
:
*
)
echo
m68k-apple-aux
${
UNAME_RELEASE
}
exit
;;
news
*
:NEWS-OS:6
*
:
*
)
echo
mips-sony-newsos6
exit
;;
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
;;
BeBox:BeOS:
*
:
*
)
# BeOS running on hardware made by Be, PPC only.
echo
powerpc-be-beos
exit
;;
BeMac:BeOS:
*
:
*
)
# BeOS running on Mac or Mac clone, PPC only.
echo
powerpc-apple-beos
exit
;;
BePC:BeOS:
*
:
*
)
# BeOS running on Intel PC compatible.
echo
i586-pc-beos
exit
;;
SX-4:SUPER-UX:
*
:
*
)
echo
sx4-nec-superux
${
UNAME_RELEASE
}
exit
;;
SX-5:SUPER-UX:
*
:
*
)
echo
sx5-nec-superux
${
UNAME_RELEASE
}
exit
;;
SX-6:SUPER-UX:
*
:
*
)
echo
sx6-nec-superux
${
UNAME_RELEASE
}
exit
;;
Power
*
:Rhapsody:
*
:
*
)
echo
powerpc-apple-rhapsody
${
UNAME_RELEASE
}
exit
;;
*
:Rhapsody:
*
:
*
)
echo
${
UNAME_MACHINE
}
-apple-rhapsody
${
UNAME_RELEASE
}
exit
;;
*
:Darwin:
*
:
*
)
UNAME_PROCESSOR
=
`
uname
-p
`
||
UNAME_PROCESSOR
=
unknown
case
$UNAME_PROCESSOR
in
unknown
)
UNAME_PROCESSOR
=
powerpc
;;
esac
echo
${
UNAME_PROCESSOR
}
-apple-darwin
${
UNAME_RELEASE
}
exit
;;
*
:procnto
*
:
*
:
*
|
*
:QNX:[0123456789]
*
:
*
)
UNAME_PROCESSOR
=
`
uname
-p
`
if
test
"
$UNAME_PROCESSOR
"
=
"x86"
;
then
UNAME_PROCESSOR
=
i386
UNAME_MACHINE
=
pc
fi
echo
${
UNAME_PROCESSOR
}
-
${
UNAME_MACHINE
}
-nto-qnx
${
UNAME_RELEASE
}
exit
;;
*
:QNX:
*
:4
*
)
echo
i386-pc-qnx
exit
;;
NSE-?:NONSTOP_KERNEL:
*
:
*
)
echo
nse-tandem-nsk
${
UNAME_RELEASE
}
exit
;;
NSR-?:NONSTOP_KERNEL:
*
:
*
)
echo
nsr-tandem-nsk
${
UNAME_RELEASE
}
exit
;;
*
:NonStop-UX:
*
:
*
)
echo
mips-compaq-nonstopux
exit
;;
BS2000:POSIX
*
:
*
:
*
)
echo
bs2000-siemens-sysv
exit
;;
DS/
*
:UNIX_System_V:
*
:
*
)
echo
${
UNAME_MACHINE
}
-
${
UNAME_SYSTEM
}
-
${
UNAME_RELEASE
}
exit
;;
*
: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
;;
*
:TOPS-10:
*
:
*
)
echo
pdp10-unknown-tops10
exit
;;
*
:TENEX:
*
:
*
)
echo
pdp10-unknown-tenex
exit
;;
KS10:TOPS-20:
*
:
*
|
KL10:TOPS-20:
*
:
*
|
TYPE4:TOPS-20:
*
:
*
)
echo
pdp10-dec-tops20
exit
;;
XKL-1:TOPS-20:
*
:
*
|
TYPE5:TOPS-20:
*
:
*
)
echo
pdp10-xkl-tops20
exit
;;
*
:TOPS-20:
*
:
*
)
echo
pdp10-unknown-tops20
exit
;;
*
:ITS:
*
:
*
)
echo
pdp10-unknown-its
exit
;;
SEI:
*
:
*
:SEIUX
)
echo
mips-sei-seiux
${
UNAME_RELEASE
}
exit
;;
*
:DragonFly:
*
:
*
)
echo
${
UNAME_MACHINE
}
-unknown-dragonfly
`
echo
${
UNAME_RELEASE
}
|sed
-e
's/[-(].*//'
`
exit
;;
*
:
*
VMS:
*
:
*
)
UNAME_MACHINE
=
`
(
uname
-p
)
2>/dev/null
`
case
"
${
UNAME_MACHINE
}
"
in
A
*
)
echo
alpha-dec-vms
;
exit
;;
I
*
)
echo
ia64-dec-vms
;
exit
;;
V
*
)
echo
vax-dec-vms
;
exit
;;
esac
;;
*
:XENIX:
*
:SysV
)
echo
i386-pc-xenix
exit
;;
i
*
86:skyos:
*
:
*
)
echo
${
UNAME_MACHINE
}
-pc-skyos
`
echo
${
UNAME_RELEASE
}
`
|
sed
-e
's/ .*$//'
exit
;;
i
*
86:rdos:
*
:
*
)
echo
${
UNAME_MACHINE
}
-pc-rdos
exit
;;
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
<<
EOF
#ifdef _SEQUENT_
# include <sys/types.h>
# include <sys/utsname.h>
#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 <sys/param.h>
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
\n
"); 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 <sys/param.h>
# 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
-o
$dummy
$dummy
.c 2>/dev/null
&&
SYSTEM_NAME
=
`
$dummy
`
&&
{
echo
"
$SYSTEM_NAME
"
;
exit
;
}
# Apollos put the system type in the environment.
test
-d
/usr/apollo
&&
{
echo
${
ISP
}
-apollo-
${
SYSTYPE
}
;
exit
;
}
# 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
;;
c2
*
)
if
getsysinfo
-f
scalar_acc
then
echo
c32-convex-bsd
else
echo
c2-convex-bsd
fi
exit
;;
c34
*
)
echo
c34-convex-bsd
exit
;;
c38
*
)
echo
c38-convex-bsd
exit
;;
c4
*
)
echo
c4-convex-bsd
exit
;;
esac
fi
cat
>
&2
<<
EOF
$0
: unable to guess system type
This script, last modified
$timestamp
, has failed to recognize
the operating system you are using. It is advised that you
download the most up to date version of the config scripts from
http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
and
http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
If the version you run (
$0
) is already up to date, please
send the following data and any information you think might be
pertinent to <config-patches@gnu.org> 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:
src/scanbuttond-0.2.3/config.sub
0 → 100644
View file @
0fe94fc2
#! /bin/sh
# Configuration validation subroutine script.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
timestamp
=
'2005-12-23'
# 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., 51 Franklin Street - Fifth Floor, Boston, MA
# 02110-1301, 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 <config-patches@gnu.org>. 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 <config-patches@gnu.org>."
version
=
"
\
GNU config.sub (
$timestamp
)
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
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
;;
--version
|
-v
)
echo
"
$version
"
;
exit
;;
--help
|
--h
*
|
-h
)
echo
"
$usage
"
;
exit
;;
--
)
# 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
;;
*
)
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
*
|
linux-dietlibc
|
linux-newlib
*
|
linux-uclibc
*
|
\
uclinux-uclibc
*
|
uclinux-gnu
*
|
kfreebsd
*
-gnu
*
|
knetbsd
*
-gnu
*
|
netbsd
*
-gnu
*
|
\
storm-chaos
*
|
os2-emx
*
|
rtmk-nova
*
)
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
|
-knuth
|
-cray
)
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
;;
-sco6
)
os
=
-sco5v6
basic_machine
=
`
echo
$1
|
sed
-e
's/86-.*/86-pc/'
`
;;
-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/'
`
;;
-sco5v6
*
)
# 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]
\
|
am33_2.0
\
|
arc
|
arm
|
arm[bl]e
|
arme[lb]
|
armv[2345]
|
armv[345][lb]
|
avr
\
|
bfin
\
|
c4x
|
clipper
\
|
d10v
|
d30v
|
dlx
|
dsp16xx
|
dvp
\
|
fr30
|
frv
\
|
h8300
|
h8500
|
hppa
|
hppa1.[01]
|
hppa2.0
|
hppa2.0[nw]
|
hppa64
\
|
i370
|
i860
|
i960
|
ia64
\
|
ip2k
|
iq2000
\
|
m32r
|
m32rle
|
m68000
|
m68k
|
m88k
|
maxq
|
mb
|
microblaze
|
mcore
\
|
mips
|
mipsbe
|
mipseb
|
mipsel
|
mipsle
\
|
mips16
\
|
mips64
|
mips64el
\
|
mips64vr
|
mips64vrel
\
|
mips64orion
|
mips64orionel
\
|
mips64vr4100
|
mips64vr4100el
\
|
mips64vr4300
|
mips64vr4300el
\
|
mips64vr5000
|
mips64vr5000el
\
|
mips64vr5900
|
mips64vr5900el
\
|
mipsisa32
|
mipsisa32el
\
|
mipsisa32r2
|
mipsisa32r2el
\
|
mipsisa64
|
mipsisa64el
\
|
mipsisa64r2
|
mipsisa64r2el
\
|
mipsisa64sb1
|
mipsisa64sb1el
\
|
mipsisa64sr71k
|
mipsisa64sr71kel
\
|
mipstx39
|
mipstx39el
\
|
mn10200
|
mn10300
\
|
mt
\
|
msp430
\
|
ns16k
|
ns32k
\
|
or32
\
|
pdp10
|
pdp11
|
pj
|
pjl
\
|
powerpc
|
powerpc64
|
powerpc64le
|
powerpcle
|
ppcbe
\
|
pyramid
\
|
sh
|
sh[1234]
|
sh[24]a
|
sh[24]a
*
eb
|
sh[23]e
|
sh[34]eb
|
shbe
|
shle
|
sh[1234]le
|
sh3ele
\
|
sh64
|
sh64le
\
|
sparc
|
sparc64
|
sparc64b
|
sparc86x
|
sparclet
|
sparclite
\
|
sparcv8
|
sparcv9
|
sparcv9b
\
|
strongarm
\
|
tahoe
|
thumb
|
tic4x
|
tic80
|
tron
\
|
v850
|
v850e
\
|
we32k
\
|
x86
|
xscale
|
xscalee[bl]
|
xstormy16
|
xtensa
\
|
z8k
)
basic_machine
=
$basic_machine
-unknown
;;
m32c
)
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
)
;;
ms1
)
basic_machine
=
mt-unknown
;;
nios2
|
nios2-
*
|
nios2
|
nios2-
*
)
basic_machine
=
nios2-altera
os
=
-none
;;
# 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-
*
|
armeb-
*
|
armv
*
-
*
\
|
avr-
*
\
|
bfin-
*
|
bs2000-
*
\
|
c[123]
*
|
c30-
*
|
[
cjt]90-
*
|
c4x-
*
|
c54x-
*
|
c55x-
*
|
c6x-
*
\
|
clipper-
*
|
craynv-
*
|
cydra-
*
\
|
d10v-
*
|
d30v-
*
|
dlx-
*
\
|
elxsi-
*
\
|
f30[01]-
*
|
f700-
*
|
fr30-
*
|
frv-
*
|
fx80-
*
\
|
h8300-
*
|
h8500-
*
\
|
hppa-
*
|
hppa1.[01]-
*
|
hppa2.0-
*
|
hppa2.0[nw]-
*
|
hppa64-
*
\
|
i
*
86-
*
|
i860-
*
|
i960-
*
|
ia64-
*
\
|
ip2k-
*
|
iq2000-
*
\
|
m32r-
*
|
m32rle-
*
\
|
m68000-
*
|
m680[012346]0-
*
|
m68360-
*
|
m683?2-
*
|
m68k-
*
\
|
m88110-
*
|
m88k-
*
|
maxq-
*
|
mcore-
*
\
|
mips-
*
|
mipsbe-
*
|
mipseb-
*
|
mipsel-
*
|
mipsle-
*
\
|
mips16-
*
\
|
mips64-
*
|
mips64el-
*
\
|
mips64vr-
*
|
mips64vrel-
*
\
|
mips64orion-
*
|
mips64orionel-
*
\
|
mips64vr4100-
*
|
mips64vr4100el-
*
\
|
mips64vr4300-
*
|
mips64vr4300el-
*
\
|
mips64vr5000-
*
|
mips64vr5000el-
*
\
|
mips64vr5900-
*
|
mips64vr5900el-
*
\
|
mipsisa32-
*
|
mipsisa32el-
*
\
|
mipsisa32r2-
*
|
mipsisa32r2el-
*
\
|
mipsisa64-
*
|
mipsisa64el-
*
\
|
mipsisa64r2-
*
|
mipsisa64r2el-
*
\
|
mipsisa64sb1-
*
|
mipsisa64sb1el-
*
\
|
mipsisa64sr71k-
*
|
mipsisa64sr71kel-
*
\
|
mipstx39-
*
|
mipstx39el-
*
\
|
mmix-
*
\
|
mt-
*
\
|
msp430-
*
\
|
none-
*
|
np1-
*
|
ns16k-
*
|
ns32k-
*
\
|
orion-
*
\
|
pdp10-
*
|
pdp11-
*
|
pj-
*
|
pjl-
*
|
pn-
*
|
power-
*
\
|
powerpc-
*
|
powerpc64-
*
|
powerpc64le-
*
|
powerpcle-
*
|
ppcbe-
*
\
|
pyramid-
*
\
|
romp-
*
|
rs6000-
*
\
|
sh-
*
|
sh[1234]-
*
|
sh[24]a-
*
|
sh[23]e-
*
|
sh[34]eb-
*
|
shbe-
*
\
|
shle-
*
|
sh[1234]le-
*
|
sh3ele-
*
|
sh64-
*
|
sh64le-
*
\
|
sparc-
*
|
sparc64-
*
|
sparc64b-
*
|
sparc86x-
*
|
sparclet-
*
\
|
sparclite-
*
\
|
sparcv8-
*
|
sparcv9-
*
|
sparcv9b-
*
|
strongarm-
*
|
sv1-
*
|
sx?-
*
\
|
tahoe-
*
|
thumb-
*
\
|
tic30-
*
|
tic4x-
*
|
tic54x-
*
|
tic55x-
*
|
tic6x-
*
|
tic80-
*
\
|
tron-
*
\
|
v850-
*
|
v850e-
*
|
vax-
*
\
|
we32k-
*
\
|
x86-
*
|
x86_64-
*
|
xps100-
*
|
xscale-
*
|
xscalee[bl]-
*
\
|
xstormy16-
*
|
xtensa-
*
\
|
ymp-
*
\
|
z8k-
*
)
;;
m32c-
*
)
;;
# 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
;;
abacus
)
basic_machine
=
abacus-unknown
;;
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
;;
amd64
)
basic_machine
=
x86_64-pc
;;
amd64-
*
)
basic_machine
=
x86_64-
`
echo
$basic_machine
|
sed
's/^[^-]*-//'
`
;;
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
;;
c90
)
basic_machine
=
c90-cray
os
=
-unicos
;;
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
|
j90
)
basic_machine
=
j90-cray
os
=
-unicos
;;
craynv
)
basic_machine
=
craynv-cray
os
=
-unicosmp
;;
cr16c
)
basic_machine
=
cr16c-unknown
os
=
-elf
;;
crds
|
unos
)
basic_machine
=
m68k-crds
;;
crisv32
|
crisv32-
*
|
etraxfs
*
)
basic_machine
=
crisv32-axis
;;
cris
|
cris-
*
|
etrax
*
)
basic_machine
=
cris-axis
;;
crx
)
basic_machine
=
crx-unknown
os
=
-elf
;;
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
;;
djgpp
)
basic_machine
=
i586-pc
os
=
-msdosdjgpp
;;
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
;;
mipsEE
*
|
ee
|
ps2
)
basic_machine
=
mips64r5900el-scei
case
$os
in
-linux
*
)
;;
*
)
os
=
-elf
;;
esac
;;
iop
)
basic_machine
=
mipsel-scei
os
=
-irx
;;
dvp
)
basic_machine
=
dvp-scei
os
=
-elf
;;
mips3
*
-
*
)
basic_machine
=
`
echo
$basic_machine
|
sed
-e
's/mips3/mips64/'
`
;;
mips3
*
)
basic_machine
=
`
echo
$basic_machine
|
sed
-e
's/mips3/mips64/'
`
-unknown
;;
monitor
)
basic_machine
=
m68k-rom68k
os
=
-coff
;;
morphos
)
basic_machine
=
powerpc-unknown
os
=
-morphos
;;
msdos
)
basic_machine
=
i386-pc
os
=
-msdos
;;
ms1-
*
)
basic_machine
=
`
echo
$basic_machine
|
sed
-e
's/ms1-/mt-/'
`
;;
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
;;
openrisc
|
openrisc-
*
)
basic_machine
=
or32-unknown
;;
os400
)
basic_machine
=
powerpc-ibm
os
=
-os400
;;
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
;;
pc98
)
basic_machine
=
i386-pc
;;
pc98-
*
)
basic_machine
=
i386-
`
echo
$basic_machine
|
sed
's/^[^-]*-//'
`
;;
pentium
|
p5
|
k5
|
k6
|
nexgen
|
viac3
)
basic_machine
=
i586-pc
;;
pentiumpro
|
p6
|
6x86
|
athlon
|
athlon_
*
)
basic_machine
=
i686-pc
;;
pentiumii
|
pentium2
|
pentiumiii
|
pentium3
)
basic_machine
=
i686-pc
;;
pentium4
)
basic_machine
=
i786-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-
*
|
pentiumiii-
*
|
pentium3-
*
)
basic_machine
=
i686-
`
echo
$basic_machine
|
sed
's/^[^-]*-//'
`
;;
pentium4-
*
)
basic_machine
=
i786-
`
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
;;
rdos
)
basic_machine
=
i386-pc
os
=
-rdos
;;
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
;;
sb1
)
basic_machine
=
mipsisa64sb1-unknown
;;
sb1el
)
basic_machine
=
mipsisa64sb1el-unknown
;;
sei
)
basic_machine
=
mips-sei
os
=
-seiux
;;
sequent
)
basic_machine
=
i386-sequent
;;
sh
)
basic_machine
=
sh-hitachi
os
=
-hms
;;
sh64
)
basic_machine
=
sh64-unknown
;;
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
=
alphaev5-cray
os
=
-unicos
;;
t90
)
basic_machine
=
t90-cray
os
=
-unicos
;;
tic54x
|
c54x
*
)
basic_machine
=
tic54x-unknown
os
=
-coff
;;
tic55x
|
c55x
*
)
basic_machine
=
tic55x-unknown
os
=
-coff
;;
tic6x
|
c6x
*
)
basic_machine
=
tic6x-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
;;
tpf
)
basic_machine
=
s390x-ibm
os
=
-tpf
;;
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
;;
xbox
)
basic_machine
=
i686-pc
os
=
-mingw32
;;
xps
|
xps100
)
basic_machine
=
xps100-honeywell
;;
ymp
)
basic_machine
=
ymp-cray
os
=
-unicos
;;
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
;;
romp
)
basic_machine
=
romp-ibm
;;
mmix
)
basic_machine
=
mmix-knuth
;;
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
;;
sh[1234]
|
sh[24]a
|
sh[34]eb
|
sh[1234]le
|
sh[23]ele
)
basic_machine
=
sh-unknown
;;
sparc
|
sparcv8
|
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
;;
*
-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
*
|
-knetbsd
*
|
-mirbsd
*
|
-netbsd
*
|
-openbsd
*
\
|
-ekkobsd
*
|
-kfreebsd
*
|
-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
*
|
-linux-newlib
*
|
-linux-uclibc
*
\
|
-uxpv
*
|
-beos
*
|
-mpeix
*
|
-udk
*
\
|
-interix
*
|
-uwin
*
|
-mks
*
|
-rhapsody
*
|
-darwin
*
|
-opened
*
\
|
-openstep
*
|
-oskit
*
|
-conix
*
|
-pw32
*
|
-nonstopux
*
\
|
-storm-chaos
*
|
-tops10
*
|
-tenex
*
|
-tops20
*
|
-its
*
\
|
-os2
*
|
-vos
*
|
-palmos
*
|
-uclinux
*
|
-nucleus
*
\
|
-morphos
*
|
-superux
*
|
-rtmk
*
|
-rtmk-nova
*
|
-windiss
*
\
|
-powermax
*
|
-dnix
*
|
-nx6
|
-nx7
|
-sei
*
|
-dragonfly
*
\
|
-skyos
*
|
-haiku
*
|
-rdos
*
|
-irx
*
)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx
*
)
case
$basic_machine
in
x86-
*
|
i
*
86-
*
)
;;
*
)
os
=
-nto
$os
;;
esac
;;
-nto-qnx
*
)
;;
-nto
*
)
os
=
`
echo
$os
|
sed
-e
's|nto|nto-qnx|'
`
;;
-sim
|
-es1800
*
|
-hms
*
|
-xray
|
-os68k
*
|
-none
*
|
-v88r
*
\
|
-windows
*
|
-osx
|
-abug
|
-netware
*
|
-os9
*
|
-beos
*
|
-haiku
*
\
|
-macos
*
|
-mpw
*
|
-magic
*
|
-mmixware
*
|
-mon960
*
|
-lnews
*
)
;;
-mac
*
)
os
=
`
echo
$os
|
sed
-e
's|mac|macos|'
`
;;
-linux-dietlibc
)
os
=
-linux-dietlibc
;;
-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
;;
-os400
*
)
os
=
-os400
;;
-wince
*
)
os
=
-wince
;;
-osfrose
*
)
os
=
-osfrose
;;
-osf
*
)
os
=
-osf
;;
-utek
*
)
os
=
-bsd
;;
-dynix
*
)
os
=
-bsd
;;
-acis
*
)
os
=
-aos
;;
-atheos
*
)
os
=
-atheos
;;
-syllable
*
)
os
=
-syllable
;;
-386bsd
)
os
=
-bsd
;;
-ctix
*
|
-uts
*
)
os
=
-sysv
;;
-nova
*
)
os
=
-rtmk-nova
;;
-ns2
)
os
=
-nextstep2
;;
-nsk
*
)
os
=
-nsk
;;
# Preserve the version number of sinix5.
-sinix5
.
*
)
os
=
`
echo
$os
|
sed
-e
's|sinix|sysv|'
`
;;
-sinix
*
)
os
=
-sysv4
;;
-tpf
*
)
os
=
-tpf
;;
-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
;;
-aros
*
)
os
=
-aros
;;
-kaos
*
)
os
=
-kaos
;;
-zvmoe
)
os
=
-zvmoe
;;
-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
;;
c4x-
*
|
tic4x-
*
)
os
=
-coff
;;
# 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
;;
or32-
*
)
os
=
-coff
;;
*
-tti
)
# must be before sparc entry or we get the wrong os.
os
=
-sysv3
;;
sparc-
*
|
*
-sun
)
os
=
-sunos4
.1.1
;;
*
-be
)
os
=
-beos
;;
*
-haiku
)
os
=
-haiku
;;
*
-ibm
)
os
=
-aix
;;
*
-knuth
)
os
=
-mmixware
;;
*
-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
;;
-os400
*
)
vendor
=
ibm
;;
-ptx
*
)
vendor
=
sequent
;;
-tpf
*
)
vendor
=
ibm
;;
-vxsim
*
|
-vxworks
*
|
-windiss
*
)
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
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "timestamp='"
# time-stamp-format: "%:y-%02m-%02d"
# time-stamp-end: "'"
# End:
src/scanbuttond-0.2.3/configure
0 → 100644
View file @
0fe94fc2
This source diff could not be displayed because it is too large. You can
view the blob
instead.
src/scanbuttond-0.2.3/configure.in
0 → 100644
View file @
0fe94fc2
AC_INIT([scanbuttond], [0.2.3], [root84@users.soureforge.net])
AC_CONFIG_HEADERS([include/scanbuttond/config.h])
AM_INIT_AUTOMAKE
AC_DISABLE_STATIC
AC_LANG_C
AC_PROG_CC
AC_PROG_LIBTOOL
AC_CHECK_HEADERS(errno.h string.h syslog.h unistd.h dlfcn.h usb.h)
CFLAGS="${CFLAGS} -DCFG_DIR=\$(pkgsysconfdir) -DLIB_DIR=\$(libdir)"
AC_OUTPUT(Makefile contrib/Makefile interface/Makefile backends/Makefile scripts/Makefile)
src/scanbuttond-0.2.3/contrib/Makefile.am
0 → 100644
View file @
0fe94fc2
EXTRA_DIST
=
initscript.gentoo
src/scanbuttond-0.2.3/contrib/Makefile.in
0 → 100644
View file @
0fe94fc2
# Makefile.in generated by automake 1.9.6 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in 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.
@SET_MAKE@
srcdir
=
@srcdir@
top_srcdir
=
@top_srcdir@
VPATH
=
@srcdir@
pkgdatadir
=
$(datadir)
/@PACKAGE@
pkglibdir
=
$(libdir)
/@PACKAGE@
pkgincludedir
=
$(includedir)
/@PACKAGE@
top_builddir
=
..
am__cd
=
CDPATH
=
"
$
${
ZSH_VERSION
+.
}
$(PATH_SEPARATOR)
"
&&
cd
INSTALL
=
@INSTALL@
install_sh_DATA
=
$(install_sh)
-c
-m
644
install_sh_PROGRAM
=
$(install_sh)
-c
install_sh_SCRIPT
=
$(install_sh)
-c
INSTALL_HEADER
=
$(INSTALL_DATA)
transform
=
$(program_transform_name)
NORMAL_INSTALL
=
:
PRE_INSTALL
=
:
POST_INSTALL
=
:
NORMAL_UNINSTALL
=
:
PRE_UNINSTALL
=
:
POST_UNINSTALL
=
:
build_triplet
=
@build@
host_triplet
=
@host@
subdir
=
contrib
DIST_COMMON
=
$(srcdir)
/Makefile.am
$(srcdir)
/Makefile.in
ACLOCAL_M4
=
$(top_srcdir)
/aclocal.m4
am__aclocal_m4_deps
=
$(top_srcdir)
/configure.in
am__configure_deps
=
$(am__aclocal_m4_deps)
$(CONFIGURE_DEPENDENCIES)
\
$(ACLOCAL_M4)
mkinstalldirs
=
$(install_sh)
-d
CONFIG_HEADER
=
$(top_builddir)
/include/scanbuttond/config.h
CONFIG_CLEAN_FILES
=
SOURCES
=
DIST_SOURCES
=
DISTFILES
=
$(DIST_COMMON)
$(DIST_SOURCES)
$(TEXINFOS)
$(EXTRA_DIST)
ACLOCAL
=
@ACLOCAL@
AMDEP_FALSE
=
@AMDEP_FALSE@
AMDEP_TRUE
=
@AMDEP_TRUE@
AMTAR
=
@AMTAR@
AR
=
@AR@
AUTOCONF
=
@AUTOCONF@
AUTOHEADER
=
@AUTOHEADER@
AUTOMAKE
=
@AUTOMAKE@
AWK
=
@AWK@
CC
=
@CC@
CCDEPMODE
=
@CCDEPMODE@
CFLAGS
=
@CFLAGS@
CPP
=
@CPP@
CPPFLAGS
=
@CPPFLAGS@
CXX
=
@CXX@
CXXCPP
=
@CXXCPP@
CXXDEPMODE
=
@CXXDEPMODE@
CXXFLAGS
=
@CXXFLAGS@
CYGPATH_W
=
@CYGPATH_W@
DEFS
=
@DEFS@
DEPDIR
=
@DEPDIR@
ECHO
=
@ECHO@
ECHO_C
=
@ECHO_C@
ECHO_N
=
@ECHO_N@
ECHO_T
=
@ECHO_T@
EGREP
=
@EGREP@
EXEEXT
=
@EXEEXT@
F77
=
@F77@
FFLAGS
=
@FFLAGS@
INSTALL_DATA
=
@INSTALL_DATA@
INSTALL_PROGRAM
=
@INSTALL_PROGRAM@
INSTALL_SCRIPT
=
@INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM
=
@INSTALL_STRIP_PROGRAM@
LDFLAGS
=
@LDFLAGS@
LIBOBJS
=
@LIBOBJS@
LIBS
=
@LIBS@
LIBTOOL
=
@LIBTOOL@
LN_S
=
@LN_S@
LTLIBOBJS
=
@LTLIBOBJS@
MAKEINFO
=
@MAKEINFO@
OBJEXT
=
@OBJEXT@
PACKAGE
=
@PACKAGE@
PACKAGE_BUGREPORT
=
@PACKAGE_BUGREPORT@
PACKAGE_NAME
=
@PACKAGE_NAME@
PACKAGE_STRING
=
@PACKAGE_STRING@
PACKAGE_TARNAME
=
@PACKAGE_TARNAME@
PACKAGE_VERSION
=
@PACKAGE_VERSION@
PATH_SEPARATOR
=
@PATH_SEPARATOR@
RANLIB
=
@RANLIB@
SET_MAKE
=
@SET_MAKE@
SHELL
=
@SHELL@
STRIP
=
@STRIP@
VERSION
=
@VERSION@
ac_ct_AR
=
@ac_ct_AR@
ac_ct_CC
=
@ac_ct_CC@
ac_ct_CXX
=
@ac_ct_CXX@
ac_ct_F77
=
@ac_ct_F77@
ac_ct_RANLIB
=
@ac_ct_RANLIB@
ac_ct_STRIP
=
@ac_ct_STRIP@
am__fastdepCC_FALSE
=
@am__fastdepCC_FALSE@
am__fastdepCC_TRUE
=
@am__fastdepCC_TRUE@
am__fastdepCXX_FALSE
=
@am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE
=
@am__fastdepCXX_TRUE@
am__include
=
@am__include@
am__leading_dot
=
@am__leading_dot@
am__quote
=
@am__quote@
am__tar
=
@am__tar@
am__untar
=
@am__untar@
bindir
=
@bindir@
build
=
@build@
build_alias
=
@build_alias@
build_cpu
=
@build_cpu@
build_os
=
@build_os@
build_vendor
=
@build_vendor@
datadir
=
@datadir@
exec_prefix
=
@exec_prefix@
host
=
@host@
host_alias
=
@host_alias@
host_cpu
=
@host_cpu@
host_os
=
@host_os@
host_vendor
=
@host_vendor@
includedir
=
@includedir@
infodir
=
@infodir@
install_sh
=
@install_sh@
libdir
=
@libdir@
libexecdir
=
@libexecdir@
localstatedir
=
@localstatedir@
mandir
=
@mandir@
mkdir_p
=
@mkdir_p@
oldincludedir
=
@oldincludedir@
prefix
=
@prefix@
program_transform_name
=
@program_transform_name@
sbindir
=
@sbindir@
sharedstatedir
=
@sharedstatedir@
sysconfdir
=
@sysconfdir@
target_alias
=
@target_alias@
EXTRA_DIST
=
initscript.gentoo
all
:
all-am
.SUFFIXES
:
$(srcdir)/Makefile.in
:
$(srcdir)/Makefile.am $(am__configure_deps)
@
for
dep
in
$?
;
do
\
case
'
$(am__configure_deps)
'
in
\
*
$$
dep
*
)
\
cd
$(top_builddir)
&&
$(MAKE)
$(AM_MAKEFLAGS)
am--refresh
\
&&
exit
0
;
\
exit
1
;;
\
esac
;
\
done
;
\
echo
' cd
$(top_srcdir)
&&
$(AUTOMAKE)
--gnu contrib/Makefile'
;
\
cd
$(top_srcdir)
&&
\
$(AUTOMAKE)
--gnu
contrib/Makefile
.PRECIOUS
:
Makefile
Makefile
:
$(srcdir)/Makefile.in $(top_builddir)/config.status
@
case
'$?'
in
\
*
config.status
*
)
\
cd
$(top_builddir)
&&
$(MAKE)
$(AM_MAKEFLAGS)
am--refresh
;;
\
*
)
\
echo
' cd
$(top_builddir)
&&
$(SHELL)
./config.status
$(subdir)
/$@
$(am__depfiles_maybe)
'
;
\
cd
$(top_builddir)
&&
$(SHELL)
./config.status
$(subdir)
/
$@
$(am__depfiles_maybe)
;;
\
esac
;
$(top_builddir)/config.status
:
$(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd
$(top_builddir)
&&
$(MAKE)
$(AM_MAKEFLAGS)
am--refresh
$(top_srcdir)/configure
:
$(am__configure_deps)
cd
$(top_builddir)
&&
$(MAKE)
$(AM_MAKEFLAGS)
am--refresh
$(ACLOCAL_M4)
:
$(am__aclocal_m4_deps)
cd
$(top_builddir)
&&
$(MAKE)
$(AM_MAKEFLAGS)
am--refresh
mostlyclean-libtool
:
-
rm
-f
*
.lo
clean-libtool
:
-
rm
-rf
.libs _libs
distclean-libtool
:
-
rm
-f
libtool
uninstall-info-am
:
tags
:
TAGS
TAGS
:
ctags
:
CTAGS
CTAGS
:
distdir
:
$(DISTFILES)
@
srcdirstrip
=
`
echo
"
$(srcdir)
"
|
sed
's|.|.|g'
`
;
\
topsrcdirstrip
=
`
echo
"
$(top_srcdir)
"
|
sed
's|.|.|g'
`
;
\
list
=
'
$(DISTFILES)
'
;
for
file
in
$$
list
;
do
\
case
$$
file
in
\
$(srcdir)
/
*
)
file
=
`
echo
"
$$
file"
|
sed
"s|^
$$
srcdirstrip/||"
`
;;
\
$(top_srcdir)
/
*
)
file
=
`
echo
"
$$
file"
|
sed
"s|^
$$
topsrcdirstrip/|
$(top_builddir)
/|"
`
;;
\
esac
;
\
if
test
-f
$$
file
||
test
-d
$$
file
;
then
d
=
.
;
else
d
=
$(srcdir)
;
fi
;
\
dir
=
`
echo
"
$$
file"
|
sed
-e
's,/[^/]*$$,,'
`
;
\
if
test
"
$$
dir"
!=
"
$$
file"
&&
test
"
$$
dir"
!=
"."
;
then
\
dir
=
"/
$$
dir"
;
\
$(mkdir_p)
"
$(distdir)$$
dir"
;
\
else
\
dir
=
''
;
\
fi
;
\
if
test
-d
$$
d/
$$
file
;
then
\
if
test
-d
$(srcdir)
/
$$
file
&&
test
$$
d
!=
$(srcdir)
;
then
\
cp
-pR
$(srcdir)
/
$$
file
$(distdir)$$
dir
||
exit
1
;
\
fi
;
\
cp
-pR
$$
d/
$$
file
$(distdir)$$
dir
||
exit
1
;
\
else
\
test
-f
$(distdir)
/
$$
file
\
||
cp
-p
$$
d/
$$
file
$(distdir)
/
$$
file
\
||
exit
1
;
\
fi
;
\
done
check-am
:
all-am
check
:
check-am
all-am
:
Makefile
installdirs
:
install
:
install-am
install-exec
:
install-exec-am
install-data
:
install-data-am
uninstall
:
uninstall-am
install-am
:
all-am
@
$(MAKE)
$(AM_MAKEFLAGS)
install-exec-am install-data-am
installcheck
:
installcheck-am
install-strip
:
$(MAKE)
$(AM_MAKEFLAGS)
INSTALL_PROGRAM
=
"
$(INSTALL_STRIP_PROGRAM)
"
\
install_sh_PROGRAM
=
"
$(INSTALL_STRIP_PROGRAM)
"
INSTALL_STRIP_FLAG
=
-s
\
`
test
-z
'
$(STRIP)
'
||
\
echo
"INSTALL_PROGRAM_ENV=STRIPPROG='
$(STRIP)
'"
`
install
mostlyclean-generic
:
clean-generic
:
distclean-generic
:
-
test
-z
"
$(CONFIG_CLEAN_FILES)
"
||
rm
-f
$(CONFIG_CLEAN_FILES)
maintainer-clean-generic
:
@
echo
"This command is intended for maintainers to use"
@
echo
"it deletes files that may require special tools to rebuild."
clean
:
clean-am
clean-am
:
clean-generic clean-libtool mostlyclean-am
distclean
:
distclean-am
-
rm
-f
Makefile
distclean-am
:
clean-am distclean-generic distclean-libtool
dvi
:
dvi-am
dvi-am
:
html
:
html-am
info
:
info-am
info-am
:
install-data-am
:
install-exec-am
:
install-info
:
install-info-am
install-man
:
installcheck-am
:
maintainer-clean
:
maintainer-clean-am
-
rm
-f
Makefile
maintainer-clean-am
:
distclean-am maintainer-clean-generic
mostlyclean
:
mostlyclean-am
mostlyclean-am
:
mostlyclean-generic mostlyclean-libtool
pdf
:
pdf-am
pdf-am
:
ps
:
ps-am
ps-am
:
uninstall-am
:
uninstall-info-am
.PHONY
:
all all-am check check-am clean clean-generic clean-libtool
\
distclean distclean-generic distclean-libtool distdir dvi
\
dvi-am html html-am info info-am install install-am
\
install-data install-data-am install-exec install-exec-am
\
install-info install-info-am install-man install-strip
\
installcheck installcheck-am installdirs maintainer-clean
\
maintainer-clean-generic mostlyclean mostlyclean-generic
\
mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am
\
uninstall-info-am
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT
:
src/scanbuttond-0.2.3/contrib/initscript.gentoo
0 → 100644
View file @
0fe94fc2
#!/sbin/runscript
# scanbuttond init script for Gentoo
# copy it to /etc/init.d/scanbuttond
#
# Copyright 2005 by Bernhard Stiftner
# Distributed under the terms of the GNU General Public License v2
depend() {
need hotplug
}
start() {
ebegin "Starting scanner button daemon"
start-stop-daemon --chuid scanner:scanner --start --quiet --exec /usr/local/bin/scanbuttond
eend $?
}
stop() {
ebegin "Stopping scanner button daemon"
start-stop-daemon --stop --quiet --exec /usr/local/bin/scanbuttond
eend $?
}
src/scanbuttond-0.2.3/depcomp
0 → 100644
View file @
0fe94fc2
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
scriptversion
=
2005-07-09.11
# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
# 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, 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., 51 Franklin Street, Fifth Floor, Boston, MA
# 02110-1301, 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 Alexandre Oliva <oliva@dcc.unicamp.br>.
case
$1
in
''
)
echo
"
$0
: No command. Try
\`
$0
--help' for more information."
1>&2
exit
1
;
;;
-h
|
--h
*
)
cat
<<
\
EOF
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
Run PROGRAMS ARGS to compile a file, generating dependencies
as side-effects.
Environment variables:
depmode Dependency tracking mode.
source Source file read by `PROGRAMS ARGS'.
object Object file output by `PROGRAMS ARGS'.
DEPDIR directory where to store dependencies.
depfile Dependency file to output.
tmpdepfile Temporary file to use when outputing dependencies.
libtool Whether libtool is used (yes/no).
Report bugs to <bug-automake@gnu.org>.
EOF
exit
$?
;;
-v
|
--v
*
)
echo
"depcomp
$scriptversion
"
exit
$?
;;
esac
if
test
-z
"
$depmode
"
||
test
-z
"
$source
"
||
test
-z
"
$object
"
;
then
echo
"depcomp: Variables source, object and depmode must be set"
1>&2
exit
1
fi
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
depfile
=
${
depfile
-
`
echo
"
$object
"
|
sed
's|[^\\/]*$|'
${
DEPDIR
-.deps
}
'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'
`
}
tmpdepfile
=
${
tmpdepfile
-
`
echo
"
$depfile
"
|
sed
's/\.\([^.]*\)$/.T\1/'
`
}
rm
-f
"
$tmpdepfile
"
# Some modes work just like other modes, but use different flags. We
# parameterize here, but still list the modes in the big case below,
# to make depend.m4 easier to write. Note that we *cannot* use a case
# here, because this file can only contain one case statement.
if
test
"
$depmode
"
=
hp
;
then
# HP compiler uses -M and no extra arg.
gccflag
=
-M
depmode
=
gcc
fi
if
test
"
$depmode
"
=
dashXmstdout
;
then
# This is just like dashmstdout with a different argument.
dashmflag
=
-xM
depmode
=
dashmstdout
fi
case
"
$depmode
"
in
gcc3
)
## gcc 3 implements dependency tracking that does exactly what
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
## it if -MD -MP comes after the -MF stuff. Hmm.
"
$@
"
-MT
"
$object
"
-MD
-MP
-MF
"
$tmpdepfile
"
stat
=
$?
if
test
$stat
-eq
0
;
then
:
else
rm
-f
"
$tmpdepfile
"
exit
$stat
fi
mv
"
$tmpdepfile
"
"
$depfile
"
;;
gcc
)
## There are various ways to get dependency output from gcc. Here's
## why we pick this rather obscure method:
## - Don't want to use -MD because we'd like the dependencies to end
## up in a subdir. Having to rename by hand is ugly.
## (We might end up doing this anyway to support other compilers.)
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
## -MM, not -M (despite what the docs say).
## - Using -M directly means running the compiler twice (even worse
## than renaming).
if
test
-z
"
$gccflag
"
;
then
gccflag
=
-MD
,
fi
"
$@
"
-Wp
,
"
$gccflag$tmpdepfile
"
stat
=
$?
if
test
$stat
-eq
0
;
then
:
else
rm
-f
"
$tmpdepfile
"
exit
$stat
fi
rm
-f
"
$depfile
"
echo
"
$object
:
\\
"
>
"
$depfile
"
alpha
=
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
## The second -e expression handles DOS-style file names with drive letters.
sed
-e
's/^[^:]*: / /'
\
-e
's/^['
$alpha
']:\/[^:]*: / /'
<
"
$tmpdepfile
"
>>
"
$depfile
"
## This next piece of magic avoids the `deleted header file' problem.
## The problem is that when a header file which appears in a .P file
## is deleted, the dependency causes make to die (because there is
## typically no way to rebuild the header). We avoid this by adding
## dummy dependencies for each header file. Too bad gcc doesn't do
## this for us directly.
tr
' '
'
'
<
"
$tmpdepfile
"
|
## Some versions of gcc put a space before the `:'. On the theory
## that the space means something, we add a space to the output as
## well.
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed
-e
's/^\\$//'
-e
'/^$/d'
-e
'/:$/d'
|
sed
-e
's/$/ :/'
>>
"
$depfile
"
rm
-f
"
$tmpdepfile
"
;;
hp
)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit
1
;;
sgi
)
if
test
"
$libtool
"
=
yes
;
then
"
$@
"
"-Wp,-MDupdate,
$tmpdepfile
"
else
"
$@
"
-MDupdate
"
$tmpdepfile
"
fi
stat
=
$?
if
test
$stat
-eq
0
;
then
:
else
rm
-f
"
$tmpdepfile
"
exit
$stat
fi
rm
-f
"
$depfile
"
if
test
-f
"
$tmpdepfile
"
;
then
# yes, the sourcefile depend on other files
echo
"
$object
:
\\
"
>
"
$depfile
"
# Clip off the initial element (the dependent). Don't try to be
# clever and replace this with sed code, as IRIX sed won't handle
# lines with more than a fixed number of characters (4096 in
# IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
# the IRIX cc adds comments like `#:fec' to the end of the
# dependency line.
tr
' '
'
'
<
"
$tmpdepfile
"
\
|
sed
-e
's/^.*\.o://'
-e
's/#.*$//'
-e
'/^$/ d'
|
\
tr
'
'
' '
>>
$depfile
echo
>>
$depfile
# The second pass generates a dummy entry for each header file.
tr
' '
'
'
<
"
$tmpdepfile
"
\
|
sed
-e
's/^.*\.o://'
-e
's/#.*$//'
-e
'/^$/ d'
-e
's/$/:/'
\
>>
$depfile
else
# The sourcefile does not contain any dependencies, so just
# store a dummy comment line, to avoid errors with the Makefile
# "include basename.Plo" scheme.
echo
"#dummy"
>
"
$depfile
"
fi
rm
-f
"
$tmpdepfile
"
;;
aix
)
# The C for AIX Compiler uses -M and outputs the dependencies
# in a .u file. In older versions, this file always lives in the
# current directory. Also, the AIX compiler puts `$object:' at the
# start of each line; $object doesn't have directory information.
# Version 6 uses the directory in both cases.
stripped
=
`
echo
"
$object
"
|
sed
's/\(.*\)\..*$/\1/'
`
tmpdepfile
=
"
$stripped
.u"
if
test
"
$libtool
"
=
yes
;
then
"
$@
"
-Wc
,-M
else
"
$@
"
-M
fi
stat
=
$?
if
test
-f
"
$tmpdepfile
"
;
then
:
else
stripped
=
`
echo
"
$stripped
"
|
sed
's,^.*/,,'
`
tmpdepfile
=
"
$stripped
.u"
fi
if
test
$stat
-eq
0
;
then
:
else
rm
-f
"
$tmpdepfile
"
exit
$stat
fi
if
test
-f
"
$tmpdepfile
"
;
then
outname
=
"
$stripped
.o"
# Each line is of the form `foo.o: dependent.h'.
# Do two passes, one to just change these to
# `$object: dependent.h' and one to simply `dependent.h:'.
sed
-e
"s,^
$outname
:,
$object
:,"
<
"
$tmpdepfile
"
>
"
$depfile
"
sed
-e
"s,^
$outname
:
\(
.*
\)
$,
\1
:,"
<
"
$tmpdepfile
"
>>
"
$depfile
"
else
# The sourcefile does not contain any dependencies, so just
# store a dummy comment line, to avoid errors with the Makefile
# "include basename.Plo" scheme.
echo
"#dummy"
>
"
$depfile
"
fi
rm
-f
"
$tmpdepfile
"
;;
icc
)
# Intel's C compiler understands `-MD -MF file'. However on
# icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
# ICC 7.0 will fill foo.d with something like
# foo.o: sub/foo.c
# foo.o: sub/foo.h
# which is wrong. We want:
# sub/foo.o: sub/foo.c
# sub/foo.o: sub/foo.h
# sub/foo.c:
# sub/foo.h:
# ICC 7.1 will output
# foo.o: sub/foo.c sub/foo.h
# and will wrap long lines using \ :
# foo.o: sub/foo.c ... \
# sub/foo.h ... \
# ...
"
$@
"
-MD
-MF
"
$tmpdepfile
"
stat
=
$?
if
test
$stat
-eq
0
;
then
:
else
rm
-f
"
$tmpdepfile
"
exit
$stat
fi
rm
-f
"
$depfile
"
# Each line is of the form `foo.o: dependent.h',
# or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
# Do two passes, one to just change these to
# `$object: dependent.h' and one to simply `dependent.h:'.
sed
"s,^[^:]*:,
$object
:,"
<
"
$tmpdepfile
"
>
"
$depfile
"
# Some versions of the HPUX 10.20 sed can't process this invocation
# correctly. Breaking it into two sed invocations is a workaround.
sed
's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d'
<
"
$tmpdepfile
"
|
sed
-e
's/$/ :/'
>>
"
$depfile
"
rm
-f
"
$tmpdepfile
"
;;
tru64
)
# The Tru64 compiler uses -MD to generate dependencies as a side
# effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
# dependencies in `foo.d' instead, so we check for that too.
# Subdirectories are respected.
dir
=
`
echo
"
$object
"
|
sed
-e
's|/[^/]*$|/|'
`
test
"x
$dir
"
=
"x
$object
"
&&
dir
=
base
=
`
echo
"
$object
"
|
sed
-e
's|^.*/||'
-e
's/\.o$//'
-e
's/\.lo$//'
`
if
test
"
$libtool
"
=
yes
;
then
# With Tru64 cc, shared objects can also be used to make a
# static library. This mecanism is used in libtool 1.4 series to
# handle both shared and static libraries in a single compilation.
# With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
#
# With libtool 1.5 this exception was removed, and libtool now
# generates 2 separate objects for the 2 libraries. These two
# compilations output dependencies in in $dir.libs/$base.o.d and
# in $dir$base.o.d. We have to check for both files, because
# one of the two compilations can be disabled. We should prefer
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
# automatically cleaned when .libs/ is deleted, while ignoring
# the former would cause a distcleancheck panic.
tmpdepfile1
=
$dir
.libs/
$base
.lo.d
# libtool 1.4
tmpdepfile2
=
$dir$base
.o.d
# libtool 1.5
tmpdepfile3
=
$dir
.libs/
$base
.o.d
# libtool 1.5
tmpdepfile4
=
$dir
.libs/
$base
.d
# Compaq CCC V6.2-504
"
$@
"
-Wc
,-MD
else
tmpdepfile1
=
$dir$base
.o.d
tmpdepfile2
=
$dir$base
.d
tmpdepfile3
=
$dir$base
.d
tmpdepfile4
=
$dir$base
.d
"
$@
"
-MD
fi
stat
=
$?
if
test
$stat
-eq
0
;
then
:
else
rm
-f
"
$tmpdepfile1
"
"
$tmpdepfile2
"
"
$tmpdepfile3
"
"
$tmpdepfile4
"
exit
$stat
fi
for
tmpdepfile
in
"
$tmpdepfile1
"
"
$tmpdepfile2
"
"
$tmpdepfile3
"
"
$tmpdepfile4
"
do
test
-f
"
$tmpdepfile
"
&&
break
done
if
test
-f
"
$tmpdepfile
"
;
then
sed
-e
"s,^.*
\.
[a-z]*:,
$object
:,"
<
"
$tmpdepfile
"
>
"
$depfile
"
# That's a tab and a space in the [].
sed
-e
's,^.*\.[a-z]*:[ ]*,,'
-e
's,$,:,'
<
"
$tmpdepfile
"
>>
"
$depfile
"
else
echo
"#dummy"
>
"
$depfile
"
fi
rm
-f
"
$tmpdepfile
"
;;
#nosideeffect)
# This comment above is used by automake to tell side-effect
# dependency tracking mechanisms from slower ones.
dashmstdout
)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout, regardless of -o.
"
$@
"
||
exit
$?
# Remove the call to Libtool.
if
test
"
$libtool
"
=
yes
;
then
while
test
$1
!=
'--mode=compile'
;
do
shift
done
shift
fi
# Remove `-o $object'.
IFS
=
" "
for
arg
do
case
$arg
in
-o
)
shift
;;
$object
)
shift
;;
*
)
set
fnord
"
$@
"
"
$arg
"
shift
# fnord
shift
# $arg
;;
esac
done
test
-z
"
$dashmflag
"
&&
dashmflag
=
-M
# Require at least two characters before searching for `:'
# in the target name. This is to cope with DOS-style filenames:
# a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
"
$@
"
$dashmflag
|
sed
's:^[ ]*[^: ][^:][^:]*\:[ ]*:'
"
$object
"
'\: :'
>
"
$tmpdepfile
"
rm
-f
"
$depfile
"
cat
<
"
$tmpdepfile
"
>
"
$depfile
"
tr
' '
'
'
<
"
$tmpdepfile
"
|
\
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed
-e
's/^\\$//'
-e
'/^$/d'
-e
'/:$/d'
|
sed
-e
's/$/ :/'
>>
"
$depfile
"
rm
-f
"
$tmpdepfile
"
;;
dashXmstdout
)
# This case only exists to satisfy depend.m4. It is never actually
# run, as this mode is specially recognized in the preamble.
exit
1
;;
makedepend
)
"
$@
"
||
exit
$?
# Remove any Libtool call
if
test
"
$libtool
"
=
yes
;
then
while
test
$1
!=
'--mode=compile'
;
do
shift
done
shift
fi
# X makedepend
shift
cleared
=
no
for
arg
in
"
$@
"
;
do
case
$cleared
in
no
)
set
""
;
shift
cleared
=
yes
;;
esac
case
"
$arg
"
in
-D
*
|
-I
*
)
set
fnord
"
$@
"
"
$arg
"
;
shift
;;
# Strip any option that makedepend may not understand. Remove
# the object too, otherwise makedepend will parse it as a source file.
-
*
|
$object
)
;;
*
)
set
fnord
"
$@
"
"
$arg
"
;
shift
;;
esac
done
obj_suffix
=
"
`
echo
$object
|
sed
's/^.*\././'
`
"
touch
"
$tmpdepfile
"
${
MAKEDEPEND
-makedepend
}
-o
"
$obj_suffix
"
-f
"
$tmpdepfile
"
"
$@
"
rm
-f
"
$depfile
"
cat
<
"
$tmpdepfile
"
>
"
$depfile
"
sed
'1,2d'
"
$tmpdepfile
"
|
tr
' '
'
'
|
\
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed
-e
's/^\\$//'
-e
'/^$/d'
-e
'/:$/d'
|
sed
-e
's/$/ :/'
>>
"
$depfile
"
rm
-f
"
$tmpdepfile
"
"
$tmpdepfile
"
.bak
;;
cpp
)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout.
"
$@
"
||
exit
$?
# Remove the call to Libtool.
if
test
"
$libtool
"
=
yes
;
then
while
test
$1
!=
'--mode=compile'
;
do
shift
done
shift
fi
# Remove `-o $object'.
IFS
=
" "
for
arg
do
case
$arg
in
-o
)
shift
;;
$object
)
shift
;;
*
)
set
fnord
"
$@
"
"
$arg
"
shift
# fnord
shift
# $arg
;;
esac
done
"
$@
"
-E
|
sed
-n
-e
'/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p'
\
-e
'/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p'
|
sed
'$ s: \\$::'
>
"
$tmpdepfile
"
rm
-f
"
$depfile
"
echo
"
$object
:
\\
"
>
"
$depfile
"
cat
<
"
$tmpdepfile
"
>>
"
$depfile
"
sed
<
"
$tmpdepfile
"
'/^$/d;s/^ //;s/ \\$//;s/$/ :/'
>>
"
$depfile
"
rm
-f
"
$tmpdepfile
"
;;
msvisualcpp
)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout, regardless of -o,
# because we must use -o when running libtool.
"
$@
"
||
exit
$?
IFS
=
" "
for
arg
do
case
"
$arg
"
in
"-Gm"
|
"/Gm"
|
"-Gi"
|
"/Gi"
|
"-ZI"
|
"/ZI"
)
set
fnord
"
$@
"
shift
shift
;;
*
)
set
fnord
"
$@
"
"
$arg
"
shift
shift
;;
esac
done
"
$@
"
-E
|
sed
-n
'/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p'
|
sort
|
uniq
>
"
$tmpdepfile
"
rm
-f
"
$depfile
"
echo
"
$object
:
\\
"
>
"
$depfile
"
.
"
$tmpdepfile
"
|
sed
's% %\\ %g'
|
sed
-n
'/^\(.*\)$/ s:: \1 \\:p'
>>
"
$depfile
"
echo
" "
>>
"
$depfile
"
.
"
$tmpdepfile
"
|
sed
's% %\\ %g'
|
sed
-n
'/^\(.*\)$/ s::\1\::p'
>>
"
$depfile
"
rm
-f
"
$tmpdepfile
"
;;
none
)
exec
"
$@
"
;;
*
)
echo
"Unknown depmode
$depmode
"
1>&2
exit
1
;;
esac
exit
0
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$"
# End:
src/scanbuttond-0.2.3/include/scanbuttond/backend.h
0 → 100644
View file @
0fe94fc2
// backend.h: specification of the mandatory backend functions
// This file is part of scanbuttond.
// Copyleft )c( 2004-2005 by Bernhard Stiftner
//
// 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.
#ifndef __BACKEND_H_INCLUDED
#define __BACKEND_H_INCLUDED
#include "scanbuttond/scanbuttond.h"
/**
* \file backend.h
* \brief Backend function specification.
*
* This file specifies which functions a scanbuttond backend has to
* provide and how it is supposed to interact with with the rest
* of the system.
*/
/**
* Gets the name of this backend.
* \return the backend name
*/
const
char
*
scanbtnd_get_backend_name
(
void
);
/**
* Initializes the backend.
* This function makes the backend ready to operate and searches for supported
* devices (see scanbtnd_get_supported_devices()).
* \return 0 if successful, <0 otherwise
*/
int
scanbtnd_init
(
void
);
/**
* Refreshes the list of supported devices.
* After this function has been called, scanbtnd_get_supported_devices()
* should only return devices which are currently present on this system.
* \return 0 if successful, <0 otherwise
*/
int
scanbtnd_rescan
(
void
);
/**
* Returns a list of devices which are currently driven by this backend.
* The devices are stored in a single-linked list.
* Note that the device list does not automagically refresh after pluggin in or
* unplugging a device. You have to explicitly call scanbtnd_rescan() to do
* that.
* \return a linked list of supported scanner devices
*/
const
scanner_t
*
scanbtnd_get_supported_devices
(
void
);
/**
* Opens the given scanner device.
* This function must be called before using scanbtnd_get_button().
* After calling this function, it is usually not possible for another process
* to access the scanner until scanbtnd_close() is called.
* \param scanner the scanner device to be opened
* \return 0 if successful, <0 otherwise
* \retval -ENODEV if the device is no longer present (or the device list has to
* be refreshed). In this case, call scanbtnd_rescan() and try again.
* \retval -EBUSY if the device is currently used by another process.
* \retval -EINVAL if the device is already open
* \retval -ENOSYS if there is no connection method to communicate with the device
*/
int
scanbtnd_open
(
scanner_t
*
scanner
);
/**
* Closes the given scanner device.
* This function must be called when you've finished querying the scanner button
* status using scanbtnd_get_button().
* After calling this function, other processes may access the device again.
* \param scanner the scanner device to be closed
* \return 0 if successful, <0 otherwise
* \retval -EINVAL if the device is already closed
* \retval -ENOSYS if there is no connection method to communicate with the device
*/
int
scanbtnd_close
(
scanner_t
*
scanner
);
/**
* Queries the scanner's button status.
* \param scanner the scanner device
* \return the number of the currently pressed button, 0 if no button is currently
* pressed, or <0 if there was an error.
* \retval -EINVAL if the scanner device has not been opened before
*/
int
scanbtnd_get_button
(
scanner_t
*
scanner
);
/**
* Gets the SANE device name of this scanner.
* The returned string should look like "epson:libusb:003:017".
* \param scanner the scanner device
* \return the SANE device name, or NULL if the SANE device name cannot be determined.
*/
const
char
*
scanbtnd_get_sane_device_descriptor
(
scanner_t
*
scanner
);
/**
* Shuts down this backend.
* Cleans up some internal data structures and frees some memory.
* \return 0 if successful, <0 otherwise
*/
int
scanbtnd_exit
(
void
);
#endif
src/scanbuttond-0.2.3/include/scanbuttond/common.h
0 → 100644
View file @
0fe94fc2
// common.h: useful stuff
// This file is part of scanbuttond.
// Copyleft )c( 2006 by Bernhard Stiftner
//
// 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.
#ifndef __COMMON_H_INCLUDED
#define __COMMON_H_INCLUDED
#define STRINGIFY1(x) #x
#define STRINGIFY(x) STRINGIFY1(x)
#endif
src/scanbuttond-0.2.3/include/scanbuttond/config.h.in
0 → 100644
View file @
0fe94fc2
/* include/scanbuttond/config.h.in. Generated from configure.in by autoheader. */
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define to 1 if you have the <errno.h> header file. */
#undef HAVE_ERRNO_H
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the <syslog.h> header file. */
#undef HAVE_SYSLOG_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define to 1 if you have the <usb.h> header file. */
#undef HAVE_USB_H
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Version number of package */
#undef VERSION
src/scanbuttond-0.2.3/include/scanbuttond/libusbi.h
0 → 100644
View file @
0fe94fc2
// libusbi.h: libusb wrapper
// This file is part of scanbuttond.
// Copyleft )c( 2004-2006 by Bernhard Stiftner
//
// 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.
#ifndef __LIBUSBI_H_INCLUDED
#define __LIBUSBI_H_INCLUDED
#include <usb.h>
#include "scanbuttond/scanbuttond.h"
struct
libusb_device
;
typedef
struct
libusb_device
libusb_device_t
;
struct
libusb_device
{
int
vendorID
;
int
productID
;
char
*
location
;
// bus number + ":" + device number
struct
usb_device
*
device
;
struct
usb_dev_handle
*
handle
;
// automatically set by libusb_open(...)
int
interface
;
int
out_endpoint
;
int
in_endpoint
;
libusb_device_t
*
next
;
};
struct
libusb_handle
;
typedef
struct
libusb_handle
libusb_handle_t
;
struct
libusb_handle
{
libusb_device_t
*
devices
;
// rescanning info, timestamps???
};
libusb_handle_t
*
libusb_init
(
void
);
// GLOBAL number of changed devices (does not require a handle!)
int
libusb_get_changed_device_count
(
void
);
void
libusb_rescan
(
libusb_handle_t
*
handle
);
libusb_device_t
*
libusb_get_devices
(
libusb_handle_t
*
handle
);
// returns 0 on success, -EBUSY if the scanner is currently in use,
// or -ENODEV if the scanner does no longer exist
int
libusb_open
(
libusb_device_t
*
device
);
int
libusb_close
(
libusb_device_t
*
device
);
int
libusb_read
(
libusb_device_t
*
device
,
void
*
buffer
,
int
bytecount
);
int
libusb_write
(
libusb_device_t
*
device
,
void
*
buffer
,
int
bytecount
);
// flush bulk read queue
void
libusb_flush
(
libusb_device_t
*
device
);
int
libusb_control_msg
(
libusb_device_t
*
device
,
int
requesttype
,
int
request
,
int
value
,
int
index
,
void
*
bytes
,
int
size
);
void
libusb_exit
(
libusb_handle_t
*
handle
);
#endif
src/scanbuttond-0.2.3/include/scanbuttond/loader.h
0 → 100644
View file @
0fe94fc2
// loader.h: dynamic backend library loader
// This file is part of scanbuttond.
// Copyleft )c( 2005 by Bernhard Stiftner
//
// 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.
#ifndef __LOADER_H_INCLUDED
#define __LOADER_H_INCLUDED
#include "scanbuttond/scanbuttond.h"
struct
backend
;
typedef
struct
backend
backend_t
;
struct
backend
{
char
*
(
*
scanbtnd_get_backend_name
)(
void
);
int
(
*
scanbtnd_init
)(
void
);
int
(
*
scanbtnd_rescan
)(
void
);
scanner_t
*
(
*
scanbtnd_get_supported_devices
)(
void
);
int
(
*
scanbtnd_open
)(
scanner_t
*
scanner
);
int
(
*
scanbtnd_close
)(
scanner_t
*
scanner
);
int
(
*
scanbtnd_get_button
)(
scanner_t
*
scanner
);
char
*
(
*
scanbtnd_get_sane_device_descriptor
)(
scanner_t
*
scanner
);
int
(
*
scanbtnd_exit
)(
void
);
void
*
handle
;
// handle for dlopen/dlsym/dlclose
backend_t
*
next
;
};
backend_t
*
load_backend
(
const
char
*
filename
);
void
unload_backend
(
backend_t
*
backend
);
#endif
src/scanbuttond-0.2.3/include/scanbuttond/scanbuttond.h
0 → 100644
View file @
0fe94fc2
// scanbuttond.h: fundamental data types, constants, ...
// This file is part of scanbuttond.
// Copyleft )c( 2004-2005 by Bernhard Stiftner
//
// 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.
#ifndef SCANBUTTOND_H_INCLUDED
#define SCANBUTTOND_H_INCLUDED
/**
* \file scanbuttond.h
* \brief Fundamental data types, macros, functions, ...
*
* This header defines some fundamental things which are used
* throughout the whole project.
*/
// connection types
#define NUM_CONNECTIONS 2
#define CONNECTION_NONE 0
#define CONNECTION_LIBUSB 1
struct
scanner
;
typedef
struct
scanner
scanner_t
;
struct
scanner
{
char
*
vendor
;
char
*
product
;
int
connection
;
void
*
internal_dev_ptr
;
char
*
sane_device
;
void
*
meta_info
;
int
lastbutton
;
int
is_open
;
int
num_buttons
;
scanner_t
*
next
;
};
char
*
scanbtnd_get_connection_name
(
int
connection
);
#endif
src/scanbuttond-0.2.3/install-sh
0 → 100644
View file @
0fe94fc2
#!/bin/sh
# install - install a program, script, or datafile
scriptversion
=
2005-05-14.22
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
# following copyright and license.
#
# Copyright (C) 1994 X Consortium
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to
# deal in the Software without restriction, including without limitation the
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
# sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
# Except as contained in this notice, the name of the X Consortium shall not
# be used in advertising or otherwise to promote the sale, use or other deal-
# ings in this Software without prior written authorization from the X Consor-
# tium.
#
#
# FSF changes to this file are in the public domain.
#
# 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
}
"
chmodcmd
=
"
$chmodprog
0755"
chowncmd
=
chgrpcmd
=
stripcmd
=
rmcmd
=
"
$rmprog
-f"
mvcmd
=
"
$mvprog
"
src
=
dst
=
dir_arg
=
dstarg
=
no_target_directory
=
usage
=
"Usage:
$0
[OPTION]... [-T] SRCFILE DSTFILE
or:
$0
[OPTION]... SRCFILES... DIRECTORY
or:
$0
[OPTION]... -t DIRECTORY SRCFILES...
or:
$0
[OPTION]... -d DIRECTORIES...
In the 1st form, copy SRCFILE to DSTFILE.
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
In the 4th, create DIRECTORIES.
Options:
-c (ignored)
-d create directories instead of installing files.
-g GROUP
$chgrpprog
installed files to GROUP.
-m MODE
$chmodprog
installed files to MODE.
-o USER
$chownprog
installed files to USER.
-s
$stripprog
installed files.
-t DIRECTORY install into DIRECTORY.
-T report an error if DSTFILE is a directory.
--help display this help and exit.
--version display version info and exit.
Environment variables override the default commands:
CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
"
while
test
-n
"
$1
"
;
do
case
$1
in
-c
)
shift
continue
;;
-d
)
dir_arg
=
true
shift
continue
;;
-g
)
chgrpcmd
=
"
$chgrpprog
$2
"
shift
shift
continue
;;
--help
)
echo
"
$usage
"
;
exit
$?
;;
-m
)
chmodcmd
=
"
$chmodprog
$2
"
shift
shift
continue
;;
-o
)
chowncmd
=
"
$chownprog
$2
"
shift
shift
continue
;;
-s
)
stripcmd
=
$stripprog
shift
continue
;;
-t
)
dstarg
=
$2
shift
shift
continue
;;
-T
)
no_target_directory
=
true
shift
continue
;;
--version
)
echo
"
$0
$scriptversion
"
;
exit
$?
;;
*
)
# When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified.
test
-n
"
$dir_arg$dstarg
"
&&
break
# Otherwise, the last argument is the destination. Remove it from $@.
for
arg
do
if
test
-n
"
$dstarg
"
;
then
# $@ is not empty: it contains at least $arg.
set
fnord
"
$@
"
"
$dstarg
"
shift
# fnord
fi
shift
# arg
dstarg
=
$arg
done
break
;;
esac
done
if
test
-z
"
$1
"
;
then
if
test
-z
"
$dir_arg
"
;
then
echo
"
$0
: no input file specified."
>
&2
exit
1
fi
# It's OK to call `install-sh -d' without argument.
# This can happen when creating conditional directories.
exit
0
fi
for
src
do
# Protect names starting with `-'.
case
$src
in
-
*
)
src
=
./
$src
;;
esac
if
test
-n
"
$dir_arg
"
;
then
dst
=
$src
src
=
if
test
-d
"
$dst
"
;
then
mkdircmd
=
:
chmodcmd
=
else
mkdircmd
=
$mkdirprog
fi
else
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if
test
!
-f
"
$src
"
&&
test
!
-d
"
$src
"
;
then
echo
"
$0
:
$src
does not exist."
>
&2
exit
1
fi
if
test
-z
"
$dstarg
"
;
then
echo
"
$0
: no destination specified."
>
&2
exit
1
fi
dst
=
$dstarg
# Protect names starting with `-'.
case
$dst
in
-
*
)
dst
=
./
$dst
;;
esac
# If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
if
test
-d
"
$dst
"
;
then
if
test
-n
"
$no_target_directory
"
;
then
echo
"
$0
:
$dstarg
: Is a directory"
>
&2
exit
1
fi
dst
=
$dst
/
`
basename
"
$src
"
`
fi
fi
# This sed command emulates the dirname command.
dstdir
=
`
echo
"
$dst
"
|
sed
-e
's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'
`
# Make sure that the destination directory exists.
# Skip lots of stat calls in the usual case.
if
test
!
-d
"
$dstdir
"
;
then
defaultIFS
=
'
'
IFS
=
"
${
IFS
-
$defaultIFS
}
"
oIFS
=
$IFS
# Some sh's can't handle IFS=/ for some reason.
IFS
=
'%'
set
x
`
echo
"
$dstdir
"
|
sed
-e
's@/@%@g'
-e
's@^%@/@'
`
shift
IFS
=
$oIFS
pathcomp
=
while
test
$#
-ne
0
;
do
pathcomp
=
$pathcomp$1
shift
if
test
!
-d
"
$pathcomp
"
;
then
$mkdirprog
"
$pathcomp
"
# mkdir can fail with a `File exist' error in case several
# install-sh are creating the directory concurrently. This
# is OK.
test
-d
"
$pathcomp
"
||
exit
fi
pathcomp
=
$pathcomp
/
done
fi
if
test
-n
"
$dir_arg
"
;
then
$doit
$mkdircmd
"
$dst
"
\
&&
{
test
-z
"
$chowncmd
"
||
$doit
$chowncmd
"
$dst
"
;
}
\
&&
{
test
-z
"
$chgrpcmd
"
||
$doit
$chgrpcmd
"
$dst
"
;
}
\
&&
{
test
-z
"
$stripcmd
"
||
$doit
$stripcmd
"
$dst
"
;
}
\
&&
{
test
-z
"
$chmodcmd
"
||
$doit
$chmodcmd
"
$dst
"
;
}
else
dstfile
=
`
basename
"
$dst
"
`
# Make a couple of temp file names in the proper directory.
dsttmp
=
$dstdir
/_inst.
$$
_
rmtmp
=
$dstdir
/_rm.
$$
_
# Trap to clean up those temp files at exit.
trap
'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret'
0
trap
'(exit $?); exit'
1 2 13 15
# Copy the file name to the temp name.
$doit
$cpprog
"
$src
"
"
$dsttmp
"
&&
# 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 $cpprog $src $dsttmp" command.
#
{
test
-z
"
$chowncmd
"
||
$doit
$chowncmd
"
$dsttmp
"
;
}
\
&&
{
test
-z
"
$chgrpcmd
"
||
$doit
$chgrpcmd
"
$dsttmp
"
;
}
\
&&
{
test
-z
"
$stripcmd
"
||
$doit
$stripcmd
"
$dsttmp
"
;
}
\
&&
{
test
-z
"
$chmodcmd
"
||
$doit
$chmodcmd
"
$dsttmp
"
;
}
&&
# Now rename the file to the real destination.
{
$doit
$mvcmd
-f
"
$dsttmp
"
"
$dstdir
/
$dstfile
"
2>/dev/null
\
||
{
# The rename failed, perhaps because mv can't rename something else
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
# Now remove or move aside any old file at destination location.
# We try this two ways since rm can't unlink itself on some
# systems and the destination file might be busy for other
# reasons. In this case, the final cleanup might fail but the new
# file should still install successfully.
{
if
test
-f
"
$dstdir
/
$dstfile
"
;
then
$doit
$rmcmd
-f
"
$dstdir
/
$dstfile
"
2>/dev/null
\
||
$doit
$mvcmd
-f
"
$dstdir
/
$dstfile
"
"
$rmtmp
"
2>/dev/null
\
||
{
echo
"
$0
: cannot unlink or rename
$dstdir
/
$dstfile
"
>
&2
(
exit
1
)
;
exit
1
}
else
:
fi
}
&&
# Now rename the file to the real destination.
$doit
$mvcmd
"
$dsttmp
"
"
$dstdir
/
$dstfile
"
}
}
fi
||
{
(
exit
1
)
;
exit
1
;
}
done
# The final little trick to "correctly" pass the exit status to the exit trap.
{
(
exit
0
)
;
exit
0
}
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$"
# End:
src/scanbuttond-0.2.3/interface/Makefile.am
0 → 100644
View file @
0fe94fc2
lib_LTLIBRARIES
=
libscanbtnd-interface_usb.la
libscanbtnd_interface_usb_la_SOURCES
=
libusbi.c ../include/scanbuttond/libusbi.h
libscanbtnd_interface_usb_la_LDFLAGS
=
-lusb
-version-info
1:0:0
INCLUDES
=
$(all_includes)
-I
$(top_builddir)
/include
-I
.
Prev
1
2
3
Next
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment