Codebase list nemo-fileroller / 3f4c64b
Imported Upstream version 2.6.1 Maximiliano Curia 8 years ago
8 changed file(s) with 70 addition(s) and 5032 deletion(s). Raw diff Collapse all Expand all
+0
-236
INSTALL less more
0 Installation Instructions
1 *************************
2
3 Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
4 Software Foundation, Inc.
5
6 This file is free documentation; the Free Software Foundation gives
7 unlimited permission to copy, distribute and modify it.
8
9 Basic Installation
10 ==================
11
12 These are generic installation instructions.
13
14 The `configure' shell script attempts to guess correct values for
15 various system-dependent variables used during compilation. It uses
16 those values to create a `Makefile' in each directory of the package.
17 It may also create one or more `.h' files containing system-dependent
18 definitions. Finally, it creates a shell script `config.status' that
19 you can run in the future to recreate the current configuration, and a
20 file `config.log' containing compiler output (useful mainly for
21 debugging `configure').
22
23 It can also use an optional file (typically called `config.cache'
24 and enabled with `--cache-file=config.cache' or simply `-C') that saves
25 the results of its tests to speed up reconfiguring. (Caching is
26 disabled by default to prevent problems with accidental use of stale
27 cache files.)
28
29 If you need to do unusual things to compile the package, please try
30 to figure out how `configure' could check whether to do them, and mail
31 diffs or instructions to the address given in the `README' so they can
32 be considered for the next release. If you are using the cache, and at
33 some point `config.cache' contains results you don't want to keep, you
34 may remove or edit it.
35
36 The file `configure.ac' (or `configure.in') is used to create
37 `configure' by a program called `autoconf'. You only need
38 `configure.ac' if you want to change it or regenerate `configure' using
39 a newer version of `autoconf'.
40
41 The simplest way to compile this package is:
42
43 1. `cd' to the directory containing the package's source code and type
44 `./configure' to configure the package for your system. If you're
45 using `csh' on an old version of System V, you might need to type
46 `sh ./configure' instead to prevent `csh' from trying to execute
47 `configure' itself.
48
49 Running `configure' takes awhile. While running, it prints some
50 messages telling which features it is checking for.
51
52 2. Type `make' to compile the package.
53
54 3. Optionally, type `make check' to run any self-tests that come with
55 the package.
56
57 4. Type `make install' to install the programs and any data files and
58 documentation.
59
60 5. You can remove the program binaries and object files from the
61 source code directory by typing `make clean'. To also remove the
62 files that `configure' created (so you can compile the package for
63 a different kind of computer), type `make distclean'. There is
64 also a `make maintainer-clean' target, but that is intended mainly
65 for the package's developers. If you use it, you may have to get
66 all sorts of other programs in order to regenerate files that came
67 with the distribution.
68
69 Compilers and Options
70 =====================
71
72 Some systems require unusual options for compilation or linking that the
73 `configure' script does not know about. Run `./configure --help' for
74 details on some of the pertinent environment variables.
75
76 You can give `configure' initial values for configuration parameters
77 by setting variables in the command line or in the environment. Here
78 is an example:
79
80 ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
81
82 *Note Defining Variables::, for more details.
83
84 Compiling For Multiple Architectures
85 ====================================
86
87 You can compile the package for more than one kind of computer at the
88 same time, by placing the object files for each architecture in their
89 own directory. To do this, you must use a version of `make' that
90 supports the `VPATH' variable, such as GNU `make'. `cd' to the
91 directory where you want the object files and executables to go and run
92 the `configure' script. `configure' automatically checks for the
93 source code in the directory that `configure' is in and in `..'.
94
95 If you have to use a `make' that does not support the `VPATH'
96 variable, you have to compile the package for one architecture at a
97 time in the source code directory. After you have installed the
98 package for one architecture, use `make distclean' before reconfiguring
99 for another architecture.
100
101 Installation Names
102 ==================
103
104 By default, `make install' installs the package's commands under
105 `/usr/local/bin', include files under `/usr/local/include', etc. You
106 can specify an installation prefix other than `/usr/local' by giving
107 `configure' the option `--prefix=PREFIX'.
108
109 You can specify separate installation prefixes for
110 architecture-specific files and architecture-independent files. If you
111 pass the option `--exec-prefix=PREFIX' to `configure', the package uses
112 PREFIX as the prefix for installing programs and libraries.
113 Documentation and other data files still use the regular prefix.
114
115 In addition, if you use an unusual directory layout you can give
116 options like `--bindir=DIR' to specify different values for particular
117 kinds of files. Run `configure --help' for a list of the directories
118 you can set and what kinds of files go in them.
119
120 If the package supports it, you can cause programs to be installed
121 with an extra prefix or suffix on their names by giving `configure' the
122 option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
123
124 Optional Features
125 =================
126
127 Some packages pay attention to `--enable-FEATURE' options to
128 `configure', where FEATURE indicates an optional part of the package.
129 They may also pay attention to `--with-PACKAGE' options, where PACKAGE
130 is something like `gnu-as' or `x' (for the X Window System). The
131 `README' should mention any `--enable-' and `--with-' options that the
132 package recognizes.
133
134 For packages that use the X Window System, `configure' can usually
135 find the X include and library files automatically, but if it doesn't,
136 you can use the `configure' options `--x-includes=DIR' and
137 `--x-libraries=DIR' to specify their locations.
138
139 Specifying the System Type
140 ==========================
141
142 There may be some features `configure' cannot figure out automatically,
143 but needs to determine by the type of machine the package will run on.
144 Usually, assuming the package is built to be run on the _same_
145 architectures, `configure' can figure that out, but if it prints a
146 message saying it cannot guess the machine type, give it the
147 `--build=TYPE' option. TYPE can either be a short name for the system
148 type, such as `sun4', or a canonical name which has the form:
149
150 CPU-COMPANY-SYSTEM
151
152 where SYSTEM can have one of these forms:
153
154 OS KERNEL-OS
155
156 See the file `config.sub' for the possible values of each field. If
157 `config.sub' isn't included in this package, then this package doesn't
158 need to know the machine type.
159
160 If you are _building_ compiler tools for cross-compiling, you should
161 use the option `--target=TYPE' to select the type of system they will
162 produce code for.
163
164 If you want to _use_ a cross compiler, that generates code for a
165 platform different from the build platform, you should specify the
166 "host" platform (i.e., that on which the generated programs will
167 eventually be run) with `--host=TYPE'.
168
169 Sharing Defaults
170 ================
171
172 If you want to set default values for `configure' scripts to share, you
173 can create a site shell script called `config.site' that gives default
174 values for variables like `CC', `cache_file', and `prefix'.
175 `configure' looks for `PREFIX/share/config.site' if it exists, then
176 `PREFIX/etc/config.site' if it exists. Or, you can set the
177 `CONFIG_SITE' environment variable to the location of the site script.
178 A warning: not all `configure' scripts look for a site script.
179
180 Defining Variables
181 ==================
182
183 Variables not defined in a site shell script can be set in the
184 environment passed to `configure'. However, some packages may run
185 configure again during the build, and the customized values of these
186 variables may be lost. In order to avoid this problem, you should set
187 them in the `configure' command line, using `VAR=value'. For example:
188
189 ./configure CC=/usr/local2/bin/gcc
190
191 causes the specified `gcc' to be used as the C compiler (unless it is
192 overridden in the site shell script). Here is a another example:
193
194 /bin/bash ./configure CONFIG_SHELL=/bin/bash
195
196 Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
197 configuration-related scripts to be executed by `/bin/bash'.
198
199 `configure' Invocation
200 ======================
201
202 `configure' recognizes the following options to control how it operates.
203
204 `--help'
205 `-h'
206 Print a summary of the options to `configure', and exit.
207
208 `--version'
209 `-V'
210 Print the version of Autoconf used to generate the `configure'
211 script, and exit.
212
213 `--cache-file=FILE'
214 Enable the cache: use and save the results of the tests in FILE,
215 traditionally `config.cache'. FILE defaults to `/dev/null' to
216 disable caching.
217
218 `--config-cache'
219 `-C'
220 Alias for `--cache-file=config.cache'.
221
222 `--quiet'
223 `--silent'
224 `-q'
225 Do not print messages saying which checks are being made. To
226 suppress all normal output, redirect it to `/dev/null' (any error
227 messages will still be shown).
228
229 `--srcdir=DIR'
230 Look for the package's source code in directory DIR. Usually
231 `configure' can determine that directory automatically.
232
233 `configure' also accepts some other, not widely useful, options. Run
234 `configure --help' for more details.
235
+0
-1561
config.guess less more
0 #! /bin/sh
1 # Attempt to guess a canonical system name.
2 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
3 # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
4 # Free Software Foundation, Inc.
5
6 timestamp='2009-04-27'
7
8 # This file is free software; you can redistribute it and/or modify it
9 # under the terms of the GNU General Public License as published by
10 # the Free Software Foundation; either version 2 of the License, or
11 # (at your option) any later version.
12 #
13 # This program is distributed in the hope that it will be useful, but
14 # WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 # General Public License for more details.
17 #
18 # You should have received a copy of the GNU General Public License
19 # along with this program; if not, write to the Free Software
20 # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
21 # 02110-1301, USA.
22 #
23 # As a special exception to the GNU General Public License, if you
24 # distribute this file as part of a program that contains a
25 # configuration script generated by Autoconf, you may include it under
26 # the same distribution terms that you use for the rest of that program.
27
28
29 # Originally written by Per Bothner <per@bothner.com>.
30 # Please send patches to <config-patches@gnu.org>. Submit a context
31 # diff and a properly formatted ChangeLog entry.
32 #
33 # This script attempts to guess a canonical system name similar to
34 # config.sub. If it succeeds, it prints the system name on stdout, and
35 # exits with 0. Otherwise, it exits with 1.
36 #
37 # The plan is that this can be called by configure scripts if you
38 # don't specify an explicit build system type.
39
40 me=`echo "$0" | sed -e 's,.*/,,'`
41
42 usage="\
43 Usage: $0 [OPTION]
44
45 Output the configuration name of the system \`$me' is run on.
46
47 Operation modes:
48 -h, --help print this help, then exit
49 -t, --time-stamp print date of last modification, then exit
50 -v, --version print version number, then exit
51
52 Report bugs and patches to <config-patches@gnu.org>."
53
54 version="\
55 GNU config.guess ($timestamp)
56
57 Originally written by Per Bothner.
58 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
59 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
60
61 This is free software; see the source for copying conditions. There is NO
62 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
63
64 help="
65 Try \`$me --help' for more information."
66
67 # Parse command line
68 while test $# -gt 0 ; do
69 case $1 in
70 --time-stamp | --time* | -t )
71 echo "$timestamp" ; exit ;;
72 --version | -v )
73 echo "$version" ; exit ;;
74 --help | --h* | -h )
75 echo "$usage"; exit ;;
76 -- ) # Stop option processing
77 shift; break ;;
78 - ) # Use stdin as input.
79 break ;;
80 -* )
81 echo "$me: invalid option $1$help" >&2
82 exit 1 ;;
83 * )
84 break ;;
85 esac
86 done
87
88 if test $# != 0; then
89 echo "$me: too many arguments$help" >&2
90 exit 1
91 fi
92
93 trap 'exit 1' 1 2 15
94
95 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
96 # compiler to aid in system detection is discouraged as it requires
97 # temporary files to be created and, as you can see below, it is a
98 # headache to deal with in a portable fashion.
99
100 # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
101 # use `HOST_CC' if defined, but it is deprecated.
102
103 # Portable tmp directory creation inspired by the Autoconf team.
104
105 set_cc_for_build='
106 trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
107 trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
108 : ${TMPDIR=/tmp} ;
109 { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
110 { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
111 { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
112 { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
113 dummy=$tmp/dummy ;
114 tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
115 case $CC_FOR_BUILD,$HOST_CC,$CC in
116 ,,) echo "int x;" > $dummy.c ;
117 for c in cc gcc c89 c99 ; do
118 if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
119 CC_FOR_BUILD="$c"; break ;
120 fi ;
121 done ;
122 if test x"$CC_FOR_BUILD" = x ; then
123 CC_FOR_BUILD=no_compiler_found ;
124 fi
125 ;;
126 ,,*) CC_FOR_BUILD=$CC ;;
127 ,*,*) CC_FOR_BUILD=$HOST_CC ;;
128 esac ; set_cc_for_build= ;'
129
130 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
131 # (ghazi@noc.rutgers.edu 1994-08-24)
132 if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
133 PATH=$PATH:/.attbin ; export PATH
134 fi
135
136 UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
137 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
138 UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
139 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
140
141 # Note: order is significant - the case branches are not exclusive.
142
143 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
144 *:NetBSD:*:*)
145 # NetBSD (nbsd) targets should (where applicable) match one or
146 # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
147 # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
148 # switched to ELF, *-*-netbsd* would select the old
149 # object file format. This provides both forward
150 # compatibility and a consistent mechanism for selecting the
151 # object file format.
152 #
153 # Note: NetBSD doesn't particularly care about the vendor
154 # portion of the name. We always set it to "unknown".
155 sysctl="sysctl -n hw.machine_arch"
156 UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
157 /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
158 case "${UNAME_MACHINE_ARCH}" in
159 armeb) machine=armeb-unknown ;;
160 arm*) machine=arm-unknown ;;
161 sh3el) machine=shl-unknown ;;
162 sh3eb) machine=sh-unknown ;;
163 sh5el) machine=sh5le-unknown ;;
164 *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
165 esac
166 # The Operating System including object format, if it has switched
167 # to ELF recently, or will in the future.
168 case "${UNAME_MACHINE_ARCH}" in
169 arm*|i386|m68k|ns32k|sh3*|sparc|vax)
170 eval $set_cc_for_build
171 if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
172 | grep __ELF__ >/dev/null
173 then
174 # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
175 # Return netbsd for either. FIX?
176 os=netbsd
177 else
178 os=netbsdelf
179 fi
180 ;;
181 *)
182 os=netbsd
183 ;;
184 esac
185 # The OS release
186 # Debian GNU/NetBSD machines have a different userland, and
187 # thus, need a distinct triplet. However, they do not need
188 # kernel version information, so it can be replaced with a
189 # suitable tag, in the style of linux-gnu.
190 case "${UNAME_VERSION}" in
191 Debian*)
192 release='-gnu'
193 ;;
194 *)
195 release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
196 ;;
197 esac
198 # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
199 # contains redundant information, the shorter form:
200 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
201 echo "${machine}-${os}${release}"
202 exit ;;
203 *:OpenBSD:*:*)
204 UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
205 echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
206 exit ;;
207 *:ekkoBSD:*:*)
208 echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
209 exit ;;
210 *:SolidBSD:*:*)
211 echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
212 exit ;;
213 macppc:MirBSD:*:*)
214 echo powerpc-unknown-mirbsd${UNAME_RELEASE}
215 exit ;;
216 *:MirBSD:*:*)
217 echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
218 exit ;;
219 alpha:OSF1:*:*)
220 case $UNAME_RELEASE in
221 *4.0)
222 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
223 ;;
224 *5.*)
225 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
226 ;;
227 esac
228 # According to Compaq, /usr/sbin/psrinfo has been available on
229 # OSF/1 and Tru64 systems produced since 1995. I hope that
230 # covers most systems running today. This code pipes the CPU
231 # types through head -n 1, so we only detect the type of CPU 0.
232 ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
233 case "$ALPHA_CPU_TYPE" in
234 "EV4 (21064)")
235 UNAME_MACHINE="alpha" ;;
236 "EV4.5 (21064)")
237 UNAME_MACHINE="alpha" ;;
238 "LCA4 (21066/21068)")
239 UNAME_MACHINE="alpha" ;;
240 "EV5 (21164)")
241 UNAME_MACHINE="alphaev5" ;;
242 "EV5.6 (21164A)")
243 UNAME_MACHINE="alphaev56" ;;
244 "EV5.6 (21164PC)")
245 UNAME_MACHINE="alphapca56" ;;
246 "EV5.7 (21164PC)")
247 UNAME_MACHINE="alphapca57" ;;
248 "EV6 (21264)")
249 UNAME_MACHINE="alphaev6" ;;
250 "EV6.7 (21264A)")
251 UNAME_MACHINE="alphaev67" ;;
252 "EV6.8CB (21264C)")
253 UNAME_MACHINE="alphaev68" ;;
254 "EV6.8AL (21264B)")
255 UNAME_MACHINE="alphaev68" ;;
256 "EV6.8CX (21264D)")
257 UNAME_MACHINE="alphaev68" ;;
258 "EV6.9A (21264/EV69A)")
259 UNAME_MACHINE="alphaev69" ;;
260 "EV7 (21364)")
261 UNAME_MACHINE="alphaev7" ;;
262 "EV7.9 (21364A)")
263 UNAME_MACHINE="alphaev79" ;;
264 esac
265 # A Pn.n version is a patched version.
266 # A Vn.n version is a released version.
267 # A Tn.n version is a released field test version.
268 # A Xn.n version is an unreleased experimental baselevel.
269 # 1.2 uses "1.2" for uname -r.
270 echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
271 exit ;;
272 Alpha\ *:Windows_NT*:*)
273 # How do we know it's Interix rather than the generic POSIX subsystem?
274 # Should we change UNAME_MACHINE based on the output of uname instead
275 # of the specific Alpha model?
276 echo alpha-pc-interix
277 exit ;;
278 21064:Windows_NT:50:3)
279 echo alpha-dec-winnt3.5
280 exit ;;
281 Amiga*:UNIX_System_V:4.0:*)
282 echo m68k-unknown-sysv4
283 exit ;;
284 *:[Aa]miga[Oo][Ss]:*:*)
285 echo ${UNAME_MACHINE}-unknown-amigaos
286 exit ;;
287 *:[Mm]orph[Oo][Ss]:*:*)
288 echo ${UNAME_MACHINE}-unknown-morphos
289 exit ;;
290 *:OS/390:*:*)
291 echo i370-ibm-openedition
292 exit ;;
293 *:z/VM:*:*)
294 echo s390-ibm-zvmoe
295 exit ;;
296 *:OS400:*:*)
297 echo powerpc-ibm-os400
298 exit ;;
299 arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
300 echo arm-acorn-riscix${UNAME_RELEASE}
301 exit ;;
302 arm:riscos:*:*|arm:RISCOS:*:*)
303 echo arm-unknown-riscos
304 exit ;;
305 SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
306 echo hppa1.1-hitachi-hiuxmpp
307 exit ;;
308 Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
309 # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
310 if test "`(/bin/universe) 2>/dev/null`" = att ; then
311 echo pyramid-pyramid-sysv3
312 else
313 echo pyramid-pyramid-bsd
314 fi
315 exit ;;
316 NILE*:*:*:dcosx)
317 echo pyramid-pyramid-svr4
318 exit ;;
319 DRS?6000:unix:4.0:6*)
320 echo sparc-icl-nx6
321 exit ;;
322 DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
323 case `/usr/bin/uname -p` in
324 sparc) echo sparc-icl-nx7; exit ;;
325 esac ;;
326 s390x:SunOS:*:*)
327 echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
328 exit ;;
329 sun4H:SunOS:5.*:*)
330 echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
331 exit ;;
332 sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
333 echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
334 exit ;;
335 i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
336 eval $set_cc_for_build
337 SUN_ARCH="i386"
338 # If there is a compiler, see if it is configured for 64-bit objects.
339 # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
340 # This test works for both compilers.
341 if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
342 if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
343 (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
344 grep IS_64BIT_ARCH >/dev/null
345 then
346 SUN_ARCH="x86_64"
347 fi
348 fi
349 echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
350 exit ;;
351 sun4*:SunOS:6*:*)
352 # According to config.sub, this is the proper way to canonicalize
353 # SunOS6. Hard to guess exactly what SunOS6 will be like, but
354 # it's likely to be more like Solaris than SunOS4.
355 echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
356 exit ;;
357 sun4*:SunOS:*:*)
358 case "`/usr/bin/arch -k`" in
359 Series*|S4*)
360 UNAME_RELEASE=`uname -v`
361 ;;
362 esac
363 # Japanese Language versions have a version number like `4.1.3-JL'.
364 echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
365 exit ;;
366 sun3*:SunOS:*:*)
367 echo m68k-sun-sunos${UNAME_RELEASE}
368 exit ;;
369 sun*:*:4.2BSD:*)
370 UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
371 test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
372 case "`/bin/arch`" in
373 sun3)
374 echo m68k-sun-sunos${UNAME_RELEASE}
375 ;;
376 sun4)
377 echo sparc-sun-sunos${UNAME_RELEASE}
378 ;;
379 esac
380 exit ;;
381 aushp:SunOS:*:*)
382 echo sparc-auspex-sunos${UNAME_RELEASE}
383 exit ;;
384 # The situation for MiNT is a little confusing. The machine name
385 # can be virtually everything (everything which is not
386 # "atarist" or "atariste" at least should have a processor
387 # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
388 # to the lowercase version "mint" (or "freemint"). Finally
389 # the system name "TOS" denotes a system which is actually not
390 # MiNT. But MiNT is downward compatible to TOS, so this should
391 # be no problem.
392 atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
393 echo m68k-atari-mint${UNAME_RELEASE}
394 exit ;;
395 atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
396 echo m68k-atari-mint${UNAME_RELEASE}
397 exit ;;
398 *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
399 echo m68k-atari-mint${UNAME_RELEASE}
400 exit ;;
401 milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
402 echo m68k-milan-mint${UNAME_RELEASE}
403 exit ;;
404 hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
405 echo m68k-hades-mint${UNAME_RELEASE}
406 exit ;;
407 *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
408 echo m68k-unknown-mint${UNAME_RELEASE}
409 exit ;;
410 m68k:machten:*:*)
411 echo m68k-apple-machten${UNAME_RELEASE}
412 exit ;;
413 powerpc:machten:*:*)
414 echo powerpc-apple-machten${UNAME_RELEASE}
415 exit ;;
416 RISC*:Mach:*:*)
417 echo mips-dec-mach_bsd4.3
418 exit ;;
419 RISC*:ULTRIX:*:*)
420 echo mips-dec-ultrix${UNAME_RELEASE}
421 exit ;;
422 VAX*:ULTRIX*:*:*)
423 echo vax-dec-ultrix${UNAME_RELEASE}
424 exit ;;
425 2020:CLIX:*:* | 2430:CLIX:*:*)
426 echo clipper-intergraph-clix${UNAME_RELEASE}
427 exit ;;
428 mips:*:*:UMIPS | mips:*:*:RISCos)
429 eval $set_cc_for_build
430 sed 's/^ //' << EOF >$dummy.c
431 #ifdef __cplusplus
432 #include <stdio.h> /* for printf() prototype */
433 int main (int argc, char *argv[]) {
434 #else
435 int main (argc, argv) int argc; char *argv[]; {
436 #endif
437 #if defined (host_mips) && defined (MIPSEB)
438 #if defined (SYSTYPE_SYSV)
439 printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
440 #endif
441 #if defined (SYSTYPE_SVR4)
442 printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
443 #endif
444 #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
445 printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
446 #endif
447 #endif
448 exit (-1);
449 }
450 EOF
451 $CC_FOR_BUILD -o $dummy $dummy.c &&
452 dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
453 SYSTEM_NAME=`$dummy $dummyarg` &&
454 { echo "$SYSTEM_NAME"; exit; }
455 echo mips-mips-riscos${UNAME_RELEASE}
456 exit ;;
457 Motorola:PowerMAX_OS:*:*)
458 echo powerpc-motorola-powermax
459 exit ;;
460 Motorola:*:4.3:PL8-*)
461 echo powerpc-harris-powermax
462 exit ;;
463 Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
464 echo powerpc-harris-powermax
465 exit ;;
466 Night_Hawk:Power_UNIX:*:*)
467 echo powerpc-harris-powerunix
468 exit ;;
469 m88k:CX/UX:7*:*)
470 echo m88k-harris-cxux7
471 exit ;;
472 m88k:*:4*:R4*)
473 echo m88k-motorola-sysv4
474 exit ;;
475 m88k:*:3*:R3*)
476 echo m88k-motorola-sysv3
477 exit ;;
478 AViiON:dgux:*:*)
479 # DG/UX returns AViiON for all architectures
480 UNAME_PROCESSOR=`/usr/bin/uname -p`
481 if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
482 then
483 if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
484 [ ${TARGET_BINARY_INTERFACE}x = x ]
485 then
486 echo m88k-dg-dgux${UNAME_RELEASE}
487 else
488 echo m88k-dg-dguxbcs${UNAME_RELEASE}
489 fi
490 else
491 echo i586-dg-dgux${UNAME_RELEASE}
492 fi
493 exit ;;
494 M88*:DolphinOS:*:*) # DolphinOS (SVR3)
495 echo m88k-dolphin-sysv3
496 exit ;;
497 M88*:*:R3*:*)
498 # Delta 88k system running SVR3
499 echo m88k-motorola-sysv3
500 exit ;;
501 XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
502 echo m88k-tektronix-sysv3
503 exit ;;
504 Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
505 echo m68k-tektronix-bsd
506 exit ;;
507 *:IRIX*:*:*)
508 echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
509 exit ;;
510 ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
511 echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
512 exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
513 i*86:AIX:*:*)
514 echo i386-ibm-aix
515 exit ;;
516 ia64:AIX:*:*)
517 if [ -x /usr/bin/oslevel ] ; then
518 IBM_REV=`/usr/bin/oslevel`
519 else
520 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
521 fi
522 echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
523 exit ;;
524 *:AIX:2:3)
525 if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
526 eval $set_cc_for_build
527 sed 's/^ //' << EOF >$dummy.c
528 #include <sys/systemcfg.h>
529
530 main()
531 {
532 if (!__power_pc())
533 exit(1);
534 puts("powerpc-ibm-aix3.2.5");
535 exit(0);
536 }
537 EOF
538 if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
539 then
540 echo "$SYSTEM_NAME"
541 else
542 echo rs6000-ibm-aix3.2.5
543 fi
544 elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
545 echo rs6000-ibm-aix3.2.4
546 else
547 echo rs6000-ibm-aix3.2
548 fi
549 exit ;;
550 *:AIX:*:[456])
551 IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
552 if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
553 IBM_ARCH=rs6000
554 else
555 IBM_ARCH=powerpc
556 fi
557 if [ -x /usr/bin/oslevel ] ; then
558 IBM_REV=`/usr/bin/oslevel`
559 else
560 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
561 fi
562 echo ${IBM_ARCH}-ibm-aix${IBM_REV}
563 exit ;;
564 *:AIX:*:*)
565 echo rs6000-ibm-aix
566 exit ;;
567 ibmrt:4.4BSD:*|romp-ibm:BSD:*)
568 echo romp-ibm-bsd4.4
569 exit ;;
570 ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
571 echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
572 exit ;; # report: romp-ibm BSD 4.3
573 *:BOSX:*:*)
574 echo rs6000-bull-bosx
575 exit ;;
576 DPX/2?00:B.O.S.:*:*)
577 echo m68k-bull-sysv3
578 exit ;;
579 9000/[34]??:4.3bsd:1.*:*)
580 echo m68k-hp-bsd
581 exit ;;
582 hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
583 echo m68k-hp-bsd4.4
584 exit ;;
585 9000/[34678]??:HP-UX:*:*)
586 HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
587 case "${UNAME_MACHINE}" in
588 9000/31? ) HP_ARCH=m68000 ;;
589 9000/[34]?? ) HP_ARCH=m68k ;;
590 9000/[678][0-9][0-9])
591 if [ -x /usr/bin/getconf ]; then
592 sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
593 sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
594 case "${sc_cpu_version}" in
595 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
596 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
597 532) # CPU_PA_RISC2_0
598 case "${sc_kernel_bits}" in
599 32) HP_ARCH="hppa2.0n" ;;
600 64) HP_ARCH="hppa2.0w" ;;
601 '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
602 esac ;;
603 esac
604 fi
605 if [ "${HP_ARCH}" = "" ]; then
606 eval $set_cc_for_build
607 sed 's/^ //' << EOF >$dummy.c
608
609 #define _HPUX_SOURCE
610 #include <stdlib.h>
611 #include <unistd.h>
612
613 int main ()
614 {
615 #if defined(_SC_KERNEL_BITS)
616 long bits = sysconf(_SC_KERNEL_BITS);
617 #endif
618 long cpu = sysconf (_SC_CPU_VERSION);
619
620 switch (cpu)
621 {
622 case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
623 case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
624 case CPU_PA_RISC2_0:
625 #if defined(_SC_KERNEL_BITS)
626 switch (bits)
627 {
628 case 64: puts ("hppa2.0w"); break;
629 case 32: puts ("hppa2.0n"); break;
630 default: puts ("hppa2.0"); break;
631 } break;
632 #else /* !defined(_SC_KERNEL_BITS) */
633 puts ("hppa2.0"); break;
634 #endif
635 default: puts ("hppa1.0"); break;
636 }
637 exit (0);
638 }
639 EOF
640 (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
641 test -z "$HP_ARCH" && HP_ARCH=hppa
642 fi ;;
643 esac
644 if [ ${HP_ARCH} = "hppa2.0w" ]
645 then
646 eval $set_cc_for_build
647
648 # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
649 # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
650 # generating 64-bit code. GNU and HP use different nomenclature:
651 #
652 # $ CC_FOR_BUILD=cc ./config.guess
653 # => hppa2.0w-hp-hpux11.23
654 # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
655 # => hppa64-hp-hpux11.23
656
657 if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
658 grep __LP64__ >/dev/null
659 then
660 HP_ARCH="hppa2.0w"
661 else
662 HP_ARCH="hppa64"
663 fi
664 fi
665 echo ${HP_ARCH}-hp-hpux${HPUX_REV}
666 exit ;;
667 ia64:HP-UX:*:*)
668 HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
669 echo ia64-hp-hpux${HPUX_REV}
670 exit ;;
671 3050*:HI-UX:*:*)
672 eval $set_cc_for_build
673 sed 's/^ //' << EOF >$dummy.c
674 #include <unistd.h>
675 int
676 main ()
677 {
678 long cpu = sysconf (_SC_CPU_VERSION);
679 /* The order matters, because CPU_IS_HP_MC68K erroneously returns
680 true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
681 results, however. */
682 if (CPU_IS_PA_RISC (cpu))
683 {
684 switch (cpu)
685 {
686 case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
687 case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
688 case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
689 default: puts ("hppa-hitachi-hiuxwe2"); break;
690 }
691 }
692 else if (CPU_IS_HP_MC68K (cpu))
693 puts ("m68k-hitachi-hiuxwe2");
694 else puts ("unknown-hitachi-hiuxwe2");
695 exit (0);
696 }
697 EOF
698 $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
699 { echo "$SYSTEM_NAME"; exit; }
700 echo unknown-hitachi-hiuxwe2
701 exit ;;
702 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
703 echo hppa1.1-hp-bsd
704 exit ;;
705 9000/8??:4.3bsd:*:*)
706 echo hppa1.0-hp-bsd
707 exit ;;
708 *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
709 echo hppa1.0-hp-mpeix
710 exit ;;
711 hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
712 echo hppa1.1-hp-osf
713 exit ;;
714 hp8??:OSF1:*:*)
715 echo hppa1.0-hp-osf
716 exit ;;
717 i*86:OSF1:*:*)
718 if [ -x /usr/sbin/sysversion ] ; then
719 echo ${UNAME_MACHINE}-unknown-osf1mk
720 else
721 echo ${UNAME_MACHINE}-unknown-osf1
722 fi
723 exit ;;
724 parisc*:Lites*:*:*)
725 echo hppa1.1-hp-lites
726 exit ;;
727 C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
728 echo c1-convex-bsd
729 exit ;;
730 C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
731 if getsysinfo -f scalar_acc
732 then echo c32-convex-bsd
733 else echo c2-convex-bsd
734 fi
735 exit ;;
736 C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
737 echo c34-convex-bsd
738 exit ;;
739 C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
740 echo c38-convex-bsd
741 exit ;;
742 C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
743 echo c4-convex-bsd
744 exit ;;
745 CRAY*Y-MP:*:*:*)
746 echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
747 exit ;;
748 CRAY*[A-Z]90:*:*:*)
749 echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
750 | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
751 -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
752 -e 's/\.[^.]*$/.X/'
753 exit ;;
754 CRAY*TS:*:*:*)
755 echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
756 exit ;;
757 CRAY*T3E:*:*:*)
758 echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
759 exit ;;
760 CRAY*SV1:*:*:*)
761 echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
762 exit ;;
763 *:UNICOS/mp:*:*)
764 echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
765 exit ;;
766 F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
767 FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
768 FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
769 FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
770 echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
771 exit ;;
772 5000:UNIX_System_V:4.*:*)
773 FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
774 FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
775 echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
776 exit ;;
777 i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
778 echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
779 exit ;;
780 sparc*:BSD/OS:*:*)
781 echo sparc-unknown-bsdi${UNAME_RELEASE}
782 exit ;;
783 *:BSD/OS:*:*)
784 echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
785 exit ;;
786 *:FreeBSD:*:*)
787 case ${UNAME_MACHINE} in
788 pc98)
789 echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
790 amd64)
791 echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
792 *)
793 echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
794 esac
795 exit ;;
796 i*:CYGWIN*:*)
797 echo ${UNAME_MACHINE}-pc-cygwin
798 exit ;;
799 *:MINGW*:*)
800 echo ${UNAME_MACHINE}-pc-mingw32
801 exit ;;
802 i*:windows32*:*)
803 # uname -m includes "-pc" on this system.
804 echo ${UNAME_MACHINE}-mingw32
805 exit ;;
806 i*:PW*:*)
807 echo ${UNAME_MACHINE}-pc-pw32
808 exit ;;
809 *:Interix*:[3456]*)
810 case ${UNAME_MACHINE} in
811 x86)
812 echo i586-pc-interix${UNAME_RELEASE}
813 exit ;;
814 EM64T | authenticamd | genuineintel)
815 echo x86_64-unknown-interix${UNAME_RELEASE}
816 exit ;;
817 IA64)
818 echo ia64-unknown-interix${UNAME_RELEASE}
819 exit ;;
820 esac ;;
821 [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
822 echo i${UNAME_MACHINE}-pc-mks
823 exit ;;
824 i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
825 # How do we know it's Interix rather than the generic POSIX subsystem?
826 # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
827 # UNAME_MACHINE based on the output of uname instead of i386?
828 echo i586-pc-interix
829 exit ;;
830 i*:UWIN*:*)
831 echo ${UNAME_MACHINE}-pc-uwin
832 exit ;;
833 amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
834 echo x86_64-unknown-cygwin
835 exit ;;
836 p*:CYGWIN*:*)
837 echo powerpcle-unknown-cygwin
838 exit ;;
839 prep*:SunOS:5.*:*)
840 echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
841 exit ;;
842 *:GNU:*:*)
843 # the GNU system
844 echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
845 exit ;;
846 *:GNU/*:*:*)
847 # other systems with GNU libc and userland
848 echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
849 exit ;;
850 i*86:Minix:*:*)
851 echo ${UNAME_MACHINE}-pc-minix
852 exit ;;
853 arm*:Linux:*:*)
854 eval $set_cc_for_build
855 if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
856 | grep -q __ARM_EABI__
857 then
858 echo ${UNAME_MACHINE}-unknown-linux-gnu
859 else
860 echo ${UNAME_MACHINE}-unknown-linux-gnueabi
861 fi
862 exit ;;
863 avr32*:Linux:*:*)
864 echo ${UNAME_MACHINE}-unknown-linux-gnu
865 exit ;;
866 cris:Linux:*:*)
867 echo cris-axis-linux-gnu
868 exit ;;
869 crisv32:Linux:*:*)
870 echo crisv32-axis-linux-gnu
871 exit ;;
872 frv:Linux:*:*)
873 echo frv-unknown-linux-gnu
874 exit ;;
875 ia64:Linux:*:*)
876 echo ${UNAME_MACHINE}-unknown-linux-gnu
877 exit ;;
878 m32r*:Linux:*:*)
879 echo ${UNAME_MACHINE}-unknown-linux-gnu
880 exit ;;
881 m68*:Linux:*:*)
882 echo ${UNAME_MACHINE}-unknown-linux-gnu
883 exit ;;
884 mips:Linux:*:*)
885 eval $set_cc_for_build
886 sed 's/^ //' << EOF >$dummy.c
887 #undef CPU
888 #undef mips
889 #undef mipsel
890 #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
891 CPU=mipsel
892 #else
893 #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
894 CPU=mips
895 #else
896 CPU=
897 #endif
898 #endif
899 EOF
900 eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
901 /^CPU/{
902 s: ::g
903 p
904 }'`"
905 test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
906 ;;
907 mips64:Linux:*:*)
908 eval $set_cc_for_build
909 sed 's/^ //' << EOF >$dummy.c
910 #undef CPU
911 #undef mips64
912 #undef mips64el
913 #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
914 CPU=mips64el
915 #else
916 #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
917 CPU=mips64
918 #else
919 CPU=
920 #endif
921 #endif
922 EOF
923 eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
924 /^CPU/{
925 s: ::g
926 p
927 }'`"
928 test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
929 ;;
930 or32:Linux:*:*)
931 echo or32-unknown-linux-gnu
932 exit ;;
933 ppc:Linux:*:*)
934 echo powerpc-unknown-linux-gnu
935 exit ;;
936 ppc64:Linux:*:*)
937 echo powerpc64-unknown-linux-gnu
938 exit ;;
939 alpha:Linux:*:*)
940 case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
941 EV5) UNAME_MACHINE=alphaev5 ;;
942 EV56) UNAME_MACHINE=alphaev56 ;;
943 PCA56) UNAME_MACHINE=alphapca56 ;;
944 PCA57) UNAME_MACHINE=alphapca56 ;;
945 EV6) UNAME_MACHINE=alphaev6 ;;
946 EV67) UNAME_MACHINE=alphaev67 ;;
947 EV68*) UNAME_MACHINE=alphaev68 ;;
948 esac
949 objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
950 if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
951 echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
952 exit ;;
953 padre:Linux:*:*)
954 echo sparc-unknown-linux-gnu
955 exit ;;
956 parisc:Linux:*:* | hppa:Linux:*:*)
957 # Look for CPU level
958 case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
959 PA7*) echo hppa1.1-unknown-linux-gnu ;;
960 PA8*) echo hppa2.0-unknown-linux-gnu ;;
961 *) echo hppa-unknown-linux-gnu ;;
962 esac
963 exit ;;
964 parisc64:Linux:*:* | hppa64:Linux:*:*)
965 echo hppa64-unknown-linux-gnu
966 exit ;;
967 s390:Linux:*:* | s390x:Linux:*:*)
968 echo ${UNAME_MACHINE}-ibm-linux
969 exit ;;
970 sh64*:Linux:*:*)
971 echo ${UNAME_MACHINE}-unknown-linux-gnu
972 exit ;;
973 sh*:Linux:*:*)
974 echo ${UNAME_MACHINE}-unknown-linux-gnu
975 exit ;;
976 sparc:Linux:*:* | sparc64:Linux:*:*)
977 echo ${UNAME_MACHINE}-unknown-linux-gnu
978 exit ;;
979 vax:Linux:*:*)
980 echo ${UNAME_MACHINE}-dec-linux-gnu
981 exit ;;
982 x86_64:Linux:*:*)
983 echo x86_64-unknown-linux-gnu
984 exit ;;
985 xtensa*:Linux:*:*)
986 echo ${UNAME_MACHINE}-unknown-linux-gnu
987 exit ;;
988 i*86:Linux:*:*)
989 # The BFD linker knows what the default object file format is, so
990 # first see if it will tell us. cd to the root directory to prevent
991 # problems with other programs or directories called `ld' in the path.
992 # Set LC_ALL=C to ensure ld outputs messages in English.
993 ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
994 | sed -ne '/supported targets:/!d
995 s/[ ][ ]*/ /g
996 s/.*supported targets: *//
997 s/ .*//
998 p'`
999 case "$ld_supported_targets" in
1000 elf32-i386)
1001 TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
1002 ;;
1003 a.out-i386-linux)
1004 echo "${UNAME_MACHINE}-pc-linux-gnuaout"
1005 exit ;;
1006 "")
1007 # Either a pre-BFD a.out linker (linux-gnuoldld) or
1008 # one that does not give us useful --help.
1009 echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
1010 exit ;;
1011 esac
1012 # Determine whether the default compiler is a.out or elf
1013 eval $set_cc_for_build
1014 sed 's/^ //' << EOF >$dummy.c
1015 #include <features.h>
1016 #ifdef __ELF__
1017 # ifdef __GLIBC__
1018 # if __GLIBC__ >= 2
1019 LIBC=gnu
1020 # else
1021 LIBC=gnulibc1
1022 # endif
1023 # else
1024 LIBC=gnulibc1
1025 # endif
1026 #else
1027 #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
1028 LIBC=gnu
1029 #else
1030 LIBC=gnuaout
1031 #endif
1032 #endif
1033 #ifdef __dietlibc__
1034 LIBC=dietlibc
1035 #endif
1036 EOF
1037 eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
1038 /^LIBC/{
1039 s: ::g
1040 p
1041 }'`"
1042 test x"${LIBC}" != x && {
1043 echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
1044 exit
1045 }
1046 test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
1047 ;;
1048 i*86:DYNIX/ptx:4*:*)
1049 # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
1050 # earlier versions are messed up and put the nodename in both
1051 # sysname and nodename.
1052 echo i386-sequent-sysv4
1053 exit ;;
1054 i*86:UNIX_SV:4.2MP:2.*)
1055 # Unixware is an offshoot of SVR4, but it has its own version
1056 # number series starting with 2...
1057 # I am not positive that other SVR4 systems won't match this,
1058 # I just have to hope. -- rms.
1059 # Use sysv4.2uw... so that sysv4* matches it.
1060 echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1061 exit ;;
1062 i*86:OS/2:*:*)
1063 # If we were able to find `uname', then EMX Unix compatibility
1064 # is probably installed.
1065 echo ${UNAME_MACHINE}-pc-os2-emx
1066 exit ;;
1067 i*86:XTS-300:*:STOP)
1068 echo ${UNAME_MACHINE}-unknown-stop
1069 exit ;;
1070 i*86:atheos:*:*)
1071 echo ${UNAME_MACHINE}-unknown-atheos
1072 exit ;;
1073 i*86:syllable:*:*)
1074 echo ${UNAME_MACHINE}-pc-syllable
1075 exit ;;
1076 i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
1077 echo i386-unknown-lynxos${UNAME_RELEASE}
1078 exit ;;
1079 i*86:*DOS:*:*)
1080 echo ${UNAME_MACHINE}-pc-msdosdjgpp
1081 exit ;;
1082 i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1083 UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1084 if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1085 echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1086 else
1087 echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1088 fi
1089 exit ;;
1090 i*86:*:5:[678]*)
1091 # UnixWare 7.x, OpenUNIX and OpenServer 6.
1092 case `/bin/uname -X | grep "^Machine"` in
1093 *486*) UNAME_MACHINE=i486 ;;
1094 *Pentium) UNAME_MACHINE=i586 ;;
1095 *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1096 esac
1097 echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1098 exit ;;
1099 i*86:*:3.2:*)
1100 if test -f /usr/options/cb.name; then
1101 UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1102 echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1103 elif /bin/uname -X 2>/dev/null >/dev/null ; then
1104 UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1105 (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1106 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1107 && UNAME_MACHINE=i586
1108 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1109 && UNAME_MACHINE=i686
1110 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1111 && UNAME_MACHINE=i686
1112 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1113 else
1114 echo ${UNAME_MACHINE}-pc-sysv32
1115 fi
1116 exit ;;
1117 pc:*:*:*)
1118 # Left here for compatibility:
1119 # uname -m prints for DJGPP always 'pc', but it prints nothing about
1120 # the processor, so we play safe by assuming i586.
1121 # Note: whatever this is, it MUST be the same as what config.sub
1122 # prints for the "djgpp" host, or else GDB configury will decide that
1123 # this is a cross-build.
1124 echo i586-pc-msdosdjgpp
1125 exit ;;
1126 Intel:Mach:3*:*)
1127 echo i386-pc-mach3
1128 exit ;;
1129 paragon:*:*:*)
1130 echo i860-intel-osf1
1131 exit ;;
1132 i860:*:4.*:*) # i860-SVR4
1133 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1134 echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1135 else # Add other i860-SVR4 vendors below as they are discovered.
1136 echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
1137 fi
1138 exit ;;
1139 mini*:CTIX:SYS*5:*)
1140 # "miniframe"
1141 echo m68010-convergent-sysv
1142 exit ;;
1143 mc68k:UNIX:SYSTEM5:3.51m)
1144 echo m68k-convergent-sysv
1145 exit ;;
1146 M680?0:D-NIX:5.3:*)
1147 echo m68k-diab-dnix
1148 exit ;;
1149 M68*:*:R3V[5678]*:*)
1150 test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
1151 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)
1152 OS_REL=''
1153 test -r /etc/.relid \
1154 && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1155 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1156 && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1157 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1158 && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1159 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1160 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1161 && { echo i486-ncr-sysv4; exit; } ;;
1162 NCR*:*:4.2:* | MPRAS*:*:4.2:*)
1163 OS_REL='.3'
1164 test -r /etc/.relid \
1165 && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1166 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1167 && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1168 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1169 && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
1170 /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
1171 && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1172 m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1173 echo m68k-unknown-lynxos${UNAME_RELEASE}
1174 exit ;;
1175 mc68030:UNIX_System_V:4.*:*)
1176 echo m68k-atari-sysv4
1177 exit ;;
1178 TSUNAMI:LynxOS:2.*:*)
1179 echo sparc-unknown-lynxos${UNAME_RELEASE}
1180 exit ;;
1181 rs6000:LynxOS:2.*:*)
1182 echo rs6000-unknown-lynxos${UNAME_RELEASE}
1183 exit ;;
1184 PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
1185 echo powerpc-unknown-lynxos${UNAME_RELEASE}
1186 exit ;;
1187 SM[BE]S:UNIX_SV:*:*)
1188 echo mips-dde-sysv${UNAME_RELEASE}
1189 exit ;;
1190 RM*:ReliantUNIX-*:*:*)
1191 echo mips-sni-sysv4
1192 exit ;;
1193 RM*:SINIX-*:*:*)
1194 echo mips-sni-sysv4
1195 exit ;;
1196 *:SINIX-*:*:*)
1197 if uname -p 2>/dev/null >/dev/null ; then
1198 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1199 echo ${UNAME_MACHINE}-sni-sysv4
1200 else
1201 echo ns32k-sni-sysv
1202 fi
1203 exit ;;
1204 PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1205 # says <Richard.M.Bartel@ccMail.Census.GOV>
1206 echo i586-unisys-sysv4
1207 exit ;;
1208 *:UNIX_System_V:4*:FTX*)
1209 # From Gerald Hewes <hewes@openmarket.com>.
1210 # How about differentiating between stratus architectures? -djm
1211 echo hppa1.1-stratus-sysv4
1212 exit ;;
1213 *:*:*:FTX*)
1214 # From seanf@swdc.stratus.com.
1215 echo i860-stratus-sysv4
1216 exit ;;
1217 i*86:VOS:*:*)
1218 # From Paul.Green@stratus.com.
1219 echo ${UNAME_MACHINE}-stratus-vos
1220 exit ;;
1221 *:VOS:*:*)
1222 # From Paul.Green@stratus.com.
1223 echo hppa1.1-stratus-vos
1224 exit ;;
1225 mc68*:A/UX:*:*)
1226 echo m68k-apple-aux${UNAME_RELEASE}
1227 exit ;;
1228 news*:NEWS-OS:6*:*)
1229 echo mips-sony-newsos6
1230 exit ;;
1231 R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1232 if [ -d /usr/nec ]; then
1233 echo mips-nec-sysv${UNAME_RELEASE}
1234 else
1235 echo mips-unknown-sysv${UNAME_RELEASE}
1236 fi
1237 exit ;;
1238 BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
1239 echo powerpc-be-beos
1240 exit ;;
1241 BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
1242 echo powerpc-apple-beos
1243 exit ;;
1244 BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
1245 echo i586-pc-beos
1246 exit ;;
1247 BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
1248 echo i586-pc-haiku
1249 exit ;;
1250 SX-4:SUPER-UX:*:*)
1251 echo sx4-nec-superux${UNAME_RELEASE}
1252 exit ;;
1253 SX-5:SUPER-UX:*:*)
1254 echo sx5-nec-superux${UNAME_RELEASE}
1255 exit ;;
1256 SX-6:SUPER-UX:*:*)
1257 echo sx6-nec-superux${UNAME_RELEASE}
1258 exit ;;
1259 SX-7:SUPER-UX:*:*)
1260 echo sx7-nec-superux${UNAME_RELEASE}
1261 exit ;;
1262 SX-8:SUPER-UX:*:*)
1263 echo sx8-nec-superux${UNAME_RELEASE}
1264 exit ;;
1265 SX-8R:SUPER-UX:*:*)
1266 echo sx8r-nec-superux${UNAME_RELEASE}
1267 exit ;;
1268 Power*:Rhapsody:*:*)
1269 echo powerpc-apple-rhapsody${UNAME_RELEASE}
1270 exit ;;
1271 *:Rhapsody:*:*)
1272 echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1273 exit ;;
1274 *:Darwin:*:*)
1275 UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1276 case $UNAME_PROCESSOR in
1277 unknown) UNAME_PROCESSOR=powerpc ;;
1278 esac
1279 echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1280 exit ;;
1281 *:procnto*:*:* | *:QNX:[0123456789]*:*)
1282 UNAME_PROCESSOR=`uname -p`
1283 if test "$UNAME_PROCESSOR" = "x86"; then
1284 UNAME_PROCESSOR=i386
1285 UNAME_MACHINE=pc
1286 fi
1287 echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1288 exit ;;
1289 *:QNX:*:4*)
1290 echo i386-pc-qnx
1291 exit ;;
1292 NSE-?:NONSTOP_KERNEL:*:*)
1293 echo nse-tandem-nsk${UNAME_RELEASE}
1294 exit ;;
1295 NSR-?:NONSTOP_KERNEL:*:*)
1296 echo nsr-tandem-nsk${UNAME_RELEASE}
1297 exit ;;
1298 *:NonStop-UX:*:*)
1299 echo mips-compaq-nonstopux
1300 exit ;;
1301 BS2000:POSIX*:*:*)
1302 echo bs2000-siemens-sysv
1303 exit ;;
1304 DS/*:UNIX_System_V:*:*)
1305 echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1306 exit ;;
1307 *:Plan9:*:*)
1308 # "uname -m" is not consistent, so use $cputype instead. 386
1309 # is converted to i386 for consistency with other x86
1310 # operating systems.
1311 if test "$cputype" = "386"; then
1312 UNAME_MACHINE=i386
1313 else
1314 UNAME_MACHINE="$cputype"
1315 fi
1316 echo ${UNAME_MACHINE}-unknown-plan9
1317 exit ;;
1318 *:TOPS-10:*:*)
1319 echo pdp10-unknown-tops10
1320 exit ;;
1321 *:TENEX:*:*)
1322 echo pdp10-unknown-tenex
1323 exit ;;
1324 KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1325 echo pdp10-dec-tops20
1326 exit ;;
1327 XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1328 echo pdp10-xkl-tops20
1329 exit ;;
1330 *:TOPS-20:*:*)
1331 echo pdp10-unknown-tops20
1332 exit ;;
1333 *:ITS:*:*)
1334 echo pdp10-unknown-its
1335 exit ;;
1336 SEI:*:*:SEIUX)
1337 echo mips-sei-seiux${UNAME_RELEASE}
1338 exit ;;
1339 *:DragonFly:*:*)
1340 echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1341 exit ;;
1342 *:*VMS:*:*)
1343 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1344 case "${UNAME_MACHINE}" in
1345 A*) echo alpha-dec-vms ; exit ;;
1346 I*) echo ia64-dec-vms ; exit ;;
1347 V*) echo vax-dec-vms ; exit ;;
1348 esac ;;
1349 *:XENIX:*:SysV)
1350 echo i386-pc-xenix
1351 exit ;;
1352 i*86:skyos:*:*)
1353 echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
1354 exit ;;
1355 i*86:rdos:*:*)
1356 echo ${UNAME_MACHINE}-pc-rdos
1357 exit ;;
1358 i*86:AROS:*:*)
1359 echo ${UNAME_MACHINE}-pc-aros
1360 exit ;;
1361 esac
1362
1363 #echo '(No uname command or uname output not recognized.)' 1>&2
1364 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1365
1366 eval $set_cc_for_build
1367 cat >$dummy.c <<EOF
1368 #ifdef _SEQUENT_
1369 # include <sys/types.h>
1370 # include <sys/utsname.h>
1371 #endif
1372 main ()
1373 {
1374 #if defined (sony)
1375 #if defined (MIPSEB)
1376 /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
1377 I don't know.... */
1378 printf ("mips-sony-bsd\n"); exit (0);
1379 #else
1380 #include <sys/param.h>
1381 printf ("m68k-sony-newsos%s\n",
1382 #ifdef NEWSOS4
1383 "4"
1384 #else
1385 ""
1386 #endif
1387 ); exit (0);
1388 #endif
1389 #endif
1390
1391 #if defined (__arm) && defined (__acorn) && defined (__unix)
1392 printf ("arm-acorn-riscix\n"); exit (0);
1393 #endif
1394
1395 #if defined (hp300) && !defined (hpux)
1396 printf ("m68k-hp-bsd\n"); exit (0);
1397 #endif
1398
1399 #if defined (NeXT)
1400 #if !defined (__ARCHITECTURE__)
1401 #define __ARCHITECTURE__ "m68k"
1402 #endif
1403 int version;
1404 version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1405 if (version < 4)
1406 printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1407 else
1408 printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1409 exit (0);
1410 #endif
1411
1412 #if defined (MULTIMAX) || defined (n16)
1413 #if defined (UMAXV)
1414 printf ("ns32k-encore-sysv\n"); exit (0);
1415 #else
1416 #if defined (CMU)
1417 printf ("ns32k-encore-mach\n"); exit (0);
1418 #else
1419 printf ("ns32k-encore-bsd\n"); exit (0);
1420 #endif
1421 #endif
1422 #endif
1423
1424 #if defined (__386BSD__)
1425 printf ("i386-pc-bsd\n"); exit (0);
1426 #endif
1427
1428 #if defined (sequent)
1429 #if defined (i386)
1430 printf ("i386-sequent-dynix\n"); exit (0);
1431 #endif
1432 #if defined (ns32000)
1433 printf ("ns32k-sequent-dynix\n"); exit (0);
1434 #endif
1435 #endif
1436
1437 #if defined (_SEQUENT_)
1438 struct utsname un;
1439
1440 uname(&un);
1441
1442 if (strncmp(un.version, "V2", 2) == 0) {
1443 printf ("i386-sequent-ptx2\n"); exit (0);
1444 }
1445 if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1446 printf ("i386-sequent-ptx1\n"); exit (0);
1447 }
1448 printf ("i386-sequent-ptx\n"); exit (0);
1449
1450 #endif
1451
1452 #if defined (vax)
1453 # if !defined (ultrix)
1454 # include <sys/param.h>
1455 # if defined (BSD)
1456 # if BSD == 43
1457 printf ("vax-dec-bsd4.3\n"); exit (0);
1458 # else
1459 # if BSD == 199006
1460 printf ("vax-dec-bsd4.3reno\n"); exit (0);
1461 # else
1462 printf ("vax-dec-bsd\n"); exit (0);
1463 # endif
1464 # endif
1465 # else
1466 printf ("vax-dec-bsd\n"); exit (0);
1467 # endif
1468 # else
1469 printf ("vax-dec-ultrix\n"); exit (0);
1470 # endif
1471 #endif
1472
1473 #if defined (alliant) && defined (i860)
1474 printf ("i860-alliant-bsd\n"); exit (0);
1475 #endif
1476
1477 exit (1);
1478 }
1479 EOF
1480
1481 $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
1482 { echo "$SYSTEM_NAME"; exit; }
1483
1484 # Apollos put the system type in the environment.
1485
1486 test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1487
1488 # Convex versions that predate uname can use getsysinfo(1)
1489
1490 if [ -x /usr/convex/getsysinfo ]
1491 then
1492 case `getsysinfo -f cpu_type` in
1493 c1*)
1494 echo c1-convex-bsd
1495 exit ;;
1496 c2*)
1497 if getsysinfo -f scalar_acc
1498 then echo c32-convex-bsd
1499 else echo c2-convex-bsd
1500 fi
1501 exit ;;
1502 c34*)
1503 echo c34-convex-bsd
1504 exit ;;
1505 c38*)
1506 echo c38-convex-bsd
1507 exit ;;
1508 c4*)
1509 echo c4-convex-bsd
1510 exit ;;
1511 esac
1512 fi
1513
1514 cat >&2 <<EOF
1515 $0: unable to guess system type
1516
1517 This script, last modified $timestamp, has failed to recognize
1518 the operating system you are using. It is advised that you
1519 download the most up to date version of the config scripts from
1520
1521 http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
1522 and
1523 http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
1524
1525 If the version you run ($0) is already up to date, please
1526 send the following data and any information you think might be
1527 pertinent to <config-patches@gnu.org> in order to provide the needed
1528 information to handle your system.
1529
1530 config.guess timestamp = $timestamp
1531
1532 uname -m = `(uname -m) 2>/dev/null || echo unknown`
1533 uname -r = `(uname -r) 2>/dev/null || echo unknown`
1534 uname -s = `(uname -s) 2>/dev/null || echo unknown`
1535 uname -v = `(uname -v) 2>/dev/null || echo unknown`
1536
1537 /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1538 /bin/uname -X = `(/bin/uname -X) 2>/dev/null`
1539
1540 hostinfo = `(hostinfo) 2>/dev/null`
1541 /bin/universe = `(/bin/universe) 2>/dev/null`
1542 /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
1543 /bin/arch = `(/bin/arch) 2>/dev/null`
1544 /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
1545 /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1546
1547 UNAME_MACHINE = ${UNAME_MACHINE}
1548 UNAME_RELEASE = ${UNAME_RELEASE}
1549 UNAME_SYSTEM = ${UNAME_SYSTEM}
1550 UNAME_VERSION = ${UNAME_VERSION}
1551 EOF
1552
1553 exit 1
1554
1555 # Local variables:
1556 # eval: (add-hook 'write-file-hooks 'time-stamp)
1557 # time-stamp-start: "timestamp='"
1558 # time-stamp-format: "%:y-%02m-%02d"
1559 # time-stamp-end: "'"
1560 # End:
+0
-1686
config.sub less more
0 #! /bin/sh
1 # Configuration validation subroutine script.
2 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
3 # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
4 # Free Software Foundation, Inc.
5
6 timestamp='2009-04-17'
7
8 # This file is (in principle) common to ALL GNU software.
9 # The presence of a machine in this file suggests that SOME GNU software
10 # can handle that machine. It does not imply ALL GNU software can.
11 #
12 # This file is free software; you can redistribute it and/or modify
13 # it under the terms of the GNU General Public License as published by
14 # the Free Software Foundation; either version 2 of the License, or
15 # (at your option) any later version.
16 #
17 # This program is distributed in the hope that it will be useful,
18 # but WITHOUT ANY WARRANTY; without even the implied warranty of
19 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 # GNU General Public License for more details.
21 #
22 # You should have received a copy of the GNU General Public License
23 # along with this program; if not, write to the Free Software
24 # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
25 # 02110-1301, USA.
26 #
27 # As a special exception to the GNU General Public License, if you
28 # distribute this file as part of a program that contains a
29 # configuration script generated by Autoconf, you may include it under
30 # the same distribution terms that you use for the rest of that program.
31
32
33 # Please send patches to <config-patches@gnu.org>. Submit a context
34 # diff and a properly formatted ChangeLog entry.
35 #
36 # Configuration subroutine to validate and canonicalize a configuration type.
37 # Supply the specified configuration type as an argument.
38 # If it is invalid, we print an error message on stderr and exit with code 1.
39 # Otherwise, we print the canonical config type on stdout and succeed.
40
41 # This file is supposed to be the same for all GNU packages
42 # and recognize all the CPU types, system types and aliases
43 # that are meaningful with *any* GNU software.
44 # Each package is responsible for reporting which valid configurations
45 # it does not support. The user should be able to distinguish
46 # a failure to support a valid configuration from a meaningless
47 # configuration.
48
49 # The goal of this file is to map all the various variations of a given
50 # machine specification into a single specification in the form:
51 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
52 # or in some cases, the newer four-part form:
53 # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
54 # It is wrong to echo any other type of specification.
55
56 me=`echo "$0" | sed -e 's,.*/,,'`
57
58 usage="\
59 Usage: $0 [OPTION] CPU-MFR-OPSYS
60 $0 [OPTION] ALIAS
61
62 Canonicalize a configuration name.
63
64 Operation modes:
65 -h, --help print this help, then exit
66 -t, --time-stamp print date of last modification, then exit
67 -v, --version print version number, then exit
68
69 Report bugs and patches to <config-patches@gnu.org>."
70
71 version="\
72 GNU config.sub ($timestamp)
73
74 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
75 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
76
77 This is free software; see the source for copying conditions. There is NO
78 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
79
80 help="
81 Try \`$me --help' for more information."
82
83 # Parse command line
84 while test $# -gt 0 ; do
85 case $1 in
86 --time-stamp | --time* | -t )
87 echo "$timestamp" ; exit ;;
88 --version | -v )
89 echo "$version" ; exit ;;
90 --help | --h* | -h )
91 echo "$usage"; exit ;;
92 -- ) # Stop option processing
93 shift; break ;;
94 - ) # Use stdin as input.
95 break ;;
96 -* )
97 echo "$me: invalid option $1$help"
98 exit 1 ;;
99
100 *local*)
101 # First pass through any local machine types.
102 echo $1
103 exit ;;
104
105 * )
106 break ;;
107 esac
108 done
109
110 case $# in
111 0) echo "$me: missing argument$help" >&2
112 exit 1;;
113 1) ;;
114 *) echo "$me: too many arguments$help" >&2
115 exit 1;;
116 esac
117
118 # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
119 # Here we must recognize all the valid KERNEL-OS combinations.
120 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
121 case $maybe_os in
122 nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
123 uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
124 kopensolaris*-gnu* | \
125 storm-chaos* | os2-emx* | rtmk-nova*)
126 os=-$maybe_os
127 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
128 ;;
129 *)
130 basic_machine=`echo $1 | sed 's/-[^-]*$//'`
131 if [ $basic_machine != $1 ]
132 then os=`echo $1 | sed 's/.*-/-/'`
133 else os=; fi
134 ;;
135 esac
136
137 ### Let's recognize common machines as not being operating systems so
138 ### that things like config.sub decstation-3100 work. We also
139 ### recognize some manufacturers as not being operating systems, so we
140 ### can provide default operating systems below.
141 case $os in
142 -sun*os*)
143 # Prevent following clause from handling this invalid input.
144 ;;
145 -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
146 -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
147 -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
148 -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
149 -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
150 -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
151 -apple | -axis | -knuth | -cray)
152 os=
153 basic_machine=$1
154 ;;
155 -sim | -cisco | -oki | -wec | -winbond)
156 os=
157 basic_machine=$1
158 ;;
159 -scout)
160 ;;
161 -wrs)
162 os=-vxworks
163 basic_machine=$1
164 ;;
165 -chorusos*)
166 os=-chorusos
167 basic_machine=$1
168 ;;
169 -chorusrdb)
170 os=-chorusrdb
171 basic_machine=$1
172 ;;
173 -hiux*)
174 os=-hiuxwe2
175 ;;
176 -sco6)
177 os=-sco5v6
178 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
179 ;;
180 -sco5)
181 os=-sco3.2v5
182 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
183 ;;
184 -sco4)
185 os=-sco3.2v4
186 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
187 ;;
188 -sco3.2.[4-9]*)
189 os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
190 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
191 ;;
192 -sco3.2v[4-9]*)
193 # Don't forget version if it is 3.2v4 or newer.
194 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
195 ;;
196 -sco5v6*)
197 # Don't forget version if it is 3.2v4 or newer.
198 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
199 ;;
200 -sco*)
201 os=-sco3.2v2
202 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
203 ;;
204 -udk*)
205 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
206 ;;
207 -isc)
208 os=-isc2.2
209 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
210 ;;
211 -clix*)
212 basic_machine=clipper-intergraph
213 ;;
214 -isc*)
215 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
216 ;;
217 -lynx*)
218 os=-lynxos
219 ;;
220 -ptx*)
221 basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
222 ;;
223 -windowsnt*)
224 os=`echo $os | sed -e 's/windowsnt/winnt/'`
225 ;;
226 -psos*)
227 os=-psos
228 ;;
229 -mint | -mint[0-9]*)
230 basic_machine=m68k-atari
231 os=-mint
232 ;;
233 esac
234
235 # Decode aliases for certain CPU-COMPANY combinations.
236 case $basic_machine in
237 # Recognize the basic CPU types without company name.
238 # Some are omitted here because they have special meanings below.
239 1750a | 580 \
240 | a29k \
241 | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
242 | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
243 | am33_2.0 \
244 | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
245 | bfin \
246 | c4x | clipper \
247 | d10v | d30v | dlx | dsp16xx \
248 | fido | fr30 | frv \
249 | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
250 | i370 | i860 | i960 | ia64 \
251 | ip2k | iq2000 \
252 | lm32 \
253 | m32c | m32r | m32rle | m68000 | m68k | m88k \
254 | maxq | mb | microblaze | mcore | mep | metag \
255 | mips | mipsbe | mipseb | mipsel | mipsle \
256 | mips16 \
257 | mips64 | mips64el \
258 | mips64octeon | mips64octeonel \
259 | mips64orion | mips64orionel \
260 | mips64r5900 | mips64r5900el \
261 | mips64vr | mips64vrel \
262 | mips64vr4100 | mips64vr4100el \
263 | mips64vr4300 | mips64vr4300el \
264 | mips64vr5000 | mips64vr5000el \
265 | mips64vr5900 | mips64vr5900el \
266 | mipsisa32 | mipsisa32el \
267 | mipsisa32r2 | mipsisa32r2el \
268 | mipsisa64 | mipsisa64el \
269 | mipsisa64r2 | mipsisa64r2el \
270 | mipsisa64sb1 | mipsisa64sb1el \
271 | mipsisa64sr71k | mipsisa64sr71kel \
272 | mipstx39 | mipstx39el \
273 | mn10200 | mn10300 \
274 | moxie \
275 | mt \
276 | msp430 \
277 | nios | nios2 \
278 | ns16k | ns32k \
279 | or32 \
280 | pdp10 | pdp11 | pj | pjl \
281 | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
282 | pyramid \
283 | score \
284 | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
285 | sh64 | sh64le \
286 | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
287 | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
288 | spu | strongarm \
289 | tahoe | thumb | tic4x | tic80 | tron \
290 | v850 | v850e \
291 | we32k \
292 | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
293 | z8k | z80)
294 basic_machine=$basic_machine-unknown
295 ;;
296 m6811 | m68hc11 | m6812 | m68hc12)
297 # Motorola 68HC11/12.
298 basic_machine=$basic_machine-unknown
299 os=-none
300 ;;
301 m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
302 ;;
303 ms1)
304 basic_machine=mt-unknown
305 ;;
306
307 # We use `pc' rather than `unknown'
308 # because (1) that's what they normally are, and
309 # (2) the word "unknown" tends to confuse beginning users.
310 i*86 | x86_64)
311 basic_machine=$basic_machine-pc
312 ;;
313 # Object if more than one company name word.
314 *-*-*)
315 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
316 exit 1
317 ;;
318 # Recognize the basic CPU types with company name.
319 580-* \
320 | a29k-* \
321 | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
322 | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
323 | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
324 | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
325 | avr-* | avr32-* \
326 | bfin-* | bs2000-* \
327 | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
328 | clipper-* | craynv-* | cydra-* \
329 | d10v-* | d30v-* | dlx-* \
330 | elxsi-* \
331 | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
332 | h8300-* | h8500-* \
333 | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
334 | i*86-* | i860-* | i960-* | ia64-* \
335 | ip2k-* | iq2000-* \
336 | lm32-* \
337 | m32c-* | m32r-* | m32rle-* \
338 | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
339 | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
340 | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
341 | mips16-* \
342 | mips64-* | mips64el-* \
343 | mips64octeon-* | mips64octeonel-* \
344 | mips64orion-* | mips64orionel-* \
345 | mips64r5900-* | mips64r5900el-* \
346 | mips64vr-* | mips64vrel-* \
347 | mips64vr4100-* | mips64vr4100el-* \
348 | mips64vr4300-* | mips64vr4300el-* \
349 | mips64vr5000-* | mips64vr5000el-* \
350 | mips64vr5900-* | mips64vr5900el-* \
351 | mipsisa32-* | mipsisa32el-* \
352 | mipsisa32r2-* | mipsisa32r2el-* \
353 | mipsisa64-* | mipsisa64el-* \
354 | mipsisa64r2-* | mipsisa64r2el-* \
355 | mipsisa64sb1-* | mipsisa64sb1el-* \
356 | mipsisa64sr71k-* | mipsisa64sr71kel-* \
357 | mipstx39-* | mipstx39el-* \
358 | mmix-* \
359 | mt-* \
360 | msp430-* \
361 | nios-* | nios2-* \
362 | none-* | np1-* | ns16k-* | ns32k-* \
363 | orion-* \
364 | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
365 | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
366 | pyramid-* \
367 | romp-* | rs6000-* \
368 | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
369 | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
370 | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
371 | sparclite-* \
372 | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
373 | tahoe-* | thumb-* \
374 | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
375 | tron-* \
376 | v850-* | v850e-* | vax-* \
377 | we32k-* \
378 | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
379 | xstormy16-* | xtensa*-* \
380 | ymp-* \
381 | z8k-* | z80-*)
382 ;;
383 # Recognize the basic CPU types without company name, with glob match.
384 xtensa*)
385 basic_machine=$basic_machine-unknown
386 ;;
387 # Recognize the various machine names and aliases which stand
388 # for a CPU type and a company and sometimes even an OS.
389 386bsd)
390 basic_machine=i386-unknown
391 os=-bsd
392 ;;
393 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
394 basic_machine=m68000-att
395 ;;
396 3b*)
397 basic_machine=we32k-att
398 ;;
399 a29khif)
400 basic_machine=a29k-amd
401 os=-udi
402 ;;
403 abacus)
404 basic_machine=abacus-unknown
405 ;;
406 adobe68k)
407 basic_machine=m68010-adobe
408 os=-scout
409 ;;
410 alliant | fx80)
411 basic_machine=fx80-alliant
412 ;;
413 altos | altos3068)
414 basic_machine=m68k-altos
415 ;;
416 am29k)
417 basic_machine=a29k-none
418 os=-bsd
419 ;;
420 amd64)
421 basic_machine=x86_64-pc
422 ;;
423 amd64-*)
424 basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
425 ;;
426 amdahl)
427 basic_machine=580-amdahl
428 os=-sysv
429 ;;
430 amiga | amiga-*)
431 basic_machine=m68k-unknown
432 ;;
433 amigaos | amigados)
434 basic_machine=m68k-unknown
435 os=-amigaos
436 ;;
437 amigaunix | amix)
438 basic_machine=m68k-unknown
439 os=-sysv4
440 ;;
441 apollo68)
442 basic_machine=m68k-apollo
443 os=-sysv
444 ;;
445 apollo68bsd)
446 basic_machine=m68k-apollo
447 os=-bsd
448 ;;
449 aros)
450 basic_machine=i386-pc
451 os=-aros
452 ;;
453 aux)
454 basic_machine=m68k-apple
455 os=-aux
456 ;;
457 balance)
458 basic_machine=ns32k-sequent
459 os=-dynix
460 ;;
461 blackfin)
462 basic_machine=bfin-unknown
463 os=-linux
464 ;;
465 blackfin-*)
466 basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
467 os=-linux
468 ;;
469 c90)
470 basic_machine=c90-cray
471 os=-unicos
472 ;;
473 cegcc)
474 basic_machine=arm-unknown
475 os=-cegcc
476 ;;
477 convex-c1)
478 basic_machine=c1-convex
479 os=-bsd
480 ;;
481 convex-c2)
482 basic_machine=c2-convex
483 os=-bsd
484 ;;
485 convex-c32)
486 basic_machine=c32-convex
487 os=-bsd
488 ;;
489 convex-c34)
490 basic_machine=c34-convex
491 os=-bsd
492 ;;
493 convex-c38)
494 basic_machine=c38-convex
495 os=-bsd
496 ;;
497 cray | j90)
498 basic_machine=j90-cray
499 os=-unicos
500 ;;
501 craynv)
502 basic_machine=craynv-cray
503 os=-unicosmp
504 ;;
505 cr16)
506 basic_machine=cr16-unknown
507 os=-elf
508 ;;
509 crds | unos)
510 basic_machine=m68k-crds
511 ;;
512 crisv32 | crisv32-* | etraxfs*)
513 basic_machine=crisv32-axis
514 ;;
515 cris | cris-* | etrax*)
516 basic_machine=cris-axis
517 ;;
518 crx)
519 basic_machine=crx-unknown
520 os=-elf
521 ;;
522 da30 | da30-*)
523 basic_machine=m68k-da30
524 ;;
525 decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
526 basic_machine=mips-dec
527 ;;
528 decsystem10* | dec10*)
529 basic_machine=pdp10-dec
530 os=-tops10
531 ;;
532 decsystem20* | dec20*)
533 basic_machine=pdp10-dec
534 os=-tops20
535 ;;
536 delta | 3300 | motorola-3300 | motorola-delta \
537 | 3300-motorola | delta-motorola)
538 basic_machine=m68k-motorola
539 ;;
540 delta88)
541 basic_machine=m88k-motorola
542 os=-sysv3
543 ;;
544 dicos)
545 basic_machine=i686-pc
546 os=-dicos
547 ;;
548 djgpp)
549 basic_machine=i586-pc
550 os=-msdosdjgpp
551 ;;
552 dpx20 | dpx20-*)
553 basic_machine=rs6000-bull
554 os=-bosx
555 ;;
556 dpx2* | dpx2*-bull)
557 basic_machine=m68k-bull
558 os=-sysv3
559 ;;
560 ebmon29k)
561 basic_machine=a29k-amd
562 os=-ebmon
563 ;;
564 elxsi)
565 basic_machine=elxsi-elxsi
566 os=-bsd
567 ;;
568 encore | umax | mmax)
569 basic_machine=ns32k-encore
570 ;;
571 es1800 | OSE68k | ose68k | ose | OSE)
572 basic_machine=m68k-ericsson
573 os=-ose
574 ;;
575 fx2800)
576 basic_machine=i860-alliant
577 ;;
578 genix)
579 basic_machine=ns32k-ns
580 ;;
581 gmicro)
582 basic_machine=tron-gmicro
583 os=-sysv
584 ;;
585 go32)
586 basic_machine=i386-pc
587 os=-go32
588 ;;
589 h3050r* | hiux*)
590 basic_machine=hppa1.1-hitachi
591 os=-hiuxwe2
592 ;;
593 h8300hms)
594 basic_machine=h8300-hitachi
595 os=-hms
596 ;;
597 h8300xray)
598 basic_machine=h8300-hitachi
599 os=-xray
600 ;;
601 h8500hms)
602 basic_machine=h8500-hitachi
603 os=-hms
604 ;;
605 harris)
606 basic_machine=m88k-harris
607 os=-sysv3
608 ;;
609 hp300-*)
610 basic_machine=m68k-hp
611 ;;
612 hp300bsd)
613 basic_machine=m68k-hp
614 os=-bsd
615 ;;
616 hp300hpux)
617 basic_machine=m68k-hp
618 os=-hpux
619 ;;
620 hp3k9[0-9][0-9] | hp9[0-9][0-9])
621 basic_machine=hppa1.0-hp
622 ;;
623 hp9k2[0-9][0-9] | hp9k31[0-9])
624 basic_machine=m68000-hp
625 ;;
626 hp9k3[2-9][0-9])
627 basic_machine=m68k-hp
628 ;;
629 hp9k6[0-9][0-9] | hp6[0-9][0-9])
630 basic_machine=hppa1.0-hp
631 ;;
632 hp9k7[0-79][0-9] | hp7[0-79][0-9])
633 basic_machine=hppa1.1-hp
634 ;;
635 hp9k78[0-9] | hp78[0-9])
636 # FIXME: really hppa2.0-hp
637 basic_machine=hppa1.1-hp
638 ;;
639 hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
640 # FIXME: really hppa2.0-hp
641 basic_machine=hppa1.1-hp
642 ;;
643 hp9k8[0-9][13679] | hp8[0-9][13679])
644 basic_machine=hppa1.1-hp
645 ;;
646 hp9k8[0-9][0-9] | hp8[0-9][0-9])
647 basic_machine=hppa1.0-hp
648 ;;
649 hppa-next)
650 os=-nextstep3
651 ;;
652 hppaosf)
653 basic_machine=hppa1.1-hp
654 os=-osf
655 ;;
656 hppro)
657 basic_machine=hppa1.1-hp
658 os=-proelf
659 ;;
660 i370-ibm* | ibm*)
661 basic_machine=i370-ibm
662 ;;
663 # I'm not sure what "Sysv32" means. Should this be sysv3.2?
664 i*86v32)
665 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
666 os=-sysv32
667 ;;
668 i*86v4*)
669 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
670 os=-sysv4
671 ;;
672 i*86v)
673 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
674 os=-sysv
675 ;;
676 i*86sol2)
677 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
678 os=-solaris2
679 ;;
680 i386mach)
681 basic_machine=i386-mach
682 os=-mach
683 ;;
684 i386-vsta | vsta)
685 basic_machine=i386-unknown
686 os=-vsta
687 ;;
688 iris | iris4d)
689 basic_machine=mips-sgi
690 case $os in
691 -irix*)
692 ;;
693 *)
694 os=-irix4
695 ;;
696 esac
697 ;;
698 isi68 | isi)
699 basic_machine=m68k-isi
700 os=-sysv
701 ;;
702 m68knommu)
703 basic_machine=m68k-unknown
704 os=-linux
705 ;;
706 m68knommu-*)
707 basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
708 os=-linux
709 ;;
710 m88k-omron*)
711 basic_machine=m88k-omron
712 ;;
713 magnum | m3230)
714 basic_machine=mips-mips
715 os=-sysv
716 ;;
717 merlin)
718 basic_machine=ns32k-utek
719 os=-sysv
720 ;;
721 mingw32)
722 basic_machine=i386-pc
723 os=-mingw32
724 ;;
725 mingw32ce)
726 basic_machine=arm-unknown
727 os=-mingw32ce
728 ;;
729 miniframe)
730 basic_machine=m68000-convergent
731 ;;
732 *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
733 basic_machine=m68k-atari
734 os=-mint
735 ;;
736 mips3*-*)
737 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
738 ;;
739 mips3*)
740 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
741 ;;
742 monitor)
743 basic_machine=m68k-rom68k
744 os=-coff
745 ;;
746 morphos)
747 basic_machine=powerpc-unknown
748 os=-morphos
749 ;;
750 msdos)
751 basic_machine=i386-pc
752 os=-msdos
753 ;;
754 ms1-*)
755 basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
756 ;;
757 mvs)
758 basic_machine=i370-ibm
759 os=-mvs
760 ;;
761 ncr3000)
762 basic_machine=i486-ncr
763 os=-sysv4
764 ;;
765 netbsd386)
766 basic_machine=i386-unknown
767 os=-netbsd
768 ;;
769 netwinder)
770 basic_machine=armv4l-rebel
771 os=-linux
772 ;;
773 news | news700 | news800 | news900)
774 basic_machine=m68k-sony
775 os=-newsos
776 ;;
777 news1000)
778 basic_machine=m68030-sony
779 os=-newsos
780 ;;
781 news-3600 | risc-news)
782 basic_machine=mips-sony
783 os=-newsos
784 ;;
785 necv70)
786 basic_machine=v70-nec
787 os=-sysv
788 ;;
789 next | m*-next )
790 basic_machine=m68k-next
791 case $os in
792 -nextstep* )
793 ;;
794 -ns2*)
795 os=-nextstep2
796 ;;
797 *)
798 os=-nextstep3
799 ;;
800 esac
801 ;;
802 nh3000)
803 basic_machine=m68k-harris
804 os=-cxux
805 ;;
806 nh[45]000)
807 basic_machine=m88k-harris
808 os=-cxux
809 ;;
810 nindy960)
811 basic_machine=i960-intel
812 os=-nindy
813 ;;
814 mon960)
815 basic_machine=i960-intel
816 os=-mon960
817 ;;
818 nonstopux)
819 basic_machine=mips-compaq
820 os=-nonstopux
821 ;;
822 np1)
823 basic_machine=np1-gould
824 ;;
825 nsr-tandem)
826 basic_machine=nsr-tandem
827 ;;
828 op50n-* | op60c-*)
829 basic_machine=hppa1.1-oki
830 os=-proelf
831 ;;
832 openrisc | openrisc-*)
833 basic_machine=or32-unknown
834 ;;
835 os400)
836 basic_machine=powerpc-ibm
837 os=-os400
838 ;;
839 OSE68000 | ose68000)
840 basic_machine=m68000-ericsson
841 os=-ose
842 ;;
843 os68k)
844 basic_machine=m68k-none
845 os=-os68k
846 ;;
847 pa-hitachi)
848 basic_machine=hppa1.1-hitachi
849 os=-hiuxwe2
850 ;;
851 paragon)
852 basic_machine=i860-intel
853 os=-osf
854 ;;
855 parisc)
856 basic_machine=hppa-unknown
857 os=-linux
858 ;;
859 parisc-*)
860 basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
861 os=-linux
862 ;;
863 pbd)
864 basic_machine=sparc-tti
865 ;;
866 pbb)
867 basic_machine=m68k-tti
868 ;;
869 pc532 | pc532-*)
870 basic_machine=ns32k-pc532
871 ;;
872 pc98)
873 basic_machine=i386-pc
874 ;;
875 pc98-*)
876 basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
877 ;;
878 pentium | p5 | k5 | k6 | nexgen | viac3)
879 basic_machine=i586-pc
880 ;;
881 pentiumpro | p6 | 6x86 | athlon | athlon_*)
882 basic_machine=i686-pc
883 ;;
884 pentiumii | pentium2 | pentiumiii | pentium3)
885 basic_machine=i686-pc
886 ;;
887 pentium4)
888 basic_machine=i786-pc
889 ;;
890 pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
891 basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
892 ;;
893 pentiumpro-* | p6-* | 6x86-* | athlon-*)
894 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
895 ;;
896 pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
897 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
898 ;;
899 pentium4-*)
900 basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
901 ;;
902 pn)
903 basic_machine=pn-gould
904 ;;
905 power) basic_machine=power-ibm
906 ;;
907 ppc) basic_machine=powerpc-unknown
908 ;;
909 ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
910 ;;
911 ppcle | powerpclittle | ppc-le | powerpc-little)
912 basic_machine=powerpcle-unknown
913 ;;
914 ppcle-* | powerpclittle-*)
915 basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
916 ;;
917 ppc64) basic_machine=powerpc64-unknown
918 ;;
919 ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
920 ;;
921 ppc64le | powerpc64little | ppc64-le | powerpc64-little)
922 basic_machine=powerpc64le-unknown
923 ;;
924 ppc64le-* | powerpc64little-*)
925 basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
926 ;;
927 ps2)
928 basic_machine=i386-ibm
929 ;;
930 pw32)
931 basic_machine=i586-unknown
932 os=-pw32
933 ;;
934 rdos)
935 basic_machine=i386-pc
936 os=-rdos
937 ;;
938 rom68k)
939 basic_machine=m68k-rom68k
940 os=-coff
941 ;;
942 rm[46]00)
943 basic_machine=mips-siemens
944 ;;
945 rtpc | rtpc-*)
946 basic_machine=romp-ibm
947 ;;
948 s390 | s390-*)
949 basic_machine=s390-ibm
950 ;;
951 s390x | s390x-*)
952 basic_machine=s390x-ibm
953 ;;
954 sa29200)
955 basic_machine=a29k-amd
956 os=-udi
957 ;;
958 sb1)
959 basic_machine=mipsisa64sb1-unknown
960 ;;
961 sb1el)
962 basic_machine=mipsisa64sb1el-unknown
963 ;;
964 sde)
965 basic_machine=mipsisa32-sde
966 os=-elf
967 ;;
968 sei)
969 basic_machine=mips-sei
970 os=-seiux
971 ;;
972 sequent)
973 basic_machine=i386-sequent
974 ;;
975 sh)
976 basic_machine=sh-hitachi
977 os=-hms
978 ;;
979 sh5el)
980 basic_machine=sh5le-unknown
981 ;;
982 sh64)
983 basic_machine=sh64-unknown
984 ;;
985 sparclite-wrs | simso-wrs)
986 basic_machine=sparclite-wrs
987 os=-vxworks
988 ;;
989 sps7)
990 basic_machine=m68k-bull
991 os=-sysv2
992 ;;
993 spur)
994 basic_machine=spur-unknown
995 ;;
996 st2000)
997 basic_machine=m68k-tandem
998 ;;
999 stratus)
1000 basic_machine=i860-stratus
1001 os=-sysv4
1002 ;;
1003 sun2)
1004 basic_machine=m68000-sun
1005 ;;
1006 sun2os3)
1007 basic_machine=m68000-sun
1008 os=-sunos3
1009 ;;
1010 sun2os4)
1011 basic_machine=m68000-sun
1012 os=-sunos4
1013 ;;
1014 sun3os3)
1015 basic_machine=m68k-sun
1016 os=-sunos3
1017 ;;
1018 sun3os4)
1019 basic_machine=m68k-sun
1020 os=-sunos4
1021 ;;
1022 sun4os3)
1023 basic_machine=sparc-sun
1024 os=-sunos3
1025 ;;
1026 sun4os4)
1027 basic_machine=sparc-sun
1028 os=-sunos4
1029 ;;
1030 sun4sol2)
1031 basic_machine=sparc-sun
1032 os=-solaris2
1033 ;;
1034 sun3 | sun3-*)
1035 basic_machine=m68k-sun
1036 ;;
1037 sun4)
1038 basic_machine=sparc-sun
1039 ;;
1040 sun386 | sun386i | roadrunner)
1041 basic_machine=i386-sun
1042 ;;
1043 sv1)
1044 basic_machine=sv1-cray
1045 os=-unicos
1046 ;;
1047 symmetry)
1048 basic_machine=i386-sequent
1049 os=-dynix
1050 ;;
1051 t3e)
1052 basic_machine=alphaev5-cray
1053 os=-unicos
1054 ;;
1055 t90)
1056 basic_machine=t90-cray
1057 os=-unicos
1058 ;;
1059 tic54x | c54x*)
1060 basic_machine=tic54x-unknown
1061 os=-coff
1062 ;;
1063 tic55x | c55x*)
1064 basic_machine=tic55x-unknown
1065 os=-coff
1066 ;;
1067 tic6x | c6x*)
1068 basic_machine=tic6x-unknown
1069 os=-coff
1070 ;;
1071 tile*)
1072 basic_machine=tile-unknown
1073 os=-linux-gnu
1074 ;;
1075 tx39)
1076 basic_machine=mipstx39-unknown
1077 ;;
1078 tx39el)
1079 basic_machine=mipstx39el-unknown
1080 ;;
1081 toad1)
1082 basic_machine=pdp10-xkl
1083 os=-tops20
1084 ;;
1085 tower | tower-32)
1086 basic_machine=m68k-ncr
1087 ;;
1088 tpf)
1089 basic_machine=s390x-ibm
1090 os=-tpf
1091 ;;
1092 udi29k)
1093 basic_machine=a29k-amd
1094 os=-udi
1095 ;;
1096 ultra3)
1097 basic_machine=a29k-nyu
1098 os=-sym1
1099 ;;
1100 v810 | necv810)
1101 basic_machine=v810-nec
1102 os=-none
1103 ;;
1104 vaxv)
1105 basic_machine=vax-dec
1106 os=-sysv
1107 ;;
1108 vms)
1109 basic_machine=vax-dec
1110 os=-vms
1111 ;;
1112 vpp*|vx|vx-*)
1113 basic_machine=f301-fujitsu
1114 ;;
1115 vxworks960)
1116 basic_machine=i960-wrs
1117 os=-vxworks
1118 ;;
1119 vxworks68)
1120 basic_machine=m68k-wrs
1121 os=-vxworks
1122 ;;
1123 vxworks29k)
1124 basic_machine=a29k-wrs
1125 os=-vxworks
1126 ;;
1127 w65*)
1128 basic_machine=w65-wdc
1129 os=-none
1130 ;;
1131 w89k-*)
1132 basic_machine=hppa1.1-winbond
1133 os=-proelf
1134 ;;
1135 xbox)
1136 basic_machine=i686-pc
1137 os=-mingw32
1138 ;;
1139 xps | xps100)
1140 basic_machine=xps100-honeywell
1141 ;;
1142 ymp)
1143 basic_machine=ymp-cray
1144 os=-unicos
1145 ;;
1146 z8k-*-coff)
1147 basic_machine=z8k-unknown
1148 os=-sim
1149 ;;
1150 z80-*-coff)
1151 basic_machine=z80-unknown
1152 os=-sim
1153 ;;
1154 none)
1155 basic_machine=none-none
1156 os=-none
1157 ;;
1158
1159 # Here we handle the default manufacturer of certain CPU types. It is in
1160 # some cases the only manufacturer, in others, it is the most popular.
1161 w89k)
1162 basic_machine=hppa1.1-winbond
1163 ;;
1164 op50n)
1165 basic_machine=hppa1.1-oki
1166 ;;
1167 op60c)
1168 basic_machine=hppa1.1-oki
1169 ;;
1170 romp)
1171 basic_machine=romp-ibm
1172 ;;
1173 mmix)
1174 basic_machine=mmix-knuth
1175 ;;
1176 rs6000)
1177 basic_machine=rs6000-ibm
1178 ;;
1179 vax)
1180 basic_machine=vax-dec
1181 ;;
1182 pdp10)
1183 # there are many clones, so DEC is not a safe bet
1184 basic_machine=pdp10-unknown
1185 ;;
1186 pdp11)
1187 basic_machine=pdp11-dec
1188 ;;
1189 we32k)
1190 basic_machine=we32k-att
1191 ;;
1192 sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
1193 basic_machine=sh-unknown
1194 ;;
1195 sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
1196 basic_machine=sparc-sun
1197 ;;
1198 cydra)
1199 basic_machine=cydra-cydrome
1200 ;;
1201 orion)
1202 basic_machine=orion-highlevel
1203 ;;
1204 orion105)
1205 basic_machine=clipper-highlevel
1206 ;;
1207 mac | mpw | mac-mpw)
1208 basic_machine=m68k-apple
1209 ;;
1210 pmac | pmac-mpw)
1211 basic_machine=powerpc-apple
1212 ;;
1213 *-unknown)
1214 # Make sure to match an already-canonicalized machine name.
1215 ;;
1216 *)
1217 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1218 exit 1
1219 ;;
1220 esac
1221
1222 # Here we canonicalize certain aliases for manufacturers.
1223 case $basic_machine in
1224 *-digital*)
1225 basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1226 ;;
1227 *-commodore*)
1228 basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1229 ;;
1230 *)
1231 ;;
1232 esac
1233
1234 # Decode manufacturer-specific aliases for certain operating systems.
1235
1236 if [ x"$os" != x"" ]
1237 then
1238 case $os in
1239 # First match some system type aliases
1240 # that might get confused with valid system types.
1241 # -solaris* is a basic system type, with this one exception.
1242 -solaris1 | -solaris1.*)
1243 os=`echo $os | sed -e 's|solaris1|sunos4|'`
1244 ;;
1245 -solaris)
1246 os=-solaris2
1247 ;;
1248 -svr4*)
1249 os=-sysv4
1250 ;;
1251 -unixware*)
1252 os=-sysv4.2uw
1253 ;;
1254 -gnu/linux*)
1255 os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1256 ;;
1257 # First accept the basic system types.
1258 # The portable systems comes first.
1259 # Each alternative MUST END IN A *, to match a version number.
1260 # -sysv* is not here because it comes later, after sysvr4.
1261 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1262 | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
1263 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
1264 | -kopensolaris* \
1265 | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1266 | -aos* | -aros* \
1267 | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1268 | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1269 | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
1270 | -openbsd* | -solidbsd* \
1271 | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1272 | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1273 | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1274 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1275 | -chorusos* | -chorusrdb* | -cegcc* \
1276 | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1277 | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
1278 | -uxpv* | -beos* | -mpeix* | -udk* \
1279 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1280 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1281 | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1282 | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1283 | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1284 | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1285 | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
1286 # Remember, each alternative MUST END IN *, to match a version number.
1287 ;;
1288 -qnx*)
1289 case $basic_machine in
1290 x86-* | i*86-*)
1291 ;;
1292 *)
1293 os=-nto$os
1294 ;;
1295 esac
1296 ;;
1297 -nto-qnx*)
1298 ;;
1299 -nto*)
1300 os=`echo $os | sed -e 's|nto|nto-qnx|'`
1301 ;;
1302 -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1303 | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
1304 | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1305 ;;
1306 -mac*)
1307 os=`echo $os | sed -e 's|mac|macos|'`
1308 ;;
1309 -linux-dietlibc)
1310 os=-linux-dietlibc
1311 ;;
1312 -linux*)
1313 os=`echo $os | sed -e 's|linux|linux-gnu|'`
1314 ;;
1315 -sunos5*)
1316 os=`echo $os | sed -e 's|sunos5|solaris2|'`
1317 ;;
1318 -sunos6*)
1319 os=`echo $os | sed -e 's|sunos6|solaris3|'`
1320 ;;
1321 -opened*)
1322 os=-openedition
1323 ;;
1324 -os400*)
1325 os=-os400
1326 ;;
1327 -wince*)
1328 os=-wince
1329 ;;
1330 -osfrose*)
1331 os=-osfrose
1332 ;;
1333 -osf*)
1334 os=-osf
1335 ;;
1336 -utek*)
1337 os=-bsd
1338 ;;
1339 -dynix*)
1340 os=-bsd
1341 ;;
1342 -acis*)
1343 os=-aos
1344 ;;
1345 -atheos*)
1346 os=-atheos
1347 ;;
1348 -syllable*)
1349 os=-syllable
1350 ;;
1351 -386bsd)
1352 os=-bsd
1353 ;;
1354 -ctix* | -uts*)
1355 os=-sysv
1356 ;;
1357 -nova*)
1358 os=-rtmk-nova
1359 ;;
1360 -ns2 )
1361 os=-nextstep2
1362 ;;
1363 -nsk*)
1364 os=-nsk
1365 ;;
1366 # Preserve the version number of sinix5.
1367 -sinix5.*)
1368 os=`echo $os | sed -e 's|sinix|sysv|'`
1369 ;;
1370 -sinix*)
1371 os=-sysv4
1372 ;;
1373 -tpf*)
1374 os=-tpf
1375 ;;
1376 -triton*)
1377 os=-sysv3
1378 ;;
1379 -oss*)
1380 os=-sysv3
1381 ;;
1382 -svr4)
1383 os=-sysv4
1384 ;;
1385 -svr3)
1386 os=-sysv3
1387 ;;
1388 -sysvr4)
1389 os=-sysv4
1390 ;;
1391 # This must come after -sysvr4.
1392 -sysv*)
1393 ;;
1394 -ose*)
1395 os=-ose
1396 ;;
1397 -es1800*)
1398 os=-ose
1399 ;;
1400 -xenix)
1401 os=-xenix
1402 ;;
1403 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1404 os=-mint
1405 ;;
1406 -aros*)
1407 os=-aros
1408 ;;
1409 -kaos*)
1410 os=-kaos
1411 ;;
1412 -zvmoe)
1413 os=-zvmoe
1414 ;;
1415 -dicos*)
1416 os=-dicos
1417 ;;
1418 -none)
1419 ;;
1420 *)
1421 # Get rid of the `-' at the beginning of $os.
1422 os=`echo $os | sed 's/[^-]*-//'`
1423 echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1424 exit 1
1425 ;;
1426 esac
1427 else
1428
1429 # Here we handle the default operating systems that come with various machines.
1430 # The value should be what the vendor currently ships out the door with their
1431 # machine or put another way, the most popular os provided with the machine.
1432
1433 # Note that if you're going to try to match "-MANUFACTURER" here (say,
1434 # "-sun"), then you have to tell the case statement up towards the top
1435 # that MANUFACTURER isn't an operating system. Otherwise, code above
1436 # will signal an error saying that MANUFACTURER isn't an operating
1437 # system, and we'll never get to this point.
1438
1439 case $basic_machine in
1440 score-*)
1441 os=-elf
1442 ;;
1443 spu-*)
1444 os=-elf
1445 ;;
1446 *-acorn)
1447 os=-riscix1.2
1448 ;;
1449 arm*-rebel)
1450 os=-linux
1451 ;;
1452 arm*-semi)
1453 os=-aout
1454 ;;
1455 c4x-* | tic4x-*)
1456 os=-coff
1457 ;;
1458 # This must come before the *-dec entry.
1459 pdp10-*)
1460 os=-tops20
1461 ;;
1462 pdp11-*)
1463 os=-none
1464 ;;
1465 *-dec | vax-*)
1466 os=-ultrix4.2
1467 ;;
1468 m68*-apollo)
1469 os=-domain
1470 ;;
1471 i386-sun)
1472 os=-sunos4.0.2
1473 ;;
1474 m68000-sun)
1475 os=-sunos3
1476 # This also exists in the configure program, but was not the
1477 # default.
1478 # os=-sunos4
1479 ;;
1480 m68*-cisco)
1481 os=-aout
1482 ;;
1483 mep-*)
1484 os=-elf
1485 ;;
1486 mips*-cisco)
1487 os=-elf
1488 ;;
1489 mips*-*)
1490 os=-elf
1491 ;;
1492 or32-*)
1493 os=-coff
1494 ;;
1495 *-tti) # must be before sparc entry or we get the wrong os.
1496 os=-sysv3
1497 ;;
1498 sparc-* | *-sun)
1499 os=-sunos4.1.1
1500 ;;
1501 *-be)
1502 os=-beos
1503 ;;
1504 *-haiku)
1505 os=-haiku
1506 ;;
1507 *-ibm)
1508 os=-aix
1509 ;;
1510 *-knuth)
1511 os=-mmixware
1512 ;;
1513 *-wec)
1514 os=-proelf
1515 ;;
1516 *-winbond)
1517 os=-proelf
1518 ;;
1519 *-oki)
1520 os=-proelf
1521 ;;
1522 *-hp)
1523 os=-hpux
1524 ;;
1525 *-hitachi)
1526 os=-hiux
1527 ;;
1528 i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1529 os=-sysv
1530 ;;
1531 *-cbm)
1532 os=-amigaos
1533 ;;
1534 *-dg)
1535 os=-dgux
1536 ;;
1537 *-dolphin)
1538 os=-sysv3
1539 ;;
1540 m68k-ccur)
1541 os=-rtu
1542 ;;
1543 m88k-omron*)
1544 os=-luna
1545 ;;
1546 *-next )
1547 os=-nextstep
1548 ;;
1549 *-sequent)
1550 os=-ptx
1551 ;;
1552 *-crds)
1553 os=-unos
1554 ;;
1555 *-ns)
1556 os=-genix
1557 ;;
1558 i370-*)
1559 os=-mvs
1560 ;;
1561 *-next)
1562 os=-nextstep3
1563 ;;
1564 *-gould)
1565 os=-sysv
1566 ;;
1567 *-highlevel)
1568 os=-bsd
1569 ;;
1570 *-encore)
1571 os=-bsd
1572 ;;
1573 *-sgi)
1574 os=-irix
1575 ;;
1576 *-siemens)
1577 os=-sysv4
1578 ;;
1579 *-masscomp)
1580 os=-rtu
1581 ;;
1582 f30[01]-fujitsu | f700-fujitsu)
1583 os=-uxpv
1584 ;;
1585 *-rom68k)
1586 os=-coff
1587 ;;
1588 *-*bug)
1589 os=-coff
1590 ;;
1591 *-apple)
1592 os=-macos
1593 ;;
1594 *-atari*)
1595 os=-mint
1596 ;;
1597 *)
1598 os=-none
1599 ;;
1600 esac
1601 fi
1602
1603 # Here we handle the case where we know the os, and the CPU type, but not the
1604 # manufacturer. We pick the logical manufacturer.
1605 vendor=unknown
1606 case $basic_machine in
1607 *-unknown)
1608 case $os in
1609 -riscix*)
1610 vendor=acorn
1611 ;;
1612 -sunos*)
1613 vendor=sun
1614 ;;
1615 -aix*)
1616 vendor=ibm
1617 ;;
1618 -beos*)
1619 vendor=be
1620 ;;
1621 -hpux*)
1622 vendor=hp
1623 ;;
1624 -mpeix*)
1625 vendor=hp
1626 ;;
1627 -hiux*)
1628 vendor=hitachi
1629 ;;
1630 -unos*)
1631 vendor=crds
1632 ;;
1633 -dgux*)
1634 vendor=dg
1635 ;;
1636 -luna*)
1637 vendor=omron
1638 ;;
1639 -genix*)
1640 vendor=ns
1641 ;;
1642 -mvs* | -opened*)
1643 vendor=ibm
1644 ;;
1645 -os400*)
1646 vendor=ibm
1647 ;;
1648 -ptx*)
1649 vendor=sequent
1650 ;;
1651 -tpf*)
1652 vendor=ibm
1653 ;;
1654 -vxsim* | -vxworks* | -windiss*)
1655 vendor=wrs
1656 ;;
1657 -aux*)
1658 vendor=apple
1659 ;;
1660 -hms*)
1661 vendor=hitachi
1662 ;;
1663 -mpw* | -macos*)
1664 vendor=apple
1665 ;;
1666 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1667 vendor=atari
1668 ;;
1669 -vos*)
1670 vendor=stratus
1671 ;;
1672 esac
1673 basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1674 ;;
1675 esac
1676
1677 echo $basic_machine$os
1678 exit
1679
1680 # Local variables:
1681 # eval: (add-hook 'write-file-hooks 'time-stamp)
1682 # time-stamp-start: "timestamp='"
1683 # time-stamp-format: "%:y-%02m-%02d"
1684 # time-stamp-end: "'"
1685 # End:
00 # Initialization
11
2 AC_INIT([nemo-fileroller],2.2.0)
2 AC_INIT([nemo-fileroller],2.6.1)
33
44 AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
55
+0
-630
depcomp less more
0 #! /bin/sh
1 # depcomp - compile a program generating dependencies as side-effects
2
3 scriptversion=2009-04-28.21; # UTC
4
5 # Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
6 # Software Foundation, Inc.
7
8 # This program is free software; you can redistribute it and/or modify
9 # it under the terms of the GNU General Public License as published by
10 # the Free Software Foundation; either version 2, or (at your option)
11 # any later version.
12
13 # This program is distributed in the hope that it will be useful,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 # GNU General Public License for more details.
17
18 # You should have received a copy of the GNU General Public License
19 # along with this program. If not, see <http://www.gnu.org/licenses/>.
20
21 # As a special exception to the GNU General Public License, if you
22 # distribute this file as part of a program that contains a
23 # configuration script generated by Autoconf, you may include it under
24 # the same distribution terms that you use for the rest of that program.
25
26 # Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
27
28 case $1 in
29 '')
30 echo "$0: No command. Try \`$0 --help' for more information." 1>&2
31 exit 1;
32 ;;
33 -h | --h*)
34 cat <<\EOF
35 Usage: depcomp [--help] [--version] PROGRAM [ARGS]
36
37 Run PROGRAMS ARGS to compile a file, generating dependencies
38 as side-effects.
39
40 Environment variables:
41 depmode Dependency tracking mode.
42 source Source file read by `PROGRAMS ARGS'.
43 object Object file output by `PROGRAMS ARGS'.
44 DEPDIR directory where to store dependencies.
45 depfile Dependency file to output.
46 tmpdepfile Temporary file to use when outputing dependencies.
47 libtool Whether libtool is used (yes/no).
48
49 Report bugs to <bug-automake@gnu.org>.
50 EOF
51 exit $?
52 ;;
53 -v | --v*)
54 echo "depcomp $scriptversion"
55 exit $?
56 ;;
57 esac
58
59 if test -z "$depmode" || test -z "$source" || test -z "$object"; then
60 echo "depcomp: Variables source, object and depmode must be set" 1>&2
61 exit 1
62 fi
63
64 # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
65 depfile=${depfile-`echo "$object" |
66 sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
67 tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
68
69 rm -f "$tmpdepfile"
70
71 # Some modes work just like other modes, but use different flags. We
72 # parameterize here, but still list the modes in the big case below,
73 # to make depend.m4 easier to write. Note that we *cannot* use a case
74 # here, because this file can only contain one case statement.
75 if test "$depmode" = hp; then
76 # HP compiler uses -M and no extra arg.
77 gccflag=-M
78 depmode=gcc
79 fi
80
81 if test "$depmode" = dashXmstdout; then
82 # This is just like dashmstdout with a different argument.
83 dashmflag=-xM
84 depmode=dashmstdout
85 fi
86
87 cygpath_u="cygpath -u -f -"
88 if test "$depmode" = msvcmsys; then
89 # This is just like msvisualcpp but w/o cygpath translation.
90 # Just convert the backslash-escaped backslashes to single forward
91 # slashes to satisfy depend.m4
92 cygpath_u="sed s,\\\\\\\\,/,g"
93 depmode=msvisualcpp
94 fi
95
96 case "$depmode" in
97 gcc3)
98 ## gcc 3 implements dependency tracking that does exactly what
99 ## we want. Yay! Note: for some reason libtool 1.4 doesn't like
100 ## it if -MD -MP comes after the -MF stuff. Hmm.
101 ## Unfortunately, FreeBSD c89 acceptance of flags depends upon
102 ## the command line argument order; so add the flags where they
103 ## appear in depend2.am. Note that the slowdown incurred here
104 ## affects only configure: in makefiles, %FASTDEP% shortcuts this.
105 for arg
106 do
107 case $arg in
108 -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
109 *) set fnord "$@" "$arg" ;;
110 esac
111 shift # fnord
112 shift # $arg
113 done
114 "$@"
115 stat=$?
116 if test $stat -eq 0; then :
117 else
118 rm -f "$tmpdepfile"
119 exit $stat
120 fi
121 mv "$tmpdepfile" "$depfile"
122 ;;
123
124 gcc)
125 ## There are various ways to get dependency output from gcc. Here's
126 ## why we pick this rather obscure method:
127 ## - Don't want to use -MD because we'd like the dependencies to end
128 ## up in a subdir. Having to rename by hand is ugly.
129 ## (We might end up doing this anyway to support other compilers.)
130 ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
131 ## -MM, not -M (despite what the docs say).
132 ## - Using -M directly means running the compiler twice (even worse
133 ## than renaming).
134 if test -z "$gccflag"; then
135 gccflag=-MD,
136 fi
137 "$@" -Wp,"$gccflag$tmpdepfile"
138 stat=$?
139 if test $stat -eq 0; then :
140 else
141 rm -f "$tmpdepfile"
142 exit $stat
143 fi
144 rm -f "$depfile"
145 echo "$object : \\" > "$depfile"
146 alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
147 ## The second -e expression handles DOS-style file names with drive letters.
148 sed -e 's/^[^:]*: / /' \
149 -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
150 ## This next piece of magic avoids the `deleted header file' problem.
151 ## The problem is that when a header file which appears in a .P file
152 ## is deleted, the dependency causes make to die (because there is
153 ## typically no way to rebuild the header). We avoid this by adding
154 ## dummy dependencies for each header file. Too bad gcc doesn't do
155 ## this for us directly.
156 tr ' ' '
157 ' < "$tmpdepfile" |
158 ## Some versions of gcc put a space before the `:'. On the theory
159 ## that the space means something, we add a space to the output as
160 ## well.
161 ## Some versions of the HPUX 10.20 sed can't process this invocation
162 ## correctly. Breaking it into two sed invocations is a workaround.
163 sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
164 rm -f "$tmpdepfile"
165 ;;
166
167 hp)
168 # This case exists only to let depend.m4 do its work. It works by
169 # looking at the text of this script. This case will never be run,
170 # since it is checked for above.
171 exit 1
172 ;;
173
174 sgi)
175 if test "$libtool" = yes; then
176 "$@" "-Wp,-MDupdate,$tmpdepfile"
177 else
178 "$@" -MDupdate "$tmpdepfile"
179 fi
180 stat=$?
181 if test $stat -eq 0; then :
182 else
183 rm -f "$tmpdepfile"
184 exit $stat
185 fi
186 rm -f "$depfile"
187
188 if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
189 echo "$object : \\" > "$depfile"
190
191 # Clip off the initial element (the dependent). Don't try to be
192 # clever and replace this with sed code, as IRIX sed won't handle
193 # lines with more than a fixed number of characters (4096 in
194 # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
195 # the IRIX cc adds comments like `#:fec' to the end of the
196 # dependency line.
197 tr ' ' '
198 ' < "$tmpdepfile" \
199 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
200 tr '
201 ' ' ' >> "$depfile"
202 echo >> "$depfile"
203
204 # The second pass generates a dummy entry for each header file.
205 tr ' ' '
206 ' < "$tmpdepfile" \
207 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
208 >> "$depfile"
209 else
210 # The sourcefile does not contain any dependencies, so just
211 # store a dummy comment line, to avoid errors with the Makefile
212 # "include basename.Plo" scheme.
213 echo "#dummy" > "$depfile"
214 fi
215 rm -f "$tmpdepfile"
216 ;;
217
218 aix)
219 # The C for AIX Compiler uses -M and outputs the dependencies
220 # in a .u file. In older versions, this file always lives in the
221 # current directory. Also, the AIX compiler puts `$object:' at the
222 # start of each line; $object doesn't have directory information.
223 # Version 6 uses the directory in both cases.
224 dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
225 test "x$dir" = "x$object" && dir=
226 base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
227 if test "$libtool" = yes; then
228 tmpdepfile1=$dir$base.u
229 tmpdepfile2=$base.u
230 tmpdepfile3=$dir.libs/$base.u
231 "$@" -Wc,-M
232 else
233 tmpdepfile1=$dir$base.u
234 tmpdepfile2=$dir$base.u
235 tmpdepfile3=$dir$base.u
236 "$@" -M
237 fi
238 stat=$?
239
240 if test $stat -eq 0; then :
241 else
242 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
243 exit $stat
244 fi
245
246 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
247 do
248 test -f "$tmpdepfile" && break
249 done
250 if test -f "$tmpdepfile"; then
251 # Each line is of the form `foo.o: dependent.h'.
252 # Do two passes, one to just change these to
253 # `$object: dependent.h' and one to simply `dependent.h:'.
254 sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
255 # That's a tab and a space in the [].
256 sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
257 else
258 # The sourcefile does not contain any dependencies, so just
259 # store a dummy comment line, to avoid errors with the Makefile
260 # "include basename.Plo" scheme.
261 echo "#dummy" > "$depfile"
262 fi
263 rm -f "$tmpdepfile"
264 ;;
265
266 icc)
267 # Intel's C compiler understands `-MD -MF file'. However on
268 # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
269 # ICC 7.0 will fill foo.d with something like
270 # foo.o: sub/foo.c
271 # foo.o: sub/foo.h
272 # which is wrong. We want:
273 # sub/foo.o: sub/foo.c
274 # sub/foo.o: sub/foo.h
275 # sub/foo.c:
276 # sub/foo.h:
277 # ICC 7.1 will output
278 # foo.o: sub/foo.c sub/foo.h
279 # and will wrap long lines using \ :
280 # foo.o: sub/foo.c ... \
281 # sub/foo.h ... \
282 # ...
283
284 "$@" -MD -MF "$tmpdepfile"
285 stat=$?
286 if test $stat -eq 0; then :
287 else
288 rm -f "$tmpdepfile"
289 exit $stat
290 fi
291 rm -f "$depfile"
292 # Each line is of the form `foo.o: dependent.h',
293 # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
294 # Do two passes, one to just change these to
295 # `$object: dependent.h' and one to simply `dependent.h:'.
296 sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
297 # Some versions of the HPUX 10.20 sed can't process this invocation
298 # correctly. Breaking it into two sed invocations is a workaround.
299 sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
300 sed -e 's/$/ :/' >> "$depfile"
301 rm -f "$tmpdepfile"
302 ;;
303
304 hp2)
305 # The "hp" stanza above does not work with aCC (C++) and HP's ia64
306 # compilers, which have integrated preprocessors. The correct option
307 # to use with these is +Maked; it writes dependencies to a file named
308 # 'foo.d', which lands next to the object file, wherever that
309 # happens to be.
310 # Much of this is similar to the tru64 case; see comments there.
311 dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
312 test "x$dir" = "x$object" && dir=
313 base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
314 if test "$libtool" = yes; then
315 tmpdepfile1=$dir$base.d
316 tmpdepfile2=$dir.libs/$base.d
317 "$@" -Wc,+Maked
318 else
319 tmpdepfile1=$dir$base.d
320 tmpdepfile2=$dir$base.d
321 "$@" +Maked
322 fi
323 stat=$?
324 if test $stat -eq 0; then :
325 else
326 rm -f "$tmpdepfile1" "$tmpdepfile2"
327 exit $stat
328 fi
329
330 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
331 do
332 test -f "$tmpdepfile" && break
333 done
334 if test -f "$tmpdepfile"; then
335 sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
336 # Add `dependent.h:' lines.
337 sed -ne '2,${
338 s/^ *//
339 s/ \\*$//
340 s/$/:/
341 p
342 }' "$tmpdepfile" >> "$depfile"
343 else
344 echo "#dummy" > "$depfile"
345 fi
346 rm -f "$tmpdepfile" "$tmpdepfile2"
347 ;;
348
349 tru64)
350 # The Tru64 compiler uses -MD to generate dependencies as a side
351 # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
352 # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
353 # dependencies in `foo.d' instead, so we check for that too.
354 # Subdirectories are respected.
355 dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
356 test "x$dir" = "x$object" && dir=
357 base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
358
359 if test "$libtool" = yes; then
360 # With Tru64 cc, shared objects can also be used to make a
361 # static library. This mechanism is used in libtool 1.4 series to
362 # handle both shared and static libraries in a single compilation.
363 # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
364 #
365 # With libtool 1.5 this exception was removed, and libtool now
366 # generates 2 separate objects for the 2 libraries. These two
367 # compilations output dependencies in $dir.libs/$base.o.d and
368 # in $dir$base.o.d. We have to check for both files, because
369 # one of the two compilations can be disabled. We should prefer
370 # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
371 # automatically cleaned when .libs/ is deleted, while ignoring
372 # the former would cause a distcleancheck panic.
373 tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
374 tmpdepfile2=$dir$base.o.d # libtool 1.5
375 tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
376 tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
377 "$@" -Wc,-MD
378 else
379 tmpdepfile1=$dir$base.o.d
380 tmpdepfile2=$dir$base.d
381 tmpdepfile3=$dir$base.d
382 tmpdepfile4=$dir$base.d
383 "$@" -MD
384 fi
385
386 stat=$?
387 if test $stat -eq 0; then :
388 else
389 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
390 exit $stat
391 fi
392
393 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
394 do
395 test -f "$tmpdepfile" && break
396 done
397 if test -f "$tmpdepfile"; then
398 sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
399 # That's a tab and a space in the [].
400 sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
401 else
402 echo "#dummy" > "$depfile"
403 fi
404 rm -f "$tmpdepfile"
405 ;;
406
407 #nosideeffect)
408 # This comment above is used by automake to tell side-effect
409 # dependency tracking mechanisms from slower ones.
410
411 dashmstdout)
412 # Important note: in order to support this mode, a compiler *must*
413 # always write the preprocessed file to stdout, regardless of -o.
414 "$@" || exit $?
415
416 # Remove the call to Libtool.
417 if test "$libtool" = yes; then
418 while test "X$1" != 'X--mode=compile'; do
419 shift
420 done
421 shift
422 fi
423
424 # Remove `-o $object'.
425 IFS=" "
426 for arg
427 do
428 case $arg in
429 -o)
430 shift
431 ;;
432 $object)
433 shift
434 ;;
435 *)
436 set fnord "$@" "$arg"
437 shift # fnord
438 shift # $arg
439 ;;
440 esac
441 done
442
443 test -z "$dashmflag" && dashmflag=-M
444 # Require at least two characters before searching for `:'
445 # in the target name. This is to cope with DOS-style filenames:
446 # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
447 "$@" $dashmflag |
448 sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
449 rm -f "$depfile"
450 cat < "$tmpdepfile" > "$depfile"
451 tr ' ' '
452 ' < "$tmpdepfile" | \
453 ## Some versions of the HPUX 10.20 sed can't process this invocation
454 ## correctly. Breaking it into two sed invocations is a workaround.
455 sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
456 rm -f "$tmpdepfile"
457 ;;
458
459 dashXmstdout)
460 # This case only exists to satisfy depend.m4. It is never actually
461 # run, as this mode is specially recognized in the preamble.
462 exit 1
463 ;;
464
465 makedepend)
466 "$@" || exit $?
467 # Remove any Libtool call
468 if test "$libtool" = yes; then
469 while test "X$1" != 'X--mode=compile'; do
470 shift
471 done
472 shift
473 fi
474 # X makedepend
475 shift
476 cleared=no eat=no
477 for arg
478 do
479 case $cleared in
480 no)
481 set ""; shift
482 cleared=yes ;;
483 esac
484 if test $eat = yes; then
485 eat=no
486 continue
487 fi
488 case "$arg" in
489 -D*|-I*)
490 set fnord "$@" "$arg"; shift ;;
491 # Strip any option that makedepend may not understand. Remove
492 # the object too, otherwise makedepend will parse it as a source file.
493 -arch)
494 eat=yes ;;
495 -*|$object)
496 ;;
497 *)
498 set fnord "$@" "$arg"; shift ;;
499 esac
500 done
501 obj_suffix=`echo "$object" | sed 's/^.*\././'`
502 touch "$tmpdepfile"
503 ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
504 rm -f "$depfile"
505 cat < "$tmpdepfile" > "$depfile"
506 sed '1,2d' "$tmpdepfile" | tr ' ' '
507 ' | \
508 ## Some versions of the HPUX 10.20 sed can't process this invocation
509 ## correctly. Breaking it into two sed invocations is a workaround.
510 sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
511 rm -f "$tmpdepfile" "$tmpdepfile".bak
512 ;;
513
514 cpp)
515 # Important note: in order to support this mode, a compiler *must*
516 # always write the preprocessed file to stdout.
517 "$@" || exit $?
518
519 # Remove the call to Libtool.
520 if test "$libtool" = yes; then
521 while test "X$1" != 'X--mode=compile'; do
522 shift
523 done
524 shift
525 fi
526
527 # Remove `-o $object'.
528 IFS=" "
529 for arg
530 do
531 case $arg in
532 -o)
533 shift
534 ;;
535 $object)
536 shift
537 ;;
538 *)
539 set fnord "$@" "$arg"
540 shift # fnord
541 shift # $arg
542 ;;
543 esac
544 done
545
546 "$@" -E |
547 sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
548 -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
549 sed '$ s: \\$::' > "$tmpdepfile"
550 rm -f "$depfile"
551 echo "$object : \\" > "$depfile"
552 cat < "$tmpdepfile" >> "$depfile"
553 sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
554 rm -f "$tmpdepfile"
555 ;;
556
557 msvisualcpp)
558 # Important note: in order to support this mode, a compiler *must*
559 # always write the preprocessed file to stdout.
560 "$@" || exit $?
561
562 # Remove the call to Libtool.
563 if test "$libtool" = yes; then
564 while test "X$1" != 'X--mode=compile'; do
565 shift
566 done
567 shift
568 fi
569
570 IFS=" "
571 for arg
572 do
573 case "$arg" in
574 -o)
575 shift
576 ;;
577 $object)
578 shift
579 ;;
580 "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
581 set fnord "$@"
582 shift
583 shift
584 ;;
585 *)
586 set fnord "$@" "$arg"
587 shift
588 shift
589 ;;
590 esac
591 done
592 "$@" -E 2>/dev/null |
593 sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
594 rm -f "$depfile"
595 echo "$object : \\" > "$depfile"
596 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
597 echo " " >> "$depfile"
598 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
599 rm -f "$tmpdepfile"
600 ;;
601
602 msvcmsys)
603 # This case exists only to let depend.m4 do its work. It works by
604 # looking at the text of this script. This case will never be run,
605 # since it is checked for above.
606 exit 1
607 ;;
608
609 none)
610 exec "$@"
611 ;;
612
613 *)
614 echo "Unknown depmode $depmode" 1>&2
615 exit 1
616 ;;
617 esac
618
619 exit 0
620
621 # Local Variables:
622 # mode: shell-script
623 # sh-indentation: 2
624 # eval: (add-hook 'write-file-hooks 'time-stamp)
625 # time-stamp-start: "scriptversion="
626 # time-stamp-format: "%:y-%02m-%02d.%02H"
627 # time-stamp-time-zone: "UTC"
628 # time-stamp-end: "; # UTC"
629 # End:
+0
-520
install-sh less more
0 #!/bin/sh
1 # install - install a program, script, or datafile
2
3 scriptversion=2009-04-28.21; # UTC
4
5 # This originates from X11R5 (mit/util/scripts/install.sh), which was
6 # later released in X11R6 (xc/config/util/install.sh) with the
7 # following copyright and license.
8 #
9 # Copyright (C) 1994 X Consortium
10 #
11 # Permission is hereby granted, free of charge, to any person obtaining a copy
12 # of this software and associated documentation files (the "Software"), to
13 # deal in the Software without restriction, including without limitation the
14 # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
15 # sell copies of the Software, and to permit persons to whom the Software is
16 # furnished to do so, subject to the following conditions:
17 #
18 # The above copyright notice and this permission notice shall be included in
19 # all copies or substantial portions of the Software.
20 #
21 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24 # X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
25 # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
26 # TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27 #
28 # Except as contained in this notice, the name of the X Consortium shall not
29 # be used in advertising or otherwise to promote the sale, use or other deal-
30 # ings in this Software without prior written authorization from the X Consor-
31 # tium.
32 #
33 #
34 # FSF changes to this file are in the public domain.
35 #
36 # Calling this script install-sh is preferred over install.sh, to prevent
37 # `make' implicit rules from creating a file called install from it
38 # when there is no Makefile.
39 #
40 # This script is compatible with the BSD install script, but was written
41 # from scratch.
42
43 nl='
44 '
45 IFS=" "" $nl"
46
47 # set DOITPROG to echo to test this script
48
49 # Don't use :- since 4.3BSD and earlier shells don't like it.
50 doit=${DOITPROG-}
51 if test -z "$doit"; then
52 doit_exec=exec
53 else
54 doit_exec=$doit
55 fi
56
57 # Put in absolute file names if you don't have them in your path;
58 # or use environment vars.
59
60 chgrpprog=${CHGRPPROG-chgrp}
61 chmodprog=${CHMODPROG-chmod}
62 chownprog=${CHOWNPROG-chown}
63 cmpprog=${CMPPROG-cmp}
64 cpprog=${CPPROG-cp}
65 mkdirprog=${MKDIRPROG-mkdir}
66 mvprog=${MVPROG-mv}
67 rmprog=${RMPROG-rm}
68 stripprog=${STRIPPROG-strip}
69
70 posix_glob='?'
71 initialize_posix_glob='
72 test "$posix_glob" != "?" || {
73 if (set -f) 2>/dev/null; then
74 posix_glob=
75 else
76 posix_glob=:
77 fi
78 }
79 '
80
81 posix_mkdir=
82
83 # Desired mode of installed file.
84 mode=0755
85
86 chgrpcmd=
87 chmodcmd=$chmodprog
88 chowncmd=
89 mvcmd=$mvprog
90 rmcmd="$rmprog -f"
91 stripcmd=
92
93 src=
94 dst=
95 dir_arg=
96 dst_arg=
97
98 copy_on_change=false
99 no_target_directory=
100
101 usage="\
102 Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
103 or: $0 [OPTION]... SRCFILES... DIRECTORY
104 or: $0 [OPTION]... -t DIRECTORY SRCFILES...
105 or: $0 [OPTION]... -d DIRECTORIES...
106
107 In the 1st form, copy SRCFILE to DSTFILE.
108 In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
109 In the 4th, create DIRECTORIES.
110
111 Options:
112 --help display this help and exit.
113 --version display version info and exit.
114
115 -c (ignored)
116 -C install only if different (preserve the last data modification time)
117 -d create directories instead of installing files.
118 -g GROUP $chgrpprog installed files to GROUP.
119 -m MODE $chmodprog installed files to MODE.
120 -o USER $chownprog installed files to USER.
121 -s $stripprog installed files.
122 -t DIRECTORY install into DIRECTORY.
123 -T report an error if DSTFILE is a directory.
124
125 Environment variables override the default commands:
126 CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
127 RMPROG STRIPPROG
128 "
129
130 while test $# -ne 0; do
131 case $1 in
132 -c) ;;
133
134 -C) copy_on_change=true;;
135
136 -d) dir_arg=true;;
137
138 -g) chgrpcmd="$chgrpprog $2"
139 shift;;
140
141 --help) echo "$usage"; exit $?;;
142
143 -m) mode=$2
144 case $mode in
145 *' '* | *' '* | *'
146 '* | *'*'* | *'?'* | *'['*)
147 echo "$0: invalid mode: $mode" >&2
148 exit 1;;
149 esac
150 shift;;
151
152 -o) chowncmd="$chownprog $2"
153 shift;;
154
155 -s) stripcmd=$stripprog;;
156
157 -t) dst_arg=$2
158 shift;;
159
160 -T) no_target_directory=true;;
161
162 --version) echo "$0 $scriptversion"; exit $?;;
163
164 --) shift
165 break;;
166
167 -*) echo "$0: invalid option: $1" >&2
168 exit 1;;
169
170 *) break;;
171 esac
172 shift
173 done
174
175 if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
176 # When -d is used, all remaining arguments are directories to create.
177 # When -t is used, the destination is already specified.
178 # Otherwise, the last argument is the destination. Remove it from $@.
179 for arg
180 do
181 if test -n "$dst_arg"; then
182 # $@ is not empty: it contains at least $arg.
183 set fnord "$@" "$dst_arg"
184 shift # fnord
185 fi
186 shift # arg
187 dst_arg=$arg
188 done
189 fi
190
191 if test $# -eq 0; then
192 if test -z "$dir_arg"; then
193 echo "$0: no input file specified." >&2
194 exit 1
195 fi
196 # It's OK to call `install-sh -d' without argument.
197 # This can happen when creating conditional directories.
198 exit 0
199 fi
200
201 if test -z "$dir_arg"; then
202 trap '(exit $?); exit' 1 2 13 15
203
204 # Set umask so as not to create temps with too-generous modes.
205 # However, 'strip' requires both read and write access to temps.
206 case $mode in
207 # Optimize common cases.
208 *644) cp_umask=133;;
209 *755) cp_umask=22;;
210
211 *[0-7])
212 if test -z "$stripcmd"; then
213 u_plus_rw=
214 else
215 u_plus_rw='% 200'
216 fi
217 cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
218 *)
219 if test -z "$stripcmd"; then
220 u_plus_rw=
221 else
222 u_plus_rw=,u+rw
223 fi
224 cp_umask=$mode$u_plus_rw;;
225 esac
226 fi
227
228 for src
229 do
230 # Protect names starting with `-'.
231 case $src in
232 -*) src=./$src;;
233 esac
234
235 if test -n "$dir_arg"; then
236 dst=$src
237 dstdir=$dst
238 test -d "$dstdir"
239 dstdir_status=$?
240 else
241
242 # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
243 # might cause directories to be created, which would be especially bad
244 # if $src (and thus $dsttmp) contains '*'.
245 if test ! -f "$src" && test ! -d "$src"; then
246 echo "$0: $src does not exist." >&2
247 exit 1
248 fi
249
250 if test -z "$dst_arg"; then
251 echo "$0: no destination specified." >&2
252 exit 1
253 fi
254
255 dst=$dst_arg
256 # Protect names starting with `-'.
257 case $dst in
258 -*) dst=./$dst;;
259 esac
260
261 # If destination is a directory, append the input filename; won't work
262 # if double slashes aren't ignored.
263 if test -d "$dst"; then
264 if test -n "$no_target_directory"; then
265 echo "$0: $dst_arg: Is a directory" >&2
266 exit 1
267 fi
268 dstdir=$dst
269 dst=$dstdir/`basename "$src"`
270 dstdir_status=0
271 else
272 # Prefer dirname, but fall back on a substitute if dirname fails.
273 dstdir=`
274 (dirname "$dst") 2>/dev/null ||
275 expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
276 X"$dst" : 'X\(//\)[^/]' \| \
277 X"$dst" : 'X\(//\)$' \| \
278 X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
279 echo X"$dst" |
280 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
281 s//\1/
282 q
283 }
284 /^X\(\/\/\)[^/].*/{
285 s//\1/
286 q
287 }
288 /^X\(\/\/\)$/{
289 s//\1/
290 q
291 }
292 /^X\(\/\).*/{
293 s//\1/
294 q
295 }
296 s/.*/./; q'
297 `
298
299 test -d "$dstdir"
300 dstdir_status=$?
301 fi
302 fi
303
304 obsolete_mkdir_used=false
305
306 if test $dstdir_status != 0; then
307 case $posix_mkdir in
308 '')
309 # Create intermediate dirs using mode 755 as modified by the umask.
310 # This is like FreeBSD 'install' as of 1997-10-28.
311 umask=`umask`
312 case $stripcmd.$umask in
313 # Optimize common cases.
314 *[2367][2367]) mkdir_umask=$umask;;
315 .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
316
317 *[0-7])
318 mkdir_umask=`expr $umask + 22 \
319 - $umask % 100 % 40 + $umask % 20 \
320 - $umask % 10 % 4 + $umask % 2
321 `;;
322 *) mkdir_umask=$umask,go-w;;
323 esac
324
325 # With -d, create the new directory with the user-specified mode.
326 # Otherwise, rely on $mkdir_umask.
327 if test -n "$dir_arg"; then
328 mkdir_mode=-m$mode
329 else
330 mkdir_mode=
331 fi
332
333 posix_mkdir=false
334 case $umask in
335 *[123567][0-7][0-7])
336 # POSIX mkdir -p sets u+wx bits regardless of umask, which
337 # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
338 ;;
339 *)
340 tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
341 trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
342
343 if (umask $mkdir_umask &&
344 exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
345 then
346 if test -z "$dir_arg" || {
347 # Check for POSIX incompatibilities with -m.
348 # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
349 # other-writeable bit of parent directory when it shouldn't.
350 # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
351 ls_ld_tmpdir=`ls -ld "$tmpdir"`
352 case $ls_ld_tmpdir in
353 d????-?r-*) different_mode=700;;
354 d????-?--*) different_mode=755;;
355 *) false;;
356 esac &&
357 $mkdirprog -m$different_mode -p -- "$tmpdir" && {
358 ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
359 test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
360 }
361 }
362 then posix_mkdir=:
363 fi
364 rmdir "$tmpdir/d" "$tmpdir"
365 else
366 # Remove any dirs left behind by ancient mkdir implementations.
367 rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
368 fi
369 trap '' 0;;
370 esac;;
371 esac
372
373 if
374 $posix_mkdir && (
375 umask $mkdir_umask &&
376 $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
377 )
378 then :
379 else
380
381 # The umask is ridiculous, or mkdir does not conform to POSIX,
382 # or it failed possibly due to a race condition. Create the
383 # directory the slow way, step by step, checking for races as we go.
384
385 case $dstdir in
386 /*) prefix='/';;
387 -*) prefix='./';;
388 *) prefix='';;
389 esac
390
391 eval "$initialize_posix_glob"
392
393 oIFS=$IFS
394 IFS=/
395 $posix_glob set -f
396 set fnord $dstdir
397 shift
398 $posix_glob set +f
399 IFS=$oIFS
400
401 prefixes=
402
403 for d
404 do
405 test -z "$d" && continue
406
407 prefix=$prefix$d
408 if test -d "$prefix"; then
409 prefixes=
410 else
411 if $posix_mkdir; then
412 (umask=$mkdir_umask &&
413 $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
414 # Don't fail if two instances are running concurrently.
415 test -d "$prefix" || exit 1
416 else
417 case $prefix in
418 *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
419 *) qprefix=$prefix;;
420 esac
421 prefixes="$prefixes '$qprefix'"
422 fi
423 fi
424 prefix=$prefix/
425 done
426
427 if test -n "$prefixes"; then
428 # Don't fail if two instances are running concurrently.
429 (umask $mkdir_umask &&
430 eval "\$doit_exec \$mkdirprog $prefixes") ||
431 test -d "$dstdir" || exit 1
432 obsolete_mkdir_used=true
433 fi
434 fi
435 fi
436
437 if test -n "$dir_arg"; then
438 { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
439 { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
440 { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
441 test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
442 else
443
444 # Make a couple of temp file names in the proper directory.
445 dsttmp=$dstdir/_inst.$$_
446 rmtmp=$dstdir/_rm.$$_
447
448 # Trap to clean up those temp files at exit.
449 trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
450
451 # Copy the file name to the temp name.
452 (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
453
454 # and set any options; do chmod last to preserve setuid bits.
455 #
456 # If any of these fail, we abort the whole thing. If we want to
457 # ignore errors from any of these, just make sure not to ignore
458 # errors from the above "$doit $cpprog $src $dsttmp" command.
459 #
460 { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
461 { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
462 { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
463 { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
464
465 # If -C, don't bother to copy if it wouldn't change the file.
466 if $copy_on_change &&
467 old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
468 new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
469
470 eval "$initialize_posix_glob" &&
471 $posix_glob set -f &&
472 set X $old && old=:$2:$4:$5:$6 &&
473 set X $new && new=:$2:$4:$5:$6 &&
474 $posix_glob set +f &&
475
476 test "$old" = "$new" &&
477 $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
478 then
479 rm -f "$dsttmp"
480 else
481 # Rename the file to the real destination.
482 $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
483
484 # The rename failed, perhaps because mv can't rename something else
485 # to itself, or perhaps because mv is so ancient that it does not
486 # support -f.
487 {
488 # Now remove or move aside any old file at destination location.
489 # We try this two ways since rm can't unlink itself on some
490 # systems and the destination file might be busy for other
491 # reasons. In this case, the final cleanup might fail but the new
492 # file should still install successfully.
493 {
494 test ! -f "$dst" ||
495 $doit $rmcmd -f "$dst" 2>/dev/null ||
496 { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
497 { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
498 } ||
499 { echo "$0: cannot unlink or rename $dst" >&2
500 (exit 1); exit 1
501 }
502 } &&
503
504 # Now rename the file to the real destination.
505 $doit $mvcmd "$dsttmp" "$dst"
506 }
507 fi || exit 1
508
509 trap '' 0
510 fi
511 done
512
513 # Local variables:
514 # eval: (add-hook 'write-file-hooks 'time-stamp)
515 # time-stamp-start: "scriptversion="
516 # time-stamp-format: "%:y-%02m-%02d.%02H"
517 # time-stamp-time-zone: "UTC"
518 # time-stamp-end: "; # UTC"
519 # End:
+0
-376
missing less more
0 #! /bin/sh
1 # Common stub for a few missing GNU programs while installing.
2
3 scriptversion=2009-04-28.21; # UTC
4
5 # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
6 # 2008, 2009 Free Software Foundation, Inc.
7 # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
8
9 # This program is free software; you can redistribute it and/or modify
10 # it under the terms of the GNU General Public License as published by
11 # the Free Software Foundation; either version 2, or (at your option)
12 # any later version.
13
14 # This program is distributed in the hope that it will be useful,
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 # GNU General Public License for more details.
18
19 # You should have received a copy of the GNU General Public License
20 # along with this program. If not, see <http://www.gnu.org/licenses/>.
21
22 # As a special exception to the GNU General Public License, if you
23 # distribute this file as part of a program that contains a
24 # configuration script generated by Autoconf, you may include it under
25 # the same distribution terms that you use for the rest of that program.
26
27 if test $# -eq 0; then
28 echo 1>&2 "Try \`$0 --help' for more information"
29 exit 1
30 fi
31
32 run=:
33 sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
34 sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
35
36 # In the cases where this matters, `missing' is being run in the
37 # srcdir already.
38 if test -f configure.ac; then
39 configure_ac=configure.ac
40 else
41 configure_ac=configure.in
42 fi
43
44 msg="missing on your system"
45
46 case $1 in
47 --run)
48 # Try to run requested program, and just exit if it succeeds.
49 run=
50 shift
51 "$@" && exit 0
52 # Exit code 63 means version mismatch. This often happens
53 # when the user try to use an ancient version of a tool on
54 # a file that requires a minimum version. In this case we
55 # we should proceed has if the program had been absent, or
56 # if --run hadn't been passed.
57 if test $? = 63; then
58 run=:
59 msg="probably too old"
60 fi
61 ;;
62
63 -h|--h|--he|--hel|--help)
64 echo "\
65 $0 [OPTION]... PROGRAM [ARGUMENT]...
66
67 Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
68 error status if there is no known handling for PROGRAM.
69
70 Options:
71 -h, --help display this help and exit
72 -v, --version output version information and exit
73 --run try to run the given command, and emulate it if it fails
74
75 Supported PROGRAM values:
76 aclocal touch file \`aclocal.m4'
77 autoconf touch file \`configure'
78 autoheader touch file \`config.h.in'
79 autom4te touch the output file, or create a stub one
80 automake touch all \`Makefile.in' files
81 bison create \`y.tab.[ch]', if possible, from existing .[ch]
82 flex create \`lex.yy.c', if possible, from existing .c
83 help2man touch the output file
84 lex create \`lex.yy.c', if possible, from existing .c
85 makeinfo touch the output file
86 tar try tar, gnutar, gtar, then tar without non-portable flags
87 yacc create \`y.tab.[ch]', if possible, from existing .[ch]
88
89 Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
90 \`g' are ignored when checking the name.
91
92 Send bug reports to <bug-automake@gnu.org>."
93 exit $?
94 ;;
95
96 -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
97 echo "missing $scriptversion (GNU Automake)"
98 exit $?
99 ;;
100
101 -*)
102 echo 1>&2 "$0: Unknown \`$1' option"
103 echo 1>&2 "Try \`$0 --help' for more information"
104 exit 1
105 ;;
106
107 esac
108
109 # normalize program name to check for.
110 program=`echo "$1" | sed '
111 s/^gnu-//; t
112 s/^gnu//; t
113 s/^g//; t'`
114
115 # Now exit if we have it, but it failed. Also exit now if we
116 # don't have it and --version was passed (most likely to detect
117 # the program). This is about non-GNU programs, so use $1 not
118 # $program.
119 case $1 in
120 lex*|yacc*)
121 # Not GNU programs, they don't have --version.
122 ;;
123
124 tar*)
125 if test -n "$run"; then
126 echo 1>&2 "ERROR: \`tar' requires --run"
127 exit 1
128 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
129 exit 1
130 fi
131 ;;
132
133 *)
134 if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
135 # We have it, but it failed.
136 exit 1
137 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
138 # Could not run --version or --help. This is probably someone
139 # running `$TOOL --version' or `$TOOL --help' to check whether
140 # $TOOL exists and not knowing $TOOL uses missing.
141 exit 1
142 fi
143 ;;
144 esac
145
146 # If it does not exist, or fails to run (possibly an outdated version),
147 # try to emulate it.
148 case $program in
149 aclocal*)
150 echo 1>&2 "\
151 WARNING: \`$1' is $msg. You should only need it if
152 you modified \`acinclude.m4' or \`${configure_ac}'. You might want
153 to install the \`Automake' and \`Perl' packages. Grab them from
154 any GNU archive site."
155 touch aclocal.m4
156 ;;
157
158 autoconf*)
159 echo 1>&2 "\
160 WARNING: \`$1' is $msg. You should only need it if
161 you modified \`${configure_ac}'. You might want to install the
162 \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
163 archive site."
164 touch configure
165 ;;
166
167 autoheader*)
168 echo 1>&2 "\
169 WARNING: \`$1' is $msg. You should only need it if
170 you modified \`acconfig.h' or \`${configure_ac}'. You might want
171 to install the \`Autoconf' and \`GNU m4' packages. Grab them
172 from any GNU archive site."
173 files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
174 test -z "$files" && files="config.h"
175 touch_files=
176 for f in $files; do
177 case $f in
178 *:*) touch_files="$touch_files "`echo "$f" |
179 sed -e 's/^[^:]*://' -e 's/:.*//'`;;
180 *) touch_files="$touch_files $f.in";;
181 esac
182 done
183 touch $touch_files
184 ;;
185
186 automake*)
187 echo 1>&2 "\
188 WARNING: \`$1' is $msg. You should only need it if
189 you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
190 You might want to install the \`Automake' and \`Perl' packages.
191 Grab them from any GNU archive site."
192 find . -type f -name Makefile.am -print |
193 sed 's/\.am$/.in/' |
194 while read f; do touch "$f"; done
195 ;;
196
197 autom4te*)
198 echo 1>&2 "\
199 WARNING: \`$1' is needed, but is $msg.
200 You might have modified some files without having the
201 proper tools for further handling them.
202 You can get \`$1' as part of \`Autoconf' from any GNU
203 archive site."
204
205 file=`echo "$*" | sed -n "$sed_output"`
206 test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
207 if test -f "$file"; then
208 touch $file
209 else
210 test -z "$file" || exec >$file
211 echo "#! /bin/sh"
212 echo "# Created by GNU Automake missing as a replacement of"
213 echo "# $ $@"
214 echo "exit 0"
215 chmod +x $file
216 exit 1
217 fi
218 ;;
219
220 bison*|yacc*)
221 echo 1>&2 "\
222 WARNING: \`$1' $msg. You should only need it if
223 you modified a \`.y' file. You may need the \`Bison' package
224 in order for those modifications to take effect. You can get
225 \`Bison' from any GNU archive site."
226 rm -f y.tab.c y.tab.h
227 if test $# -ne 1; then
228 eval LASTARG="\${$#}"
229 case $LASTARG in
230 *.y)
231 SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
232 if test -f "$SRCFILE"; then
233 cp "$SRCFILE" y.tab.c
234 fi
235 SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
236 if test -f "$SRCFILE"; then
237 cp "$SRCFILE" y.tab.h
238 fi
239 ;;
240 esac
241 fi
242 if test ! -f y.tab.h; then
243 echo >y.tab.h
244 fi
245 if test ! -f y.tab.c; then
246 echo 'main() { return 0; }' >y.tab.c
247 fi
248 ;;
249
250 lex*|flex*)
251 echo 1>&2 "\
252 WARNING: \`$1' is $msg. You should only need it if
253 you modified a \`.l' file. You may need the \`Flex' package
254 in order for those modifications to take effect. You can get
255 \`Flex' from any GNU archive site."
256 rm -f lex.yy.c
257 if test $# -ne 1; then
258 eval LASTARG="\${$#}"
259 case $LASTARG in
260 *.l)
261 SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
262 if test -f "$SRCFILE"; then
263 cp "$SRCFILE" lex.yy.c
264 fi
265 ;;
266 esac
267 fi
268 if test ! -f lex.yy.c; then
269 echo 'main() { return 0; }' >lex.yy.c
270 fi
271 ;;
272
273 help2man*)
274 echo 1>&2 "\
275 WARNING: \`$1' is $msg. You should only need it if
276 you modified a dependency of a manual page. You may need the
277 \`Help2man' package in order for those modifications to take
278 effect. You can get \`Help2man' from any GNU archive site."
279
280 file=`echo "$*" | sed -n "$sed_output"`
281 test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
282 if test -f "$file"; then
283 touch $file
284 else
285 test -z "$file" || exec >$file
286 echo ".ab help2man is required to generate this page"
287 exit $?
288 fi
289 ;;
290
291 makeinfo*)
292 echo 1>&2 "\
293 WARNING: \`$1' is $msg. You should only need it if
294 you modified a \`.texi' or \`.texinfo' file, or any other file
295 indirectly affecting the aspect of the manual. The spurious
296 call might also be the consequence of using a buggy \`make' (AIX,
297 DU, IRIX). You might want to install the \`Texinfo' package or
298 the \`GNU make' package. Grab either from any GNU archive site."
299 # The file to touch is that specified with -o ...
300 file=`echo "$*" | sed -n "$sed_output"`
301 test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
302 if test -z "$file"; then
303 # ... or it is the one specified with @setfilename ...
304 infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
305 file=`sed -n '
306 /^@setfilename/{
307 s/.* \([^ ]*\) *$/\1/
308 p
309 q
310 }' $infile`
311 # ... or it is derived from the source name (dir/f.texi becomes f.info)
312 test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
313 fi
314 # If the file does not exist, the user really needs makeinfo;
315 # let's fail without touching anything.
316 test -f $file || exit 1
317 touch $file
318 ;;
319
320 tar*)
321 shift
322
323 # We have already tried tar in the generic part.
324 # Look for gnutar/gtar before invocation to avoid ugly error
325 # messages.
326 if (gnutar --version > /dev/null 2>&1); then
327 gnutar "$@" && exit 0
328 fi
329 if (gtar --version > /dev/null 2>&1); then
330 gtar "$@" && exit 0
331 fi
332 firstarg="$1"
333 if shift; then
334 case $firstarg in
335 *o*)
336 firstarg=`echo "$firstarg" | sed s/o//`
337 tar "$firstarg" "$@" && exit 0
338 ;;
339 esac
340 case $firstarg in
341 *h*)
342 firstarg=`echo "$firstarg" | sed s/h//`
343 tar "$firstarg" "$@" && exit 0
344 ;;
345 esac
346 fi
347
348 echo 1>&2 "\
349 WARNING: I can't seem to be able to run \`tar' with the given arguments.
350 You may want to install GNU tar or Free paxutils, or check the
351 command line arguments."
352 exit 1
353 ;;
354
355 *)
356 echo 1>&2 "\
357 WARNING: \`$1' is needed, and is $msg.
358 You might have modified some files without having the
359 proper tools for further handling them. Check the \`README' file,
360 it often tells you about the needed prerequisites for installing
361 this package. You may also peek at any GNU archive site, in case
362 some other package would contain this missing \`$1' program."
363 exit 1
364 ;;
365 esac
366
367 exit 0
368
369 # Local variables:
370 # eval: (add-hook 'write-file-hooks 'time-stamp)
371 # time-stamp-start: "scriptversion="
372 # time-stamp-format: "%:y-%02m-%02d.%02H"
373 # time-stamp-time-zone: "UTC"
374 # time-stamp-end: "; # UTC"
375 # End:
2727 #include <libnemo-extension/nemo-extension-types.h>
2828 #include <libnemo-extension/nemo-file-info.h>
2929 #include <libnemo-extension/nemo-menu-provider.h>
30 #include <libnemo-extension/nemo-name-and-desc-provider.h>
3031 #include "nemo-fileroller.h"
3132
3233
3334 static GObjectClass *parent_class;
34
35 static gboolean always_show_extract_to = FALSE;
3536
3637 static void
3738 extract_to_callback (NemoMenuItem *item,
4041 GList *files;
4142 NemoFileInfo *file;
4243 char *uri, *default_dir;
44 char *quoted_uri, *quoted_default_dir;
4345 GString *cmd;
4446
4547 files = g_object_get_data (G_OBJECT (item), "files");
4749
4850 uri = nemo_file_info_get_uri (file);
4951 default_dir = nemo_file_info_get_parent_uri (file);
52
53 quoted_uri = g_shell_quote (uri);
54 quoted_default_dir = g_shell_quote (default_dir);
5055
5156 cmd = g_string_new ("file-roller");
5257 g_string_append_printf (cmd,
5358 " --default-dir=%s --extract %s",
54 g_shell_quote (default_dir),
55 g_shell_quote (uri));
59 quoted_default_dir,
60 quoted_uri);
5661
5762 #ifdef DEBUG
5863 g_print ("EXEC: %s\n", cmd->str);
6368 g_string_free (cmd, TRUE);
6469 g_free (default_dir);
6570 g_free (uri);
71 g_free (quoted_default_dir);
72 g_free (quoted_uri);
6673 }
6774
6875
7178 gpointer user_data)
7279 {
7380 GList *files, *scan;
74 NemoFileInfo *file;
75 char *dir;
7681 GString *cmd;
7782
7883 files = g_object_get_data (G_OBJECT (item), "files");
79 file = files->data;
80
81 dir = nemo_file_info_get_parent_uri (file);
82
83 cmd = g_string_new ("file-roller");
84 g_string_append_printf (cmd," --extract-here");
85
86 g_free (dir);
84
85 cmd = g_string_new ("file-roller --extract-here");
8786
8887 for (scan = files; scan; scan = scan->next) {
8988 NemoFileInfo *file = scan->data;
9089 char *uri;
90 char *quoted_uri;
9191
9292 uri = nemo_file_info_get_uri (file);
93 g_string_append_printf (cmd, " %s", g_shell_quote (uri));
93 quoted_uri = g_shell_quote (uri);
94 g_string_append_printf (cmd, " %s", quoted_uri);
9495 g_free (uri);
96 g_free (quoted_uri);
9597 }
9698
9799 g_spawn_command_line_async (cmd->str, NULL);
111113 GList *files, *scan;
112114 NemoFileInfo *file;
113115 char *uri, *dir;
116 char *quoted_uri, *quoted_dir;
114117 GString *cmd;
115118
116119 files = g_object_get_data (G_OBJECT (item), "files");
118121
119122 uri = nemo_file_info_get_uri (file);
120123 dir = g_path_get_dirname (uri);
124 quoted_dir = g_shell_quote (dir);
121125
122126 cmd = g_string_new ("file-roller");
123 g_string_append_printf (cmd," --default-dir=%s --add", g_shell_quote (dir));
124
127 g_string_append_printf (cmd," --default-dir=%s --add", quoted_dir);
128
129 g_free (uri);
125130 g_free (dir);
126 g_free (uri);
131 g_free (quoted_dir);
127132
128133 for (scan = files; scan; scan = scan->next) {
129134 NemoFileInfo *file = scan->data;
130135
131136 uri = nemo_file_info_get_uri (file);
132 g_string_append_printf (cmd, " %s", g_shell_quote (uri));
137 quoted_uri = g_shell_quote (uri);
138 g_string_append_printf (cmd, " %s", quoted_uri);
133139 g_free (uri);
140 g_free (quoted_uri);
134141 }
135142
136143 g_spawn_command_line_async (cmd->str, NULL);
285292 return NULL;
286293
287294 if (unsupported_scheme ((NemoFileInfo *) files->data))
288 return NULL;
295 return NULL;
289296
290297 for (scan = files; scan; scan = scan->next) {
291298 NemoFileInfo *file = scan->data;
306313 NemoFileInfo *parent;
307314
308315 parent = nemo_file_info_get_parent_info (file);
309 can_write = nemo_file_info_can_write (parent);
316 can_write = nemo_file_info_can_write (parent);
317 g_object_unref (parent);
310318 }
311319 }
312320
336344
337345 items = g_list_append (items, item);
338346 }
339 else if (all_archives && ! can_write) {
347 if (all_archives &&
348 (!can_write || always_show_extract_to)) {
340349 NemoMenuItem *item;
341350
342351 item = nemo_menu_item_new ("NemoFr::extract_to",
378387 return items;
379388 }
380389
390 static GList *
391 nemo_fr_get_name_and_desc (NemoNameAndDescProvider *provider)
392 {
393 GList *ret = NULL;
394
395 ret = g_list_append (ret, _("Nemo Fileroller:::Allows managing of archives from the context menu"));
396
397 return ret;
398 }
381399
382400 static void
383401 nemo_fr_menu_provider_iface_init (NemoMenuProviderIface *iface)
385403 iface->get_file_items = nemo_fr_get_file_items;
386404 }
387405
406 static void
407 nemo_fr_nd_provider_iface_init (NemoNameAndDescProviderIface *iface)
408 {
409 iface->get_name_and_desc = nemo_fr_get_name_and_desc;
410 }
388411
389412 static void
390413 nemo_fr_instance_init (NemoFr *fr)
391414 {
415 GSettings *settings = g_settings_new ("org.nemo.preferences");
416
417 gchar **keys = g_settings_list_keys (settings);
418 int i;
419
420 for (i = 0; i < g_strv_length (keys); i++) {
421 if (g_strcmp0 (keys[i], "context-menus-show-all-actions")) {
422 always_show_extract_to = g_settings_get_boolean (settings, "context-menus-show-all-actions");
423 break;
424 }
425 }
426 g_strfreev (keys);
427 g_object_unref (settings);
392428 }
393429
394430
430466 NULL
431467 };
432468
469 static const GInterfaceInfo nd_provider_iface_info = {
470 (GInterfaceInitFunc) nemo_fr_nd_provider_iface_init,
471 NULL,
472 NULL
473 };
474
433475 fr_type = g_type_module_register_type (module,
434476 G_TYPE_OBJECT,
435477 "NemoFileRoller",
439481 fr_type,
440482 NEMO_TYPE_MENU_PROVIDER,
441483 &menu_provider_iface_info);
442 }
484
485 g_type_module_add_interface (module,
486 fr_type,
487 NEMO_TYPE_NAME_AND_DESC_PROVIDER,
488 &nd_provider_iface_info);
489 }