From 1bce064eeca1a7090ed98cadb86d849846d135d3 Mon Sep 17 00:00:00 2001 From: Timothy Gu Date: Thu, 20 Feb 2014 16:30:06 -0800 Subject: [PATCH] Updated How MXE builds its package (markdown) --- How-MXE-builds-its-package.md | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/How-MXE-builds-its-package.md b/How-MXE-builds-its-package.md index 3ad72d2..fd09b76 100644 --- a/How-MXE-builds-its-package.md +++ b/How-MXE-builds-its-package.md @@ -1,18 +1,21 @@ MXE is a set of Makefiles that is used to mimic a mini Linux distribution. ## Building packages -When a person runs `make`, MXE does the following things: +When a person runs `make` or `gmake`, MXE does the following things: 1. It checks whether the requirements are met. If successful, it `touch`es a file in `usr/installed` to prevent MXE from chacking that every time you run - `make`. + `(g)make`. 2. It parses `index.html` to get a list of available packages. 3. It `include`s all the Makefiles in `src/`. 4. It solves dependency of packages to find the deepest depended package. -5. It starts building the deepest dependended package. +5. It starts building the most deeply dependended package. 6. It downloads the `$($(PKG)_FILE)` and checks it against `$($(PKG)_CHECKSUM)`. - The activities are logged in `log/$(PKG)-download`. -7. From this point on, all activities are logged in `log/$(PKG)`. + The activities are logged in `log/$(PKG)-download`. If `$($(PKG)_FILE)` + already exists in `pkg/`, it will directly check the SHA-1, and, if they + don't match, delete the current copy and download it. +7. From this point on, all activities are logged in `log/$(PKG)`, or, if that + causes confusion, `log/$(PKG)-$(TARGET)`. 8. It extracts the tarball or zip file using the appropriate command. 9. It applies any patch that matches `src/$(PKG)-*.patch`. 10. It calls macro specified in the package Makefile. @@ -22,4 +25,4 @@ When a person runs `make`, MXE does the following things: works. 11. It `touch`es an empty file in `usr/$(TARGET)/installed/` with the name of the package, signifying that the package is built successfully. -12. It continues to build the next package. +12. It continues to build the next package (goto 6).