From e83f9e80b6d060f114eae23dfdeb88a524fe02a4 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Tue, 9 Mar 1993 21:04:44 +0000 Subject: [PATCH] Remove unneeded files, which were being sanitized out anyhow. --- sol-Build-A-Release.mk | 315 ------ sol-GNUmakefile | 222 ---- sol-inst.texi | 2238 ---------------------------------------- sol-intro.texi | 436 -------- sol-make-ftp | 8 - sol-rel.texi | 503 --------- sol-subst-strings | 22 - sol-subst-strings-ftp | 24 - 8 files changed, 3768 deletions(-) delete mode 100644 sol-Build-A-Release.mk delete mode 100755 sol-GNUmakefile delete mode 100644 sol-inst.texi delete mode 100644 sol-intro.texi delete mode 100644 sol-make-ftp delete mode 100644 sol-rel.texi delete mode 100755 sol-subst-strings delete mode 100755 sol-subst-strings-ftp diff --git a/sol-Build-A-Release.mk b/sol-Build-A-Release.mk deleted file mode 100644 index 45ee8726f14..00000000000 --- a/sol-Build-A-Release.mk +++ /dev/null @@ -1,315 +0,0 @@ -### Makefile for preparing a progressive release. -### -### This makefile is distinct from the makefile for three-staging for -### several reasons. First, this version builds a "stage4" using src -### directories that have no CVS directories. Second, the binaries -### are build from independent copies of the source. That is, each -### host release will have it's own copy of the src directory. -### -### This file was written and is maintained by K. Richard Pixley -### - -RELNO = 1.0 - -PWD = $(shell pwd) -CVS = $(PWD)/cirdancvs -tree = progressive -rooting = /opt/cygnus-sol2-$(RELNO) -cvs_module = progressive-solaris -gccflags = "-O" -release_tag = solaris-1-0 -release_dir = cygnus-sol2-1.0 - - - -host_release = ${host}/cygnus-sol2-$(RELNO) -objdir = ${host_release}/objdir - - -# prefixes are passed as arguments to configure, they have to start with - -prefixes = -prefix=$(rooting) - -# inst_prefixes are passed as arguments to make, without the - -inst_prefixes = prefix=$(PWD)/$(host_release) - -### What are these for? -create = -restart = -usage = - -## which C compiler to use -#CC = $(rooting)/bin/gcc -CC = /opt/cygnus-sol2-1.0/bin/gcc -C_COMPILER = "CC=$(CC) ${gccflags}" - -all: .${host}-done fluff - chmod -R a-w $(host) - chmod -R go=u $(host) - find $(host) -type d -print | xargs chmod u+w - -testfile: all blockit ${host}+.Z -${host}+.Z: - (cd ${host} ; tar cf - ${release_dir} \ - | compress -vV \ - | ../blockit \ - > ../$@) - -.${host}-done: .${host}-install .${host}-install-info - rm -rf ${objdir} - touch $@ - -.${host}-install: .${host}-all - ${MAKE} -C ${objdir} -w install-no-fixedincludes \ - $(inst_prefixes) $(C_COMPILER) - touch $@ - -.${host}-install-info: .${host}-info - ${MAKE} -C ${objdir} -w install-info $(inst_prefixes) $(C_COMPILER) - touch $@ - -.${host}-all: .${host}-config - ${MAKE} -C ${objdir} -w all $(C_COMPILER) - touch $@ - -.${host}-info: .${host}-config - ${MAKE} -C ${objdir} -w info $(C_COMPILER) - touch $@ - -.${host}-config: .${host}-src - cd ${objdir} ; \ - ../src/configure ${host} $(prefixes) - touch $@ - -.${host}-src: .${release_tag}-co .${host}-dirs - rm -rf ${host_release}/src - (tar cf - ${release_dir} | (cd ${host_release} ; tar xvf -) ; true) - (cd ${host_release}/${release_dir} ; find . \( -name CVS -o -name CVS.adm \) -depth -exec rm -rf {} \; ) - mv ${host_release}/${release_dir} ${host_release}/src - touch $@ - -.${host}-dirs: - [ -d ${host} ] || mkdir ${host} - [ -d ${host_release} ] || mkdir ${host_release} - [ -d ${objdir} ] || mkdir ${objdir} - touch $@ - -.${release_tag}-co: .${release_tag}-tagged - ${CVS} co -r ${release_tag} ${cvs_module} - mv ${tree} ${release_dir} - touch $@ - -.${release_tag}-tagged: - ${CVS} rtag ${release_tag} ${cvs_module} - touch $@ - -fluff: ${host_release}/src/Build-A-Release.mk \ - ${host_release}/src/Pack-A-Progressive \ - ${host_release}/lib/fixincludes \ - ${host_release}/src/INSTALL \ - ${host_release}/README \ - ${host}/Install \ - ${host}/install.dvi \ - ${host_release}/CYGNUS - -${host}/install.dvi: ${host_release}/src/install.texinfo - cp $< ${host}/install.texinfo - (cd ${host} ; tex install.texinfo) - (cd ${host} ; tex install.texinfo) - (cd ${host} ; tex install.texinfo) - rm ${host}/install.texinfo - -install-notes: ${host}/install.dvi - lpr $^ - -clean-fluff: - rm -f ${host_release}/src/Build-A-Release.mk \ - ${host_release}/src/Pack-A-Progressive \ - ${host_release}/lib/fixincludes \ - ${host_release}/Install \ - ${host_release}/src/install-texi.in \ - ${host_release}/src/install.texinfo \ - ${host_release}/src/Install.in \ - -${host_release}/src/Build-A-Release.mk: ${release_dir}/Build-A-Release.mk - rm -f $@; cp $< $@ - -${host_release}/src/Pack-A-Progressive: ${release_dir}/Pack-A-Progressive - rm -f $@; cp $< $@ - -${host_release}/src/Install.in: ${release_dir}/Install.in - rm -f $@; cp $< $@ - -${host_release}/src/CYGNUS: ${release_dir}/CYGNUS - rm -f $@; cp $< $@ - -${host_release}/CYGNUS: ${host_release}/src/CYGNUS - rm -f $@; cp $< $@ - -${host_release}/src/install-texi.in: ${release_dir}/sol-inst.texi - rm -f $@; cp $< $@ - -${host_release}/lib/fixincludes: ${host_release}/src/gcc/fixincludes - rm -f $@; cp $< $@ - chmod a+x $@ - -${host}/Install: ${host_release}/Install - rm -f $@; cp $< $@ - chmod a+x $@ - -${host_release}/Install: ${host_release}/src/Install - rm -f $@; cp $< $@ - chmod a+x $@ - -${host_release}/src/install.texinfo: ${host_release}/src/install-texi.in - $(MAKE) process -f Build-A-Release.mk IN=$< OUT=$@ relno=`echo ${release_dir} | sed "/${tree}-/s///"` - -${host_release}/README: ${host_release}/src/README-bin - rm -f $@; cp $< $@ - -${host_release}/src/INSTALL: ${host_release}/src/install.texinfo - -makeinfo +no-headers +no-split $< -o $@ -### remove tags table - sed -e '/^Tag Table/,$$d' $@ | sed -e '$$d' > $@.new - mv -f $@.new $@ - -${host_release}/src/Install: ${host_release}/src/Install.in - $(MAKE) process -f Build-A-Release.mk IN=$< OUT=$@ relno=`echo ${release_dir} | sed "/${tree}-/s///"` - chmod a+x $@ - -process: process-${host} - @if grep '||' ${OUT}.new ; then \ - echo $0 missed at least one of the triggers. 1>&2 ; \ - exit 1 ; \ - else \ - true ; \ - fi - mv -f ${OUT}.new ${OUT} - -process-sun4: - sed -e "/^@clear HOSTsun4/s::@set HOSTsun4:" \ - -e "/^@set HOSTsun3/s::@clear HOSTsun3:" \ - -e "/^@set HOSTdecstation/s::@clear HOSTdecstation:" \ - -e "/^@set HOSTiris/s::@clear HOSTiris:" \ - -e "/^@set HOSTrs6000/s::@clear HOSTrs6000:" \ - -e "/^@set FIXMES/s::@clear FIXMES:" \ - -e "/\|\|RELNO\|\|/s::${relno}:g" \ - -e "/\|\|TAPdflt\|\|/s::QIC-24:g" \ - -e "/\|\|DEVdflt\|\|/s::/dev/nrst8:g" \ - -e "/\|\|BD\|\|/s::35:g" \ - -e "/\|\|SD\|\|/s::34:g" \ - -e "/\|\|DF\|\|/s::69:g" \ - -e "/\|\|HOST\|\|/s::Sun-4:g" \ - -e "/\|\|HOSTstr\|\|/s::sun4:g" \ - -e "/\|\|TARGET\|\|/s::sun4:g" \ - -e "/\|\|GCCvn\|\|/s::cygnus-2.0.2:g" \ - < ${IN} > ${OUT}.new - - -process-sparc-sun-solaris2: - sed \ - -e "/^@set FIXMES/s::@clear FIXMES:" \ - -e "/^@clear CUSTOMER/s::@set CUSTOMER:" \ - -e "/^@set CDROMinst/s::@clear CDROMinst:" \ - -e "/^@clear TAPEinst/s::@set TAPEinst:" \ - -e "/^@set FTPsingle/s::@clear FTPsingle:" \ - -e "/^@set FTPsplit/s::@clear FTPsplit:" \ - -e "/\|\|MEDIUM\|\|/s::tape:g" \ - -e "/\|\|MEDstr\|\|/s::/dev/rmt/0ln:g" \ - -e "/\|\|DEVdflt\|\|/s::/dev/rmt/0ln:g" \ - -e "/\|\|MEDvar\|\|/s::/dev/@var{tape}:g" \ - -e "/\|\|TAPdflt\|\|/s::/dev/@var{tape}:g" \ - -e "/\|\|RELNO\|\|/s::1.0:g" \ - -e "/\|\|BD\|\|/s::20:g" \ - -e "/\|\|SD\|\|/s::28:g" \ - -e "/\|\|DF\|\|/s::48:g" \ - -e "/\|\|BUNDLE\|\|/s::comp:g" \ - -e "/\|\|HOST\|\|/s::SPARC computer:g" \ - -e "/\|\|HOSTstr\|\|/s::sparc-sun-solaris2:g" \ - -e "/\|\|TARGET\|\|/s::sparc-sun-solaris2:g" \ - -e "/\|\|GCCvn\|\|/s::cygnus-2.0.2:g" \ - < $(IN) > $(OUT).new - -process-sun3: - sed -e "/^@set HOSTsun4/s::@clear HOSTsun4:" \ - -e "/^@clear HOSTsun3/s::@set HOSTsun3:" \ - -e "/^@set HOSTdecstation/s::@clear HOSTdecstation:" \ - -e "/^@set HOSTiris/s::@clear HOSTiris:" \ - -e "/^@set HOSTrs6000/s::@clear HOSTrs6000:" \ - -e "/^@set FIXMES/s::@clear FIXMES:" \ - -e "/\|\|RELNO\|\|/s::${relno}:g" \ - -e "/\|\|TAPdflt\|\|/s::QIC-24:g" \ - -e "/\|\|DEVdflt\|\|/s::/dev/nrst8:g" \ - -e "/\|\|BD\|\|/s::32:g" \ - -e "/\|\|SD\|\|/s::34:g" \ - -e "/\|\|DF\|\|/s::65:g" \ - -e "/\|\|HOST\|\|/s::Sun-3:g" \ - -e "/\|\|HOSTstr\|\|/s::sun3:g" \ - -e "/\|\|TARGET\|\|/s::sun3:g" \ - -e "/\|\|GCCvn\|\|/s::cygnus-2.0.2:g" \ - < ${IN} > ${OUT}.new - -process-decstation: - sed -e "/^@set HOSTsun4/s::@clear HOSTsun4:" \ - -e "/^@set HOSTsun3/s::@clear HOSTsun3:" \ - -e "/^@clear HOSTdecstation/s::@set HOSTdecstation:" \ - -e "/^@set HOSTiris/s::@clear HOSTiris:" \ - -e "/^@set HOSTrs6000/s::@clear HOSTrs6000:" \ - -e "/^@set FIXMES/s::@clear FIXMES:" \ - -e "/\|\|RELNO\|\|/s::${relno}:g" \ - -e "/\|\|TAPdflt\|\|/s::QIC-24:g" \ - -e "/\|\|DEVdflt\|\|/s::/dev/nrmt0:g" \ - -e "/\|\|BD\|\|/s::27:g" \ - -e "/\|\|SD\|\|/s::34:g" \ - -e "/\|\|DF\|\|/s::61:g" \ - -e "/\|\|HOST\|\|/s::Decstation:g" \ - -e "/\|\|HOSTstr\|\|/s::decstation:g" \ - -e "/\|\|TARGET\|\|/s::decstation:g" \ - -e "/\|\|GCCvn\|\|/s::cygnus-2.0.2:g" \ - < ${IN} > ${OUT}.new - true - -process-iris4: - sed -e "/^@set HOSTsun4/s::@clear HOSTsun4:" \ - -e "/^@set HOSTsun3/s::@clear HOSTsun3:" \ - -e "/^@set HOSTdecstation/s::@clear HOSTdecstation:" \ - -e "/^@clear HOSTiris/s::@set HOSTiris:" \ - -e "/^@set HOSTrs6000/s::@clear HOSTrs6000:" \ - -e "/^@set FIXMES/s::@clear FIXMES:" \ - -e "/\|\|RELNO\|\|/s::${relno}:g" \ - -e "/\|\|TAPdflt\|\|/s::QIC-24:g" \ - -e "/\|\|DEVdflt\|\|/s::/dev/mt/tps0d0nrns:g" \ - -e "/\|\|BD\|\|/s::25:g" \ - -e "/\|\|SD\|\|/s::34:g" \ - -e "/\|\|DF\|\|/s::59:g" \ - -e "/\|\|HOST\|\|/s::Iris:g" \ - -e "/\|\|HOSTstr\|\|/s::iris4:g" \ - -e "/\|\|TARGET\|\|/s::iris4:g" \ - -e "/\|\|GCCvn\|\|/s::cygnus-2.0.2:g" \ - < ${IN} > ${OUT}.new - -process-rs6000: - sed -e "/^@set HOSTsun4/s::@clear HOSTsun4:" \ - -e "/^@set HOSTsun3/s::@clear HOSTsun3:" \ - -e "/^@set HOSTdecstation/s::@clear HOSTdecstation:" \ - -e "/^@set HOSTiris/s::@clear HOSTiris:" \ - -e "/^@clear HOSTrs6000/s::@set HOSTrs6000:" \ - -e "/^@set FIXMES/s::@clear FIXMES:" \ - -e "/\|\|RELNO\|\|/s::${relno}:g" \ - -e "/\|\|TAPdflt\|\|/s::QIC-24:g" \ - -e "/\|\|DEVdflt\|\|/s::/dev/rmt0.1:g" \ - -e "/\|\|BD\|\|/s::36:g" \ - -e "/\|\|SD\|\|/s::34:g" \ - -e "/\|\|DF\|\|/s::70:g" \ - -e "/\|\|HOST\|\|/s::RS/6000:g" \ - -e "/\|\|HOSTstr\|\|/s::rs6000:g" \ - -e "/\|\|TARGET\|\|/s::rs6000:g" \ - -e "/\|\|GCCvn\|\|/s::cygnus-2.0.2:g" \ - < ${IN} > ${OUT}.new - -pclean: - rm -rf ${host} - -blockit: blockit.c - - - diff --git a/sol-GNUmakefile b/sol-GNUmakefile deleted file mode 100755 index d359c1b30a1..00000000000 --- a/sol-GNUmakefile +++ /dev/null @@ -1,222 +0,0 @@ -#!/usr/latest/bin/make -f -# -# Makefile used to three-stage build a tree of source code, usually devo. -# - -# Every invocation of this Makefile needs to have a variable set (host), -# which is the named used for ./configure, and also the prefix for the -# various files and directories used in a three stage. -# - -ifndef host -error: - @echo - @echo - @echo You must set the variable \"host\" to use this Makefile - @echo - @echo - @exit 1 -else - -# -# from here to very near the end of the file is the real guts of this -# Makefile, and it is not seen if the variable 'host' is not set -# - -TREE := progressive -ROOTING := /opt/cygnus-sol2-1.0 -CVS_MODULE := progressive-solaris -TAG_DATE := 920615 -RELEASE_TAG := $(CVS_MODULE)-$(TAG_DATE) -release_root := $(ROOTING) - -TIME := time -NICE := nice -17 -MF := -w -GNUC := gcc -g - -SHELL := /bin/sh - -INSTDIR := $(shell pwd)/$(host) -PREFIXES := prefix=$(ROOTING) - -ifdef target -arch=$(host)=$(target) -endif - -.PHONY: all -all: do1 do2 do3 - -.PHONY: configuration -configuration: $(TREE) $(host)-stamp-stage1-configured - -.PHONY: comparison -comparison: - for i in `cd $(host)-objdir.3 ; find . -name \*.o -print` ; do \ - cmp $(host)-objdir.2/$$i $(host)-objdir.3/$$i ; \ - done - -.PHONY: clean -clean: - rm -rf $(host)-$(TREE)-holes $(host)-objdir $(host)-objdir.[123] $(host)-stamp-stage[123]* $(host)-stamp-holes *~ - -.PHONY: very -very: - rm -rf $(TREE) - -$(TREE): - $(TIME) cvs co $(CVS_TAG) $(CVS_MODULE) - -.PHONY: do1 -do1: $(host)-$(TREE)-holes $(host)-stamp-stage1 - -$(host)-stamp-stage1: $(host)-objdir.1 - touch $(host)-stamp-stage1 - -$(host)-objdir.1: $(TREE) $(host)-stamp-stage1-configured - (cd $(host)-objdir ; $(TIME) make $(MF) all info host=$(host)) - @echo CONFIGURE: make all completed for $(host) - (cd $(host)-objdir ; $(TIME) make $(MF) install install-info host=$(host)) - @echo CONFIGURE: make install-all completed for $(host) - mv $(host)-objdir $(host)-objdir.1 - -$(host)-stamp-stage1-configured: - [ -d $(host)-objdir ] || mkdir $(host)-objdir - (cd $(host)-objdir ; \ - $(TIME) ../$(TREE)/configure $(host) -v -srcdir=../$(TREE) \ - -prefix=$(ROOTING)) - touch $@ - -.PHONY: do2 -do2: $(host)-$(TREE)-holes $(host)-stamp-stage2 - -$(host)-stamp-stage2: $(host)-objdir.2 - PATH=$(release_root)/bin:`pwd`/$(host)-$(TREE)-holes ; \ - export PATH ; \ - echo $$PATH ; \ - SHELL=sh ; export SHELL ; \ - $(TIME) make $(host)-objdir.2 host=$(host) - touch $(host)-stamp-stage2 - -$(host)-objdir.2: $(TREE) $(host)-stamp-stage2-configured - [ -d $(host)-objdir ] || mkdir $(host)-objdir - (cd $(host)-objdir ; $(TIME) make $(MF) all info "CC=$(GNUC)" host=$(host)) - (cd $(host)-objdir ; $(TIME) make $(MF) $(PREFIXES) install install-info "CC=$(GNUC)" host=$(host)) - mv $(host)-objdir $(host)-objdir.2 - -$(host)-stamp-stage2-configured: - [ -d $(host)-objdir ] || mkdir $(host)-objdir - (cd $(host)-objdir ; \ - $(TIME) ../$(TREE)/configure $(host) -v -srcdir=../$(TREE) \ - -prefix=$(ROOTING)) - touch $@ - -.PHONY: do3 -do3: $(host)-$(TREE)-holes $(host)-stamp-stage3 - -$(host)-stamp-stage3: $(host)-objdir.3 - PATH=$(release_root)/bin:`pwd`/$(host)-$(TREE)-holes ; \ - export PATH ; \ - SHELL=sh ; export SHELL ; \ - $(TIME) make $(host)-objdir.3 host=$(host) - touch $(host)-stamp-stage3 - -$(host)-objdir.3: $(TREE) $(host)-stamp-stage3-configured - [ -d $(host)-objdir ] || mkdir $(host)-objdir - (cd $(host)-objdir ; $(TIME) make $(MF) all info "CC=$(GNUC)" host=$(host)) - (cd $(host)-objdir ; $(TIME) make $(MF) install-no-fixedincludes install-info "CC=$(GNUC)" host=$(host)) - mv $(host)-objdir $(host)-objdir.3 - -$(host)-stamp-stage3-configured: - [ -d $(host)-objdir ] || mkdir $(host)-objdir - (cd $(host)-objdir ; \ - $(TIME) ../$(TREE)/configure $(host) -v -srcdir=../$(TREE) \ - -prefix=$(ROOTING)) - touch $@ - -HOLES := [ \ - ar \ - as \ - awk \ - basename \ - cat \ - cc \ - chmod \ - cmp \ - cp \ - date \ - echo \ - egrep \ - ex \ - expr \ - find \ - grep \ - hostname \ - install \ - ld \ - lex \ - ln \ - ls \ - mkdir \ - mv \ - pwd \ - ranlib \ - rm \ - rmdir \ - sed \ - sh \ - sort \ - time \ - touch \ - tr \ - true \ - whoami - -PARTIAL_HOLES := \ - gcc \ - make - - -$(host)-$(TREE)-holes: $(host)-stamp-holes - -$(host)-stamp-holes: - -rm -rf $(host)-$(TREE)-holes - -mkdir $(host)-$(TREE)-holes - for i in $(HOLES) ; do \ - if [ -x $(host)-$(TREE)-holes/$$i ] ; then \ - echo "$$i already present" ; \ - else if [ -x /bin/$$i ] ; then \ - cp /bin/$$i $(host)-$(TREE)-holes ; \ - echo $$i from /bin ; \ - else if [ -x /usr/bin/$$i ] ; then \ - cp /usr/bin/$$i $(host)-$(TREE)-holes ; \ - echo $$i from /usr/bin ; \ - else if [ -x /usr/ccs/bin/$$i ] ; then \ - cp /usr/ccs/bin/$$i $(host)-$(TREE)-holes ; \ - echo $$i from /usr/ccs/bin ; \ - else if [ -x /usr/unsupported/bin/$$i ] ; then \ - cp /usr/unsupported/bin/$$i $(host)-$(TREE)-holes ; \ - echo $$i from /usr/unsupported/bin ; \ - else \ - echo $$i is NOT found ; \ - fi; fi ; fi ; fi ; fi ; true ; \ - done - for i in $(PARTIAL_HOLES) ; do \ - if [ -x /usr/latest/bin/$$i ] ; then \ - cp /usr/latest/bin/$$i $(host)-$(TREE)-holes ; \ - echo $$i from /usr/latest/bin ; \ - else if [ -x /usr/unsupported/bin/$$i ] ; then \ - cp /usr/unsupported/bin/$$i $(host)-$(TREE)-holes ; \ - echo $$i from /usr/unsupported/bin ; \ - fi; fi; \ - done - touch $(host)-stamp-holes - -force: - -endif # host - -### Local Variables: -### fill-column: 131 -### End: - diff --git a/sol-inst.texi b/sol-inst.texi deleted file mode 100644 index 78697a2657d..00000000000 --- a/sol-inst.texi +++ /dev/null @@ -1,2238 +0,0 @@ -\input texinfo -@c -@c search for "UPDATE!" for items that will need examination on future -@c releases -@c -@c This file may require a nonstandard texinfo.tex to format; if you -@c need it, please contact Cygnus Support (email editor-in-chief@cygnus.com) -@setfilename INSTALL-NOTES -@c FIXME: XCOMP stuff not ready to go. For example, -@c FIXME: no mention of lack of -msoft-float support for XCOMP, yet. -@c -@c This file describes how to install a Cygnus Solaris-2 Release. -@c -@c Copyright (C) 1991, 1992 Cygnus Support -@c This text may be freely distributed under the terms of the GNU -@c General Public License. -@c -@c $Id$ -@c -@c set exactly ONE of the following to select what kind of install to doc: -@clear CDROMinst -@clear TAPEinst -@set FTPsingle -@clear FTPsplit -@c -@c shared properties: -@clear FTP -@clear FTPorCD -@ifset FTPsingle -@set FTP -@set FTPorCD -@end ifset -@ifset FTPsplit -@set FTP -@set FTPorCD -@end ifset -@ifset CDROMinst -@set FTPorCD -@end ifset -@c -@c set CUSTOMER to indicate install instructions are for a Cygnus customer -@c (clear for general public) -@set CUSTOMER -@c -@iftex -@c The include file "texiplus.tex" is in the src/texinfo/cygnus dir, and -@c implements Cygnus modifications to the texinfo manual style. -@input texiplus -@c The include file "smpklug.texi" is a kluge to deal with local -@c document production issues at Cygnus; it's safe to comment out this -@c line if you don't have (or don't want) the file. -@input smpklug.texi -@smallbook -@cropmarks -@setchapternewpage on -@finalout -@end iftex -@settitle Release ||RELNO|| for Solaris 2 -@tex -% override-override: the following \font lines are redundant if you're -% using an unmodified FSF texinfo. -% FIXME! check whether these are still needed, or whether Courier OK now -% w/shorter paths -\globaldefs=1 -\font\texttt=cmtt10 scaled \magstephalf\let\tentt=\texttt -\font\textsl=cmsl10 scaled \magstephalf\let\tensl=\textsl -\font\textsf=cmss10 scaled \magstephalf\let\tensf=\textsf -\font\user=pcrb at 10pt -\globaldefs=0 -%end override-override -% WARNING: NONSTANDARD USAGE we need \tensf for print, without -% upsetting info. We weren't using @b in this note, so I redefine it: -% -\global\def\b#1{{\user #1}} -\global\parindent=0pt -@end tex -@titlepage -@ifset CDROMinst -@title CD-ROM Installation Notes -@end ifset -@ifset TAPEinst -@title Tape Installation Notes -@end ifset -@ifset FTP -@title FTP Installation Notes -@end ifset -@sp 3 -@subtitle Cygnus Support Developer's Kit -@subtitle Release ||RELNO|| for Solaris 2.0 -@author Cygnus Support @hfill hotline: +1 415 322 7836 -@page - -@tex -\def\$#1${{#1}} % Kluge: collect RCS revision info without $...$ -\xdef\Rmanvers{{\it Installation Notes (Solaris 2 Developer's Kit)}, \$Revision$} % *NOT* for use in headers, footers -{\parskip=0pt \hfill Cygnus Support\par \hfill \Rmanvers\par \hfill -\TeX{}info \texinfoversion\par } -\global\def\manvers{Release ||RELNO|| for Solaris 2} -@end tex - -@vskip 0pt plus 1filll -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 -are preserved on all copies. - -Permission is granted to copy and distribute modified versions of this -manual under the conditions for verbatim copying, provided also that -the entire resulting derived work is distributed under the terms of a -permission notice identical to this one. - -Permission is granted to copy and distribute translations of this manual -into another language, under the above conditions for modified versions. - -@end titlepage - -@ifinfo -@node Top -@top Cygnus Support Solaris-2 Developer's Kit, version ||RELNO|| - -This file is about the Cygnus Developer's Kit: what's in it, how to -install it, and how to reconfigure it. - -@ifclear FTPorCD -@menu -* Brief:: Installing in Brief -* Contents:: Release Contents -* Installing:: Installing the Developer's Kit -* Examples:: Installation Examples -* Install-Options:: Installation Options -* Why-fixincludes:: Why Convert System Header Files? -* Running:: Running the Programs -* Paths:: Changing the Paths -* Trouble:: Some Things that Might go Wrong -* Rebuilding:: Rebuilding From Source -* Removing:: Removing Parts of the Developer's Kit -* Cygnus-FSF:: Cygnus Releases and the FSF -* Cygnus-Support:: About Cygnus Support -@end menu -@end ifclear -@ifset FTPorCD -@menu -* Brief:: Installation Procedure -* Contents:: Release Contents -* Install-Options:: Installation Options -* Why-fixincludes:: Why Convert System Header Files? -* Running:: Running the Programs -* Paths:: Changing the Paths -* Trouble:: Some Things that Might go Wrong -* Rebuilding:: Rebuilding From Source -* Cygnus-FSF:: Cygnus Releases and the FSF -* Cygnus-Support:: About Cygnus Support -@end menu -@end ifset - -@end ifinfo - -@ifclear FTPorCD -@node Brief -@chapter Installing in Brief -@end ifclear - -@ifset FTPorCD -@node Brief -@chapter Installation Procedure -@end ifset - -@ifset TAPEinst -@strong{You can run the brief installation procedure if:} -@itemize @bullet -@item -Your ||HOST|| has its own tape drive (@code{/dev/rmt/0ln}---those -last three characters are zero, el, en; see @samp{man st}), and -@item -You're willing to install in the directory @file{/opt}, and -@item -You have at least ||DF|| MB available (try @samp{df /opt}; @pxref{Disk space}) -@item -The Solaris-2 OS packages @code{SUNWesu}, @code{SUNWhea}, -@code{SUNWbtool}, @code{SUNWarc}, and @code{SUNWtoo} are installed (try -@samp{pkginfo @var{name}}; @pxref{Optional OS packages}). -@end itemize -Otherwise, see @ref{Installing,,Installing the Developer's Kit}. -@end ifset -@ifset FTPorCD -@strong{To install the Cygnus Solaris-2 Developer's Kit, you need:} - -@end ifset -@ifset FTPsingle -@itemize @bullet -@item -the distribution file, @file{cygnus-sol2-||RELNO||.tar.Z}, in some directory -@var{dist} on your system -@item -The Solaris-2 OS packages @code{SUNWesu}, @code{SUNWhea}, -@code{SUNWbtool}, @code{SUNWarc}, and @code{SUNWtoo} installed on your -system (try @samp{pkginfo @var{name}}). See @ref{Optional OS packages}. -@item -at least ||DF|| MB of disk space available. See @ref{Disk space}. -@end itemize -@end ifset -@ifset FTPsplit -@itemize @bullet -@item -the distribution files, @file{cygnus-sol2-||RELNO||.bin.tar.Z} (if you -want precompiled binaries) and @file{cygnus-sol2-||RELNO||.src.tar.Z} -(if you want the source code), in some directory @var{dist} on your -system -@item -The Solaris-2 OS packages @code{SUNWesu}, @code{SUNWhea}, -@code{SUNWbtool}, @code{SUNWarc}, and @code{SUNWtoo} installed on your -system (try @samp{pkginfo @var{name}}). See @ref{Optional OS packages}. -@item -at least ||BD|| MB of disk space available for the binaries. See @ref{Disk space}. -@item -at least ||SD|| MB of disk space available for the source. See @ref{Disk space}. -@end itemize -@end ifset -@ifset CDROMinst -@itemize @bullet -@item -A copy of the SunSoft Catalyst CDware disc. -@item -The Solaris-2 OS packages @code{SUNWesu}, @code{SUNWhea}, -@code{SUNWbtool}, @code{SUNWarc}, and @code{SUNWtoo} installed on your -system (try @samp{pkginfo @var{name}}). See @ref{Optional OS packages}. -@item -at least ||BD|| MB of disk space available for the binaries. See @ref{Disk space}. -@item -at least ||SD|| MB of disk space available for the source. See @ref{Disk space}). -@end itemize -@end ifset - -@ifset FTPorCD -We suggest installing the Developer's Kit under @file{/opt} (at least -via a symbolic link). The precompiled tools are configured for this -location. If you install elsewhere, and cannot establish a symbolic -link to @file{/opt/cygnus-sol2-||RELNO||}, see @ref{Paths,,Changing the -Paths}. -@end ifset - -@enumerate -@ifclear FTPorCD -@item -Make sure you can write in @file{/opt/cygnus-sol2-||RELNO||}, by typing: - -@example -eg$ @b{su root} -password: @i{(enter root password)} -# @b{mkdir /opt/cygnus-sol2-||RELNO||} @i{(ignore error if any)} -# @b{chmod 777 /opt/cygnus-sol2-||RELNO||} -# @b{exit} @i{(give up root access)} -@end example -@end ifclear - -@ifset FTPorCD -@item -Make sure you can write in @file{/opt}, by typing: - -@example -eg$ @b{touch /opt/cygnus-test; rm /opt/cygnus-test} -@end example - -If you get an error, talk to your System Administrator about access to -@samp{/opt}. If you can't get permission to write in @file{/opt}, see -@ref{No access,,No Access to @file{/opt}}. -@end ifset - -@ifset FTPsingle -@item -Extract the Developer's Kit from the distribution file. - -@example -@exdent @emph{If you can install directly in @file{/opt}:} -eg$ @b{cd /opt} -eg$ @b{zcat @var{dist}/cygnus-sol2-||RELNO||.tar.Z | tar xfov -} -@end example - -@example -@exdent @emph{If you install in another directory @var{other}:} -eg$ @b{cd} @var{other} -eg$ @b{zcat @var{dist}/cygnus-sol2-||RELNO||.tar.Z | tar xfov -} -eg$ @b{ln -s cygnus-sol2-||RELNO|| /opt} -@end example -@end ifset - -@ifset FTPsplit -@item -Extract the Developer's Kit binaries from the distribution file. - -@example -@exdent @emph{If you can install directly in @file{/opt}:} -eg$ @b{cd /opt} -eg$ @b{zcat @var{dist}/cygnus-sol2-||RELNO||.bin.tar.Z | tar xfov -} -@end example - -@example -@exdent @emph{If you install in another directory @var{other}:} -eg$ @b{cd} @var{other} -eg$ @b{zcat @var{dist}/cygnus-sol2-||RELNO||.bin.tar.Z | tar xfov -} -eg$ @b{ln -s cygnus-sol2-||RELNO|| /opt} -@end example - -@item -If you also want the source, repeat the previous step, but with the file -@file{@var{dist}/cygnus-sol2-||RELNO||.src.tar.Z}. -@end ifset - -@ifset CDROMinst -@item -Mount the @sc{cdware cd-rom}. You may need to briefly become super-user: - -@example -eg$ @b{su root} -password: @i{(enter root password)} -# @b{mkdir} @b{/cdrom} @i{(ignore any errors)} -# @b{mount} @b{-F} @b{hsfs} @b{-o} @b{ro} @b{/dev/dsk/c0t6d0s0} @b{/cdrom} -# @b{exit} @i{(give up root access)} -@end example - -@item -Start the @sc{cd-rom}'s presentation program (see the instructions -that came with your @sc{cd-rom}). - -@item -Look for an icon showing the Cygnus logo, with the label ``GNU C''. If -you can't find this icon, you may have the wrong category selected; in -the Category menu, select either ``All'' or ``Software Engineering''. - -@item -Select the Cygnus icon by clicking once on it with the left mouse -button. - -@item -Select ``Install'' from the Options menu. A submenu appears, showing -these options: - -@display -Install Everything -Install Binaries -Install Source Code -@end display - -Select one of these options. (Selecting ``Install Everything'' is -equivalent to selecting each of the other two options, to get both -binaries and source code for the Developer's Kit.) -An interaction window appears. - -@item -Answer the prompt @samp{Installation directory} with the name of the -directory where you want the Developer's Kit installed. We recommend -@file{/opt} (which is the default), because the compiler and other tools -are configured for this location. (If you use another directory, -see @ref{Paths,,Changing the Paths}.) - -@item -Inspect the messages that appear in the interaction window. The -installation script @code{Install} displays occasional messages to keep -you informed about the steps it executes. Among them, these messages -mark completion of the major stages of installation: - -@example -Cygnus Support software distribution extracted! - -Fixed include files installed! - -Cygnus Support software distribution tested! - -@end example - -@strong{If all these messages have appeared}, skip the next step. - -@strong{If you see messages about missing parts of Solaris 2}, make sure -you have all the optional packages described in -@ref{Optional OS packages}. Then proceed with the next -step. -@end ifset - -@ifset TAPEinst -@item -Load the cygnus-sol2-||RELNO|| ||MEDIUM|| into your ||MEDIUM|| drive. - -@item -Get the @code{Install} script from the tape: - -@example -eg$ @b{cd /tmp} -eg$ @b{tar xfov /dev/rmt/0ln Install} -@i{Ignore ``WARNING: @dots{} Sense Key: Unit Attention'' message.} -@i{For other errors, try reinserting the tape and rerunning.} -@end example - -@item -Run the @code{Install} script: - -@example -eg$ @b{./Install} -@i{@dots{} @code{Install} displays messages about its activity, ending with} -Done. -@end example -@end ifset - -@ifset FTPorCD -@item -Fix up copies of the system header files for your ||HOST||, and test the -installation, with the @code{Install} script that was extracted from the -distribution. @emph{@code{Install} makes its own copies of the header -files; your system's original header files are not changed.} - -@example -eg$ @b{cd cygnus-sol2-||RELNO||} -eg$ @b{./Install} -@exdent @code{Install} displays messages about its activity, ending with -Done. -@end example - -For background information on this step, see @ref{Why-fixincludes,,Why -Convert System Header Files?}. -@end ifset - -@ifset CUSTOMER -@item -Record your Cygnus customer-ID (see cover letter): - -@example -eg$ @b{/opt/cygnus-sol2-||RELNO||/bin/install_cid @var{ID}} -@end example -@end ifset - -@item -Make a symbolic link to simplify pathnames: -@example -eg$ @b{cd} @b{/opt} -eg$ @b{ln} @b{-s} @b{cygnus-sol2-||RELNO||} @b{cygnus} -@end example - -@ifclear FTPorCD -@c Assume *WE* don't distribute cygnus-sol2-||RELNO|| w/permissions 777 -@item -Remove public write access from @file{/opt/cygnus-sol2-||RELNO||}. See your System -Administrator for the correct permissions at your site. -@end ifclear - -@end enumerate - -You're done! Anyone who puts @samp{/opt/cygnus/bin} in her or his -@code{PATH} can use the Developer's Kit. - -@node Contents -@chapter Release Contents - -This Developer's Kit is a Cygnus Support release: the -programs in it are recent versions, which have been tested and certified -both individually and as a coordinated suite of tools. -The kit includes both source and binaries for: - -@c UPDATE! Anything new shoveled in? - -@table @t -@item gcc -C compiler - -@item libm.a -Mathematical subroutine library - -@item gdb -Debugger - -@item gprof -Performance analyzer - -@item byacc -Parser generator - -@item flex -Fast lexical analyzer generator - -@item makeinfo -@itemx info -Online documentation tools - -@item texinfo.tex -@itemx texindex -Documentation printing tools - -@item send_pr -The Cygnus problem-reporting utility - -@item patch -Source-code update utility -@end table - -@menu -* Platforms:: Supported Platforms -* Requirements:: System Requirements -@end menu - -@node Platforms -@section Supported Platforms - -@table @strong -@item ||HOST||s -All programs in your Developer's Kit are for ||HOST||s running -Solaris 2.0; we ship binaries (configured to install and run under -@file{/opt/cygnus-sol2-||RELNO||}) as well as all source code. - -@item Other Platforms -For information on other platforms or other programs -that we may support, please contact Cygnus Support at: - -@table @strong -@item voice -+1 415 322 3811 -@item hotline -+1 415 322 7836 -@item fax -+1 415 322 3270 -@item email -@code{info@@cygnus.com} -@end table -@end table - -@page -@node Requirements -@section System Requirements - -@ifset FTPorCD -@menu -* OS level:: -* Optional OS packages:: -* Disk space:: -* Write access:: -@end menu -@end ifset - -@ifset TAPEinst -@menu -* OS level:: -* Optional OS packages:: -* A tape drive:: -* Disk space:: -* Write access:: -@end menu -@end ifset - -@node OS level -@subsection OS level -Solaris 2.0 Beta or later. - -@node Optional OS packages -@subsection Optional OS packages -Many components of Solaris 2.0 are part of the standard operating system -distribution, but are not installed by default. To install the Cygnus -Solaris 2.0 Developer's Kit, you will need to make sure two of these -optional components (called @dfn{packages}) are installed on your system: -@samp{SUNWesu} and @samp{SUNWhea}. Three more packages are needed to -run the Developer's Kit software after you've installed it: -@samp{SUNWbtool}, @samp{SUNWtoo}, and @samp{SUNWarc}. - -To check whether an optional package is installed, you can run -@samp{pkginfo @var{name}}. @code{pkginfo} is in @file{/usr/bin/}. If -@var{name} is not installed, you will get an error, like this: - -@example -eg$ @b{/usr/bin/pkginfo} @b{SUNWlibm} -ERROR: information for "SUNWlibm" was not found -@end example - -@noindent -If @var{name} is installed, you will see a one-line summary of the -package, like this: - -@example -eg$ @b{/usr/bin/pkginfo} @b{SUNWhea} -system SUNWhea Header Files -@end example - -To install one of these optional parts of Solaris 2 (@var{name} in the -example), put the Solaris 2.0 distribution CD in the drive, mount it -(for example, as @file{/cdrom}), then do: - -@example -/usr/sbin/pkgadd -d /cdrom/Solaris_2.0 @var{name} @dots{} -@end example - -@noindent -You can specify several package names at once. - -These are the Solaris 2 optional packages you'll need to run the -Developer's Kit: - -@table @code -@item SUNWarc -@emph{Needed to link your programs:} Archive libraries for system -interfaces. - -@item SUNWbtool -@emph{Needed to build your programs:} ``SPARCCompilers -2.0 Bundled tools''. Most of the contents of @file{/usr/ccs/bin} -(most notably, the assembler) come from this package. - -@item SUNWesu -@emph{Needed to install the Developer's Kit:} ``Extended System -Utilities''. The decompression program (@code{compress}, -@code{uncompress}, @code{zcat}) is in this package; it is used to -extract the contents of the Developer's Kit. - -@item SUNWhea -@emph{Needed to complete installation and compile your programs:} Header -files (@file{/usr/include}). - -@item SUNWtoo -@emph{Needed to link your programs:} ``Programming Tools'', notably the -linker, @code{/usr/ccs/bin/ld}. -@end table - -@noindent -One additional optional package may be of interest: - -@table @code -@item SUNWlibm -Sun's math subroutine library. This is not required, however, as a free -@samp{libm.a} is part of the Developer's Kit. -@end table - -@ifset TAPEinst -@node A tape drive -@subsection A tape drive -You need access to a tape drive that can read the distribution. -The drive need not be on the ||HOST|| where you want to run the -software; but it is best if the machine with a tape drive and your -||HOST|| can mount a common file system. At the very least, you need -some sort of file transfer capability between the machine with a -tape drive and your ||HOST||. -@end ifset - -@node Disk space -@subsection Disk space -The total space required to extract and install -binaries and source for all programs is -||DF|| megabytes. - -The software is configured to go into @file{/opt/cygnus-sol2-||RELNO||}. If you have -space available, but not in the same file system as @file{/opt}, you can -use @samp{ln -s} to create @file{/opt/cygnus-sol2-||RELNO||} as a symbolic link to the -file system where you do have the space available. - -@ifclear FTPorCD -If you don't have enough space, you may be able to install binaries only; -see @ref{Limited Space,,Not Enough Space}. The space required for -installing the binaries on ||HOST|| systems is ||BD|| megabytes. -@end ifclear - -@node Write access -@subsection Write access -You need write access to @file{/opt}, or at least to an existing -@file{/opt/cygnus-sol2-||RELNO||} directory. If you can't write in -@file{/opt} or @file{/opt/cygnus-sol2-||RELNO||}, see @ref{No access,,No -Access to @file{/opt}}. - -@ifclear FTPorCD -Root access is @emph{not} necessary to run the installation itself; -but you might need it briefly -@ifset CDROMinst -to mount the @sc{cd-rom} drive, and -@end ifset -to arrange for a writable @file{/opt/cygnus-sol2-||RELNO||} directory. The detailed -installation instructions show when this may be necessary. We recommend -you avoid @samp{su root} whenever possible. -@end ifclear - -@ifclear FTPorCD -@node Installing -@chapter Installing the Developer's Kit - -@iftex -This note shows the different parts of examples like this: -@table @asis -@item Computer output is shown in @code{typewriter font.} -@item Your input is indicated by @b{a bold typewriter font.} -@item Text to be replaced, rather than typed verbatim, is in @var{this font.} -@item Comments appear in @i{italic font}. -@end table -@end iftex -In examples, we show the system prompt as @samp{eg$}. - -The Cygnus cygnus-sol2-||RELNO|| ||MEDIUM|| contains two separate -files. The first file is a script called @code{Install}; -the second file contains the Developer's Kit software. To get -the software onto your system, you need to make sure you have the space -you'll need for it, and get the @code{Install} script off the ||MEDIUM||. -Then you can use the @code{Install} script to choose what else to -install. - -Two checklists follow. The first checklist shows what to do if you have -a ||MEDIUM|| drive on the ||HOST|| where you want to install the -Developer's Kit; the second shows how to use another networked machine -to read the ||MEDIUM||, then finish the installation on your ||HOST||. - -Both checklists suggest installing the Developer's Kit under -@file{/opt} (if you like, via a symbolic link from another location). -We recommend you use this location for the software, because the -precompiled, ready-to-run versions of the tools are configured this -way. (If you want to use a different location, and cannot establish a -symbolic link from it to @file{/opt/cygnus-sol2-||RELNO||}, please see -@ref{Install-Options,,Installation Options}. To use the software -conveniently after installing elsewhere, see @ref{Paths,,Changing the -Paths}.) - -Both checklists are very similar to @ref{Brief,,Installing in Brief}, -but provide more discussion of each step, and offer alternatives for -||MEDIUM|| drives, for systems whose available disk space is not in -@code{/opt}, and for installing only portions of the Developer's Kit. - -@menu -* local-install:: Installing with a local ||MEDIUM|| drive -* cross-install:: Installing with another machine's ||MEDIUM|| drive -@end menu - -@node local-install -@section Installing in @file{/opt}, with a local ||MEDIUM|| drive - -This procedure is for a ||HOST|| that has its own ||MEDIUM|| drive. - -Installing this way will install all the source code, plus the binaries for -the ||HOST||. If you don't want both source and binaries, stop after -extracting @code{Install} from the ||MEDIUM||, and read about what options you -can use with @code{Install} in @ref{Install-Options,,Installation -Options}. For examples of variations on what to install, -see @ref{Examples,,Installation Examples}. - -@enumerate -@item -Make sure that you have all the required Solaris 2 OS packages: -@code{SUNWesu}, @code{SUNWhea}, @code{SUNWbtool}, @code{SUNWarc}, and -@code{SUNWtoo}. You can use @code{pkginfo} to check; see -@ref{Optional OS packages}. - -@item -Check that you have enough space available (@pxref{Disk space}) in -@file{/opt}. You can use @samp{df /opt} to check. - -@item -Check whether you can write in @file{/opt}: - -@cartouche -@example -eg$ @b{touch /opt/cygnus-test; rm /opt/cygnus-test} -@end example -@end cartouche - -@noindent -@emph{If you get no errors from this line, skip the next step.} - -@item -If you got ``No such file or directory'' or ``Permission denied'' -errors, you may need to use another group, or an account that has -permission to write in @file{/opt} or in an existing -@file{/opt/cygnus-sol2-||RELNO||} directory. See @ref{No access,,No Access -to @file{/opt}}. If only @code{root} has access, the simplest procedure -is to @code{su root} @emph{briefly}, to create a writable -@file{/opt/cygnus-sol2-||RELNO||}. For instance: - -@cartouche -@example -eg$ @b{su root} -password: @i{enter root password} -# @b{mkdir /opt/cygnus-sol2-||RELNO||} @i{ignore error if any} -# @b{chmod 777 /opt/cygnus-sol2-||RELNO||} -# @b{exit} @i{give up root access} -eg$ -@end example -@end cartouche - -@ifset TAPEinst -@item -Load the Cygnus Support release tape (labelled ``cygnus-sol2-||RELNO||'') into -your system's tape drive. - -@item -find out the name of the @emph{non-rewinding} tape device that can read -the release tape, on your machine. Cygnus release tapes are labelled to -identify the kind of tape used---either QIC-24 or Exabyte. - -You will most likely use @file{/dev/rmt/0ln} (the last three characters -are zero, el, en) as the tape device, regardless of which of the two -kinds of tape you have; see @samp{man st} for details on how tape -devices are named on Solaris 2. - -However, the correct device name depends on how your system's tape -drives were installed; ask your system administrator. If the tape drive -you plan to use is your system's only tape drive, @file{/dev/rmt/0ln} is -very likely. Otherwise it may be something like @file{/dev/rmt/1ln}. - -Our examples show @file{/dev/rmt/0ln} for the tape device, as this is -the most common case. - -@item -The first file on the tape is a script called @code{Install}. That -script automates most of the installation procedure---but first you need -to bootstrap the installation by getting @code{Install} itself from the -tape. It doesn't really matter where you put this initial copy of -@code{Install}; it is only used to get things started---these examples -assume you put it in @file{/tmp}. When you use this copy of -@code{Install} to extract software from the tape, another copy of -@code{Install} will be saved in @file{/opt/cygnus-sol2-||RELNO||}. - -These commands will get @code{Install} into the @file{/tmp} directory -(remember, you may need something slightly different from -@file{/dev/rmt/0ln} as the device name for the appropriate tape drive on -your system): - -@cartouche -@example -eg$ @b{cd /tmp} -eg$ @b{tar xfov /dev/rmt/0ln Install} -@end example -@end cartouche - -A frightening five-line message beginning ``@code{WARNING}'' and ending -with ``@code{Sense Key: Unit Attention}'' is very common at this point. -It does not indicate anything is wrong; on the contrary, it's the -operating system's way of letting you know that it noticed you put in a -tape. - -If you get any error messages beginning ``tar: can't open'', check that -the tape is correctly placed in your tape drive, and that you typed the -right name where we show @file{/dev/rmt/0ln}. Some errors can be -corrected by reseating the tape in the tape drive and trying again. -@end ifset - -@quotation -@emph{If you don't want both source and binaries, stop now,} and read about -what options you can use with @code{Install} in -@ref{Install-Options,,Installation Options}. For examples of variations -on what to install, see @ref{Examples,,Installation Examples}. -@end quotation - -@item -Now you can extract your Developer's Kit software by running -@code{Install}. Use the @samp{-tape=} option to specify where -the software comes from: - -@cartouche -@example -eg$ @b{/tmp/Install -tape=/dev/rmt/0ln} -@end example -@end cartouche - -This is a time-consuming step. @code{Install} will begin by using -@code{tar} to extract software for your system, leaving a log in -@file{/opt/cygnus-sol2-||RELNO||/tar.log}. Then it prepares copies of your system -header files, converted to comply with @sc{ansi} C -(@pxref{Why-fixincludes,,Why Convert System Header Files?}); a log for -this step goes in @file{/opt/cygnus-sol2-||RELNO||/fixincludes.log}. @emph{Your -system's original header files are not changed;} @code{Install} writes -the converted copies in a separate, @sc{gcc}-specific directory. - -As it executes, @code{Install} displays occasional messages to keep you -informed about which of these steps it's executing. Among them, these -messages mark completion of the major stages of installation: - -@cartouche -@example -Cygnus Support software distribution extracted! - -Fixed include files installed! - -Cygnus Support software distribution tested! - -Done. -@end example -@end cartouche - -@ifset CUSTOMER -@item -In case you need to send problem reports to Cygnus, we've -included a script @code{send_pr} (and a supporting online template) to -structure and transmit your reports. Please use the -script @code{install_cid} to record your Cygnus customer ID in your copy -of the problem report form. (You can find your customer ID in the cover -letter that came with this release; or call the Cygnus hotline, -@w{+1 415 322 7836}.) This will enable us to respond as quickly as -possible to any problem reports you send. - -@cartouche -@example -eg$ @b{/opt/cygnus-sol2-||RELNO||/bin/install_cid @var{ID}} -install_cid:`@var{ID}' is now the default customer ID for send_pr -@end example -@end cartouche -@end ifset - -@item -Make a symbolic link to simplify pathnames (@pxref{Running,,Running the -Programs}): - -@cartouche -@example -eg$ @b{cd} @b{/opt} -eg$ @b{ln} @b{-s} @b{cygnus-sol2-||RELNO||} @b{cygnus} -@end example -@end cartouche - -@item -We recommended permissions @code{777} for the @file{/opt/cygnus-sol2-||RELNO||} -directory, to be sure you could run this procedure. However, for the -long term, it is usually not a good idea to leave directories -world-writable (especially directories where executables are found). - -For better security, remove public write access from @file{/opt/cygnus-sol2-||RELNO||}. -See your System Administrator for the correct permissions at your site. -@end enumerate - -You're done! Anyone who puts @samp{/opt/cygnus/bin} in her or his -@code{PATH} can use the Developer's Kit. - -@page -@node cross-install -@section Installing in @file{/opt}, with another machine's ||MEDIUM|| drive -This checklist is for a ||HOST|| that does not have its own ||MEDIUM|| drive, -but can share a file system with another machine that does have a ||MEDIUM|| -drive. The other machine need not be a ||HOST||. - -Installing this way will install all the source code, plus the binaries for -the ||HOST||. If you don't want both source and binaries, stop after -extracting @code{Install} from the ||MEDIUM||, and read about what options you -can use with @code{Install} in @ref{Install-Options,,Installation -Options}. For examples of variations on what to install, -see @ref{Examples,,Installation Examples}. - -@enumerate -@item -Find a machine with a suitable ||MEDIUM|| drive on the same network as your -||HOST||, and sign on to it. If the only machine with a ||MEDIUM|| -drive isn't on the network, see @ref{No Drive,,No Local ||MEDIUM|| Drive}. - -@item -Make sure a decompression program is available. The installation -procedure requires @code{compress} (used with the @samp{-d} option, in -the Cygnus @code{Install} script). @code{compress} is present on most -Unix systems. On Solaris 2 systems, it is part of the optionally -installed @code{SUNWesu} package. - -@item -Choose a directory where you will install the Developer's Kit. The -directory must be accessible from both machines (the one with the ||MEDIUM|| -drive, and the ||HOST|| where you want to use the software)---for -example, over NFS. Wherever this note uses @var{shr}, substitute the -name of the directory you chose. - -The shared directory need not have the same name on both machines, -though we show it as @var{shr} on both, for simplicity. - -@item -Check that you have enough space available (@pxref{Disk space}) in -@var{shr}. You can use @samp{df @var{shr}} to check. - -@item -Check whether you can write in @var{shr}: - -@cartouche -@example -eg$ @b{touch @var{shr}/cygnus-test; rm @var{shr}/cygnus-test} -@end example -@end cartouche - -@noindent -@emph{If you get no errors from this line, skip the next step.} - -@item -If you got ``No such file or directory'' or ``Permission denied'' -errors, you may need to use another group, or an account that has -permission to write in @var{shr} or in an existing -@file{/@var{shr}/cygnus-sol2-||RELNO||} directory. See @ref{No access,,No -Access to @file{/opt}}. If only @code{root} has access, the simplest -procedure is to @code{su root} @emph{briefly}, to create a writable -@file{/@var{shr}/cygnus-sol2-||RELNO||}. For instance: - -@cartouche -@example -eg$ @b{su root} -password: @i{(enter root password)} -# @b{mkdir @var{shr}/cygnus-sol2-||RELNO||} @i{(ignore error if any)} -# @b{chmod 777 @var{shr}/cygnus-sol2-||RELNO||} -# @b{exit} @i{root access not needed beyond this} -eg$ -@end example -@end cartouche - -@ifset TAPEinst -@item -Load the Cygnus Support release tape (labelled ``cygnus-sol2-||RELNO||'') into -the system's tape drive. - -@item -find out the name of the @emph{non-rewinding} tape device on the machine -that can read the release tape. Cygnus release tapes are labelled to -identify the kind of tape used---either QIC-24 or Exabyte. - -On ||HOST|| (or compatible) systems running Solaris 2, you will most -likely use @file{/dev/rmt/0ln} (the last three characters are zero, el, -en) as the tape device, regardless of which of the two kinds of tape you -have; see @samp{man st} for details on how tape devices are named on -Solaris 2. - -However, the correct device name depends on the kind of system, and on -how the system's tape drives were installed; ask your system -administrator. On systems running Solaris or other Unix SVr4 variants, -if the tape drive you plan to use is your system's only tape drive, -@file{/dev/rmt/0ln} is very likely. Otherwise it may be something like -@file{/dev/rmt/1ln}. - -These examples show @file{/dev/@var{tape}} for the tape device; remember -to substitute the appropriate name. - -@item -The first file on the tape is a script called @code{Install}. That -script automates most of the installation procedure---but first you need -to bootstrap the installation by getting @code{Install} itself from the -tape. It doesn't really matter where you put this initial copy of -@code{Install}; it is only used to get things started---these examples -assume you put it in @file{/tmp}. When you use this copy of -@code{Install} to extract software from the tape, another copy of -@code{Install} will be saved in @file{@var{shr}/cygnus-sol2-||RELNO||}. Later, you -will use that second copy to finish the installation on your ||HOST||. - -These commands will get @code{Install} into the @file{/tmp} directory -(remember to fill in the appropriate device for @file{/dev/@var{tape}}: - -@cartouche -@example -eg$ @b{cd /tmp} -eg$ @b{tar xfov /dev/@var{tape} Install} -@end example -@end cartouche - -On Solaris-2 systems, a frightening five-line message beginning -``@code{WARNING}'' and ending with ``@code{Sense Key: Unit Attention}'' -is very common at this point. It does not indicate anything is wrong; -on the contrary, it's the operating system's way of letting you know -that it noticed you put in a tape. Other systems may provide similar -amenities. - -If you get any error messages beginning with something like ``tar: can't -open'', check that the tape is correctly placed in your tape drive, and -that you typed the right name for @var{tape}. Some errors can be -corrected by reseating the tape in the tape drive and trying again. -@end ifset - -@quotation -@emph{If you don't want both source and binaries, stop now,} and read about -what options you can use with @code{Install} in -@ref{Install-Options,,Installation Options}. For examples of variations -on what to install, see @ref{Examples,,Installation Examples}. -@end quotation - -@item -Now you can extract all the software by running @samp{Install extract}. -Use the @samp{-tape=} option to specify where the software comes from, and the -@w{@samp{-installdir=}} option to point to the @var{shr} directory. - -@cartouche -@example -eg$ @b{cd} @b{/tmp} -eg$ @b{./Install} @b{extract} @b{-tape=||MEDvar||} @b{-installdir=@var{shr}} -@end example -@end cartouche - -This is a time-consuming step. @code{Install} will use @code{tar} to -extract software for your system, leaving a log in the file -@file{@var{shr}/cygnus-sol2-||RELNO||/tar.log}. - -When @code{Install} is done extracting the software, it -displays the messages - -@cartouche -@example -Cygnus Support software distribution extracted! -Done. -@end example -@end cartouche - -@item -Log on to the ||HOST|| where you want to use the software. - -@item -Make sure that your ||HOST|| has the required Solaris 2 OS packages: -@code{SUNWhea}, @code{SUNWbtool}, @code{SUNWarc}, and @code{SUNWtoo} -(@pxref{Optional OS packages}). You can use @code{pkginfo} -to check. - -@item -Create a symbolic link from @file{@var{shr}/cygnus-sol2-||RELNO||} -to @file{/opt/cygnus-sol2-||RELNO||} on your ||HOST||. You may -need to become @code{root} @emph{briefly}, as in this example: - -@cartouche -@example -eg-sol2$ @b{su root} -password: -# @b{ln -s @var{shr}/cygnus-sol2-||RELNO|| /opt/cygnus-sol2-||RELNO||} -# exit @i{root access not needed beyond this} -@end example -@end cartouche - -@noindent -If you don't have access to any account with permission to write in -@file{/opt}, see @ref{No access,,No Access to @file{/opt}}. - -@item -Fix up system header files on your ||HOST||, and test the installation, -with the copy of @code{Install} that was placed in -@file{@var{shr}/cygnus-sol2-||RELNO||} (now accessible as @file{/opt/cygnus-sol2-||RELNO||} on your -machine): - -@cartouche -@example -eg-sol2$ @b{cd} @b{/opt/cygnus-sol2-||RELNO||} -eg-sol2$ @b{./Install} @b{f}@b{ixincludes} @b{test} -@end example -@end cartouche - -@noindent -A log for the @code{fixincludes} step goes in -@file{/opt/cygnus-sol2-||RELNO||/fixincludes.log}. @emph{Your -system's original header files are not changed;} @code{Install} writes -the converted copies in a separate, @sc{gcc}-specific directory. - -When each stage of this work is complete, @code{Install} displays these -messages (the last, @samp{Done.}, simply indicates that @code{Install} -has finished executing). - -@cartouche -@example -Fixed include files installed! - -Cygnus Support software distribution tested! - -Done. -@end example -@end cartouche - -@ifset CUSTOMER -@item -In case you need to send problem reports to Cygnus, we've -included a script @code{send_pr} (and a supporting online form) to -structure and transmit your reports. Please use the -script @code{install_cid} to record your Cygnus customer ID in your copy -of the problem report form. (You can find your customer ID in the cover -letter that came with this release; or call the Cygnus hotline, -@w{+1 415 322 7836}.) This will enable us to respond as quickly as -possible to any problem reports you send. - -@cartouche -@example -eg-sol2$ @b{/opt/cygnus-sol2-||RELNO||/bin/install_cid @var{ID}} -install_cid:`@var{ID}' is now the default customer ID for send_pr -@end example -@end cartouche -@end ifset - -@item -Make a symbolic link to simplify pathnames (@pxref{Running,,Running the -Programs}): - -@cartouche -@example -eg$ @b{cd} @b{/opt} -eg$ @b{ln} @b{-s} @b{cygnus-sol2-||RELNO||} @b{cygnus} -@end example -@end cartouche - -@item -We recommended permissions @code{777} for the @file{/opt/cygnus-sol2-||RELNO||} and -@file{@var{shr}/cygnus-sol2-||RELNO||} directories, to make sure you could run this -procedure. However, for the long term, it is usually not a good idea to -leave directories world-writable (especially directories where -executables are found). - -For better security, remove public write access from @file{/opt/cygnus-sol2-||RELNO||} -and @file{@var{shr}/cygnus-sol2-||RELNO||}. See your System Administrator for the -correct permissions at your site. -@end enumerate - -You're done! Anyone who puts @samp{/opt/cygnus/bin} in her or his -@code{PATH} can use the Developer's Kit. - -@node Examples -@chapter Installation Examples - -Once you've got the @code{Install} script from your ||MEDIUM||, -you can tell @code{Install} what software to install, what form of the -programs you need, and what installation steps to do. Here are some -examples covering common situations. For a full explanation of each -possible @code{Install} argument, see @ref{Install-Options,,Installation -Options}. - -The default ||MEDIUM|| drive for @code{Install} is @code{/dev/rmt/0ln}, which is -right for the most common cases on Solaris 2 systems. If your -||MEDIUM|| drive is different, you need to use the -@samp{-tape=||MEDvar||} option; the examples show this option for -completeness. -@ifset TAPEinst -Remember to specify a @emph{non-rewinding} tape device. -@end ifset - -@menu -* binaries:: Installing binaries only -* ||HOSTstr||-remote:: Reading tape on any machine, finishing on ||HOST|| -* source-remove:: Removing Source -@end menu - -@node binaries -@section Installing binaries only - -@cartouche -@example -eg$ @b{./Install -tape=||MEDvar|| bin} -@end example -@end cartouche - -If you don't want the source---for instance, to save space---you can use -the argument @samp{bin}. - -@node ||HOSTstr||-remote -@section Reading ||MEDIUM|| on any SVr4 machine, finishing on ||HOST|| - -@cartouche -@example -@emph{On an SVr4 machine on your network with a ||MEDIUM|| drive:} -eg-tp$ @b{./Install -tape=/dev/rmt/0ln -installdir=@var{shr} extract} -@end example -@end cartouche - -@cartouche -@example -@emph{On your ||HOST||} -eg$ @b{ln -s @var{shr}/cygnus-sol2-||RELNO|| /opt/cygnus-sol2-||RELNO||} -eg$ @b{cd /opt/cygnus-sol2-||RELNO||} -eg$ @b{./Install @b{f}ixincludes test} -@end example -@end cartouche - -@noindent -If your ||HOST|| doesn't have a ||MEDIUM|| drive, but another machine that can -mount some shared directory @var{shr} does have one, you can carry out -the first step of the installation from the machine with a ||MEDIUM|| drive, -as shown. Note that you have to say @samp{extract} on the -@code{Install} command line. This alerts @code{Install} to stop the -install procedure after it reads the software. You still have to finish the -installation, but the last two steps have to run on your ||HOST||. (If -you forget, there's no great harm done: @code{Install} will notice that -it can't carry out a full installation on the wrong machine, and will -stop with an error message---then you can go back and try again. When -@code{Install} notices a problem like this, it doesn't carry out -@emph{any} action other than giving a helpful error message). - -The @samp{fixincludes} part of the installation is essential. Please -see @ref{Why-fixincludes,,Why Convert System Header Files?}, if you're -curious. - -@node source-remove -@section Removing Source -The @code{Install} script can remove anything it can install. For -example, if after installing the complete Developer's Kit on your -machine you decide to remove the source files: - -@cartouche -@example -eg$ @b{cd /opt/cygnus-sol2-||RELNO||} -eg$ @b{./Install remove source} -@end example -@end cartouche - -@noindent -In general, to remove a part of the Developer's Kit, use the same -@code{Install} command line that would extract that part, but add the -keyword @code{remove}. The @code{-tape} option is not necessary for -removing. -@c following "end" matches ifclear FTPorCD several nodes back! -@end ifclear - -@node Install-Options -@chapter Installation Options - -The command-line arguments and options to @code{Install} allow you to -direct its operation in these ways: - -@ifclear FTPorCD -@itemize @bullet -@item -@emph{What form of the programs} to install. You can choose among ||HOST|| -binaries (argument @code{bin}) and source code (@code{source}). -If you don't specify either of these, @code{Install} assumes you want -both source, and binaries for a ||HOST|| running Solaris 2. -@end itemize -@end ifclear - -@itemize @bullet -@item -@emph{What installation actions} to carry out: -@enumerate -@ifclear FTPorCD -@item -extracting source from the ||MEDIUM|| (option -@code{extract}) -@end ifclear -@item -writing @sc{ansi}-C conforming copies of your system include files (needed -for the compilation tools; option @code{fixincludes}) -@item -running a simple test of the installed programs -(option @code{test}) -@end enumerate - -@ifclear FTPorCD -The last two of these actions (@code{fixincludes} and -@code{test}) can only run on your ||HOST||. If you read the -||MEDIUM|| on another machine, you must specify the @code{extract} option -explicitly, to indicate that you don't expect the other two actions to -run (and are aware of the need to run further installation steps on your -||HOST||). - -@item -@emph{Removing some of the release} after it's installed. - -@item -@emph{Where to find the software distribution}, with the @samp{-tape} option. -@end ifclear - -@item -@emph{Where you want to install}, with the @samp{-installdir} option. -@end itemize - -Here is a summary of the @code{Install} command-line options, -followed by more detailed explanations: - -@ifclear FTPorCD -@example -Install @r{[} -tape=||MEDvar|| @r{]} - @r{[} -installdir=@var{directory} @r{]} - @r{[} bin @r{]} @r{[} source @r{]} - @r{[} extract @r{]} @r{[} fixincludes @r{]} @r{[} test @r{]} - @r{[} remove @r{]} -@end example -@end ifclear -@ifset FTPorCD -@example -Install @r{[} fixincludes @r{]} @r{[} test @r{]} -@end example -@end ifset - -@ifset TAPEinst -@table @code -@item -tape=||MEDvar|| -@itemx -tape=@var{tarfile} -Specify the @emph{non-rewinding} device name for your tape drive as -@file{rmt/0ln} (the last three characters are zero, el, en). - -If you extract the installation script and compressed tarfile on some -other system, and transfer them to your ||HOST|| for installation, use -the name of the tarfile instead of a device name with @samp{-tape}. -See @ref{No Drive,,No Local ||MEDIUM|| Drive}, for more discussion. - -@item -installdir=@var{directory} -If you have no write access to @samp{/opt}, use this option to specify -an alternate @var{directory} for your software---but beware: the -software is configured to go in @samp{/opt/cygnus-sol2-||RELNO||}, and -you'll have to override or change that too. See @ref{Paths,,Changing the -Paths}. - -@item bin -@itemx source -By default, @code{Install} extracts both source, and binaries for your -||HOST||. Instead of relying on the default, you -can use these options to say exactly what forms you -want. You need to do this if -@itemize @bullet -@item -you want only binaries, or -@item -you want only source. -@end itemize - -@item extract -@itemx fixincludes -@itemx test -A full installation includes up to three things: (1) extracting -software; (2) creating @sc{ansi}-C conforming copies of your -system's standard header files; and (3) testing the installation. -You can execute these steps separately by specifying -@samp{extract}, @samp{fixincludes}, or @samp{test} on the -@code{Install} command line. - -After you extract the software, @samp{fixincludes} is essential if you're -using the compiler. @samp{fixincludes} @emph{does not change your -system's original header files;} @code{Install} writes the converted -copies in a separate, @sc{gcc}-specific directory. -See @ref{Why-fixincludes,,Why Convert System Header Files?}, for more -discussion of the @samp{fixincludes} step. @code{Install} will only -attempt these two steps if you run it on the ||HOST||. - -@samp{test} is a confidence-building step, and doesn't -actually change the state of the installed software. -The @samp{test} step may not make sense, depending on what -other options you've specified---if you install only source, there's -nothing to test. - -If you specify a step that doesn't make sense, or if you run @code{Install} -on a different machine but try to run @code{fixincludes} or -@code{test}, @code{Install} will notice the error, and exit -(before doing anything at all) with an error message, so you can try -again. - -When you run @samp{extract}, @code{Install} leaves a log file -@file{tar.log} in the installation directory---by default, in -@file{/opt/cygnus-sol2-||RELNO||}. - -When you run @samp{fixincludes}, @code{Install} -leaves a log file @file{fixincludes.log} in the @file{cygnus-sol2-||RELNO||} -subdirectory. - -@item remove -You can also use @code{Install} to remove parts of the release after -you've installed them. Identify what to remove with either of the -command-line options @samp{source} or @samp{bin}, together with -@samp{remove}. @code{Install} will erase these parts of the -installation from your system. See @ref{Removing,,Removing Parts of the -Developer's Kit}, for an example. -@end table -@end ifset - -@ifset FTPorCD -@table @code -@item fixincludes -@itemx test -These steps are performed when you run @code{Install} without -arguments, but if you like you can select either of them explicitly. - -After you extract the software, @samp{fixincludes} is essential if you're -using the compiler. @samp{fixincludes} @emph{does not change your -system's original header files;} @code{Install} writes the converted -copies in a separate, @sc{gcc}-specific directory. -See @ref{Why-fixincludes,,Why Convert System Header Files?}, for more -discussion of the @samp{fixincludes} step. @code{Install} will only -attempt these two steps if you run it on the ||HOST||. - -@samp{test} is a confidence-building step, and doesn't -actually change the state of the installed software. - -When you run @samp{fixincludes}, @code{Install} -leaves a log file @file{fixincludes.log} in the @file{cygnus-sol2-||RELNO||} -subdirectory. -@end table -@end ifset - - -@node Why-fixincludes -@chapter Why Convert System Header Files? - -It is very important to run the @samp{fixincludes} step of installation -(either explicitly, as @samp{Install fixincludes}, or by default when -you run @code{Install} with no arguments). You must do this on -@emph{each installation}: if many ||HOST||s share the same binaries on a -shared filesystem, you need only do it once---but if you install -separate copies, you must run @code{Install fixincludes} on each. - -The C header files supplied with SVr4 versions of Unix depend on a -questionable interpretation of the @sc{ansi} C standard: they test for a -non-@sc{ansi} environment by checking whether @code{__STDC__} is defined -as zero. The @sc{ansi} standard actually only specifies that -@code{__STDC__} will be defined to 1; if it is defined to any other -value, the environment is not @sc{ansi} C compatible, and @sc{ansi} C -says nothing about what that value might be. - -@sc{gcc} defines @code{__STDC__} to 1 when running with @samp{-ansi}, -when it functions as an ``@sc{ansi} C superset'' compiler. (It also sets -@code{__STRICT_ANSI__} when it runs with the @samp{-pedantic} option.) -However, @sc{gcc} leaves @code{__STDC__} undefined when it is not -running as an @sc{ansi} C compiler. - -Unfortunately, the Solaris 2 header files follow the SVr4 choice. Since -@sc{gcc} never defines @code{__STDC__} as 0, the distributed header -files can leave out some declarations. (Look in @file{/usr/include/time.h}, -for example.) - -@samp{Install fixincludes} makes copies of the system include files, -which have these nonstandard features removed so that @sc{gcc} can -process them. These copies are placed in a new, @sc{gcc}-specific -include directory---@emph{your system's original header files are not -affected.} Once these fixed header files are created, @sc{gcc} finds and -uses them automatically. - -If you don't run @code{fixincludes}, the GNU C compiler can only use the -original system header files when you compile new C programs. @emph{In -some cases, the resulting programs will fail at run-time}. - -@node Running -@chapter Running the Programs -Anyone who wishes to run the Cygnus development tools will need to make -sure the @code{PATH} environment variable will find them. The simplest -thing is to include @samp{/opt/cygnus-sol2-||RELNO||/bin} in the -@code{PATH} variable. Since the directory name contains the release -number @samp{||RELNO||}, however, this approach will require changing -the paths explicitly for all users when you install a new release. - -Our installation procedures recommended creating a symbolic link like -this, to plan ahead for future releases: - -@example -@cartouche -eg$ @b{cd} @b{/opt} -eg$ @b{ln} @b{-s} @b{cygnus-sol2-||RELNO||} @b{cygnus} -@end cartouche -@end example - -Then people can use settings like these in initialization files: - -@example -@exdent For shells compatible with Bourne shell (@code{/bin/sh}, @code{bash}, or Korn shell): -@cartouche -@b{PATH=/opt/cygnus/bin:$PATH} -@b{export PATH} -@end cartouche -@end example - -@example -@exdent For C shell: -@cartouche -@b{set path=(/opt/cygnus/bin $path)} -@end cartouche -@end example - -@noindent -You can also ensure that the @code{man} command can pick up the -manual pages, using the @code{MANPATH} environment variable. - -@example -@exdent For Bourne-compatible shells: -@cartouche -@b{MANPATH=/opt/cygnus/man:$MANPATH} -@b{export MANPATH} -@end cartouche -@end example - -@example -@group -@exdent For C shell: -@cartouche -@b{setenv MANPATH /opt/cygnus/man:$MANPATH} -@end cartouche -@end group -@end example - -@node Paths -@chapter Changing the Paths -The binaries shipped by Cygnus are configured for installation under the -directory @file{/opt/cygnus-sol2-||RELNO||}. In particular, @code{gcc} -and the documentation browser @code{info} need to know the location of -the distribution. - -If you wish to run the tools after installing them in another location, -you can either: -@itemize @bullet -@item -use environment variables -to tell the tools where to find pieces of the installation; or - -@item -rebuild the tools from source, with your preferred paths built in. -See @ref{Rebuilding,,Rebuilding from Source}, if you want to take this -approach. -@end itemize - -In rare circumstances, the auxiliary installation script -@code{install_cid} will also require a workaround if you do not install -in @file{/opt/cygnus-sol2-||RELNO||}. - -@subheading GCC Paths -@c FIXME! Add something about specs file? -You can run the compiler @sc{gcc} without recompiling, even if you -install the distribution in an alternate location, by first setting the -environment variable @samp{GCC_EXEC_PREFIX}. This variable specifies -where to find the executables, libraries, and data files used by the -compiler. Its value will be different depending on which set of -binaries you need to run. For example, if you install the distribution -under @file{/local} (instead of the default @file{/opt}), you could set -@samp{GCC_EXEC_PREFIX} as follows. (You can type the first two lines as -a single line, if you like; the example is split using the line -continuation character @samp{\} only to make it fit in the space -available.) - -@cartouche -@example -@b{GCC_EXEC_PREFIX=/local/cygnus-sol2-||RELNO||/lib/gcc-lib/}\ -@b{||HOSTstr||/||GCCvn||/} -@b{export GCC_EXEC_PREFIX} -@end example -@end cartouche - -@noindent -The example assumes you use a shell compatible with the Bourne shell; if -you run the C shell, use the following instead. (Again, the line -continuation character @samp{\} is only used for convenience in the -example; feel free to use a single line.) - -@cartouche -@example -@b{setenv GCC_EXEC_PREFIX /local/cygnus-sol2-||RELNO||/lib/gcc-lib/}\ -@b{||HOSTstr||/||GCCvn||/} -@end example -@end cartouche - -@quotation -@emph{Warning: The trailing slash @samp{/} is important}. The @code{gcc} -program uses @samp{GCC_EXEC_PREFIX} simply as a prefix. If you omit the -slash (or make any other mistakes in specifying the prefix), @code{gcc} -will fail with a message beginning @samp{installation problem, cannot -exec@dots{}}. -@end quotation - -@subheading @code{info} Paths -The standalone documentation browser @code{info} also needs to know the -location of its documentation files in the distribution. The default -location, @file{/opt/cygnus-sol2-||RELNO||/info}, is compiled in. -If you install elsewhere, set the environment variable @code{INFOPATH} -to indicate the alternate location. - -For example, again assuming you installed under @file{/local}: - -@example -@exdent For shells compatible with Bourne shell (@code{/bin/sh}, @code{bash}, or Korn shell): -@cartouche -@b{INFOPATH=/local/cygnus-sol2-||RELNO||/info} -@b{export INFOPATH} -@end cartouche -@end example - -@example -@exdent For C shell: -@cartouche -@b{setenv INFOPATH /local/cygnus-sol2-||RELNO||/info} -@end cartouche -@end example - -@subheading @code{install_cid} Paths -The auxiliary script @code{install_cid} is provided as a convenience, to -fill in your site's customer ID as the default for your local version of -the Cygnus @code{send_pr} problem-reporting script. - -If you don't install in @file{/opt/cygnus-sol2-||RELNO||}, @samp{install_cid -@var{ID}} will still work correctly in most cases. However, -there is one situation where @code{install_cid} fails: - -@itemize @bullet -@item -@emph{if} your site already has a release tree for -@samp{/opt/cygnus-sol2-||RELNO||}, -@item -@emph{and} you run @code{Install} with an alternative installation -directory. -@end itemize - -@noindent -In this case, you must manually edit your customer ID into your site's -copy of @code{send_pr}. Please call the Cygnus hotline, -@w{+1 415 322 7836}, if you have any trouble with this. - -@node Trouble -@chapter Some Things that Might go Wrong - -We've tried to make the installation of your Developer's Kit as painless -as possible. Still, some complications may arise. Here are suggestions -for dealing with some of them. - -@ifclear FTPorCD -@menu -* No Drive:: No local ||MEDIUM|| drive -* Limited Space:: Not Enough Space -* No access:: No Access to @file{/opt} -* Install errors:: Error Messages from @code{Install} -@end menu -@end ifclear -@ifset FTPorCD -@menu -* No access:: No Access to @file{/opt} -* Install errors:: Error Messages from @code{Install} -@end menu -@end ifset - - -@ifclear FTPorCD -@node No Drive -@section No local ||MEDIUM|| drive -If your ||HOST|| doesn't have an appropriate ||MEDIUM|| drive, you may -still be able to install your software. Check with your system -administrator to see if another machine at your site has a drive -you can use. If so: -@table @emph -@item If a shared filesystem is available -between the two machines, and it has enough space, go ahead and run -@samp{Install extract -installdir=@var{shr}} from the machine with a -||MEDIUM|| drive, where @var{shr} is a directory visible to both -machines. Then create @samp{/opt/cygnus-sol2-||RELNO||} on your -||HOST|| (the one where you want to install this Solaris 2 Developer's -Kit) as a symbolic link to @file{@var{shr}/cygnus-sol2-||RELNO||}. -You'll have to run @samp{Install fixincludes} and @samp{Install test} -from your ||HOST|| afterwards; see @ref{cross-install,,Installing with -another machine's ||MEDIUM|| drive}. - -@item If some form of filetransfer is available -(such as @code{uucp}), read the ||MEDIUM|| using a system utility -(for instance, @code{dd} on Unix systems; see the system documentation for -the machine with a tape drive). - -There are two files on the distribution ||MEDIUM||; the first is -just the @code{Install} script, and the second is a compressed -@code{tar} format file containing the rest of the release. Read both of -these files, and transfer them to your own machine. Then run -@code{Install} as shown in @ref{local-install,,Installing with a local -||MEDIUM|| drive}, but use @samp{-tape=@var{tarfile}} to specify the name of -the installation file, instead of @samp{-tape=/dev/rmt/0ln} as shown in -the examples. In the simplest case, for example (starting after you've -transferred @code{Install} and the tar file to your system): - -@cartouche -@example -eg$ @b{./Install -tape=@var{tarfile}} -@end example -@end cartouche - -@end table - -@node Limited Space -@section Not Enough Space -If you don't have enough space to install all of the distribution, you -can instead extract only the compiled code, or only the source. - -The following table summarizes the approximate space (rounded up to the -next megabyte) needed for source and binaries. -There is a little overlap between the partial installations: the -documentation, and documentation tools, are always installed. - -@table @r -@item ||BD|| MB -||HOST|| binaries - -@item ||SD|| MB -source code for all programs - -@item ||DF|| MB -||HOST|| total -@end table - -You can easily extract these components independently of one another, by -using the @samp{source} or @samp{bin} arguments to the @code{Install} -script provided with your release. -See @ref{Install-Options,,Installation Options}. -@end ifclear - -@node No access -@section No Access to @file{/opt} - -If you don't have write access to @file{/opt}, first check whether -you're in the right group. The command @samp{ls -lLdg /opt} will show -you whether any group has write access to @file{/opt}, and the command -@code{groups} will show you what groups you're authorized to use. If -you're authorized to use a group with the right access, use @samp{newgrp -@var{groupname}} to switch to that group. - -Otherwise, you may be able to use @code{root} (if you have the password) -to give yourself temporary write access. There's no need to run the whole -installation procedure as @code{root}; just use @code{root} access -briefly like this--- - -@cartouche -@example -eg$ @b{su root} -password: @i{(enter root password)} -# @b{mkdir @var{shr}/cygnus-sol2-||RELNO||} @i{(ignore error if any)} -# @b{chmod 777 @var{shr}/cygnus-sol2-||RELNO||} -# @b{exit} @i{root access not needed beyond this} -@end example -@end cartouche - -@noindent -If you do set write permissions to @code{777} to run the installation -procedure, remember to remove public write access when you're done, to -avoid potential security problems. - -If none of these things help, and you can't get write access to -@file{/opt} or @file{/opt/cygnus-sol2-||RELNO||}, -@ifset TAPEinst -use the @samp{-installdir=@var{directory}} option to @code{Install} to -specify a different installation directory, where you @emph{can} write. -For example, if all the other installation defaults are right, you can -execute something like @samp{./Install -installdir=@var{mydir}}. -@end ifset -@ifset FTPorCD -use a different installation directory, where you @emph{can} write. -@end ifset -You will also have to either override default paths for the pre-compiled -tools, or else recompile the software. - -@quotation -@emph{WARNING:} If you can't install in -@file{/opt/cygnus-sol2-||RELNO||} (or link your installation directory -to that name), some of the defaults configured into the -cygnus-sol2-||RELNO|| distribution won't work. See @ref{Paths,,Changing -the Paths}, for information on overriding or reconfiguring these -defaults. -@end quotation - -@node Install errors -@section Error Messages from @code{Install} -The @code{Install} script checks for many errors and inconsistencies in -the way its arguments are used. The messages are meant to be -self-explanatory. - -@ifclear FTPorCD -Here is a list of a few messages where further information might be -useful: -@table @code -@item Cannot read from TAPE device @dots{} -The error message ends with the device or file @code{Install} was trying -to use. Please check that it is the device or file you intended; -possible causes of trouble might include leaving off the @samp{/dev/} -prefix at the front of a device name. A typo in the name might also -cause this problem. - -@ifset TAPEinst -If the problem is neither of these things, perhaps your tape device can't -read our tape; see @ref{No Drive,,No Local Tape Drive}, for a discussion -of how to use another machine's tape drive. -@end ifset - -@item @dots{} This is a problem. -@itemx Cannot cd to @var{installdir} -@itemx I do not know why I cannot create @var{installdir} -@itemx hello.c fails to run -@itemx test-ioctl.c fails to run -@itemx I do not know how to remove an arch called @dots{} -These errors (the first covers anything that ends in @samp{This is a -problem}) are from paranoia checks; they are issued for situations that -other checks should have covered, or for unlikely situations that -require further diagnosis. -@end table -@end ifclear - -If you get one of these messages, please -@itemize @bullet -@ifset CUSTOMER -@item -@strong{call the Cygnus hotline, +1 415 322 7836}, or -@end ifset -@item -send electronic mail to @samp{help@@cygnus.com}. -@end itemize - -@node Rebuilding -@chapter Rebuilding From Source - -@ifclear FTPsplit -All Cygnus products are free software; your Developer's Kit includes -complete source code for all programs. -@end ifclear -@ifset FTPsplit -All Cygnus products are free software. The source code for all programs -in your Developer's Kit is available from the same place as the precompiled -programs, in the file @file{@var{dist}/cygnus-sol2-||RELNO||.src.tar.Z}. -@end ifset - -Cygnus Support has implemented an automatic configuration scheme to -adapt the programs to different environments. - -Rebuilding the programs from source requires these steps: -@enumerate -@item -configuration -@item -compilation -@item -installation -@end enumerate - -For example, executing the following commands in sequence will rebuild -and install a ||HOST|| native version of all the tools in a nonstandard -directory: - -@cartouche -@example -eg$ @b{cd @var{installdir}/src} - -eg$ @b{./configure ||HOSTstr|| -prefix=/local/gnu} -Created "Makefile" in @var{installdir}/src - -eg$ @b{make clean all info install install-info} -@end example -@end cartouche - -@noindent -We discuss each step in detail in the following sections. - -@menu -* Configuration:: Configuration -* Config Names:: Specifying Names for Hosts and Targets -* configure Options:: @code{configure} Options -* Compilation:: Compilation -* Installation:: Installation -@end menu - -@node Configuration -@section Configuration - -You can configure the software in this release by using the shell -script called @code{configure}. The shell script requires one argument: -the host type. There are also several possible options, including a -@samp{-target=} option to configure for cross-system development. - -@node Config Names -@section Specifying Names for Hosts and Targets - -The specifications used for hosts and targets in the @code{configure} -script are based on a three-part naming scheme, but some short predefined -aliases are also supported. The full naming scheme encodes three pieces -of information in the following pattern: - -@example -@var{architecture}-@var{vendor}-@var{os} -@end example - -For example, you can use the alias @code{sun4sol2} as a @var{host} argument -or in a @samp{-target=@var{target}} option, but the equivalent full name -is @samp{sparc-sun-solaris2}. - -@quotation -@emph{Warning:} @code{configure} can represent a very large number of -combinations of architecture, vendor, and OS. There is by no means -support for all possible combinations! -@end quotation - -@node configure Options -@section @code{configure} Options - -This section summarizes the @code{configure} options and arguments. -Your Developer's Kit contains full online documentation for the Cygnus -configure system. @inforef{Using Configure,,configure.info}, to read -about @code{configure} in more detail, including information on how the -@code{configure} options relate to @file{Makefile} variables. - -@example -configure @r{[}-prefix=@var{dest}@r{]} - @r{[}-exec-prefix=@var{bindest}@r{]} - @r{[}-srcdir=@var{path}@r{]} - @r{[}-norecursion@r{]} - @r{[}-target=@var{target}@r{]} - @var{host} -@end example - -@noindent -The binaries in this release were configured using - -@cartouche -@example -configure -prefix /opt/cygnus-sol2-||RELNO|| ||HOSTstr|| -@end example -@end cartouche - -@table @code -@item -prefix=@var{dest} -@var{dest} is an installation directory @emph{path prefix}, the root for -the directories where @code{make install} will place things. After you -configure with this option, @samp{make install install-info} will -install info files in @file{@var{dest}/info}, man pages in -@file{@var{dest}/man}, and---unless you also use -@samp{-exec-prefix}---compiled programs in @file{@var{dest}/bin}, and -libraries in @file{@var{dest}/lib}. If you specify -@samp{-prefix=/local}, for example, @code{make install} puts the -development tools in @file{/local/bin}. - -@emph{WARNING:} the default @var{dest} path prefix in the source is not -the same as the prefix for the preconfigured binaries distributed by Cygnus. - -@samp{-prefix=/opt/cygnus-sol2-||RELNO||} was used to build the binaries in this -release. If you do not use @code{-prefix}, the installation directory -is @file{/usr/local}. - -@item -exec-prefix=@var{bindest} -@samp{-exec-prefix} serves the same purpose as @samp{-prefix}, but -affects only machine-dependent targets (compiled programs and -libraries). Specifying both @samp{-prefix} and @samp{-exec-prefix} -allows you to segregate machine-dependent files, so that -machine-independent files can be shared. - -@emph{WARNING:} the default @var{bindest} path prefix in the source is not -the same as the prefix for the preconfigured binaries distributed by Cygnus. - -No @samp{-exec-prefix} was used to build the binaries in this release. -If you do not use @samp{-exec-prefix}, the default directory for -machine-dependent targets is whatever was specified with @file{-prefix} -(by default, @file{/usr/local}; for the binaries in this release, -@file{/opt/cygnus-sol2-||RELNO||}). - -@item -srcdir=@var{path} -Use this option to make configurations in directories separate from the -source directories. @code{configure} writes configuration specific files -in the current directory, but arranges for them to use the source in the -directory @var{path}. @code{configure} will create directories under -the working directory in parallel to the source directories below -@var{path}. Among other things, you can use this to build (or maintain) -several configurations simultaneously, in separate directories. (This -option requires a @code{make} program with the @samp{VPATH} feature, -such as the one included with Solaris 2.) - -@item -norecursion -Configure only the directory level where @code{configure} is executed; do not -propagate configuration to subdirectories. - -@item -target=@var{target} -Configure the development tools for cross-development (compiling, -debugging, or other processing) of programs running on the specified -@var{target}. Without this option, programs are configured ``native'', -that is, for managing programs that run on the same machine (@var{host}) -as the development tools themselves. - -There is no convenient way to generate a list of all available targets. - -@item @var{host} @dots{} -Configure the development tools to run on the specified @var{host}. - -There is no convenient way to generate a list of all available hosts. -@end table - -The @samp{-prefix=@var{dest}} and @samp{-exec-prefix=@var{bindest}} -options are particularly important. If you don't specify a @var{dest} -or @var{bindest} directory, the @file{Makefile} installs binaries in -subdirectories of @file{/usr/local}. These options are important -because the @var{dest} and @var{bindest} directories are used for -several purposes: - -@enumerate -@item -@var{bindest} is the directory where binaries are installed. - -@item -@var{bindest} is built into the compiler itself for the -locations of @sc{gcc} specific include files, the locations of @sc{gcc} -subprograms, and the location of the @sc{gcc} specific library -@file{libgcc.a}. - -@item -@var{dest} is compiled into @code{info} as the default directory -for the documentation. - -@end enumerate - -@node Compilation -@section Compilation - -After you've run @code{configure} (which writes the final -@file{Makefile} in each directory), compilation is straightforward. -To compile all the programs in the Developer's Kit, run: - -@cartouche -@example -@b{make all info} -@end example -@end cartouche - -The @code{make} output is lengthy; consider redirecting it to a file. - -The overall @file{Makefile} propagates the value of the @code{CC} -variable explicitly, so that you can easily control the compiler used in -this step. @code{CFLAGS} is treated the same way. For instance, to -build the compiler a second time, using @sc{gcc} to compile itself -(after building and installing it in the alternate directory -@file{/local/gnu}), you might use - -@cartouche -@example -@b{make CC=/local/gnu/H-sun4/bin/gcc CFLAGS=-O all info} -@end example -@end cartouche - -The conventional targets @samp{all}, @samp{install}, and @samp{clean} -are supported at all levels of @file{Makefile}. Other targets are -supported as well, as appropriate in each directory; please read the -individual @file{Makefile} for details. Each @file{Makefile} in the -source directories includes ample comments to help you read it. If you -are not familiar with @code{make}, refer to @ref{Overview,,Overview of -@code{make}, make.info, GNU Make: A Program for Directing -Recompilation}. - -@node Installation -@section Installation - -Whether you configure an alternative path using @code{-prefix}, or you -use the default installation path @file{/usr/local}, you can install the -software by executing: - -@cartouche -@example -@b{make install install-info} -@end example -@end cartouche - -@ifclear FTPorCD -@node Removing -@chapter Removing Parts of the Developer's Kit -You can use the same @code{Install} script that was used to install the -Developer's Kit on your system, to remove parts of the release. -(Remember that the @code{Install} script was automatically saved for you -as @file{/opt/cygnus-sol2-||RELNO||/Install}.) - -To do this, decide what you want to remove; then call @code{Install} -with the option @samp{remove} on the command line, as well as all the -options that you would use to install that portion of the release -(@pxref{Install-Options,,Installation Options}). For example, suppose -you never look at the source, and are running short of disk -space; you can remove the source, while leaving the rest of -the release undisturbed, as follows: - -@cartouche -@example -eg$ @b{cd /opt/cygnus-sol2-||RELNO||} -eg$ @b{./Install remove source} -@end example -@end cartouche - -@noindent -You should see the following messages confirming the software was -removed: - -@cartouche -@example -Cygnus Support software distribution removed! -Done. -@end example -@end cartouche - -To remove the complete Solaris 2 Release of the Developer's Kit from -your system (if, eventually, you no longer want it), delete the -directory @file{/opt/cygnus-sol2-||RELNO||} and all its contents. -@end ifclear - -@node Cygnus-FSF -@chapter Cygnus Releases and the FSF - -Most of the tools in this Developer's Kit are originally from the Free -Software Foundation (FSF). You can get versions of all these tools from -the FSF as well as from Cygnus. In general, Cygnus releases add to FSF -software in the following ways: -@c UPDATE! more differences bet Cygnus/FSF releases? - -@itemize @bullet -@item -All programs are ready to run. We supply preconfigured and precompiled -binaries as well as the source code; you can start using the programs -right away. -@item -Commercial support is available. Cygnus adds value to FSF releases in -large measure by offering outstanding support services. -@item -Coordination. The tools in your Developer's Kit are certified to work -together; you need not worry about tools being out of step with each other. -@item -Bug fixes. A Cygnus release includes many fixes, already integrated -into the programs. Cygnus repairs bugs discovered during testing, and -also tracks and includes bug fixes developed for other Cygnus customers -or distributed over the Internet. -@item -Bug reporting. Cygnus releases include the tool @code{send_pr}, which -you can use to make sure your problem reports receive prompt attention, -and are also incorporated in our future tests. -@item -Documentation. Cygnus revises and adds to available FSF -documentation to give you better descriptions of all the software tools. -@item -Stability. Cygnus tests (and uses) all the programs it releases. -@end itemize - -This particular Cygnus Progressive release differs from the nearest -corresponding FSF distributions in one important detail: Solaris 2 is -supported. The FSF distributions will eventually include Solaris 2 -support, as the Cygnus changes are merged into the FSF source, and the -FSF makes new releases. - - -@node Cygnus-Support -@chapter About Cygnus Support - -Cygnus Support was founded in 1989 to provide commercial support for -free software. Cygnus supplies products and services that benefit -advanced development groups by allowing them to use state-of-the-art -tools without having to maintain them. With Cygnus Support, sites that -once were forced to do their own tool support can recover that valuable -staff time. Former users of proprietary software now may choose -supported free software, combining the advantages of both worlds. - -Free software is faster, more powerful, and more portable than its -proprietary counterparts. It evolves faster because users who want to -make improvements are free to do so. Cygnus tracks these -improvements and integrates them into tested, stable versions ready -for commercial use, then backs this software with comprehensive -support. - -With Cygnus Support as your partner, you will have the software and -the support you need to meet your business objectives. Cygnus -is intimately familiar with this software from extensive experience -using, debugging, and implementing it. You get direct access to the -most qualified support people: the authors of the software. - -We provide ``vintage'' releases---the most stable versions, which have -been though even more extensive use and testing---or up-to-the minute -``progressive'' releases, for those who need the very latest version. - -Because all our improvements are also free software, you can -distribute them widely within your organization, or to your customers, -without extra cost. - -@sp 4 - -@display -Cygnus Support -814 University Avenue -Palo Alto, CA 94301, USA - -+1 415 322 3811 -hotline: +1 415 322 7836 -email: @code{info@@cygnus.com} -fax: +1 415 322 3270 -@end display - -@contents - -@bye diff --git a/sol-intro.texi b/sol-intro.texi deleted file mode 100644 index 9b646fd14d5..00000000000 --- a/sol-intro.texi +++ /dev/null @@ -1,436 +0,0 @@ -\input texinfo -@c $Id$ -@setfilename intro.info -@settitle Introduction -@iftex -@c The include file "texiplus.tex" is in the texinfo/cygnus dir, and -@c implements Cygnus modifications to the texinfo manual style. -@input texiplus -@c The include file "smpklug.texi" is a kluge to deal with local -@c document production issues at Cygnus; it's safe to comment out this -@c line if you don't have (or don't want) the file. -@input smpklug.texi -@smallbook -@cropmarks -@finalout -@end iftex -@titlepage -@title Introduction -@sp 3 -@subtitle Cygnus Support Developer's Kit for Solaris 2.0 -@author Cygnus Support -@page - -@tex -\def\$#1${{#1}} % Kluge: collect RCS revision info without $...$ -\xdef\manvers{\$Revision$} % for use in headers, footers -{\parskip=0pt \hfill Cygnus Support\par \hfill {\it Introduction (Solaris-2)}, \manvers\par \hfill -\TeX{}info \texinfoversion\par } -@end tex - -@vskip 0pt plus 1filll -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 -are preserved on all copies. - -Permission is granted to copy and distribute modified versions of this -manual under the conditions for verbatim copying, provided also that -the entire resulting derived work is distributed under the terms of a -permission notice identical to this one. - -Permission is granted to copy and distribute translations of this manual -into another language, under the above conditions for modified versions. - -@end titlepage - -@node Top -@unnumbered Introduction - -This Developer's Kit puts at your disposal, in a single coordinated -and tested release, some of the best software development tools -available: - -@table @t -@item gcc -C compiler (and its supporting programs and libraries) - -@item gdb -Debugger - -@item gprof -Performance analyzer - -@item byacc -Parser generator - -@item flex -Fast lexical analyzer generator - -@item send_pr -Cygnus problem-reporting utillity - -@item patch -Source-code update utility - -@item info -@itemx makeinfo -Online documentation tools - -@item texinfo.tex -@itemx texindex -Documentation printing tools -@end table - -These tools are free software; many of them are from the Free Software -Foundation (FSF) GNU project (in speech, the `G' in GNU is sounded). -Others were developed by the University of California, Berkeley and its -contributors. - -Cygnus Support collaborates with the FSF in developing these tools. In -this product, we've ported recent forms of the development tools to -Solaris 2, tested them, made sure they work well together, and made them -easy to install---the installation package comes with binaries already -compiled for your system. - -Cygnus Support exists to help our clients exploit their freedom in -using, adapting, or enhancing this software. @xref{Cygnus,,About Cygnus -Support}, for more information. - -@menu -* Copying:: Free Software -* Manuals:: Printed and Online Manuals -* Info:: Using Online Documentation -* Bugs:: Reporting Trouble -* Cygnus:: About Cygnus Support -@end menu - -@page -@node Copying -@section Free Software -If you find our Developer's Kit useful, please feel free to give or sell -copies of the software and documentation to anyone you like. - -Cygnus products are @dfn{free software}, protected by the @sc{gnu} General -Public License (GPL). The GPL gives you the freedom to copy or adapt any -program it licenses---but every person getting a copy also gets with it the -freedom to modify that copy (which means that they must get access to -the source code), and the freedom to distribute further copies. Typical -software companies use copyrights to limit your freedoms; the GPL is -designed to preserve your freedoms. - -Fundamentally, the General Public License is a license which grants you -these freedoms, and only imposes restrictions to ensure that no one can -take these freedoms away from anyone else. - -For full details, see the @strong{LICENSE} section in this manual -set. - -@page -@node Manuals -@section Manuals -@noindent -These printed manuals are included in your Cygnus Progressive Release: -@display - -@cite{Using the @sc{gnu} C Compiler} - -@cite{The C Preprocessor} - -@cite{GDB: The @sc{gnu} Source-Level Debugger} - -@end display - -The manuals are also designed for easy online browsing (@pxref{Info,,Online -Documentation}). For online use, the accompanying software distribution -includes all the printed manuals, and also the following documents: - -@table @emph -@item FLEX: A Fast Lexical Analyzer Generator -Generates lexical analyzers suitable for GCC and other compilers. - -@item Info: Documentation Browsing System -Full details on the @code{info} browser. - -@item Texinfo: The @sc{gnu} Documentation Format -How you can use @TeX{} to print these manuals, and how to write your own -manuals in this style. - -@item Using and Porting @sc{gnu cc} -Detailed information about what's needed to put @sc{gnu cc} on different -platforms, or to modify @sc{gnu cc}. Also includes all the -information in the printed manual @cite{Using the @sc{gnu} C Compiler}. -@end table - -@noindent -Finally, @code{man} pages are included for all the programs in the release. - -You have the freedom to copy the manuals, like the software they cover; -each manual's copyright statement includes the necessary permissions. -The manuals themselves are also free software, and the source for them -is also available in the installation package. - -@node Info -@section Using Online Documentation - -You can browse through the online documentation using either @sc{gnu} Emacs, -or the (included) program @code{info}. -Online, the manuals are organized into @dfn{nodes}, which correspond to -the chapters and sections of a printed book. You can follow them in -sequence, if you wish, just like in the printed book---but there are -also other choices. The documents have menus that let you go quickly to -the node that has the information you need. @code{info} has ``hot'' -references; if one section refers to another, you can tell @code{info} -to take you immediately to that other section---and you can get back -again easily to take up your reading where you left off. Naturally, you -can also search for particular words or phrases. - -The best way to get started with the online documentation system is to -run the browser @code{info}. After the Progressive Release is installed on -your system, you can get into @code{info} by just typing its name---no -options or arguments are necessary---at your shell's prompt (shown as -@samp{eg%} here): -@example -eg% info -@end example - -@noindent -@code{info} will display its first screen, a menu of the documentation -available, and will await your input. Typing the single letter -@example -h -@end example -@noindent -requests a tutorial, designed to teach you how to use @code{info}. - -If you already use Emacs, you may want to get into the documentation -browsing mode, instead, by typing @kbd{C-h i} inside Emacs. - -You can get out of @code{info} at any time by typing the single letter -@kbd{q}. - -@page -Here is a summary of all the @code{info} commands; @code{info} itself -can display a summary like this at any time, when you type the single -character @kbd{?}. - -@smallexample -@cartouche -h @r{Invoke the Info tutorial.} -q @r{Quit Info} - -@i{Selecting other nodes:} -n @r{Move to the ``next'' node of this node.} -p @r{Move to the ``previous'' node of this node.} -u @r{Move ``up'' from this node.} -m @r{Pick menu item specified by name (or abbreviation).} - @r{Picking a menu item moves to the corresponding node.} -f @r{Follow a cross reference. Reads name of reference.} -l @r{Move to the last node you were looking at.} - -@i{Moving within a node:} -Space @r{scroll forward a page.} -DEL @r{scroll backward a page.} -b @r{Go to beginning of this node.} - -@i{Advanced commands:} -1 @r{Pick first item in node's menu.} -2 - 5 @r{Pick second ... fifth item in node's menu.} -g @r{Move to node specified by name.} - @r{You may include a filename as well, as @code{(@var{FILENAME})@var{NODENAME}}.} -s @r{Search through this Info file for a specified string,} - @r{and select the node in which the next occurrence is found.} -Ctl-p @r{Print the contents of this node using @samp{lpr}.} -@end cartouche -@end smallexample - -@page -@node Bugs -@section Reporting Trouble -We've tried to make the programs in your Progressive Release as -trouble-free as possible. If you do encounter trouble, however, we'd -like to be able to diagnose and fix the problem as quickly as possible. -You can help us do that by using the script @code{send_pr} to send us your -problem reports. - -@code{send_pr} invokes an editor on a problem report form (after -trying to fill in some fields with reasonable default values). After -you exit the editor, @code{send_pr} sends the filled out form to the -problem report management system (PRMS) at Cygnus Support. You can -use the environment variable @code{EDITOR} to specify what editor to -use (the default is @code{vi}). - -@code{send_pr} attempts to send your problem report to Cygnus via -electronic mail. If your site cannot support this, you can still use -the problem report form: use @samp{send_pr -p} to capture a copy of the -blank problem-report form and fill it in. (You can also photocopy the -blank form at the end of this section to fill in.) In either case you -can FAX the problem report to Cygnus at @w{+1 415 322 3270}. - -At Cygnus Support, the problem report is assigned a unique number and is -stored in the PRMS database according to its category and your -customer ID. PRMS automatically replies with an acknowledgement, citing -the category and the PR number. As the next step, Cygnus staff inspects -the bug report (if you've marked your report as high priority, we respond -with an analysis of the problem in less than five business days). We'll -offer a solution as soon as possible, and await your feedback. As a -matter of policy, we do not consider your problem report closed until -you've agreed with a solution we offer. - -To ensure that a problem report is handled promptly, it must contain -your (unique) customer ID and one of the available categories, shown as -comments in the problem report form, to identify the problem area. As a -Cygnus Support customer, you can obtain your customer ID by invoking -@code{send_pr} with the @samp{-request-id} option. - -@page -@subsection Filling out a problem report -Problem reports are structured so that a program can manage them. When -filling out the form, please remember the following guidelines: - -@itemize @bullet -@item -Each PR needs a valid customer ID and category. - -@item -Describe only one problem with one PR. - -@item -For follow-up mail, use the same subject line as the one in the -automatic acknowledgent. It shows the category, the PR number and the -original synopsis line. This allows Cygnus Support to make sure mail on -the same problem report stays together. - -@item -Please try to make the subject or synopsis line as informative -as possible. For misbehaving software, you might use a sentence of -the form ``with input foo, component xyz produces bar''. - -@item -You don't need to delete the comment lines while editing the PR form; -this is done by @code{send_pr}. Put your information before or -after the comment. -@end itemize - -@page -For full details on @code{send_pr} and the supporting form, see the man -page @code{send_pr}(1). Here is a sample blank problem-report form; if -electronic mail from your site cannot reach Cygnus, you can send us -problem reports by photocopying this sample, filling it out, and sending -it by FAX to @w{+1 415 322 3270}. - -@iftex -@widen{28pt} -@end iftex - -@smallexample -SEND_PR: Choose from the following categories: -SEND_PR: -SEND_PR: bfd binutils bison clib config cvs -SEND_PR: diff doc emacs g++ gas gcc -SEND_PR: gdb grep ispell ld libg++ libiberty -SEND_PR: libiberty make rcs readline send_pr texinfo -SEND_PR: other -SEND_PR: - -To: cygnus-bugs@@cygnus.com - -Subject: - -From: - -Reply-To: - -X-send-pr-version: send_pr: 1.15 - - ->Customer-Id: - ->Originator: - ->Organization: - - - ->Confidential: <[ yes | no ] (one line)> - ->Synopsis: - ->Severity: <[ non-critical | serious | critical ] (one line)> - ->Priority: <[ low | medium | high ] (one line)> - ->Category: - ->Class: <[ sw-bug | doc-bug | change-request | support ] (one line)> - ->Release: - ->Environment: - - - - ->Description: - - - - - - - ->How-To-Repeat: - -@end smallexample - -@iftex -@widen{-28pt} -@end iftex - -@page -@node Cygnus -@section About Cygnus Support -Cygnus Support was founded in 1989 to provide commercial support for -free software. Cygnus supplies products and services that benefit -advanced development groups by allowing them to use state-of-the-art -tools without having to maintain them. With Cygnus Support, sites that -once were forced to do their own tool support can recover that valuable -staff time. Former users of proprietary software now may choose -supported free software, combining the advantages of both worlds. - -Free software is faster, more powerful, and more portable than its -proprietary counterparts. It evolves faster because users who want to -make improvements are free to do so. Cygnus tracks these -improvements and integrates them into tested, stable versions ready -for commercial use, then backs this software with comprehensive -support. - -With Cygnus Support as your partner, you will have the software and -the support you need to meet your business objectives. Cygnus -is intimately familiar with this software from extensive experience -using, debugging, and implementing it. You get direct access to the -most qualified support people: the authors of that software. - -We provide up-to-the minute ``progressive'' releases, for those who need -the very latest version---or ``vintage'' releases: stable versions which -have been through extensive use and testing. - -Because all our improvements are also free software, you can -distribute them widely within your organization, or to your customers, -without extra cost. - -@sp 4 - -@display -Cygnus Support -814 University Avenue -Palo Alto, CA 94301, USA - -+1 415 322 3811 - -email: @code{info@@cygnus.com} -fax: +1 415 322 3270 -@end display - -@bye diff --git a/sol-make-ftp b/sol-make-ftp deleted file mode 100644 index 1953b9c82bd..00000000000 --- a/sol-make-ftp +++ /dev/null @@ -1,8 +0,0 @@ -BINFILES=cygnus-sol2-1.0/{Install,README,bin,lib,info,include,man} -SRCFILES=cygnus-sol2-1.0/{README,src} - -cd sparc-sun-solaris2 -tar cf cygnus-sol2-1.0.bin.tar ${BINFILES} -tar cf cygnus-sol2-1.0.src.tar ${SRCFILES} -tar cf cygnus-sol2-1.0.tar ${BINFILES} ${SRCFILES} - diff --git a/sol-rel.texi b/sol-rel.texi deleted file mode 100644 index c73015abfa2..00000000000 --- a/sol-rel.texi +++ /dev/null @@ -1,503 +0,0 @@ -\input texinfo -@c -@c This file may require a nonstandard texinfo.tex to format; if you -@c need it, please contact Cygnus Support (email editor-in-chief@cygnus.com) -@setfilename SOLARIS2.info -@c -@c This file describes a Cygnus Solaris Release (Developer's Kit). -@c -@c Copyright (C) 1991, 1992 Cygnus Support -@c This text may be freely distributed under the terms of the GNU -@c General Public License. -@c -@c $Id$ -@c -@iftex -@c The include file "texiplus.tex" is in the texinfo/cygnus dir, and -@c implements Cygnus modifications to the texinfo manual style. -@input texiplus -@c The include file "smpklug.texi" is a kluge to deal with local -@c document production issues at Cygnus; it's safe to comment out this -@c line if you don't have (or don't want) the file. -@input smpklug.texi -@smallbook -@cropmarks -@finalout -@settitle Release Notes -@setchapternewpage on -@c -@end iftex - -@titlepage -@title Release Notes -@sp 3 -@table @strong -@item Cygnus Support Developer's Kit -@item Release 1.0 for Solaris-2 -@end table -@author Cygnus Support -@page - -@tex -\def\$#1${{#1}} % Kluge: collect RCS revision info without $...$ -\xdef\Rmanvers{{\it Release Notes (Solaris-2 Developer's Kit)}, \$Revision$} % *NOT* for use in headers, footers -{\parskip=0pt \hfill Cygnus Support\par \hfill \Rmanvers\par \hfill -\TeX{}info \texinfoversion\par } -\global\def\manvers{Solaris-2 Rel 1.0} -@end tex - -@vskip 0pt plus 1filll -This product includes software developed by the University of -California, Berkeley and its contributors. - -This note is copyright @copyright{} 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. - -Permission is granted to copy and distribute modified versions of this -manual under the conditions for verbatim copying, provided also that -the entire resulting derived work is distributed under the terms of a -permission notice identical to this one. - -Permission is granted to copy and distribute translations of this manual -into another language, under the above conditions for modified versions. - -@end titlepage - -@c PROOFREADING: set FIXMES to include FIXME text in formatted -@c output -@clear FIXMES - -@ifinfo -@node Top -@top Solaris-2 Developer's Kit release 1.0 - -@menu -* Introduction:: Overview -* Contributors:: GCC for Solaris-2 exists thanks to these people -* Versions:: Closest FSF Versions -* New:: New in This Release -* Limits:: Limitations and Warnings -@end menu - -This product includes software developed by the University of -California, Berkeley and its contributors. - -This file is copyright @copyright{} 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. - -Permission is granted to copy and distribute modified versions of this -manual under the conditions for verbatim copying, provided also that -the entire resulting derived work is distributed under the terms of a -permission notice identical to this one. - -Permission is granted to copy and distribute translations of this manual -into another language, under the above conditions for modified versions -@end ifinfo - -@node Introduction -@chapter Overview - -@table @strong -@item Cygnus Support Developer's Kit -@item Solaris-2 Release 1.0 -@end table - -Sun has unbunded its compilers---selling them separately from the -Solaris 2.0 operating system. Many Sun users were unhappy that their -next upgrade might take away their C compiler. - -In response, Cygnus Support ported the GNU C compiler and supporting -tools to Solaris 2.0. The result is a full set of development -tools---ANSI and traditional C compiler (with supporting libraries), -debugger, parser generator, and lexical analyzer generator---freely -available to everyone. - -The GNU C compiler can be used to compile any kind of program: public -domain, copyleft, or proprietary. Your binaries have the same -copyright status as your sources and libraries. The only provision of -the GNU General Public License that applies to users of the compiler -(as opposed to people who make copies of the compiler, or modify it) -is the lack of warranty (section 11 and 12). FSF does not provide a -warranty to anyone, but Cygnus gives a 1-year limited warranty (a year -of support) to customers. - -@node Contributors -@chapter Contributors to GNU C for Solaris-2 - -Cygnus Support and the FSF are grateful to the forward-looking individuals and -organizations that sponsored this project. - -@noindent -We are glad to be able to thank publicly: - -@itemize @bullet -@item -Amoco Production Company (Houston, Texas) - -@item -BBN Communications (Cambridge, Massachusetts) - -@item -Boston Technology (Wakefield, Massachusetts) - -@item -Cirrus Logic (Fremont, California) - -@item -Compaq Computer Corporation (Houston, Texas) - -@item -Deere & Company (Moline, Illinois) - -@item -ELF Commnuications (San Francisco, California) - -@item -European Computer-Industry Research Centre GMBH (Munich) - -@item -Fidelity Investments (Boston, Massachusetts) - -@item -FTP Software, Inc. (Wakefield, Massachusetts) - -@item -Gallagher & Robertson (Oslo, Norway) - -@item -GTE Laboratories (Waltham, Massachusetts) - -@item -Ingres Corporation (Alameda, California) - -@item -Inland Sea (Dexter, Michigan) - -@item -Los Alamos National Laboratory (Los Alamos, New Mexico) - -@item -Miller/Howard Investures (Cobleskill, New York) - -@item -MIT Lincoln Laboratory (Lexington, Massachusetts) - -@item -NASA Lewis Research Center (Cleveland, Ohio) - -@item -Optimation Software (Melbourne, Australia) - -@item -PFU Limited (Tokyo) - -@item -Philips Laboratories (Briarcliff Manor, New York) - -@item -Pure Software (Los Altos, California) - -@item -Qualix Group, Inc. (San Mateo, California) - -@item -Schlumberger-Doll Research (Ridgefield, Connecticut) - -@item -Kevin Sheehan (Melbourne, Australia and elsewhere) - -@item -State University of New York (SUNY) at Buffalo - -@item -SunSoft, Inc. (Mountain View, California) - -@item -@tex -Technische Universit\"at M\"unchen (Munich) -@end tex -@ifinfo -Technische Universitaet Muenchen (Munich) -@end ifinfo - -@item -Telecom Finland (Helsinki) - -@item -Telecom Research Labs (Victoria, Australia) - -@item -Union Bank of Switzerland (Zurich) - -@item University of Pennsylvania (Philadelphia) - -@item -University of Washington (Seattle) - -@item -UUNET Technologies, Inc. (Falls Church, Virginia) - -@item -Warwick University (Coventry, England) - -@item -Xerox Palo Alto Research Center (Palo Alto, California) -@end itemize - -We are also grateful to six other organizations and individuals who -contributed to this project, but prefer to remain anonymous. - -@node Versions -@chapter Closest FSF Versions - -Cygnus Support devotes much of its effort to integrating and improving -free software. In fact, Cygnus employees are the primary developers -of several important components of the GNU tool-chain (on behalf of -the Free Software Foundation). However, especially for programs whose -FSF releases are issued elsewhere, our releases are often slightly -ahead of the nearest corresponding FSF version (and sometimes slightly -behind it). We reintegrate our sources with the FSF as frequently as -possible without compromising the stability of the integrated -toolchain. - -These are the nearest corresponding FSF releases of the GNU development -tools: - -@table @sc -@item @emph{Program} -@emph{Last merged with FSF version} -@item gcc -2.0 (but many improvements from 2.1 and 2.2 incorporated) - -@item gdb -4.6 (maintained at Cygnus) - -@end table - -@node New -@chapter New in This Release - -@table @strong -@item GCC -Near command-line compatibility with the SVID specification for -@code{cc}, and with the SVr4 @code{cc}. ELF output (with embedded -@code{stabs} format debugging information; this is compatible with Sun's -compilers). Many bug-fixes (from the base FSF level, and from our -Progressive--920318 release for SunOS). - -@item CPP -New directive @code{#assert}; you can use this directive, together with -enhancements to @code{#if}, to declare and test for particular system -properties. - -@item GDB -GDB understands the debugging format used by Solaris-2 compilers (both -ours and Sun's): @code{stabs} debugging information embedded in ELF -object files. - -Since our Progressive--920318 release for SunOS, we have also made these -improvements to GDB: - -Many bug fixes. - -GDB now uses a new memory manager called @code{mmalloc}, an enhancement -of @sc{GNU} @code{malloc}. It can greatly speed up the startup of GDB -by using a pre-parsed symbol table in a @code{mmalloc}-managed heap. -Since memory-mapped files are available on Solaris-2 through the @code{mmap} -system call, you can have GDB write the symbols from your program into a -reusable file. - -@item FLEX and BYACC -Release 1.0 for Solaris 2 includes @code{flex}, the fast lexical analyzer -generator, and @code{byacc}, the parser generator---both from UC -Berkeley. There are no restrictions on what use you can make of lexical -analyzers generated by @code{flex}, or parser generators built by -@code{byacc}. - -Since @code{flex} and @code{byacc} are of interest only to a specialized -audience, we ship only on-line documentation for them. -@inforef{Top,,flex.info}, or the @code{man} pages @samp{flex.1} and -@samp{byacc.1}. - -@item Problem Reports -The script @code{install_cid} is now available to record your Cygnus -customer ID for the problem-reporting utility, @code{send_pr}, on your -system. - -A blank Problem Report form is now included in the @cite{Introduction} -to your Developer's Kit manuals, in case FAX is more convenient than -electronic mail to send us problem reports. - -Since these programs are free software, many people who receive them -will not get them directly from Cygnus Support. We will be glad to -support you no matter where you got the software. If you have not yet -bought support from Cygnus for this set of tools, you can call us at -@w{+1 415 322 3811} for a support contract, and start reporting problems -and getting fixes. -@end table - -@node Limits -@chapter Limitations and Warnings - -Our major goals in this release was compatibility: with the System V -Interface Definition (@sc{svid}), with other Solaris-2 tools, and with -the @sc{sparc} Application Binary Interface (@sc{abi}). - -We have been largely successful: our toolchain complies with the -@sc{svid} specifications for compilation tools, most of the tools are -also command-line compatible with the Sun offerings (even in cases where -these go beyond the @sc{svid}), and we know of only one violation of the -@sc{abi}. - -The following sections give details on the few remaining compatibility -issues. - -@menu -* gcc-options:: Some Solaris-2 cc options not accepted -* cc-gdb:: Using gdb on Sun compiler output -* long double:: The long double datatype violates the ABI -* ABI:: No independent verification of ABI compliance -@end menu - -@node gcc-options -@section Some Solaris-2 @code{cc} options are not accepted - -In porting the @sc{gnu} C compiler to Solaris-2, we wanted to have -command-line compatibility with several compilers: - -@itemize @bullet -@item -@sc{svid} specification for @code{cc} - -@item -Other @sc{gcc} configurations - -@item -Unix SVr4 implementation of @code{cc} - -@item -Sun compiler for Solaris-2 - -@end itemize - -@noindent -Unfortunately, these specifications are not altogether compatible; we -have compromised in some areas, giving the most weight to the @sc{svid} -specification and to @sc{gcc} on other platforms. - -Here is a list of command line options @emph{not} accepted by -@code{gcc}, but meaningful in one of the other command-line -specifications listed: - -@table @code -@item -Bstatic -@itemx -Bdynamic -Use @samp{-static} or @samp{-symbolic} instead. (@samp{-Bstatic} and -@samp{-Bdynamic} are supported by Sun compilers, but are not in the -@sc{svid}.) - -@item -dy -@itemx -dn -These Solaris-2 linker options conflict with @sc{gcc} debugging options. -Again, use @samp{-symbolic} or @samp{-static} instead; or pass the -linker options directly to the linker using @samp{-Xlinker} or -@samp{-W}. - -@item -f -@sc{gcc} has a large family of options that begin with @samp{-f}. All -of these options are supported as in other versions of @sc{gcc}. The -SVr4 specification describes this option as accepted, but ignored; in -the @sc{svid}, it is used to specify floating-point emulation. - -@item -J sfm -This SVr4 option appears to specify linking against a special-purpose -subroutine library. It is not in the @sc{svid}, and @sc{gcc} does not -support it. - -@item -K -@sc{gcc} does not support @samp{-K}. To specify position-independent -code output, use @samp{-pic}. - -@item -P -This preprocessor option retains its usual @sc{gcc} meaning, which is -slightly different from the @sc{svid} and SVr4 descriptions (which are -not quite identical with one another). It is used to generate -preprocessor output---similar to @samp{-E}, but without embedding -@code{#line} directives. However, for @sc{gcc}, the output still goes -to @file{stdout} rather than to a @samp{.i} file. To place output in a -@samp{.i} file, use command-line output redirection. - -@item -q -This option is defined as implementation-specific by the @sc{svid}. -This implementation does not include it. - -@item -V -Displays version information for @emph{only} the assembler and linker. - -@item -v -Displays the full invocation of each compiler pass, as usual for -@sc{gcc}. This option is not defined in the @sc{svid}, but the SVr4 -documentation describes it as similar to the @sc{gcc} options -@samp{-pedantic} or @samp{-pedantic-errors}. We recommend using those -options instead. - -@item -W -@itemx -Y -In this implementation, @samp{-W} and @samp{Y} are restricted to -controlling the assembler and linker (the other compiler passes used by -@sc{gcc} do not exactly correspond to those in the @sc{svid}). - -@item -X -This option is not in the @sc{svid}, but is used in SVr4 to give a -little control over the dialect of C. For this purpose, you can use the -standard @sc{gcc} options @samp{-traditional}, @samp{-ansi}, or the -other options described in @ref{Dialect Options,,Options Controlling -Dialect, usegcc.info, Using gcc}. -@end table - -For full descriptions of the @sc{gcc} command line options in this -release, see the manual @cite{Using gcc}, or the man page @code{gcc.1}. - -@node cc-gdb -@section Using @code{gdb} on Sun Compiler Output - -By default, the Sun compiler @code{cc} and the system assembler -@code{as} omit debugging information from the final linked output file, -assuming the debugger will look in the @samp{.o} files for this -information. @code{gdb} will not do this. If you have the Sun compiler -@code{cc} and want to debug its output with @code{gdb}, you must include -the command-line flag @samp{-xs} when you run @code{cc}, to instruct it -to place debugging information where it will be copied to the linked -output file. Similarly, if you call the system assembler @code{as} -directly, use its command-line option @samp{-s} for the same purpose. - -@node long double -@section The @code{long double} datatype violates SPARC ABI - -The @sc{sparc} Application Binary Interface (@sc{abi}) specifies that -numbers of type @code{long double} take up 16 bytes. In this release, -@code{gcc} only emits 8-byte numbers for @code{long double}. - -This is the only known violation of the @sc{abi}. We will fix this -problem in a future release. - -@node ABI -@section No independent verification of ABI compliance - -We have made every effort to comply with the @sc{sparc} @sc{abi}, and we -are aware of only one violation (noted above). However, there is as yet -no independent verification of our compiler's compliance. - -@sc{sparc} International is preparing an ABI compliance test suite, but -it won't be available until sometime in the autumn of 1992. We will -seek verification of our compiler's compliance as soon as @sc{sparc} -International is ready. - -@contents -@bye diff --git a/sol-subst-strings b/sol-subst-strings deleted file mode 100755 index 672ba3d7163..00000000000 --- a/sol-subst-strings +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/sh -sed -e "/^@set FIXMES/s::@clear FIXMES:" \ - -e "/^@clear CUSTOMER/s::@set CUSTOMER:" \ - -e "/^@set CDROMinst/s::@clear CDROMinst:" \ - -e "/^@clear TAPEinst/s::@set TAPEinst:" \ - -e "/^@set FTPsingle/s::@clear FTPsingle:" \ - -e "/^@set FTPsplit/s::@clear FTPsplit:" \ - -e "/\|\|MEDIUM\|\|/s::tape:g" \ - -e "/\|\|MEDstr\|\|/s::/dev/rmt/0ln:g" \ - -e "/\|\|DEVdflt\|\|/s::/dev/rmt/0ln:g" \ - -e "/\|\|MEDvar\|\|/s::/dev/@var{tape}:g" \ - -e "/\|\|TAPdflt\|\|/s::/dev/@var{tape}:g" \ - -e "/\|\|RELNO\|\|/s::1.0:g" \ - -e "/\|\|BD\|\|/s::20:g" \ - -e "/\|\|SD\|\|/s::28:g" \ - -e "/\|\|DF\|\|/s::48:g" \ - -e "/\|\|BUNDLE\|\|/s::comp:g" \ - -e "/\|\|HOST\|\|/s::SPARC computer:g" \ - -e "/\|\|HOSTstr\|\|/s::sparc-sun-solaris2:g" \ - -e "/\|\|TARGET\|\|/s::sparc-sun-solaris2:g" \ - -e "/\|\|GCCvn\|\|/s::cygnus-2.0.2:g" \ - < $1 > $2 diff --git a/sol-subst-strings-ftp b/sol-subst-strings-ftp deleted file mode 100755 index 33830b8665c..00000000000 --- a/sol-subst-strings-ftp +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/sh -sed -e "/^@set FIXMES/s::@clear FIXMES:" \ - -e "/^@set CUSTOMER/s::@clear CUSTOMER:" \ - -e "/^@set CDROMinst/s::@clear CDROMinst:" \ - -e "/^@set TAPEinst/s::@clear TAPEinst:" \ - -e "/^@set FTPsingle/s::@clear FTPsingle:" \ - -e "/^@clear FTPsplit/s::@set FTPsplit:" \ - -e "/\|\|DEVdflt\|\|/s::/dev/rmt/0ln:g" \ - -e "/\|\|TAPdflt\|\|/s::/dev/@var{tape}:g" \ - -e "/\|\|MEDIUM\|\|/s::tape:g" \ - -e "/\|\|MEDstr\|\|/s::/dev/rmt/0ln:g" \ - -e "/\|\|MEDvar\|\|/s::/dev/@var{tape}:g" \ - -e "/\|\|RELNO\|\|/s::1.0:g" \ - -e "/\|\|BD\|\|/s::20:g" \ - -e "/\|\|SD\|\|/s::28:g" \ - -e "/\|\|DF\|\|/s::48:g" \ - -e "/\|\|BUNDLE\|\|/s::comp:g" \ - -e "/\|\|HOST\|\|/s::SPARC computer:g" \ - -e "/\|\|HOSTstr\|\|/s::sparc-sun-solaris2:g" \ - -e "/\|\|TARGET\|\|/s::sparc-sun-solaris2:g" \ - -e "/\|\|GCCvn\|\|/s::cygnus-2.0.2:g" \ - -e "s/^INSTALLDIR_DEFAULT=.*$/INSTALLDIR_DEFAULT=../" \ - -e "s/^FTPRELEASE=.*/FTPRELEASE=yes/" \ - < $1 > $2 -- 2.30.2