From b840755acc24f5cebe561d5ecb3380e157de1583 Mon Sep 17 00:00:00 2001
From: Francis Rowe
Before doing anything, you need the dependencies first. This is true if
you want to build libreboot from source, with either libreboot_src.tar.xz or git.
- If you are using libreboot_bin.tar.xz (binary archive) then you can ignore this, because
+ If you are using libreboot_util.tar.xz (binary archive) then you can ignore this, because
ROM images and statically compiled executables for the utilities are included.
+ For Trisquel 7, you can run the following command:
- For all other GNU/Linux distributions, you may have to adapt these scripts. By all means send patches!
+ For other GNU/Linux distributions, you can adapt the Trisquel 7 script for your needs.
After that, run the script:
@@ -143,7 +147,7 @@
- BUC.TS utility is included in libreboot_src.tar.xz and libreboot_bin.tar.xz.
To build bucts, do this in the main directory:
+ To statically compile it, do this:
@@ -182,7 +191,7 @@
- Flashrom source code is included in libreboot_src.tar.gz and libreboot_bin.tar.gz.
-
+
+
+ $ sudo ./resources/scripts/dependencies/trisquel7dependencies
+
- $ ./download everything
+ $ ./download everything
+ BUC.TS utility is included in libreboot_src.tar.xz and libreboot_util.tar.xz.
If you downloaded from git, follow #build_meta before you proceed.
- $ ./builddeps-bucts
+ $ ./build module bucts
+
+ $ ./build module bucts static
+ Flashrom source code is included in libreboot_src.tar.xz and libreboot_util.tar.xz.
If you downloaded from git, follow #build_meta before you proceed.
- To build it, do that in the main directory:
- $ ./builddeps-flashrom
+ To build it, do the following in the main directory:
+ $ ./build module flashrom
+
+ To statically compile it, do the following in the main directory:
+ $ ./build module flashrom static
@@ -577,7 +591,7 @@
You don't need to do much, as there are scripts already written for you that can build everything automatically.
@@ -596,45 +610,50 @@ If you downloaded libreboot from git, refer to #build_meta. -If running for the first time, run this:
- $ ./buildall (also performs the "./build" step below)
- Or if you only want to build dependencies (crossgcc, grub and so on):
- $ ./builddeps
If you've already run ./builddeps and/or ./buildall before, you don't need to run them again.
- Just run that from now on to build the ROM images:
- $ ./build
+ Build all of the components used in libreboot:
+ $ ./build module all
+
To un-build (clean) the build dependencies that you built before, do the following:
- This also deletes the ROM images under ./bin/:
- $ ./cleandeps
+ After that, build the ROM images:
+ $ ./build roms withgrub
+
Note: after running 'cleandeps', you will need to run 'builddeps' or 'buildall' again before you can use 'build'.
+
+ To clean (reverse) everything, do the following:
+ $ ./build clean all
+
After 'build' or 'buildall' has finished, you'll find the ROM images for each machine under ./bin/
++ The ROM images will be stored under bin/. +
- Run that script:
- $ ./build-release
+ Do the following:
+ $ ./build release archives
- If you are building on an i686 host, this will include statically linked 32-bit binaries in the binary release archive that you created, + If you are building on an i686 host, this will include statically linked 32-bit binaries in + the binary release archive that you created, for: nvramtool, cbfstool, bucts, flashrom, ich9deblob, cbmem.
- If you are building on an x86_64 host, this will include statically linked 32- and 64-bit binaries for cbmem, ich9deblob, cbfstool and nvramtool, while flashrom - and bucts will be included only as 64-bit statically linked binaries. 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-* + If you are building on an x86_64 host, this will include statically linked 32- and 64-bit binaries for + cbmem, ich9deblob, cbfstool and nvramtool, while flashrom + and bucts will be included only as 64-bit statically linked binaries. 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-*
- armv7l binaries (tested on a BeagleBone Black) are also included in libreboot_bin, for: + armv7l binaries (tested on a BeagleBone Black) are also included in libreboot_util, for:
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:
- $ ./builddeps-flashrom static
- $ ./builddeps-bucts static
+ $ ./build module flashrom static
+ $ ./build module bucts static
- The same as above applies for ARM (except, building bucts on ARM is pointless, and for flashrom + The same conditions as above apply for ARM (except, building bucts on ARM is pointless, and for flashrom you only need the normal executable since the lenovobios_sst and _macronix executables are meant to run on an X60/T60 while lenovo bios is present, working around the security restrictions).
- The script mkextbuild will generate a small source tarball called tobuild.tar.xz that
- contains everything you need (including source) with which to build flashrom/bucts on these hosts.
- The build-release script will have already executed this script for you, so the archive should
- already exist.
+ The command that you used for generating the release archives will also run the following command:
+ $ ./build external source
+ The archive tobuild.tar.xz will have been created, containing bucts, flashrom and all other required
+ resources for building them.
- You'll find that the files libreboot_bin.tar.xz and libreboot_src.tar.xz have been created. + You'll find that the files libreboot_util.tar.xz and libreboot_src.tar.xz have been created.
- Alternatively if you are working with libreboot_bin, you will find binaries under ./cbfstool/ + Alternatively if you are working with libreboot_util, you will find binaries under ./cbfstool/
diff --git a/docs/grub/index.html b/docs/grub/index.html index e37d7d7..e9e2c35 100644 --- a/docs/grub/index.html +++ b/docs/grub/index.html @@ -50,7 +50,7 @@
This is a free font that is also contained in GNU/Linux distributions like Trisquel or Parabola.
$ cd libreboot_src/grub
- compile grub ('build' script has the info on how to do this)
+ compile grub (the build scripts info on how to do this)
come back out into libreboot_src/resources/grub:
$ cd ../libreboot_src/resources/grub/font
- The scripts build and buildrom-withgrub will automatically see this, and automatically build + The build scripts will automatically see this, and automatically build ROM images with your custom layout (given the name) and include them under bin. Example: libreboot_frazerty.rom.
diff --git a/docs/hcl/gm45_remove_me.html b/docs/hcl/gm45_remove_me.html index d6c36f4..eff0eac 100644 --- a/docs/hcl/gm45_remove_me.html +++ b/docs/hcl/gm45_remove_me.html @@ -96,8 +96,8 @@
ich9gen executables can be found under ./ich9deblob/ statically compiled in
- libreboot_bin. If you are using src or git, build ich9gen from source with:
- $ ./builddeps-ich9deblob
+ libreboot_util. If you are using src or git, build ich9gen from source with:
+ $ ./build module ich9deblob
The executable will appear under resources/utilities/ich9deblob/
If you are working with libreboot_src (or git), you can find the source under resources/utilities/ich9deblob/
- and will already be compiled if you ran ./builddeps or ./builddeps-ich9deblob from the main directory (./),
+ and will already be compiled if you ran ./build module all or ./build module ich9deblob from the main directory (./),
otherwise you can build it like so:
- $ ./builddeps-ich9deblob
+ $ ./build module ich9deblob
An executable file named ich9deblob will now appear under resources/utilities/ich9deblob/
- If you are working with libreboot_bin release archive, you can find the utility included, statically compiled + If you are working with libreboot_util release archive, you can find the utility included, statically compiled (for i686 and x86_64 on GNU/Linux) under ./ich9deblob/.
diff --git a/docs/release.html b/docs/release.html index edc24e3..ad0422a 100644 --- a/docs/release.html +++ b/docs/release.html @@ -36,8 +36,7 @@
You can verify the downloaded archives as follows:
- $ gpg --verify libreboot_src.tar.xz.sig
- $ gpg --verify libreboot_bin.tar.xz.sig
+ $ for signature in $(ls libreboot*.tar.xz.sig); do gpg --verify $signature; done