2010-12-03 17:53:02 +03:00
# step 4: build image (final stage)
#
# NB: this metaprofile directory forms the initial BUILDDIR/
2011-06-12 19:06:36 +04:00
i f n d e f G L O B A L _ B U I L D D I R
$( error GLOBAL_BUILDDIR not defined )
e n d i f
2010-08-28 20:28:42 +04:00
i n c l u d e f u n c t i o n s . m k
2010-10-29 13:11:03 +04:00
i n c l u d e $( GLOBAL_BUILDDIR ) / f u n c t i o n s . m k
server-ovz; KDEFAULT; syslinux features reworked
Renamed server-light.iso into server-ovz.iso to avoid brand dilution
and confusion (rider@'s server-light rather favours kvm, anyways).
Introduced KDEFAULT: a reliable default kernel chooser knob
since apt's regex ordering proved pretty unreliable.
Spelling things explicitly is better anyways.
SYSLINUX related features undergone pretty major rewrite
(that includes syslinux, hdt and memtest).
The problem to tackle was features.in/syslinux/generate.mk
assuming syslinux and pciids available in build *host* system;
this well might not be the case (or worse yet, those can be
just different). So now we're a bit less elegant and a bit
more enterprise, stuffing things into chroot and working there.
Bunch of other fixes along the road, including ; to name a few:
- fixed memtest entry (overlooked while renaming SYSLINUX_ITEMS)
- new and shiny doc/CodingStyle
- gfxboot, stage1 target chain, hdt tweaks
- distro.mk rehashed
- README++
- TODO: dropped (integer overflow anyways)
+ actually moved off-tree to reduce commit spam
- s,\.config\.mk,distcfg.mk,g
- doc/profiles.mk.sample: sample ~/.mkimage/profiles.mk
- ...and assorted fixups/additions
Sorry for convoluted commit, this would have been pretty hard to
rework into some really readable shape (and you might be interested
in the original repo's history horrors then, anyways).
2011-05-31 02:05:33 +04:00
i n c l u d e $( GLOBAL_BUILDDIR ) / d i s t c f g . m k
2010-09-27 23:02:57 +04:00
i n c l u d e $( MKIMAGE_PREFIX ) / c o n f i g . m k
2010-08-28 20:28:42 +04:00
SUBDIRS = $( SUBPROFILES)
2010-09-09 13:50:29 +04:00
# "main" subprofile needs genbasedir
CHROOT_PACKAGES = apt-utils
2010-08-28 20:28:42 +04:00
###
2011-05-11 23:40:47 +04:00
MKI_PACK_RESULTS = isoboot:$( IMAGENAME)
2010-09-09 13:50:29 +04:00
COPY_TREE = ./files
2010-08-28 20:28:42 +04:00
BOOT_TYPE = isolinux
2011-05-11 23:40:47 +04:00
# outdir shouldn't be wiped clean before use
CLEANUP_OUTDIR =
server-ovz; KDEFAULT; syslinux features reworked
Renamed server-light.iso into server-ovz.iso to avoid brand dilution
and confusion (rider@'s server-light rather favours kvm, anyways).
Introduced KDEFAULT: a reliable default kernel chooser knob
since apt's regex ordering proved pretty unreliable.
Spelling things explicitly is better anyways.
SYSLINUX related features undergone pretty major rewrite
(that includes syslinux, hdt and memtest).
The problem to tackle was features.in/syslinux/generate.mk
assuming syslinux and pciids available in build *host* system;
this well might not be the case (or worse yet, those can be
just different). So now we're a bit less elegant and a bit
more enterprise, stuffing things into chroot and working there.
Bunch of other fixes along the road, including ; to name a few:
- fixed memtest entry (overlooked while renaming SYSLINUX_ITEMS)
- new and shiny doc/CodingStyle
- gfxboot, stage1 target chain, hdt tweaks
- distro.mk rehashed
- README++
- TODO: dropped (integer overflow anyways)
+ actually moved off-tree to reduce commit spam
- s,\.config\.mk,distcfg.mk,g
- doc/profiles.mk.sample: sample ~/.mkimage/profiles.mk
- ...and assorted fixups/additions
Sorry for convoluted commit, this would have been pretty hard to
rework into some really readable shape (and you might be interested
in the original repo's history horrors then, anyways).
2011-05-31 02:05:33 +04:00
APTCONF := $( wildcard $( APTCONF) )
i f e q "$(APTCONF)" ""
2010-09-27 23:02:57 +04:00
GLOBAL_HSH_APT_CONFIG = /etc/apt/apt.conf
e l s e
GLOBAL_HSH_APT_CONFIG = $( APTCONF)
e n d i f
2010-09-08 16:47:06 +04:00
i n c l u d e $( MKIMAGE_PREFIX ) / t a r g e t s . m k
2010-08-28 20:28:42 +04:00
2010-09-14 14:18:53 +04:00
all : prep copy -subdirs copy -tree run -scripts pack -image
2010-08-28 20:28:42 +04:00
server-ovz; KDEFAULT; syslinux features reworked
Renamed server-light.iso into server-ovz.iso to avoid brand dilution
and confusion (rider@'s server-light rather favours kvm, anyways).
Introduced KDEFAULT: a reliable default kernel chooser knob
since apt's regex ordering proved pretty unreliable.
Spelling things explicitly is better anyways.
SYSLINUX related features undergone pretty major rewrite
(that includes syslinux, hdt and memtest).
The problem to tackle was features.in/syslinux/generate.mk
assuming syslinux and pciids available in build *host* system;
this well might not be the case (or worse yet, those can be
just different). So now we're a bit less elegant and a bit
more enterprise, stuffing things into chroot and working there.
Bunch of other fixes along the road, including ; to name a few:
- fixed memtest entry (overlooked while renaming SYSLINUX_ITEMS)
- new and shiny doc/CodingStyle
- gfxboot, stage1 target chain, hdt tweaks
- distro.mk rehashed
- README++
- TODO: dropped (integer overflow anyways)
+ actually moved off-tree to reduce commit spam
- s,\.config\.mk,distcfg.mk,g
- doc/profiles.mk.sample: sample ~/.mkimage/profiles.mk
- ...and assorted fixups/additions
Sorry for convoluted commit, this would have been pretty hard to
rework into some really readable shape (and you might be interested
in the original repo's history horrors then, anyways).
2011-05-31 02:05:33 +04:00
# Metadata/ needed only for installer (and not for e.g. syslinux.iso)
2011-06-13 00:08:42 +04:00
i f e q "$(INSTALLER_KFLAVOUR)$(KFLAVOURS)" ""
server-ovz; KDEFAULT; syslinux features reworked
Renamed server-light.iso into server-ovz.iso to avoid brand dilution
and confusion (rider@'s server-light rather favours kvm, anyways).
Introduced KDEFAULT: a reliable default kernel chooser knob
since apt's regex ordering proved pretty unreliable.
Spelling things explicitly is better anyways.
SYSLINUX related features undergone pretty major rewrite
(that includes syslinux, hdt and memtest).
The problem to tackle was features.in/syslinux/generate.mk
assuming syslinux and pciids available in build *host* system;
this well might not be the case (or worse yet, those can be
just different). So now we're a bit less elegant and a bit
more enterprise, stuffing things into chroot and working there.
Bunch of other fixes along the road, including ; to name a few:
- fixed memtest entry (overlooked while renaming SYSLINUX_ITEMS)
- new and shiny doc/CodingStyle
- gfxboot, stage1 target chain, hdt tweaks
- distro.mk rehashed
- README++
- TODO: dropped (integer overflow anyways)
+ actually moved off-tree to reduce commit spam
- s,\.config\.mk,distcfg.mk,g
- doc/profiles.mk.sample: sample ~/.mkimage/profiles.mk
- ...and assorted fixups/additions
Sorry for convoluted commit, this would have been pretty hard to
rework into some really readable shape (and you might be interested
in the original repo's history horrors then, anyways).
2011-05-31 02:05:33 +04:00
metadata :
2011-06-12 19:06:36 +04:00
@echo "** skipping metadata target, no stage1 kernel installed"
server-ovz; KDEFAULT; syslinux features reworked
Renamed server-light.iso into server-ovz.iso to avoid brand dilution
and confusion (rider@'s server-light rather favours kvm, anyways).
Introduced KDEFAULT: a reliable default kernel chooser knob
since apt's regex ordering proved pretty unreliable.
Spelling things explicitly is better anyways.
SYSLINUX related features undergone pretty major rewrite
(that includes syslinux, hdt and memtest).
The problem to tackle was features.in/syslinux/generate.mk
assuming syslinux and pciids available in build *host* system;
this well might not be the case (or worse yet, those can be
just different). So now we're a bit less elegant and a bit
more enterprise, stuffing things into chroot and working there.
Bunch of other fixes along the road, including ; to name a few:
- fixed memtest entry (overlooked while renaming SYSLINUX_ITEMS)
- new and shiny doc/CodingStyle
- gfxboot, stage1 target chain, hdt tweaks
- distro.mk rehashed
- README++
- TODO: dropped (integer overflow anyways)
+ actually moved off-tree to reduce commit spam
- s,\.config\.mk,distcfg.mk,g
- doc/profiles.mk.sample: sample ~/.mkimage/profiles.mk
- ...and assorted fixups/additions
Sorry for convoluted commit, this would have been pretty hard to
rework into some really readable shape (and you might be interested
in the original repo's history horrors then, anyways).
2011-05-31 02:05:33 +04:00
e l s e
# see also alterator-pkg (backend3/pkg-install)
# FIXME: if we copy --as-needed, maybe just tar . ?
# TODO: initfs seems conditionally needed as well
metadata :
@mkdir -p files/Metadata
@rm -f files/Metadata/pkg-groups.tar
2011-06-12 19:06:36 +04:00
@echo -e "\n# auto-added in image.in/Makefile" >> $( call list,.base)
@echo " $( call kpackages,$( KMODULES) ,$( KFLAVOURS) ) " >> $( call list,.base)
2011-06-13 15:15:37 +04:00
@echo " $( COMMON_PACKAGES) " | tr ' ' '\n\n' >> $( call list,.base)
server-ovz; KDEFAULT; syslinux features reworked
Renamed server-light.iso into server-ovz.iso to avoid brand dilution
and confusion (rider@'s server-light rather favours kvm, anyways).
Introduced KDEFAULT: a reliable default kernel chooser knob
since apt's regex ordering proved pretty unreliable.
Spelling things explicitly is better anyways.
SYSLINUX related features undergone pretty major rewrite
(that includes syslinux, hdt and memtest).
The problem to tackle was features.in/syslinux/generate.mk
assuming syslinux and pciids available in build *host* system;
this well might not be the case (or worse yet, those can be
just different). So now we're a bit less elegant and a bit
more enterprise, stuffing things into chroot and working there.
Bunch of other fixes along the road, including ; to name a few:
- fixed memtest entry (overlooked while renaming SYSLINUX_ITEMS)
- new and shiny doc/CodingStyle
- gfxboot, stage1 target chain, hdt tweaks
- distro.mk rehashed
- README++
- TODO: dropped (integer overflow anyways)
+ actually moved off-tree to reduce commit spam
- s,\.config\.mk,distcfg.mk,g
- doc/profiles.mk.sample: sample ~/.mkimage/profiles.mk
- ...and assorted fixups/additions
Sorry for convoluted commit, this would have been pretty hard to
rework into some really readable shape (and you might be interested
in the original repo's history horrors then, anyways).
2011-05-31 02:05:33 +04:00
@echo " branding- $( BRANDING) -release " >> $( call list,.base)
@tar -cvf files/Metadata/pkg-groups.tar \
-C $( PKGDIR) \
$$ ( echo $( call list,.base) \
$( call list,$( GROUPS) ) \
$( call group,$( GROUPS) ) \
| sed 's,$(PKGDIR)/*,,g' )
e n d i f
2010-09-09 13:50:29 +04:00
# FIXME: scripts.d/?
2011-06-12 19:06:36 +04:00
prep : $( GLOBAL_DEBUG ) dot -disk metadata $( IMAGEDIR )
2011-05-11 23:40:47 +04:00
$(IMAGEDIR) :
mkdir -p " $( IMAGEDIR) "
# specified only for the final image, not for the subparts
pack-image : OUTDIR = $( IMAGEDIR )
2010-09-27 23:02:57 +04:00
debug :
2011-06-12 19:06:36 +04:00
echo " TOPDIR= $( TOPDIR) "
echo " ARCH= $( ARCH) "
echo " GLOBAL_HSH_APT_CONFIG= $( GLOBAL_HSH_APT_CONFIG) "
2010-08-28 20:28:42 +04:00
2010-12-03 17:53:02 +03:00
dot-disk :
2010-09-14 14:18:53 +04:00
@mkdir -p files/.disk
2010-12-03 17:53:02 +03:00
@echo "ALT Linux based" >files/.disk/info
@echo " $( ARCH) " >files/.disk/arch
2011-05-11 23:40:47 +04:00
@echo " $( DATE) " >files/.disk/date
2010-09-18 18:46:32 +04:00
@type -t git >& /dev/null && ( \
cd $( TOPDIR) && \
2011-06-12 19:06:36 +04:00
git show-ref --head -d -s -- HEAD 2>/dev/null; \
2010-09-18 18:46:32 +04:00
) >files/.disk/commit