source: final-system/ppc64/yaboot.xml@ ba8680e

Last change on this file since ba8680e was da23eb8, checked in by Jim Gifford <clfs@…>, 19 years ago

r3360@server (orig r1549): ken | 2006-05-10 09:56:16 -0700
Make yaboot work in ppc64 final-system, and label ppc64 as working in the main index.

  • Property mode set to 100644
File size: 3.8 KB
RevLine 
[c25d12c]1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6]>
7
8<sect1 id="ch-system-yaboot" role="wrap">
9 <?dbhtml filename="yaboot.html"?>
10
11 <title>Yaboot-&yaboot-version;</title>
12
13 <indexterm zone="ch-system-yaboot">
14 <primary sortas="a-Yaboot">Yaboot</primary>
15 </indexterm>
16
[da23eb8]17 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
18 href="../ppc/yaboot.xml"
19 xpointer="xpointer(//*[@role='package'])"/>
[c25d12c]20
21 <sect2 role="installation">
22 <title>Installation of Yaboot</title>
23
[da23eb8]24 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
25 href="../ppc/yaboot.xml"
26 xpointer="xpointer(//*[@os='a'])"/>
[c25d12c]27
[da23eb8]28 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
29 href="../ppc/yaboot.xml"
30 xpointer="xpointer(//*[@os='b'])"/>
[c25d12c]31
[da23eb8]32 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
33 href="../ppc/yaboot.xml"
34 xpointer="xpointer(//*[@os='c'])"/>
[c25d12c]35
[da23eb8]36 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
37 href="../ppc/yaboot.xml"
38 xpointer="xpointer(//*[@os='d'])"/>
[c25d12c]39
[da23eb8]40 <para>Existing multilib distributions alter gcc to default to 32-bit
41 output. Because our gcc defaults to 64-bit, we need to pass appropriate
42 options to both the compiler and the linker. The Makefile already
43 overrides any CC and ignores LDFLAGS in favour of its own variables, so we
44 need to use the following seds for a successful compile and install.</para>
[c25d12c]45
[da23eb8]46<screen><userinput>sed -i -e "s/\(-print-libgcc-file-name\)/${BUILD32} \1/" \
47 -e "s/\(-Bstatic\)/-melf32ppclinux \1/" Makefile
48</userinput></screen>
[c25d12c]49
[da23eb8]50 <variablelist os="j">
51 <title>The meaning of the sed parameters:</title>
[c25d12c]52
[da23eb8]53 <varlistentry>
54 <term><parameter>"s/\(-print-libgcc-file-name\)/${BUILD32} \1/"</parameter></term>
[c25d12c]55 <listitem>
[da23eb8]56 <para>This picks a convenient place within the Makefile's lgcc
57 variable and inserts the flag to force <command>gcc</command> to
58 create 32-bit code when compiling yaboot.</para>
[c25d12c]59 </listitem>
60 </varlistentry>
[da23eb8]61 <varlistentry>
62 <term><parameter>"s/\(-Bstatic\)/-melf32ppclinux \1/"</parameter></term>
[c25d12c]63 <listitem>
[da23eb8]64 <para>This picks the end of the LFLAGS which the Makefile passes to
65 the linker to create the second-stage linux loader, and inserts a
66 flag to force <command>ld</command> to use a suitable 32-bit
67 emulation picked from the output of <command>'ld -V'</command>.</para>
[c25d12c]68 </listitem>
69 </varlistentry>
70
[da23eb8]71 </variablelist>
[c25d12c]72
[da23eb8]73 <important>
74 <para>The above patches and seds are critical in ensuring a
75 successful build. In particular, the package will appear to install
76 correctly without the second sed, but will fail to load linux,
77 requiring you to use OF or a rescue disk to boot.</para>
78 </important>
[c25d12c]79
[da23eb8]80 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
81 href="../ppc/yaboot.xml"
82 xpointer="xpointer(//*[@os='e'])"/>
[c25d12c]83
[da23eb8]84 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
85 href="../ppc/yaboot.xml"
86 xpointer="xpointer(//*[@os='f'])"/>
[c25d12c]87
[da23eb8]88 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
89 href="../ppc/yaboot.xml"
90 xpointer="xpointer(//*[@os='g'])"/>
[c25d12c]91
[da23eb8]92 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
93 href="../ppc/yaboot.xml"
94 xpointer="xpointer(//*[@os='h'])"/>
95
96 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
97 href="../ppc/yaboot.xml"
98 xpointer="xpointer(//*[@os='i'])"/>
99
100 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
101 href="../ppc/yaboot.xml"
102 xpointer="xpointer(//*[@os='j'])"/>
[c25d12c]103
104 </sect2>
105
[da23eb8]106 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
107 href="../ppc/yaboot.xml"
108 xpointer="xpointer(id('contents-yaboot'))"/>
109
[c25d12c]110</sect1>
Note: See TracBrowser for help on using the repository browser.