1. 08 Oct, 2024 1 commit
  2. 05 Sep, 2024 1 commit
    • Anton Midyukov's avatar
      Makefile: cosmetic improvement for ARCH/BRANCH output · 51b6f1af
      Anton Midyukov authored
      This should save a few repetitive lines during multi image build,
      albeit the ideal result should only print out the BRANCH once
      as it's invariant for the whole build process (no, you can't
      just go ahead and echo it where it gets checked/defined
      since that's not the recipe body).
      Suggested by mike@
      51b6f1af
  3. 30 May, 2023 1 commit
    • Anton Midyukov's avatar
      reports: DEBUG must be enabled, CHECK must be disabled · b627d755
      Anton Midyukov authored
      We cannot get IMAGE_OUTPATH from the build.log, and there is currently
      no other mechanism. Creating a CHECK directory was a bad idea. It should
      have been created only for CHECK, but it was always created when DEBUG
      was not enabled. So it's better to just issue a warning.
      b627d755
  4. 30 Dec, 2022 3 commits
  5. 23 Aug, 2021 1 commit
  6. 18 Jun, 2021 2 commits
  7. 06 Jun, 2021 2 commits
  8. 23 Sep, 2019 1 commit
    • Ivan A. Melnikov's avatar
      Ensure non-zero exit code on make failure · caee317e
      Ivan A. Melnikov authored
      Before this change, we could have 0 exit code from the main
      make process even when some targets failed to build on some
      architectures:
      
      $ make ARCH=mipsel [...] vm/tavolga-regular-mate-ex.recovery.tar
      ** ARCH: mipsel
      10:15:06 cleaning up
      10:15:06 initializing BUILDDIR: build/
      10:15:06 preparing distro config: build/distcfg.mk
      make[1]: *** No rule to make target 'use/systemd-coredump', needed by 'profile/.extra'.  Stop.
      [nightly-mipsel@loongson5 mkimage-profiles]$ echo $?
      0
      
      Use `make -k' to get the old behaviour.
      caee317e
  9. 19 Aug, 2019 1 commit
  10. 02 Apr, 2015 1 commit
    • Michael Shigorin's avatar
      introduce QUIET variable · 3cb4d9ae
      Michael Shigorin authored
      This one reduces the amount of output that's only
      interesting when one is actually watching the console
      during builds (at least the early stage) -- these tend
      to look boilerplate and be useless when inspecting the
      output of a large batch build like [[regular]] one.
      3cb4d9ae
  11. 24 Jun, 2014 1 commit
    • Michael Shigorin's avatar
      added docs-publish toplevel goal · e0004a26
      Michael Shigorin authored
      This one is long overdue as I keep forgetting to update
      the published copy of generated documentation all the time.
      
      Note that you must pass DOCS_PUBLISH (as a local directory
      or host:dir suitable for rsync/ssh) via make arguments,
      environment or ~/.mkimage/profiles.mk file.
      e0004a26
  12. 05 Aug, 2013 1 commit
    • Michael Shigorin's avatar
      Makefile: fixed an interbug · 84ad4092
      Michael Shigorin authored
      This inobvious buglet has been spotted shortly after
      1.1.0 refactoring was roughly over; the problem is
      that armh-specific targets would get ignored without
      explicit ARCH=armh.
      
      It's commit 768df7e9
      which streamlined introspection within main.mk
      and a bug in Makefile which left ARCH empty
      even upon having autodetected it for ARCHES.
      
      The current version is more straightforward as a bonus.
      84ad4092
  13. 17 Jun, 2013 1 commit
  14. 19 Nov, 2012 1 commit
  15. 05 Nov, 2012 1 commit
  16. 28 Jul, 2012 1 commit
  17. 17 Jul, 2012 1 commit
  18. 16 Jul, 2012 1 commit
    • Michael Shigorin's avatar
      initial PowerPC support · 1ee997e8
      Michael Shigorin authored
      As it happens, adding another architecture required almost no changes;
      native 32-bit ppc build took only ARCH and a repo, qemu-ppc one still
      has problems (/.host/entry hangs while unpacking setup for fakedata).
      
      Proof of concept on a QS22:
      
        $ make ve/bare.tar.gz
        ** ARCH: ppc
        /bin/sh: rpmvercmp: command not found
        21:41:01 cleaning up
        21:41:03 initializing BUILDDIR: build/
        21:41:03 preparing distro config
        21:41:05 starting image build (coffee time)
        21:42:48 done (1:42)
        ** image: $TMP/out/bare-20120716-ppc.tar.gz [21M]
      1ee997e8
  19. 09 Jul, 2012 2 commits
    • Michael Shigorin's avatar
      initial native ARM support · 3c26cc86
      Michael Shigorin authored
      The only thing to be fixed was setarch(8) symlinks assumption
      that is correct for x86 but not for ARM.
      
      There's also some hasher(7) setup to be done:
      
        mkdir -p ~/.hasher
        echo >> ~/.hasher/config <<-EOF
        def_target=arm
        #cache_dir=$HOME/tmp	# depends on RAM/storage configuration
        EOF
      
      ...and of course apt(8) should be properly set up too.
      
      An example PoC build on a CM-A510 board (tmpfs):
      
        $ make BRANDING=altlinux-centaurus ve/bare.tar.gz
        ** ARCH: arm
        18:10:45 initializing BUILDDIR: build/
        18:10:45 preparing distro config: build/distcfg.mk
        18:10:46 starting image build: tail -f build/build.log
        18:14:49 done (4:02)
        ** image: $TMP/out/bare-20120706-arm.tar.gz [23M]
      3c26cc86
    • Michael Shigorin's avatar
      Makefile: drop noise when no config is found · 698c5e31
      Michael Shigorin authored
      ~/.mkimage/profiles.mk is useful but not requisite by any margin;
      no need to make noise trying to make it either.
      698c5e31
  20. 25 Jun, 2012 1 commit
    • Michael Shigorin's avatar
      initial specific VM formats support · 8a04d9b6
      Michael Shigorin authored
      Raw disk images are convenient and universal
      but there are custom formats like Qemu's qcow2
      providing additional features, e.g. copy-on-write
      or space savings.  All of this ultimately belongs
      to mkimage but in the mean time has been implemented
      here as well.
      8a04d9b6
  21. 21 May, 2012 1 commit
  22. 14 May, 2012 1 commit
  23. 06 May, 2012 1 commit
    • Michael Shigorin's avatar
      no build means *no* build (and less reports), really · 454e7162
      Michael Shigorin authored
      It's hard to tell a successful build from a failed one
      if downstream hides the exit code; it's useless to continue
      a `for' loop if a pipe shoves that to a subshell; well it seems
      that a bashism is worth a thousand quirks with extra fds here.
      Minor regexp enhancements are also due.
      
      reports.mk made a bit more resilient/prudent either.
      454e7162
  24. 24 Apr, 2012 1 commit
  25. 23 Apr, 2012 1 commit
  26. 07 Apr, 2012 1 commit
  27. 19 Mar, 2012 1 commit
  28. 16 Jan, 2012 1 commit
    • Michael Shigorin's avatar
      fix toplevel arch/distro loops · 9304c12c
      Michael Shigorin authored
      There was a somewhat subtle Makefile->main.mk rename leftover
      lurking in "everything" target: the default Makefile got used,
      not the supposed main.mk -- which resulted in an attempt to
      get way too much job done (the number of builds per target
      became $ARCH squared, not just $ARCH).
      
      Huge thanks to led@ for being an inspiring pedantic!
      9304c12c
  29. 11 Jan, 2012 1 commit
  30. 02 Jan, 2012 1 commit
    • Michael Shigorin's avatar
      main.mk introduced, lib/*.mk partially rewritten · 2f307fff
      Michael Shigorin authored
      The former toplevel Makefile is now toplevel main.mk;
      this change allows for multi-target, multi-arch processing
      in the current toplevel Makefile.
      
      As the "build" symlink semantics change quite considerably
      when one is doing bulk builds (several pruned builddirs might
      be useful for comparison), BUILDDIR is now much more likely
      to be recreated: the cases when it will persist are when it's
      either a single-image build or when the prefix hasn't changed.
      
      There are some more or less subtle bugfixes and enhancements
      all over the map as well.
      
      Done within 20111230..20120102 timeframe, actually...
      2f307fff
  31. 02 Dec, 2011 1 commit
    • Michael Shigorin's avatar
      conf/live.mk: minor refactoring · 3d982dab
      Michael Shigorin authored
      distro/live-builder target used to employ a few duplicated
      packages that might make it to a list but as the list would
      have only a single user so far these were moved to a target-
      specific variable (hm, weird but "private" modifier broke).
      3d982dab
  32. 24 Nov, 2011 2 commits
    • Michael Shigorin's avatar
      added support for cpio and xz · 7e78670e
      Michael Shigorin authored
      Actually this is the proper rewrite that was looming ever since
      tgz support was introduced: there are multiple archive formats
      supported by mkimage, and there are multiple compression methods
      available as well.
      
      So the bullet got bitten yet again along with the "goal parser"
      which should be more straightforward by now.
      
      Thanks dkr@ and mithraen@ for the inspiration of this evening.
      7e78670e
    • Michael Shigorin's avatar
      Makefile: get help back up · 041d5754
      Michael Shigorin authored
      Partially reverts "Makefile: presume a distro by default" commit:
      plain `make' should better help the user to decide the target
      rather than rush to build them all upon her.
      041d5754
  33. 21 Nov, 2011 1 commit
    • Michael Shigorin's avatar
      Makefile: presume a distro by default · 10b9e293
      Michael Shigorin authored
      When ve/ support was introduced, a simple "make icewm.iso"
      had to turn into the more elaborate "make distro/icewm.iso".
      This latter one involves several keystrokes more, which is
      not even (environ)mentally friendly.
      
      This was supposed to get fixed somewhere down the road with
      a fallback but the elegance of IMAGE_* setup waterfall barred
      me from tweaking IMAGE_TARGET at once (and the downstream fixup
      would imply re-tweaking the consequent variables as well which
      is blatantly anti-mkimage-profilic being a brute fork).
      
      OTOH testing for a "directory" part of the goal is going to
      either deadlock on IMAGE_CLASS or duplicate its assignment.
      
      So now when I've had enough typing an extra "distro/",
      I'm going to just bite the bullet and tweak IMAGE_TARGET
      with a test duplicating IMAGE_CLASS assignment indeed
      (testing for e.g. "/" results in a different test,
      which would be worse yet).
      
      Please suggest a more elegant solution if you invent one!
      10b9e293
  34. 06 Nov, 2011 1 commit
    • Michael Shigorin's avatar
      tweaked variable logging · cc8982dd
      Michael Shigorin authored
      Preferences might be somewhat interesting too: while the official
      ones shouldn't influence the build result at all, there's no whitelist
      so all kinds of weirdness can be stuffed into local config in principle.
      That should be diagnosable at least.
      cc8982dd