Commit Graph

19 Commits

Author SHA1 Message Date
Anton Midyukov
e42bcdcb30 90-build-distro.mk, boot.mk, syslinux: add ARM64 EFI support for distro targets 2019-08-30 19:23:28 +03:00
Gleb Fotengauer-Malinovskiy
61b48bcc4b build-distro: use ieee1275boot BOOT_TYPE for ppc64le 2019-08-19 23:31:07 +03:00
Michael Shigorin
2f389cfce1 build-distro: added META_DISK_INFO support
This one can be used to override the default content
of .disk/info file (used by propagator but can find
some other uses within installer as well); the reason
being that ISO9660's Volume ID is up to 32 characters
and a file lacks that particular limitation.
2019-03-08 17:27:07 +03:00
Michael Shigorin
611ec48ecb slightly better license info
There's an ISO9660 COPY tag for license info file;
make use of it, factoring use/docs/license out
while at that.

One of the goals was to make it hold the reference
to reference to GPL in regular builds and starterkits
;-)
2018-07-25 16:49:04 +03:00
Michael Shigorin
a257c2aece build-distro: add isodata metadata support
A bunch of duplicated variable names for mkimage,
just short-circuit those to the already available
(and hopefully filled in) BOOT_* ones.
2018-07-25 16:49:02 +03:00
Michael Shigorin
3c2ef1c035 rework isoboot support beyond x86
Every .iso was assumed to be bootable since the very beginning[*],
and isoboot images were deemed to be x86 isolinux ones; this didn't
change with basic ppc/armh support as I never ran into hardware
that would _boot_ those ISOs, not only run the code, and it was
only e2k isodata project that finally forced this refactoring.

It's still not perfect: pack and syslinux features still end up
somewhat interwoven, and too much places care for architecture
the image is being built for (instead of archdep features tossing
their appropriate bits and pieces in).

Should help:
- any-arch regarding isodata images;
- {x86,aarch64}/efi by decoupling isoboot and isolinux;
- ppc{,64} as introducing yaboot support will be easier now;
- mipsel{,64} too, hopefully.

* I knew of school addon images baked with mkimage-profiles-desktop
  but postponed and then neglected the whole problem for years...
2018-07-25 16:49:01 +03:00
Michael Shigorin
cdaa9cdaa3 boot.mk, build-distro: handle e2k
It needs (and has) no isolinux in the first place;
this is also the situation with most or all non-x86
arches, the code should probably reflect that.
2018-05-21 22:50:18 +03:00
Michael Shigorin
d5f71b3716 image.in, build-*: generalize SUBDIRS
This is a fix to previous failures of
ve/vm + use/repo/main build attempts
(in fact, any non-distro/ targets).

SUBDIRS were just optimized away...
2018-02-15 17:03:19 +03:00
Michael Shigorin
db7ec7515b build-distro: ensure prerequisites' order
...just in case (make doesn't guarantee that it's left-to-right
for normal-prerequisites so make them order-only-prerequisites).
2017-01-24 17:23:31 +03:00
Gleb Fotengauer-Malinovskiy
8eae258a8c 90-build-distro.mk: add "date +%F" to .disk/info 2013-10-09 12:07:41 +04:00
Michael Shigorin
72986b5321 build-distro: un-hardwire .disk/info
It used to be a hasty static string; something like
"ALT Linux regular-e17/x86_64" seems more relevant.
2013-07-15 21:32:13 +04:00
Michael Shigorin
da65dc2fd9 build-distro: skip pseudo subprofiles
rootfs presented a special case when there is no resulting
directory at all as it gets merged with the target subprofile
by design.

Still those features adding only rootfs scripts need to depend
on it but this resulted in an attempt to process a missing subdir.

This is brought back to sanity now.
2013-07-15 21:20:59 +04:00
Michael Shigorin
671c788e3a build-distro: drop sortfile on the floor
Its support was dropped in mkimage some time ago
since xorriso semantics changed quite considerably
and the tweak that was done here is now performed
out-of-box thus no longer needed.
2013-02-04 22:18:26 +04:00
Michael Shigorin
f576b01988 build-distro: trim BOOT_VOLI at 32 chars
The nice and pleasant effect of hitting this barrier
is build process break at (almost) the very end of it.
2013-02-04 22:18:26 +04:00
Michael Shigorin
b21353a00c complex subprofile delimiter changed ("/" -> "@")
That sub/stage2/install2 was somewhat clumsy actually as it looked
like a hierarchical thing while being a substitution thing:
generic stage2 would get put in place renamed as install2.

This could only get worse with hierarchical features which have
already been both requested and considered for quite a time,
and "stage2 at install2" reads much more naturally.
2012-08-11 20:11:17 +03:00
Michael Shigorin
c4311108ea git usage refactoring
There were heaps of "if type -t git" there already;
it wasn't an unintentional mishap but rather a moderate
copy-paste to get the use cases, and now these seem to
have essentially settled.

So time to scrap some dups.

NB: the scripts in the generated profile can't rely on
the contents of the metaprofile (these need to be able
to work in standalone case either), so a bit of crap
still lurks there.
2012-08-10 00:12:46 +03:00
Michael Shigorin
24edc620d8 prep optimization
There was some extra duplication, just clean it up.
2012-07-16 18:24:18 +03:00
Michael Shigorin
75f7c62bd1 initial build-vm feature
Yes, mkimage-profiles is now able to build VM disk images.
So far the support is pretty basic:

- a single hard drive image with a single partition/FS
- only stock root password is configurable
- LILO is hardwired as a bootloader

The resulting images tend to boot under qemu/kvm though.

Please see doc/vm.txt for the warning regarding additional
privileges and setup required.  This was started back in
February but I still hoped to avoid sudo/privileged helper
(and libguestfs is almost as undistributable as can be)...

Thanks:

- http://blog.quinthar.com/2008/07/building-1gb-bootable-qemu-image-using.html
- Alexey Morarash who reworked that as https://github.com/tuxofil/linsygen
- led@, legion@, vitty@, aen@ for providing advice and inspiration
2012-06-18 21:56:46 +03:00
Michael Shigorin
c83cc111a6 initial kernel and metadata features
This further refines the modular build by making
metadata being a clearly separated feature rather
than having to rely on runtime tests, and also by
moving the code which cares for kernel bits of base
installation (.base list) in a feature of its own.

There's more to it but let's get the ball rolling first.
2012-05-10 21:18:02 +03:00