Commit 4cb23d7c authored by Michael Shigorin's avatar Michael Shigorin

drop the dummy configure

It wasn't serving any good by now... README++ and cleanups all over the place
parent 9a8f8ef7
see also http://www.altlinux.org/Mkimage/Profiles/next
see also http://www.altlinux.org/Mkimage/Profiles/next;
quickstart:
make distclean server-light.iso
Концепция:
- метапрофиль служит репозиторием всего возможно нужного для
построения индивидуального профиля, по которому создаётся
итоговый дистрибутив
Особенности:
- метапрофиль может быть полностью read-only
- для сборки подыскивается предпочтительно tmpfs
- в профиль копируются только нужные объекты
Объекты:
- дистрибутивы: distro.mk, могут основываться один на другом;
......
clean:
@echo '** cleaning up...'
@[ -d build/ ] && \
make -C build/ $@ GLOBAL_BUILDDIR=$(shell readlink build) \
$(MAKE) -C build/ $@ GLOBAL_BUILDDIR=$(shell readlink build) \
||:
distclean: clean
@[ -d build/ ] && \
rm -rf build/.git; \
make -C build/ $@ GLOBAL_BUILDDIR=$(shell readlink build) && \
$(MAKE) -C build/ $@ GLOBAL_BUILDDIR=$(shell readlink build) && \
rm -r $(shell readlink build) && \
rm build \
||:
#!/bin/sh
# this is a chinese configure script:
# it would take any parameters,
# nod the head intelligently,
# and hide 'em beneath the clothes
# (until time comes)
PARAMS="$@"
# TODO: grep/validate?
# create suitable temporary directory for this build, then
# copy profiles there to configure a copy, not master tree
# keeping profile itself completely readonly would be nice
#export BUILDDIR="$(bin/mktmpdir mkimage-profiles.build)"
#ls -ld $BUILDDIR
#find image.in -type f -print0 | xargs -r0 cp -at "$BUILDDIR"/ --
#rsync -qaH --delete image.in/ "$BUILDDIR"/
#rm -f "$BUILDDIR"/.config.mk
#touch "$BUILDDIR"/.config.mk
#mkdir "$BUILDDIR"/.mki
#rm -f build
#[ -w . ] \
#&& ln -sf "$BUILDDIR" build \
#|| echo "profile directory readonly: skipping symlinks, env only"
# remember all those --with-*? we'll pass them downstream, honestly
#echo "$PARAMS" > "$BUILDDIR"/.with
......@@ -5,13 +5,8 @@ CONFIG = $(BUILDDIR)/.config.mk
-include features.in/*/config.mk
# put(), add(), set(), tags()
include functions.mk
# request particular image subprofile inclusion
sub/%:
$(call put,SUBPROFILES+=$(@:sub/%=%))
# package list names are relative to pkg/lists/
#
# package list names are considered relative to pkg/lists/
#
# $(VAR) will be substituted before writing them to $(CONFIG);
# $$(VAR) will remain unsubstituted util $(CONFIG) is included
......@@ -19,7 +14,12 @@ sub/%:
# can change its value during configuration _before_
# it's actually used)
#
# tags do boolean expressions: (tag1 && !(tag2 || tag3))
# tags can do boolean expressions: (tag1 && !(tag2 || tag3))
include functions.mk
# request particular image subprofile inclusion
sub/%:
$(call add,SUBPROFILES,$(@:sub/%=%))
distro/init:
@echo "** starting distro configuration build process"
......
......@@ -2,18 +2,16 @@ include $(BUILDDIR)/.config.mk
# make rsync backups
all:
for dir in $(FEATURES); do \
@for dir in $(FEATURES); do \
for sub in $(SUBPROFILES); do \
dest=$${sub%stage1}; \
echo "dir/sub: [$$dir/$$sub/]" && \
[ -d $$dir/$$sub/ ] && \
echo rsync -ab $$dir/$$sub/ $(BUILDDIR)/$$dest/ && \
rsync -ab $$dir/$$sub/ $(BUILDDIR)/$$dest/ && \
cd $(BUILDDIR)/$$dest/ && \
git add . && \
git commit -qam "$@/$$dir/$$sub" && \
cd ->&/dev/null; \
done; \
done; \
find $(BUILDDIR) -name '*~'
done
@# these might signal of file clashes (or plain dirt)
@find $(BUILDDIR) -name '*~'
export
MKIMAGE_PREFIX=@MKIMAGE_PREFIX@
GLOBAL_HSH_APT_CONFIG=@APTCONF@
GLOBAL_VERBOSE=0
MKIMAGE_PREFIX = @MKIMAGE_PREFIX@
GLOBAL_HSH_APT_CONFIG = @APTCONF@
GLOBAL_VERBOSE ?= 0
iso:
@echo "** starting image build process"
@### setup GLOBAL_BOOT_TYPE, etc
(cd $(BUILDDIR)/; autoconf; ./configure --with-aptconf=$(HOME)/apt/apt.conf) ###
$(MAKE) -C $(BUILDDIR)/ GLOBAL_BUILDDIR=$(BUILDDIR)
@# check iso size
profile/init:
@echo "** BUILDDIR: $(BUILDDIR)"
# ls -ld $(BUILDDIR)
@rsync -qaH --delete image.in/ "$(BUILDDIR)"/
@touch "$(BUILDDIR)"/.config.mk
@mkdir "$(BUILDDIR)"/.mki
......
include $(BUILDDIR)/.config.mk
all:
ls -l $(BUILDDIR)/.config.mk
echo -- SUBPROFILES: $(SUBPROFILES)
for dir in $(SUBPROFILES); do \
echo -- rsync -a $$dir/ $(BUILDDIR)/$$dir/ && \
@for dir in $(SUBPROFILES); do \
rsync -a $$dir/ $(BUILDDIR)/$$dir/ && \
cd $(BUILDDIR)/$$dir/ && \
git add . && \
......@@ -13,7 +10,7 @@ all:
done
clean:
for dir in $(SUBPROFILES); do \
@for dir in $(SUBPROFILES); do \
[ -n "$$dir" ] && \
rm -rf $(BUILDDIR)/$$dir && \
mkdir -p $(BUILDDIR)/$$dir ||:; \
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment