Started 1 yr 9 mo ago
Took 58 sec

Success Build #445 (Dec 7, 2017 12:33:23 AM)

Build Artifacts
magiclantern-Nightly.2017Dec07.60D111.zip1.80 MB view
Changes
  1. Makefile: drop unused SUPPORTED_MODELS / SUPPORTED_UNIFIED_MODELS (detail / bitbucket)
  2. Merged in makefile-updates (pull request #873)

    Makefile updates to use any valid ARM toolchain (detail / bitbucket)
  3. Makefile: fix 7D build_fir (detail / bitbucket)
  4. Makefile: fix building Lua with gcc 4.7.3 (detail / bitbucket)
  5. Makefile: only attempt to build/install/check ML-SETUP.FIR if there is a valid installer directory
    (some platforms may not have have one - 7D_MASTER, new ports) (detail / bitbucket)
  6. Card LED: always use CARD_LED_ADDRESS, LEDON and LEDOFF
    (backed out 5bfab05 to fix installer on 7D - 0x800c00 not mandatory?) (detail / bitbucket)
  7. Makefile: moved 7D-specific tweaks (FIR etc) into main target (7D.203)
    for consistency with other platforms, including 7D2
    to build the regular FIR: make build_fir
    to build the installer FIR: make ML-SETUP.FIR -B (detail / bitbucket)
  8. Makefile: FIR building updates
    - always install ML-SETUP.FIR (zip, install, install_qemu)
    - build_fir for regular ML (not installer) now gives AUTOEXEC.FIR
    - to recompile ML-SETUP.FIR: "make ML-SETUP.FIR -B" from platform directory
    - "make zip" will also compile the installer from source, without replacing the precompiled ML-SETUP.FIR
      (just to make sure the source code changes do not interfere with building the installer) (detail / bitbucket)
  9. Makefile: fix building xor_chk from its own directory (detail / bitbucket)
  10. Makefile: more .NOTPARALLEL fixes (detail / bitbucket)
  11. Makefile: fix 7D FIR path
    (just for consistency) (detail / bitbucket)
  12. Makefile: use .NOTPARALLEL in top-level Makefiles, rather than double-colon rules
    ML platforms/modules are built sequentially, but within each platform/module, parallel build is used
    to be tested on Mac with -j8
    (on Make 3.81, double-colon are executed in parallel, while in 4.2.1 they are sequential) (detail / bitbucket)
  13. Makefile: fix README.rst generation with POSIX shells
    to reproduce: cd modules/filepref; make clean; rm -f README.rst; make SHELL=dash (detail / bitbucket)
  14. Makefile: serialize "make install", fix some related dependencies
    parallel copying could lock up WIFI_SD cards
    to reproduce: "WIFI_SD=y make install ML_MODULES=" from platform/CAM directory (detail / bitbucket)
  15. Makefile: monitor wifi connection when using WIFI_SD=y
    (experimental, helps troubleshooting connectivity issues) (detail / bitbucket)
  16. Makefile: minor refactors for WIFI_SD (coding style)
    also fixed a typo (detail / bitbucket)
  17. Modules: better error handling for missing rst2html
    http://www.magiclantern.fm/forum/index.php?topic=17099 (detail / bitbucket)
  18. Makefile: speed optimizations
    - helper to evaluate only once, only if used
    - modules hgstamp: only evaluate if used
    - CF_CARD, VERSION: only evaluate once if used
    - PWD is special? renamed to avoid unneeded shell calls
    Profiling tips:
    - perf record make; perf report --sort comm
    - make SHELL="sh -x"
    - make clean SHELL="sh -x" |& grep "^+" | sort | uniq -c (detail / bitbucket)
  19. Makefile: enable parallel compilation for modules, but compile them sequentially
    huge modules like Lua will compile much faster
    compiling everything in parallel is not 100% safe (some dependency checks may fail) (detail / bitbucket)
  20. Makefile: do not print toolchain info on recursive calls (detail / bitbucket)
  21. Makefile: reworked global targets
    install: doesn't make sense, as we no longer have a "one size fits all" build capable of running on all models
             (alternative: 5D3.113_install, 60D_install etc)
    zip: build zip for each camera model, sequentially (parallel build still used within each zip)
    all: similar to zip (build camera models sequentially, but use parallel compilation within each platform)
    clean, check: these can run in parallel (no restrictions) (detail / bitbucket)
  22. Makefile: fix module dependency checking on "make zip"
    by default, a module succeeds if it can be loaded on any camera model, from those compiled (doesn't matter which one)
    when using "make zip", we only want to include the modules compatible with current camera model, without considering other models
    (fixme: not the cleanest way to implement this) (detail / bitbucket)
  23. Makefile: fix module_strings dependency rule
    (previously, there was an error with make -j) (detail / bitbucket)
  24. Makefile: dropped ML_MODULES_STATIC (unused) and renamed ML_MODULES_DYNAMIC to ML_MODULES
    note: if you have customized the module list in Makefile.modules.user, just rename ML_MODULES_DYNAMIC to ML_MODULES
    to compile without modules: make 5D3 ML_MODULES= (detail / bitbucket)
  25. Makefile: fix "make clean" from modules directory with stale modules from other branches
    https://bitbucket.org/hudson/magic-lantern/pull-requests/873/makefile-updates-to-use-any-valid-arm/diff#comment-48250675 (detail / bitbucket)
  26. Makefile: fix running from other directory
    e.g. from qemu: make -C ../magic-lantern/ 500D_install_qemu (detail / bitbucket)
  27. Makefile: model-specific install targets for the root directory
    examples: make 500D_install; make 500D_install_qemu (detail / bitbucket)
  28. 7D: fix compiling with FEATURE_VIDEO_HACKS (detail / bitbucket)
  29. Makefile: fix building 7D_MASTER (detail / bitbucket)
  30. Makefile: minor cleanups from 0b9b550 (detail / bitbucket)
  31. Makefile: always define CONFIG_$(MODEL)_$(FW_VERSION)
    e.g. CONFIG_5D3_113, CONIFG_7D_203 and so on (detail / bitbucket)
  32. Makefile: fix for GNU make 3.8.1
    (thanks g3gg0) (detail / bitbucket)
  33. Makefile: fix newline issue with WIFI_SD=y (detail / bitbucket)
  34. Makefile: fix Mac issue (undefine not supported)
    http://www.magiclantern.fm/forum/index.php?topic=2864.msg192847#msg192847 (detail / bitbucket)
  35. fixed late evaluation issue in rule builder (detail / bitbucket)
  36. Makefile.platform.map: fix indentation (detail / bitbucket)
  37. Makefile: rules for "make install_qemu"
    (to use them, qemu has to be installed first) (detail / bitbucket)
  38. Makefile: with WIFI_SD=y, ping the card until it comes online (useful for router connections) (detail / bitbucket)
  39. Makefile: portable way to get number of processors (detail / bitbucket)
  40. further makefile cleanup, added make check to show which models were built and their memory usage (detail / bitbucket)
  41. fix 'all' target for models (detail / bitbucket)
  42. removed explicit make executable definition. allows to run e.g. 'remake' to debug make rules (detail / bitbucket)
  43. reworked model make rules to support different firmware versions for a model [to be thoroughly tested] (detail / bitbucket)
  44. disable ASSERT for 7D_MASTER (detail / bitbucket)
  45. Makefile: also print CONFIG overrides from command-line
    (alongside the ones from Makefile.user) (detail / bitbucket)
  46. Makefile: print tips for using make -j
    (how to set it by default in Makefiles?) (detail / bitbucket)
  47. Makefile: silence warning about CONFIG_SITE
    (some recent Linux distros use it) (detail / bitbucket)
  48. Makefile: portable way to get libgcc.a's path (detail / bitbucket)
  49. Makefile: removed old dropbox target (detail / bitbucket)
  50. Makefile: print build info after "make zip"; skip EXIDX line (detail / bitbucket)
  51. Makefile: fix CONFIG_CCACHE (detail / bitbucket)
  52. Makefile: use "gio mount" rather than "gvfs-mount"
    (they are interchangeable; older systems may require gvfs-mount, newer systems will print warnings) (detail / bitbucket)
  53. Makefile: if no valid ARM GCC is found in PATH, try to find one in the home directory (detail / bitbucket)
  54. Makefile: fix compiling tcc (detail / bitbucket)
  55. Makefile: moved toolchain setup to Makefile.setup
    (this allows toolchain to be overridden from Makefile.user) (detail / bitbucket)
  56. Makefile: fixes to allow compiling ML with Linaro arm-eabi-gcc; updated toolchain recommendations (detail / bitbucket)
  57. Makefile: updated toolchain recommendation; minor edits (detail / bitbucket)
  58. Makefile: attempt to use any arm-none-eabi-gcc from PATH, if already installed (to be tested)
    By default, it will attempt to use ~/gcc-arm-none-eabi-5_4-2016q3 if installed. (detail / bitbucket)
  59. Makefile: use gcc 5.4.1 by default (current version from https://launchpad.net/gcc-arm-embedded ) (detail / bitbucket)

Started by an SCM change

Revision: 97b73e7a781e78f3364555c5c30afbd3c0e5cae8