summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrancis Rowe <info@gluglug.org.uk>2015-04-02 21:19:54 (EDT)
committer Francis Rowe <info@gluglug.org.uk>2015-04-02 21:55:26 (EDT)
commit8b13b12bca54a7ca3f51b04cddf7fb40a3669ee6 (patch)
tree69f332452506922bdd17997e136b7534e1f69987
parent1dcaa09242122e50a680e1b58bd2ce8fdfca7da6 (diff)
downloadlibreboot-8b13b12bca54a7ca3f51b04cddf7fb40a3669ee6.zip
libreboot-8b13b12bca54a7ca3f51b04cddf7fb40a3669ee6.tar.gz
libreboot-8b13b12bca54a7ca3f51b04cddf7fb40a3669ee6.tar.bz2
build/dependencies/parabola: Add dependencies for x86_64
-rw-r--r--docs/git/index.html32
-rw-r--r--docs/release.html5
-rwxr-xr-xresources/scripts/helpers/build/dependencies/parabola73
3 files changed, 50 insertions, 60 deletions
diff --git a/docs/git/index.html b/docs/git/index.html
index a1e9dd9..b8997e2 100644
--- a/docs/git/index.html
+++ b/docs/git/index.html
@@ -68,6 +68,10 @@
or:<br/>
# <b>./build dependencies parabola</b>
</p>
+ <p>
+ If you are running Parabola 64-bit (x86_64), you should enable
+ the <b>multilib</b> and <b>libre-multilib</b> repositories.
+ </p>
</div>
<p>
@@ -737,22 +741,34 @@
<h2>Preparing release archives (optional)</h2>
<p>
+ <b>This is only confirmed to work (tested) in Trisquel 7. Parabola *fails* at this stage
+ (for now).</b>
+ </p>
+
+ <p>
Do the following:<br/>
$ <b>./build release archives</b>
</p>
<p>
- If you are building on an i686 host, this will include statically linked 32-bit binaries in
+ If you are building on an i686 host, this will build statically linked 32-bit binaries in
the binary release archive that you created,
- for: <b>nvramtool, cbfstool, bucts, flashrom, ich9deblob, cbmem</b>.
+ for: <b>nvramtool, cbfstool, ich9deblob, cbmem</b>.
</p>
<p>
- If you are building on an x86_64 host, this will include statically linked 32- and 64-bit binaries for
- <b>cbmem</b>, <b>ich9deblob</b>, <b>cbfstool</b> and <b>nvramtool</b>, while <b>flashrom</b>
- and <b>bucts</b> will be included only as 64-bit statically linked binaries. <b>To include a statically
- linked flashrom and bucts for i686, you will need to build them on a chroot, a virtual machine or a real
- 32-bit system. You can find the build dependencies for these packages listed in deps-*</b>
+ If you are building on an x86_64 host, this will build statically linked 32- *and* 64-bit binaries for
+ <b>cbmem</b>, <b>ich9deblob</b>, <b>cbfstool</b> and <b>nvramtool</b>.
+ </p>
+ <p>
+ <b>To include statically linked i686 and x86_64 binaries for bucts and flashrom,
+ you will need to build them on a chroot, a virtual machine or a real
+ system where the host uses each given architecture. These packages are difficult
+ to cross-compile, and the libreboot project is still figuring out how to deal
+ with them.</b>
+ </p>
+ <p>
+ The same applies if you want to include statically linked flashrom binaries for ARM.
</p>
<p>
@@ -766,7 +782,7 @@
</ul>
<p>
- If you are building 32-bit binaries on a live system or chroot (for flashrom/bucts), you can use the following to statically link them:<br/>
+ If you are building binaries on a live system or chroot (for flashrom/bucts), you can use the following to statically link them:<br/>
$ <b>./build module flashrom static</b><br/>
$ <b>./build module bucts static</b>
</p>
diff --git a/docs/release.html b/docs/release.html
index 94eecce..019dfac 100644
--- a/docs/release.html
+++ b/docs/release.html
@@ -329,6 +329,11 @@
See <a href="http://projects.mtjm.eu/work_packages/16">http://projects.mtjm.eu/work_packages/16</a>.
</li>
<li>
+ build/release/archives currently fails on Parabola (it only works well in Trisquel).
+ That script is buggy, and full of ugly hacks anyway,
+ so re-write it and make it modular/portable this time.
+ </li>
+ <li>
Reduce the size of libreboot releases.
See <a href="http://projects.mtjm.eu/work_packages/19">http://projects.mtjm.eu/work_packages/19</a>
<ul>
diff --git a/resources/scripts/helpers/build/dependencies/parabola b/resources/scripts/helpers/build/dependencies/parabola
index 6a43805..239f478 100755
--- a/resources/scripts/helpers/build/dependencies/parabola
+++ b/resources/scripts/helpers/build/dependencies/parabola
@@ -1,7 +1,7 @@
#!/bin/bash
# helper script: installs build dependencies for Parabola
-# works on 32-bit. TODO: adapt for 64-bit
+
# this script is based on the script for Trisquel 7
#
# Copyright (C) 2014, 2015 Francis Rowe <info@gluglug.org.uk>
@@ -33,100 +33,69 @@ fi
# This is so that they can moved to separate scripts.
#
-# TODO: get everything building in parabola 64-bit
-# (this script was written for 32-bit parabola)
-
-pacman -S --noconfirm wget
+pacman -S wget
# For downloading source code
# ------------------------------------------------------------
-pacman -S --noconfirm subversion git
+pacman -S subversion git
# For building source code:
# ------------------------------------------------------------
-pacman -S --noconfirm base-devel
+pacman -S base-devel libstdc++5
+
+pacman -S arm-none-eabi-gcc
+
+pacman -S pacman -S libpciaccess
-# THIS IS ONLY FOR "./build release archives"
-# TODO: ADAPT FOR PARABOLA
-# for cross-compiling ARM binaries
-apt-get -y install gcc-arm-linux-gnueabi # TODO: ADAPT IN PARABOLA
# For cross-compiling i686 target on x86_64 host.
if [ $(uname -i) = "x86_64" ] || [ $(uname -m) = "x86_64" ]
then
- apt-get -y install gcc-multilib libc6-i386 libc6-dev-i386
- apt-get -y install lib32stdc++6 g++-multilib dh-autoreconf
- # recommended, but not sure what for:
- apt-get -y install lib32tinfo-dev texi2html
+ pacman -S gcc-libs-multilib gcc-multilib lib32-fakeroot lib32-libltdl lib32-glibc lib32-libstdc++5
+ pacman -S lib32-libpciaccess
fi
# Memtest86+ build dependencies
# ------------------------------------------------------------
-# pacman -S --noconfirm base-devel
+# pacman -S base-devel
# i945-pwm build dependencies
# ------------------------------------------------------------
-# pacman -S --noconfirm base-devel
+# pacman -S base-devel
# Coreboot build dependencies (also requires build-essential and git)
# ------------------------------------------------------------
-pacman -S --noconfirm ncurses doxygen iasl gdb flex bison
-# pacman -S --noconfirm git base-devel
+pacman -S ncurses doxygen iasl gdb flex bison
+# pacman -S git base-devel
# For cross-compiling i686 target on x86_64 host.
-TODO: ADAPT FOR PARABOLA (needed for "./build release archives")
if [ $(uname -i) = "x86_64" ] || [ $(uname -m) = "x86_64" ]
then
- apt-get -y install lib32ncurses5-dev
+ pacman -S lib32-ncurses
fi
# GRUB build dependencies (also requires build-essential, bison and flex)
# ------------------------------------------------------------
+# pacman -S base-devel bison flex
-# TODO: is bdf-unifont the equivalent to Trisquel's ttf-unifont? Or do you need ttf-unifont from AUR, eg:
-# https://aur.archlinux.org/packages/ttf-unifont/
-
-# TODO: what is the equivalent to libopts25?
-
-# TODO: what is the equivalent to libselinux1-dev?
-# Do you need it from AUR?
-# Is SELinux even needed at all?
-
-# TODO: what is the equivalent to autotools-dev?
-
-# TODO: what is the equivalent to libfont-freetype-perl? is it freetype2 (already in the list below)?
-
-# pacman -S --noconfirm base-devel bison flex
-
-pacman -S --noconfirm autogen m4 autoconf help2man freetype2 automake fuse fuse-exfat xz gawk device-mapper libtool python
-pacman -S --noconfirm bdf-unifont # trying this, otherwise there was an error. I'll try AUR if this won't work.
+pacman -S autogen m4 autoconf help2man freetype2 automake fuse fuse-exfat xz gawk device-mapper libtool python
+pacman -S bdf-unifont # trying this, otherwise there was an error. I'll try AUR if this won't work.
# BucTS build dependencies (external script)
# ------------------------------------------------------------
-# pacman -S --noconfirm base-devel
+# pacman -S base-devel
# Flashrom build dependencies (also requires build-essential and subversion)
# ------------------------------------------------------------
-# TODO: what is the equivalent to libpci-dev?
-
-#
-
-pacman -S --noconfirm pciutils zlib libftdi libftdi-compat
-# pacman -S --noconfirm base-devel subversion
-
-# For cross-compiling i686 target on x86_64 host.
-# TODO: ADAPT FOR PARABOLA (needed for "./build release archives"
-if [ $(uname -i) = "x86_64" ] || [ $(uname -m) = "x86_64" ]
- then
- apt-get -y install lib32z1-dev
-fi
+pacman -S pciutils zlib libftdi libftdi-compat
+# pacman -S base-devel subversion
# ------------------- DONE ----------------------