summaryrefslogtreecommitdiff
path: root/bootstrap/README.IRIX5.3
blob: f7d2dbb417f679387d54bd5bd7a680380741a08b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
$NetBSD: README.IRIX5.3,v 1.1 2006/04/10 13:29:38 schwarz Exp $

Installing pkgsrc on IRIX 5.3 requires some preparation.
First, if necessary, get the IRIX 5.3 IDO (cc etc.) from SGI at
ftp://ftp.sgi.com/sgi/IRIX5.3/iris-development-option-5.3.tardist and
install it using IRIX's Software Manager. While you're at it you might also
want to install any missing patches from ftp://ftp.sgi.com/support/Patches/5.3.
Get ftp://ftp.mayn.de/pub/really_old_stuff/irix/ido/dev* and install the
missing dev.sw.abi and dev.sw.irix_speclibs subpackages.
Note that IRIX 5.3's ftp does not support passive ftp (to my knowledge), so
if you are behind a firewall (and you better make sure you are with IRIX
5.3!) you might need to first transfer the files to another local machine.
Furthermore, get Y2k patches from e.g.
ftp://ftp.mayn.de/pub/really_old_stuff/irix/oldstuff/ if you haven't
installed them already.

To date, pkgsrc expects the SGI IDO cc and might run into problems when
using gcc.
With IDO cc and the necessary supporting tools and development files
installed you can run bootstrap to create the essential pkgsrc tools,
notably bmake. Once this is done you will find mk.conf.example to start
your mk.conf pkgsrc configuration file from. You might want to add
CFLAGS+=-O2 (or if you are using an R4K machine -O2 -mips2)
and
DBG=

Unfortunately many of IRIX 5.3's native tools do not provide
functionalitites that pkgsrc expects. It is therefore necessary to install
the respective GNU tools for cp, grep, id, mkdir, test, touch, which,
and xargs. To avoid conflicts you might want to do so under a differtent
directory hierarchy than pkgsrc (in the following example
--prefix=/usr/local is assumed). Obtain and install the following GNU
software:
- GNU findutils (4.2.23 is know to install)
- GNU grep (2.5.1a works, but you have to apply the patch from
pkgsrc/textproc/grep/patches/patch-ab; either do so manually by editing the
appropriate source file or first install GNU patch [2.5.4 works fine]. This
will probably be fixed with later releases. You should configure GNU grep
with --disable-nls and do not bother when make stops when it cannot find
makeinfo; just proceed with make install)
- GNU coreutils (5.21 installs out of the box)
- GNU which (2.16 works; be sure to configure with CC="cc -Xcpluscomm")

These tools can be installed independently of bootstrapping. To make them
accessible to pkgsrc make sure your mk.conf contains something like this:

.if exists(${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}id)
TOOLS_PLATFORM.id=${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}id
.else
TOOLS_PLATFORM.id=/usr/local/bin/id
.endif
.if exists(${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}mkdir)
TOOLS_PLATFORM.mkdir=${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}mkdir -p
.else
TOOLS_PLATFORM.mkdir=/usr/local/bin/mkdir -p
.endif
.if exists(${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}grep)
TOOLS_PLATFORM.grep=${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}grep
.else
TOOLS_PLATFORM.grep=/usr/local/bin/grep
.endif
.if exists(${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}cp)
TOOLS_PLATFORM.cp=${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}cp
.else
TOOLS_PLATFORM.cp=/usr/local/bin/cp
.endif
.if exists(${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}test)
TOOLS_PLATFORM.test=${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}test
.else
TOOLS_PLATFORM.test=/usr/local/bin/test
.endif
.if exists(${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}touch)
TOOLS_PLATFORM.touch=${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}touch
.else
TOOLS_PLATFORM.touch=/usr/local/bin/touch
.endif
.if exists(${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}xargs)
TOOLS_PLATFORM.xargs=${LOCALBASE}/bin/${GNU_PROGRAM_PREFIX}xargs -r
.else
TOOLS_PLATFORM.xargs=/usr/local/bin/xargs -r
.endif
TYPE=/usr/local/bin/which
 
IRIX 5.3 IDO does not come with a c++ compiler. For packages that require
c++ you can get the GNU c++ compiler, g++, which is part of the gcc
distribution. Gcc 3.4.4 is known to bootstrap on IRIX 5.3. To activate it,
add the following lines to your mk.conf:

.if defined(USE_LANGUAGES) && !empty(USE_LANGUAGES:Mc++)
CXX=g++
USE_TOOLS+=cxx
TOOLS_PLATFORM.cxx=/usr/local/bin/g++
TOOLS_CMD.cxx=${TOOLS_DIR}/bin/g++
.endif