1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-07-02 22:43:17 +02:00

doc: Make OS specific instructions as headers so they are linkable

When html page is generated, all headers are generated as links on
the page. It is useful to have OS specific instructions as a link
to share with people.

Change-Id: I78645131b1f0acbedcf11964a204a24c45b62cff
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/81780
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi
This commit is contained in:
Anastasia Klimchuk
2024-04-08 23:43:01 +10:00
committed by Anastasia Klimchuk
parent 7bc347e16d
commit c06abc9014

View File

@ -47,29 +47,35 @@ Installing dependencies
* No external dependencies (documentation should be build without fetching all of pypi)
* No Javascript?
* Linux
* Debian / Ubuntu
Linux
"""""
* Debian / Ubuntu
::
apt-get install -y \
gcc meson ninja-build pkg-config python3-sphinx \
libcmocka-dev libpci-dev libusb-1.0-0-dev libftdi1-dev libjaylink-dev
* ArchLinux / Manjaro
* ArchLinux / Manjaro
::
pacman -S --noconfirm \
gcc meson ninja pkg-config python-sphinx cmocka \
pciutils libusb libftdi libjaylink
* openSUSE / SUSE
* openSUSE / SUSE
::
zypper install -y \
gcc meson ninja pkg-config python3-Sphinx \
libcmocka-devel pciutils-devel libusb-1_0-devel libftdi1-devel libjaylink-devel
* NixOS / nixpkgs
* NixOS / nixpkgs
* There is a ``shell.nix`` under ``scripts/``
::
@ -78,15 +84,19 @@ Installing dependencies
gcc meson ninja pkg-config sphinx \
cmocka pciutils libusb1 libftdi1 libjaylink
* Alpine Linux
* Alpine Linux
::
apk add \
build-base meson ninja pkgconf py3-sphinx \
cmocka-dev pciutils-dev libusb-dev libjaylink-dev
* Windows
* MSYS2
Windows
"""""""
* MSYS2
Install `MSYS2 <https://www.msys2.org/>`_ and ensure it is `fully updated <https://www.msys2.org/docs/updating/>`_.
* ``libpci`` is not available through the package manager and pci based programmer are not supported on Windows.
@ -106,8 +116,11 @@ Installing dependencies
mingw-w64-i686-gcc mingw-w64-i686-meson mingw-w64-i686-ninja mingw-w64-i686-pkg-config mingw-w64-i686-python-sphinx \
mingw-w64-i686-cmocka mingw-w64-i686-libusb mingw-w64-i686-libftdi mingw-w64-i686-libjaylink-git
* MacOS
* Homebrew
MacOS
"""""
* Homebrew
* ``libpci`` is not available through the package manager
* ``libjaylink`` is not available through the package manager
@ -117,8 +130,11 @@ Installing dependencies
meson ninja pkg-config sphinx-doc \
libusb libftdi
* BSD
* FreeBSD / DragonFlyBSD
BSD
"""
* FreeBSD / DragonFlyBSD
* ``libusb1`` is part of the system
* ``libjaylink`` is not available through the package manager
@ -128,7 +144,8 @@ Installing dependencies
meson ninja pkgconf py39-sphinx \
cmocka libpci libftdi1
* OpenBSD
* OpenBSD
* ``libjaylink`` is not available through the package manager
::
@ -137,7 +154,8 @@ Installing dependencies
meson ninja pkg-config py39-sphinx\
cmocka pciutils libusb1 libftdi1
* NetBSD
* NetBSD
* ``libjaylink`` is not available through the package manager
* note: https://www.cambus.net/installing-ca-certificates-on-netbsd/
@ -147,24 +165,28 @@ Installing dependencies
meson ninja pkg-config py39-sphinx \
cmocka pciutils libusb1 libftdi1
* OpenIndiana (Illumos, Solaris, SunOS)
* ``libpci`` missing, pciutils is build without it
* ``libftdi1`` & ``libjaylink`` are not available through the package manager
* TODO: replace ``build-essential`` with the default compiler
OpenIndiana (Illumos, Solaris, SunOS)
"""""""""""""""""""""""""""""""""""""
::
* ``libpci`` missing, pciutils is build without it
* ``libftdi1`` & ``libjaylink`` are not available through the package manager
* TODO: replace ``build-essential`` with the default compiler
::
pkg install build-essential meson ninja cmocka libusb-1
* DJGPP-DOS
* Get `DJGPP <https://www.delorie.com/djgpp/>`_
* A great build script can be found `here <https://github.com/andrewwutw/build-djgpp>`_
* Download the `pciutils <https://mj.ucw.cz/sw/pciutils/>`_ sources
DJGPP-DOS
"""""""""
| Run the following commands in the the pciutils directory to build libpci for DOS.
| Replace ``<DOS_INSTALL_ROOT>`` with your cross-compile install root.
* Get `DJGPP <https://www.delorie.com/djgpp/>`_
* A great build script can be found `here <https://github.com/andrewwutw/build-djgpp>`_
* Download the `pciutils <https://mj.ucw.cz/sw/pciutils/>`_ sources
::
| Run the following commands in the the pciutils directory to build libpci for DOS.
| Replace ``<DOS_INSTALL_ROOT>`` with your cross-compile install root.
::
make install-lib \
ZLIB=no \
@ -174,14 +196,16 @@ Installing dependencies
STRIP="--strip-program=i586-pc-msdosdjgpp-strip -s" \
PREFIX=<DOS_INSTALL_ROOT>
Point pkg-config to the ``<DOS_INSTALL_ROOT>`` ::
Point pkg-config to the ``<DOS_INSTALL_ROOT>`` ::
export PKG_CONFIG_SYSROOT=<DOS_INSTALL_ROOT>
* To compile flashrom use the ``meson_cross/i586_djgpp_dos.txt`` cross-file
* You will need `CWSDPMI.EXE <https://sandmann.dotster.com/cwsdpmi/>`_ to run flashrom
* To compile flashrom use the ``meson_cross/i586_djgpp_dos.txt`` cross-file
* You will need `CWSDPMI.EXE <https://sandmann.dotster.com/cwsdpmi/>`_ to run flashrom
libpayload
""""""""""
* libpayload
.. todo:: Add building instructions for libpayload