1999-11-11 16:10:37 -01:00
|
|
|
|
#!/usr/bin/make -f
|
|
|
|
|
|
2005-12-10 23:39:10 -01:00
|
|
|
|
# Main Makefile for debian-cd
|
1999-11-11 16:10:37 -01:00
|
|
|
|
#
|
|
|
|
|
# Copyright 1999 Rapha<68>l Hertzog <hertzog@debian.org>
|
|
|
|
|
# See the README file for the license
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
#
|
|
|
|
|
# Significantly modified 2005-2006 Steve McIntyre <93sam@debian.org>
|
|
|
|
|
# for multi-arch and mixed bin/src discs
|
|
|
|
|
#
|
1999-11-11 16:10:37 -01:00
|
|
|
|
# The environment variables must have been set
|
|
|
|
|
# before. For this you can source the CONF.sh
|
|
|
|
|
# file in your shell
|
|
|
|
|
|
|
|
|
|
|
2006-11-26 21:45:14 -01:00
|
|
|
|
export BUILD_DATE=$(shell date -u +%Y%m%d-%H:%M)
|
2006-11-26 21:42:02 -01:00
|
|
|
|
|
1999-11-11 16:10:37 -01:00
|
|
|
|
## DEFAULT VALUES
|
2000-08-25 16:54:03 +00:00
|
|
|
|
ifndef VERBOSE_MAKE
|
|
|
|
|
Q=@
|
|
|
|
|
endif
|
1999-11-11 16:10:37 -01:00
|
|
|
|
ifndef SIZELIMIT
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
SIZELIMIT=2000000000000
|
1999-11-11 16:10:37 -01:00
|
|
|
|
endif
|
|
|
|
|
ifndef TASK
|
|
|
|
|
TASK=$(BASEDIR)/tasks/Debian_$(CODENAME)
|
|
|
|
|
endif
|
|
|
|
|
ifndef MKISOFS
|
2005-09-14 18:28:10 +00:00
|
|
|
|
export MKISOFS=mkisofs
|
1999-11-11 16:10:37 -01:00
|
|
|
|
endif
|
|
|
|
|
ifndef MKISOFS_OPTS
|
|
|
|
|
#For normal users
|
2004-06-09 18:54:35 +00:00
|
|
|
|
MKISOFS_OPTS=-r
|
1999-11-11 16:10:37 -01:00
|
|
|
|
#For symlink farmers
|
2004-06-09 18:54:35 +00:00
|
|
|
|
#MKISOFS_OPTS=-r -F .
|
1999-11-11 16:10:37 -01:00
|
|
|
|
endif
|
|
|
|
|
ifndef HOOK
|
|
|
|
|
HOOK=$(BASEDIR)/tools/$(CODENAME).hook
|
|
|
|
|
endif
|
2002-01-28 22:00:17 -01:00
|
|
|
|
ifndef DOJIGDO
|
|
|
|
|
export DOJIGDO=0
|
|
|
|
|
endif
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
export ARCHES_NOSRC=$(shell echo $(ARCHES) | sed 's/source//')
|
|
|
|
|
ifeq ($(ARCHES),source)
|
|
|
|
|
export SOURCEONLY=yes
|
2005-11-14 23:28:07 -01:00
|
|
|
|
endif
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
ifeq ($(shell echo $(ARCHES) | sed 's/.*source.*/1/'),1)
|
|
|
|
|
export INC_SOURCE=yes
|
2005-11-14 23:28:07 -01:00
|
|
|
|
endif
|
2003-05-07 18:06:52 +00:00
|
|
|
|
|
1999-11-11 16:10:37 -01:00
|
|
|
|
## Internal variables
|
|
|
|
|
apt=$(BASEDIR)/tools/apt-selection
|
|
|
|
|
list2cds=$(BASEDIR)/tools/list2cds
|
|
|
|
|
scansources=$(BASEDIR)/tools/scansources
|
2001-04-14 20:57:06 +00:00
|
|
|
|
add_files=$(BASEDIR)/tools/add_files
|
|
|
|
|
add_secured=$(BASEDIR)/tools/add_secured
|
2005-09-14 18:28:10 +00:00
|
|
|
|
md5sum=md5sum
|
2002-05-05 12:08:27 +00:00
|
|
|
|
fastsums=$(BASEDIR)/tools/fast_sums
|
2005-12-06 23:12:11 -01:00
|
|
|
|
jigdo_cleanup=$(BASEDIR)/tools/jigdo_cleanup
|
|
|
|
|
grab_md5=$(BASEDIR)/tools/grab_md5
|
|
|
|
|
dedicated-src=$(BASEDIR)/tools/dedicated_source
|
2005-12-08 21:55:19 -01:00
|
|
|
|
make_image=$(BASEDIR)/tools/make_image
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
merge_package_lists=$(BASEDIR)/tools/merge_package_lists
|
|
|
|
|
update_popcon=$(BASEDIR)/tools/update_popcon
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
BDIR=$(TDIR)/$(CODENAME)
|
|
|
|
|
ADIR=$(APTTMP)
|
|
|
|
|
DB_DIR=$(BDIR)/debootstrap
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
2000-06-16 23:42:50 +00:00
|
|
|
|
FIRSTDISKS=CD1
|
|
|
|
|
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
export PATH := $(DB_DIR)/usr/sbin:$(PATH)
|
|
|
|
|
export DEBOOTSTRAP_DIR := $(DB_DIR)/usr/lib/debootstrap
|
|
|
|
|
|
|
|
|
|
LATEST_DB := $(shell ls -1tr $(MIRROR)/pool/main/d/debootstrap/debootstrap*all.deb | tail -1)
|
2005-09-14 18:28:10 +00:00
|
|
|
|
|
2000-05-18 22:49:02 +00:00
|
|
|
|
## DEBUG STUFF ##
|
|
|
|
|
|
|
|
|
|
PrintVars:
|
|
|
|
|
@num=1; \
|
|
|
|
|
echo BINDISKINFO: ; \
|
|
|
|
|
echo $(BINDISKINFO) ; \
|
|
|
|
|
echo SRCDISKINFO: ; \
|
|
|
|
|
echo $(SRCDISKINFO) ; \
|
|
|
|
|
echo BINDISKINFOND: ; \
|
|
|
|
|
echo $(BINDISKINFOND) ; \
|
|
|
|
|
echo SRCDISKINFOND: ; \
|
|
|
|
|
echo $(SRCDISKINFOND) ; \
|
|
|
|
|
echo BINVOLID: ; \
|
|
|
|
|
echo $(BINVOLID) ; \
|
|
|
|
|
echo SRCVOLID: ; \
|
|
|
|
|
echo $(SRCVOLID) ; \
|
|
|
|
|
|
2003-07-28 21:19:56 +00:00
|
|
|
|
default:
|
|
|
|
|
@echo "Please refer to the README file for more information"
|
|
|
|
|
@echo "about the different targets available."
|
|
|
|
|
|
1999-11-11 16:10:37 -01:00
|
|
|
|
## CHECKS ##
|
|
|
|
|
|
|
|
|
|
# Basic checks in order to avoid problems
|
2003-07-28 21:19:56 +00:00
|
|
|
|
ok:
|
1999-11-11 16:10:37 -01:00
|
|
|
|
ifndef TDIR
|
2003-09-10 11:32:17 +00:00
|
|
|
|
@echo TDIR undefined -- set up CONF.sh; false
|
1999-11-11 16:10:37 -01:00
|
|
|
|
endif
|
|
|
|
|
ifndef BASEDIR
|
2003-09-10 11:32:17 +00:00
|
|
|
|
@echo BASEDIR undefined -- set up CONF.sh; false
|
1999-11-11 16:10:37 -01:00
|
|
|
|
endif
|
|
|
|
|
ifndef MIRROR
|
2003-09-10 11:32:17 +00:00
|
|
|
|
@echo MIRROR undefined -- set up CONF.sh; false
|
1999-11-11 16:10:37 -01:00
|
|
|
|
endif
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
ifndef ARCHES
|
|
|
|
|
@echo ARCHES undefined -- set up CONF.sh; false
|
1999-11-11 16:10:37 -01:00
|
|
|
|
endif
|
|
|
|
|
ifndef CODENAME
|
2003-09-10 11:32:17 +00:00
|
|
|
|
@echo CODENAME undefined -- set up CONF.sh; false
|
1999-11-11 16:10:37 -01:00
|
|
|
|
endif
|
|
|
|
|
ifndef OUT
|
2003-09-10 11:32:17 +00:00
|
|
|
|
@echo OUT undefined -- set up CONF.sh; false
|
1999-11-11 16:10:37 -01:00
|
|
|
|
endif
|
2000-06-06 17:19:27 +00:00
|
|
|
|
ifdef NONFREE
|
|
|
|
|
ifdef EXTRANONFREE
|
2003-07-28 21:19:56 +00:00
|
|
|
|
@echo Never use NONFREE and EXTRANONFREE at the same time; false
|
2000-06-06 17:19:27 +00:00
|
|
|
|
endif
|
|
|
|
|
endif
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
@if [ $(DISKTYPE) = "NETINST" -o $(DISKTYPE) = "BC" ] ; then \
|
|
|
|
|
if [ "$(INC_SOURCE)"x = "yes"x ] ; then \
|
|
|
|
|
echo "Including source is not supported on a netinst/bc CD"; \
|
|
|
|
|
false; \
|
|
|
|
|
fi; \
|
|
|
|
|
fi
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
|
|
|
|
## INITIALIZATION ##
|
|
|
|
|
|
|
|
|
|
# Creation of the directories needed
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
init: ok $(OUT) $(TDIR) $(BDIR) $(ADIR) $(BDIR)/DATE $(DB_DIR) unstable-map
|
2004-06-24 09:41:22 +00:00
|
|
|
|
$(OUT):
|
|
|
|
|
$(Q)mkdir -p $(OUT)
|
1999-11-11 16:10:37 -01:00
|
|
|
|
$(TDIR):
|
2000-08-25 16:54:03 +00:00
|
|
|
|
$(Q)mkdir -p $(TDIR)
|
1999-11-11 16:10:37 -01:00
|
|
|
|
$(BDIR):
|
2000-08-25 16:54:03 +00:00
|
|
|
|
$(Q)mkdir -p $(BDIR)
|
2000-03-14 03:02:29 -01:00
|
|
|
|
$(ADIR):
|
2000-08-25 16:54:03 +00:00
|
|
|
|
$(Q)mkdir -p $(ADIR)
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
$(BDIR)/DATE:
|
|
|
|
|
date '+%Y%m%d' > $(BDIR)/DATE
|
|
|
|
|
$(DB_DIR): $(LATEST_DB)
|
|
|
|
|
@rm -rf $(DB_DIR)
|
|
|
|
|
@dpkg -x $(LATEST_DB) $(DB_DIR)
|
2005-09-07 15:21:11 +00:00
|
|
|
|
# Make sure unstable/sid points to testing/etch, as there is no build
|
|
|
|
|
# rule for unstable/sid.
|
2004-07-11 09:34:59 +00:00
|
|
|
|
unstable-map:
|
|
|
|
|
$(Q)if [ ! -d $(BASEDIR)/data/sid ] ; then \
|
2005-09-07 15:21:11 +00:00
|
|
|
|
ln -s etch $(BASEDIR)/data/sid ; \
|
2004-07-11 09:34:59 +00:00
|
|
|
|
fi
|
|
|
|
|
$(Q)if [ ! -d $(BASEDIR)/tools/boot/sid ] ; then \
|
2005-09-07 15:21:11 +00:00
|
|
|
|
ln -s etch $(BASEDIR)/tools/boot/sid ; \
|
2004-07-11 09:34:59 +00:00
|
|
|
|
fi
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
#################
|
|
|
|
|
## CLEAN RULES ##
|
|
|
|
|
#################
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
# Cleans the current arch tree (but not packages selection info)
|
|
|
|
|
clean: ok dir-clean
|
|
|
|
|
dir-clean:
|
2004-08-18 17:07:28 +00:00
|
|
|
|
$(Q)rm -rf $(BDIR)/CD[1234567890]*
|
2003-07-30 13:26:55 +00:00
|
|
|
|
$(Q)rm -f $(BDIR)/*.filelist*
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
$(Q)rm -f $(BDIR)/packages-stamp $(BDIR)/upgrade-stamp $(BDIR)/secured-stamp $(BDIR)/md5-check
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
|
|
|
|
# Completely cleans the current arch tree
|
|
|
|
|
realclean: distclean
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
distclean: ok clean
|
|
|
|
|
$(Q)echo "Cleaning the build directory"
|
2003-07-30 13:26:55 +00:00
|
|
|
|
$(Q)rm -rf $(ADIR)
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
$(Q)rm -rf $(TDIR)
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
####################
|
1999-11-11 16:10:37 -01:00
|
|
|
|
## STATUS and APT ##
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
####################
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
|
|
|
|
# Regenerate the status file with only packages that
|
|
|
|
|
# are of priority standard or higher
|
2000-03-14 03:02:29 -01:00
|
|
|
|
status: init $(ADIR)/status
|
|
|
|
|
$(ADIR)/status:
|
1999-11-11 16:10:37 -01:00
|
|
|
|
@echo "Generating a fake status file for apt-get and apt-cache..."
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
for ARCH in $(ARCHES); do \
|
|
|
|
|
mkdir -p $(ADIR)/$(CODENAME)-$$ARCH; \
|
|
|
|
|
$(Q)if [ $$ARCH = "source" -o "$(INSTALLER_CD)" = "1" -o "$(INSTALLER_CD)" = "2" ];then \
|
|
|
|
|
:> $(ADIR)/$(CODENAME)-$$ARCH/status ; \
|
|
|
|
|
else \
|
|
|
|
|
zcat $(MIRROR)/dists/$(CODENAME)/main/binary-$$ARCH/Packages.gz | \
|
|
|
|
|
perl -000 -ne 's/^(Package: .*)$$/$$1\nStatus: install ok installed/m; print if (/^Priority: (required|important|standard)/m or /^Section: base/m);' \
|
|
|
|
|
>> $(ADIR)/$(CODENAME)-$$ARCH/status ; \
|
|
|
|
|
fi; \
|
|
|
|
|
done;
|
|
|
|
|
:> $(ADIR)/status
|
|
|
|
|
# Updating the apt database
|
|
|
|
|
for ARCH in $(ARCHES); do \
|
|
|
|
|
export ARCH=$$ARCH; \
|
|
|
|
|
$(Q)$(apt) update; \
|
|
|
|
|
done
|
|
|
|
|
#
|
|
|
|
|
# Checking the consistency of the standard system
|
|
|
|
|
# If this does fail, then launch make correctstatus
|
|
|
|
|
#
|
|
|
|
|
for ARCH in $(ARCHES); do \
|
|
|
|
|
export ARCH=$$ARCH; \
|
|
|
|
|
$(Q)$(apt) check || $(MAKE) correctstatus; \
|
|
|
|
|
done
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
|
|
|
|
# Only useful if the standard system is broken
|
|
|
|
|
# It tries to build a better status file with apt-get -f install
|
|
|
|
|
correctstatus: status apt-update
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
# You may need to launch correctstatus more than one time
|
|
|
|
|
# in order to correct all dependencies
|
|
|
|
|
#
|
|
|
|
|
# Removing packages from the system :
|
2000-08-25 16:54:03 +00:00
|
|
|
|
$(Q)set -e; \
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
if [ "$(ARCHES)" != "source" ] ; then \
|
|
|
|
|
for ARCH in $(ARCHES_NOSRC); do \
|
|
|
|
|
export ARCH=$$ARCH; \
|
|
|
|
|
for i in `$(apt) deselected -f install`; do \
|
|
|
|
|
echo $$ARCH:$$i; \
|
|
|
|
|
perl -i -000 -ne "print unless /^Package: \Q$$i\E/m" \
|
|
|
|
|
$(ADIR)/$(CODENAME)-$$ARCH/status; \
|
|
|
|
|
done; \
|
|
|
|
|
done; \
|
|
|
|
|
fi
|
|
|
|
|
#
|
|
|
|
|
# Adding packages to the system :
|
2000-08-25 16:54:03 +00:00
|
|
|
|
$(Q)set -e; \
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
if [ "$(ARCHES)" != "source" ] ; then \
|
|
|
|
|
for ARCH in $(ARCHES_NOSRC); do \
|
|
|
|
|
export ARCH=$$ARCH; \
|
|
|
|
|
for i in `$(apt) selected -f install`; do \
|
|
|
|
|
echo $$ARCH:$$i; \
|
|
|
|
|
$(apt) cache dumpavail | perl -000 -ne \
|
|
|
|
|
"s/^(Package: .*)\$$/\$$1\nStatus: install ok installed/m; \
|
|
|
|
|
print if /^Package: \Q$$i\E\s*\$$/m;" \
|
|
|
|
|
>> $(ADIR)/$(CODENAME)-$$ARCH/status; \
|
|
|
|
|
done; \
|
|
|
|
|
done; \
|
|
|
|
|
fi
|
|
|
|
|
#
|
|
|
|
|
# Showing the output of apt-get check :
|
|
|
|
|
$(Q)for ARCH in $(ARCHES_NOSRC); do \
|
|
|
|
|
ARCH=$$ARCH $(Q)$(apt) check; \
|
1999-11-11 16:10:37 -01:00
|
|
|
|
done
|
|
|
|
|
|
|
|
|
|
apt-update: status
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
if [ "$(ARCHES)" != "source" ] ; then \
|
|
|
|
|
for ARCH in $(ARCHES); do \
|
|
|
|
|
echo "Apt-get is updating his files ..."; \
|
|
|
|
|
ARCH=$$ARCH $(Q)$(apt) update; \
|
|
|
|
|
done; \
|
|
|
|
|
fi
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
|
|
|
|
## GENERATING LISTS ##
|
|
|
|
|
|
|
|
|
|
# Deleting the list only
|
|
|
|
|
deletelist: ok
|
2000-08-25 16:54:03 +00:00
|
|
|
|
$(Q)-rm $(BDIR)/rawlist
|
2004-05-04 21:57:10 +00:00
|
|
|
|
$(Q)-rm $(BDIR)/rawlist-exclude
|
2000-08-25 16:54:03 +00:00
|
|
|
|
$(Q)-rm $(BDIR)/list
|
2004-05-04 21:57:10 +00:00
|
|
|
|
$(Q)-rm $(BDIR)/list.exclude
|
2000-06-16 23:42:50 +00:00
|
|
|
|
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
packagelists: ok apt-update genlist
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
image-trees: ok genlist
|
|
|
|
|
# Use list2cds to do the dependency sorting
|
|
|
|
|
$(Q)for ARCH in $(ARCHES_NOSRC); do \
|
|
|
|
|
ARCH=$$ARCH $(list2cds) $(BDIR)/list $(SIZELIMIT); \
|
2000-06-16 23:42:50 +00:00
|
|
|
|
done
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
if [ "$(SOURCEONLY)"x = "yes"x ] ; then \
|
|
|
|
|
awk '{printf("source:%s\n",$$0)}' $(BDIR)/list > $(BDIR)/packages; \
|
|
|
|
|
else \
|
|
|
|
|
$(merge_package_lists) $(BDIR) $(ADIR) "$(ARCHES)" $(BDIR)/packages; \
|
|
|
|
|
fi
|
|
|
|
|
make_disc_trees $(BASEDIR) $(MIRROR) $(TDIR) $(CODENAME) "$(ARCHES)"
|
2000-06-16 23:42:50 +00:00
|
|
|
|
|
1999-11-11 16:10:37 -01:00
|
|
|
|
# Generate the complete listing of packages from the task
|
|
|
|
|
# Build a nice list without doubles and without spaces
|
2004-05-04 21:57:10 +00:00
|
|
|
|
genlist: ok $(BDIR)/list $(BDIR)/list.exclude
|
1999-11-11 16:10:37 -01:00
|
|
|
|
$(BDIR)/list: $(BDIR)/rawlist
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
@echo "Generating the complete list of packages to be included in $(BDIR)/list..."
|
2000-08-25 16:54:03 +00:00
|
|
|
|
$(Q)perl -ne 'chomp; next if /^\s*$$/; \
|
1999-11-11 16:10:37 -01:00
|
|
|
|
print "$$_\n" if not $$seen{$$_}; $$seen{$$_}++;' \
|
|
|
|
|
$(BDIR)/rawlist \
|
|
|
|
|
> $(BDIR)/list
|
|
|
|
|
|
2004-05-04 21:57:10 +00:00
|
|
|
|
$(BDIR)/list.exclude: $(BDIR)/rawlist-exclude
|
|
|
|
|
@echo "Generating the complete list of packages to be removed ..."
|
|
|
|
|
$(Q)perl -ne 'chomp; next if /^\s*$$/; \
|
|
|
|
|
print "$$_\n" if not $$seen{$$_}; $$seen{$$_}++;' \
|
|
|
|
|
$(BDIR)/rawlist-exclude \
|
|
|
|
|
> $(BDIR)/list.exclude
|
|
|
|
|
|
1999-11-11 16:10:37 -01:00
|
|
|
|
# Build the raw list (cpp output) with doubles and spaces
|
|
|
|
|
$(BDIR)/rawlist:
|
2005-12-27 03:25:23 -01:00
|
|
|
|
# Dirty workaround for saving space, we add some hints to break ties.
|
2004-04-21 20:17:53 +00:00
|
|
|
|
# This is just a temporal solution, list2cds should be a little bit less
|
|
|
|
|
# silly so that this is not needed. For more info have a look at
|
|
|
|
|
# http://lists.debian.org/debian-cd/2004/debian-cd-200404/msg00093.html
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
$(Q)if [ "$(SOURCEONLY)"x != "yes"x ] ; then \
|
|
|
|
|
if [ "$(INSTALLER_CD)"x = "1"x ] ; then \
|
|
|
|
|
echo >> $(BDIR)/rawlist; \
|
|
|
|
|
elif [ "$(INSTALLER_CD)"x = "2"x ] ; then \
|
|
|
|
|
echo -e "mawk\nunifont\npptp-linux" >>$(BDIR)/rawlist; \
|
|
|
|
|
else \
|
|
|
|
|
echo -e "mawk\nexim4-daemon-light\nunifont\npptp-linux" >>$(BDIR)/rawlist; \
|
|
|
|
|
fi; \
|
2002-02-04 13:09:13 -01:00
|
|
|
|
fi
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
|
|
|
|
|
$(Q)if [ "$(SOURCEONLY)"x != "yes"x ] ; then \
|
|
|
|
|
$(Q)if [ _$(INSTALLER_CD) != _1 ]; then \
|
|
|
|
|
for ARCH in $(ARCHES_NOSRC); do \
|
|
|
|
|
debootstrap --arch $$ARCH --print-debs $(CODENAME) $(TDIR)/debootstrap.tmp file:$(MIRROR) 2>/dev/null \
|
|
|
|
|
| tr ' ' '\n' >>$(BDIR)/rawlist; \
|
|
|
|
|
rm -rf $(TDIR)/debootstrap.tmp; \
|
|
|
|
|
done; \
|
|
|
|
|
fi; \
|
|
|
|
|
fi
|
|
|
|
|
for ARCH in $(ARCHES_NOSRC); do \
|
|
|
|
|
ARCHDEFS="$$ARCHDEFS -D ARCH_$(subst -,_,$$ARCH)"; \
|
|
|
|
|
ARCHUNDEFS="$$ARCHUNDEFS -U $$ARCH"; \
|
|
|
|
|
done; \
|
|
|
|
|
$(Q)if [ "$(SOURCEONLY)"x != "yes"x ] ; then \
|
|
|
|
|
$(Q)cat $(TASK) | \
|
|
|
|
|
cpp -nostdinc -nostdinc++ -P -undef $$ARCHDEFS \
|
|
|
|
|
$$ARCHUNDEFS -U i386 -U linux -U unix \
|
|
|
|
|
-DFORCENONUSONCD1=0 \
|
|
|
|
|
-I $(BASEDIR)/tasks -I $(BDIR) - - >> $(BDIR)/rawlist; \
|
|
|
|
|
fi
|
|
|
|
|
# If we're *only* doing source, then we need to build a list of all the
|
|
|
|
|
# available source packages. Deliberately ignore the tasks too.
|
|
|
|
|
$(Q)if [ "$(SOURCEONLY)"x = "yes"x ] ; then \
|
|
|
|
|
awk '/^Package:/ {print $$2}' $(ADIR)/$(CODENAME)-source/apt-state/lists/*Sources | \
|
|
|
|
|
sort -u > $(BDIR)/rawlist; \
|
|
|
|
|
fi
|
|
|
|
|
# ls -al $(BDIR)/rawlist
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
2004-05-04 21:57:10 +00:00
|
|
|
|
# Build the raw list (cpp output) with doubles and spaces for excluded packages
|
|
|
|
|
$(BDIR)/rawlist-exclude:
|
2004-05-12 18:19:27 +00:00
|
|
|
|
$(Q)if [ -n "$(EXCLUDE)" ]; then \
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
for ARCH in $(ARCHES); do \
|
|
|
|
|
ARCHDEFS="$$ARCHDEFS -D ARCH_$(subst -,_,$$ARCH)"; \
|
|
|
|
|
ARCHUNDEFS="$$ARCHUNDEFS -U $$ARCH"; \
|
|
|
|
|
done; \
|
2004-05-04 21:57:10 +00:00
|
|
|
|
perl -npe 's/\@ARCH\@/$(ARCH)/g' $(EXCLUDE) | \
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
cpp -nostdinc -nostdinc++ -P -undef $$ARCHDEFS \
|
|
|
|
|
$$ARCHUNDEFS -U i386 -U linux -U unix \
|
|
|
|
|
-DFORCENONUSONCD1=0 \
|
|
|
|
|
-I $(BASEDIR)/tasks -I $(BDIR) - - >> $(BDIR)/rawlist-exclude; \
|
2004-05-12 18:19:27 +00:00
|
|
|
|
else \
|
|
|
|
|
echo > $(BDIR)/rawlist-exclude; \
|
2004-05-04 21:57:10 +00:00
|
|
|
|
fi
|
|
|
|
|
|
1999-11-11 16:10:37 -01:00
|
|
|
|
## BOOT & DOC & INSTALL ##
|
|
|
|
|
|
2001-06-13 21:11:37 +00:00
|
|
|
|
# Basic checks
|
|
|
|
|
$(MIRROR)/doc: need-complete-mirror
|
|
|
|
|
$(MIRROR)/tools: need-complete-mirror
|
|
|
|
|
need-complete-mirror:
|
2001-06-14 21:05:36 +00:00
|
|
|
|
@# Why the hell is this needed ??
|
|
|
|
|
@if [ ! -d $(MIRROR)/doc -o ! -d $(MIRROR)/tools ]; then \
|
|
|
|
|
echo "You need a Debian mirror with the doc, tools and"; \
|
|
|
|
|
echo "indices directories ! "; \
|
|
|
|
|
exit 1; \
|
|
|
|
|
fi
|
2001-11-06 23:22:30 -01:00
|
|
|
|
|
2005-12-06 23:12:11 -01:00
|
|
|
|
dedicated-src: ok
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
# false
|
2005-12-06 23:12:11 -01:00
|
|
|
|
|
1999-11-11 16:10:37 -01:00
|
|
|
|
## EXTRAS ##
|
|
|
|
|
|
|
|
|
|
# Launch the extras scripts correctly for customizing the CDs
|
|
|
|
|
extras: bin-extras
|
|
|
|
|
bin-extras: ok
|
2000-08-25 16:54:03 +00:00
|
|
|
|
$(Q)if [ -z "$(DIR)" -o -z "$(CD)" -o -z "$(ROOTSRC)" ]; then \
|
1999-11-11 16:10:37 -01:00
|
|
|
|
echo "Give me more parameters (DIR, CD and ROOTSRC are required)."; \
|
|
|
|
|
false; \
|
|
|
|
|
fi
|
2000-11-12 21:41:45 -01:00
|
|
|
|
@echo "Adding dirs '$(DIR)' from '$(ROOTSRC)' to '$(BDIR)/CD$(CD)'" ...
|
2001-04-14 20:57:06 +00:00
|
|
|
|
$(Q)$(add_files) $(BDIR)/CD$(CD) $(ROOTSRC) $(DIR)
|
1999-11-11 16:10:37 -01:00
|
|
|
|
src-extras:
|
2000-08-25 16:54:03 +00:00
|
|
|
|
$(Q)if [ -z "$(DIR)" -o -z "$(CD)" -o -z "$(ROOTSRC)" ]; then \
|
1999-11-11 16:10:37 -01:00
|
|
|
|
echo "Give me more parameters (DIR, CD and ROOTSRC are required)."; \
|
|
|
|
|
false; \
|
|
|
|
|
fi
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
@echo "Adding dirs '$(DIR)' from '$(ROOTSRC)' to '$(BDIR)/CD$(CD)'" ...
|
|
|
|
|
$(Q)$(add_files) $(BDIR)/CD$(CD) $(ROOTSRC) $(DIR)
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
|
|
|
|
## IMAGE BUILDING ##
|
|
|
|
|
|
2001-04-14 20:57:06 +00:00
|
|
|
|
# Generate $CODENAME-secured tree with Packages and Release(.gpg) files
|
|
|
|
|
# from the official tree
|
|
|
|
|
# Complete the Release file from the normal tree
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
secured: bin-secured #src-secured
|
2002-05-15 21:32:02 +00:00
|
|
|
|
bin-secured: $(BDIR)/secured-stamp
|
|
|
|
|
$(BDIR)/secured-stamp:
|
2001-04-14 20:57:06 +00:00
|
|
|
|
@echo "Generating $(CODENAME)-secured on all the binary CDs ..."
|
|
|
|
|
$(Q)set -e; \
|
|
|
|
|
for file in $(BDIR)/*.packages; do \
|
|
|
|
|
dir=$${file%%.packages}; \
|
|
|
|
|
n=$${dir##$(BDIR)/}; \
|
|
|
|
|
dir=$(BDIR)/CD$$n; \
|
|
|
|
|
cd $$dir; \
|
|
|
|
|
$(add_secured); \
|
|
|
|
|
done
|
2002-05-15 21:32:02 +00:00
|
|
|
|
$(Q)touch $(BDIR)/secured-stamp
|
2001-11-06 23:22:30 -01:00
|
|
|
|
|
2005-12-06 23:12:11 -01:00
|
|
|
|
# DOJIGDO actions (for both binaries and source)
|
|
|
|
|
# 0 isofile
|
|
|
|
|
# 1 isofile + jigdo, cleanup_jigdo
|
|
|
|
|
# 2 jigdo, cleanup_jigdo
|
2002-01-28 22:00:17 -01:00
|
|
|
|
#
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
images: ok $(OUT)
|
|
|
|
|
$(make_image) "$(BDIR)" "$(ARCHES)" "$(OUT)" "$(DOJIGDO)" "$(DEBVERSION)" "$(MIRROR)" "$(MKISOFS)" "$(MKISOFS_OPTS)" "$(JIGDO_OPTS)" "$(jigdo_cleanup)"
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
2005-12-08 21:55:19 -01:00
|
|
|
|
check-number-given:
|
1999-11-11 16:10:37 -01:00
|
|
|
|
@test -n "$(CD)" || (echo "Give me a CD=<num> parameter !" && false)
|
|
|
|
|
|
2005-12-08 21:55:19 -01:00
|
|
|
|
# Generate only one image number $(CD)
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
image: check-number-given image
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
2006-11-25 01:08:38 -01:00
|
|
|
|
# Calculate the md5sums for the images (if available), or get from templates
|
1999-11-11 16:10:37 -01:00
|
|
|
|
imagesums:
|
2006-11-25 01:08:38 -01:00
|
|
|
|
$(Q)$(BASEDIR)/tools/imagesums $(OUT)
|
2002-01-28 22:00:17 -01:00
|
|
|
|
|
1999-11-11 16:10:37 -01:00
|
|
|
|
## MISC TARGETS ##
|
|
|
|
|
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
mirrorcheck: ok
|
|
|
|
|
$(Q)$(grab_md5) $(MIRROR) "$(ARCHES)" $(CODENAME) $(DI_CODENAME) $(BDIR)/md5-check
|
2005-12-06 23:12:11 -01:00
|
|
|
|
$(Q)if [ -e $(BASEDIR)/data/$(CODENAME)/$(ARCH)/extra-sources ]; then \
|
|
|
|
|
echo "Extra dedicated source added; need to grab source MD5 info too"; \
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
$(Q)$(grab_md5) $(MIRROR) source $(CODENAME) $(DI_CODENAME) $(BDIR)/md5-check; \
|
2005-12-06 23:12:11 -01:00
|
|
|
|
fi
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
2004-08-12 03:57:24 +00:00
|
|
|
|
update-popcon:
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
$(update_popcon) tasks/popularity-contest-$(CODENAME)
|
2004-06-29 22:21:28 +00:00
|
|
|
|
|
1999-11-11 16:10:37 -01:00
|
|
|
|
# Little trick to simplify things
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
official_images: ok init packagelists image-trees images
|
1999-11-11 16:10:37 -01:00
|
|
|
|
|
|
|
|
|
$(CODENAME)_status: ok init
|
Merge of changes from Steve's development branch to take us to
debian-cd version 3.0.0. Highlights:
* Support now added for multi-arch CDs/DVDs, including mixed
binary/source discs. Multi-arch discs should be bootable on those
multiple arches, modulo boot-sector clashes. Extra support added
in boot-i386 and boot-amd64 to make the 2 main arches happily
co-exist.
* Disc sizing is now much more intelligent - sizes are defined
depending on the disk type chosen at the start, and discs are now
filled exactly to those sizes while files are added rather than
the old up-front guessing method. Equally, the metadata on the
disc (Packages, Packages.gz, Sources, Sources.gz, md5sums.txt) is
generated as much as possible while this is happening to make the
sizing code incredibly accurate. Using this method of disc sizing
means that customising discs should be much easier/safer - either
add custom contents at the start and debian-cd will fill the
remainder of the disc, or afterwards roll back the packages on the
disc and add extras later.
* Source is now treated as (almost) just another arch, with most of
the special casing for source hidden internally. If asking for
source-only discs, they will simply be built using all the
available sources. If combined with other arches, the sources will
automatically be chosen to match the binary packages. Meeting GPL
requirements was never so easy!
* Removed lots of old cruft to clean up the codebase:
+ non-US support
+ woody support
+ lots of old support scripts that have been made redundant
+ significantly simpler Makefile, much easier to follow
+ old boot-$ARCH.calc files for estimating boot-file sizes are now
(obviously) obsolete and therefore gone
2006-12-07 22:09:01 -01:00
|
|
|
|
$(Q)for ARCH in $(ARCHES_NOSRC); do \
|
|
|
|
|
echo "Using the provided status file for $(CODENAME)-$$ARCH ..."; \
|
|
|
|
|
cp $(BASEDIR)/data/$(CODENAME)/status.$$ARCH $(ADIR)/$(CODENAME)-$$ARCH/status 2>/dev/null || $(MAKE) status || $(MAKE) correctstatus ; \
|
|
|
|
|
done
|