configuration of the Cygnus Support release of the @sc{gnu} Development
Tools. It also discusses common usage..
-Copyright (C) 1991 Cygnus Support
+Copyright (C) 1991, 1992 Cygnus Support
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
@titlepage
@sp 10
@title{On Configuring Development Tools}
-@author{K. Richard Pixley}
+@author{K. Richard Pixley, @code{rich@@cygnus.com}}
@author{Cygnus Support}
-
@page
+
@vskip 0pt plus 1filll
-Copyright @copyright{} 1991 Cygnus Support
+Copyright @copyright{} 1991, 1992 Cygnus Support
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
development environment actually run on the sun4. This technique is
often used within individual programs to remedy deficiencies in the host
operating system. For example, some operating systems do not provide
-the @code{bcopy()} function and so it is emulated using the
-@code{memset()} funtion.
+the @code{bcopy} function and so it is emulated using the
+@code{memcpy} funtion.
Host environment simply refers to the environment in which the program
will be built from the source.
./configure sun4 -notation=postfix
@end example
-If we wanted to build both at the same time, in the same directory
-structure, the intermediate pieces used in the build process must be
-kept separate.
+If we wanted to build both at the same time, the intermediate pieces
+used in the build process must be kept separate.
@example
-./configure sun4 -subdirs -notation=postfix
-./configure sun3 -subdirs -notation=infix
+mkdir ../objdir.sun4
+(cd ../objdir.sun4 ; ./configure sun4 -notation=postfix -srcdir=../src)
+mkdir ../objdir.sun3
+(cd ../objdir.sun3 ; ./configure sun3 -notation=infix -srcdir=../src)
@end example
@noindent
sun3 configurations. This is necessary as previous systems were only
capable of one configuration at a time. Otherwise, a second
configuration would write over the first. We've chosen to retain this
-behaviour so the @code{-subdirs} configuration option is necessary to
-get the new behaviour. The order of the arguments doesn't matter.
-There should be exactly one argument without a leading '@minus{}' sign
-and that argument will be assumed to be the host name.
+behaviour so the obj directories and the @code{-srcdir} configuration
+option are necessary to get the new behaviour. The order of the
+arguments doesn't matter. There should be exactly one argument without
+a leading @samp{-} sign and that argument will be assumed to be the host
+name.
From here on the examples will assume that you want to build the tools
-@emph{in place} and won't show the @code{-subdirs} option, but remember
+@emph{in place} and won't show the @code{-srcdir} option, but remember
that it is available.
In order to actually install the program, the configuration system needs
sun4 to bootstrap the Cygnus Support release and let's call the new
development environment @emph{stage1}.
-Why bother? Well, most people find that the Cygnus Support release
-builds programs that run faster and take up less space than the native
-development environments that came with their machines. Some people
-didn't get development environments with their machines and some people
-just like using the @sc{gnu} tools better than using other tools.
+Why bother? Well, most people find that the @sc{gnu} development
+environment builds programs that run faster and take up less space than
+the native development environments that came with their machines. Some
+people didn't get development environments with their machines and some
+people just like using the @sc{gnu} tools better than using other tools.
@cindex Stage2
While you're at it, if the @sc{gnu} tools produce better programs, maybe you
pair where the host is @var{hostname} and target is @var{targetname}.
If a previous configuration existed, it will be overwritten.
-@item ./configure -subdirs @var{hostname} -target=@var{targetname}
-creates a subdirectories @file{H-@var{hostname}} if @var{hostname} is @var{targetname} or
-@file{X-@var{hostname}-@var{targetname}} if it is not and configures the new directory.
-
@end table
@menu
Makefile template called @file{Makefile.in} and then inserting host and
target specific Makefile fragments. The variables are set based on the
chosen host+target pair and build style, that is, if you use
-subdirectories or not. The host and target specific Makefile may or may
+@code{-srcdir} or not. The host and target specific Makefile may or may
not exist.
@itemize @bullet