paul@394 | 1 | Departure
|
paul@394 | 2 | =========
|
paul@394 | 3 |
|
paul@153 | 4 | This is a collection of L4Re packages for providing and using filesystems and
|
paul@153 | 5 | related components.
|
paul@153 | 6 |
|
paul@394 | 7 | This directory (departure) should be installed within the pkg directory in the
|
paul@153 | 8 | L4Re distribution.
|
paul@153 | 9 |
|
paul@394 | 10 | Building Fiasco and L4Re
|
paul@394 | 11 | ------------------------
|
paul@394 | 12 |
|
paul@394 | 13 | Although this is generally documented, the concise instructions for building
|
paul@394 | 14 | the software have not been preserved in the L4Re distribution, requiring the
|
paul@394 | 15 | perusal of online resources. For example:
|
paul@394 | 16 |
|
paul@394 | 17 | https://github.com/kernkonzept/manifest/wiki/BUILDING
|
paul@394 | 18 |
|
paul@394 | 19 | Some reminders are provided below to save the reader the bother of looking up
|
paul@394 | 20 | or searching for this information, particularly if it does not continue to
|
paul@394 | 21 | reside in the above location.
|
paul@394 | 22 |
|
paul@394 | 23 | First of all, the ham tool has to be obtained. This can be done as follows:
|
paul@394 | 24 |
|
paul@394 | 25 | git clone https://github.com/kernkonzept/ham.git
|
paul@394 | 26 |
|
paul@394 | 27 | It can be built as follows:
|
paul@394 | 28 |
|
paul@394 | 29 | cd ham
|
paul@394 | 30 | make
|
paul@394 | 31 |
|
paul@394 | 32 | Returning to the parent directory, the Fiasco and L4Re distributions can be
|
paul@394 | 33 | obtained as follows:
|
paul@394 | 34 |
|
paul@394 | 35 | ham/ham init -u https://github.com/kernkonzept/manifest.git
|
paul@394 | 36 | ham/ham sync
|
paul@394 | 37 |
|
paul@394 | 38 | (Referencing ham within its repository avoids any need to put the program on
|
paul@394 | 39 | the PATH, which is largely unnecessary since we will only be using it in this
|
paul@394 | 40 | particular location and for the specific purpose of downloading the remaining
|
paul@394 | 41 | software of interest.)
|
paul@394 | 42 |
|
paul@394 | 43 | Here is a quick summary of the build process for Fiasco starting at the parent
|
paul@394 | 44 | directory of the Fiasco and L4Re distributions:
|
paul@394 | 45 |
|
paul@394 | 46 | cd fiasco
|
paul@394 | 47 | make BUILDDIR=mybuild
|
paul@394 | 48 | cd mybuild
|
paul@394 | 49 | make config
|
paul@394 | 50 | make
|
paul@394 | 51 |
|
paul@394 | 52 | The final make command can employ flags such as "-j8" or even "-j" without any
|
paul@394 | 53 | parameter to parallelise the build.
|
paul@394 | 54 |
|
paul@394 | 55 | At this point, this directory (departure) can be copied into the L4Re
|
paul@394 | 56 | distribution within the pkg directory.
|
paul@394 | 57 |
|
paul@394 | 58 | Here is a quick summary of the build process for L4Re, also starting at the
|
paul@394 | 59 | parent directory of the Fiasco and L4Re distributions:
|
paul@394 | 60 |
|
paul@394 | 61 | cd l4
|
paul@394 | 62 | make B=mybuild
|
paul@394 | 63 | make O=mybuild config
|
paul@394 | 64 | make O=mybuild
|
paul@394 | 65 |
|
paul@394 | 66 | Again, the final make command can employ parallelisation flags. For example:
|
paul@394 | 67 |
|
paul@394 | 68 | make -j8 O=mybuild
|
paul@394 | 69 |
|
paul@394 | 70 | Along with the usual L4Re software, this will also build the software provided
|
paul@394 | 71 | by this distribution if it has been copied into the pkg/departure location
|
paul@394 | 72 | within the l4 directory.
|
paul@394 | 73 |
|
paul@394 | 74 | Running Programs from this Distribution
|
paul@394 | 75 | ---------------------------------------
|
paul@394 | 76 |
|
paul@153 | 77 | To make the test programs available to L4Re, add the following line to the
|
paul@153 | 78 | L4Re conf/Makeconf.boot file:
|
paul@153 | 79 |
|
paul@394 | 80 | MODULE_SEARCH_PATH += $(L4DIR_ABS)/pkg/departure/conf
|
paul@153 | 81 |
|
paul@153 | 82 | It may also be necessary to add the following line as well:
|
paul@153 | 83 |
|
paul@394 | 84 | BOOTSTRAP_SEARCH_PATH += $(L4DIR_ABS)/pkg/departure/conf
|
paul@153 | 85 |
|
paul@153 | 86 | This removes any need to copy program configuration files and associated
|
paul@153 | 87 | resources to the L4Re distribution itself.
|
paul@153 | 88 |
|
paul@153 | 89 | The program module lists in the conf subdirectory can either be appended to
|
paul@153 | 90 | the L4Re conf/modules.list file, or a specific .list file can be copied to the
|
paul@394 | 91 | conf/modules.list location (potentially after taking a backup copy of the
|
paul@394 | 92 | original file).
|