| 2 |
# Makefile for CRUX PPC, based on Makefile for CRUX |
# Makefile for CRUX PPC, based on Makefile for CRUX |
| 3 |
# Copyright (c) 2003-2004 Per Liden <per@fukt.bth.se> |
# Copyright (c) 2003-2004 Per Liden <per@fukt.bth.se> |
| 4 |
# Copyright (c) 2004 Giulivo Navigante <giulivo@linuxmail.org> |
# Copyright (c) 2004 Giulivo Navigante <giulivo@linuxmail.org> |
| 5 |
# Copyright (c) 2005-2008 The CRUX PPC Team - http://cruxppc.sunsite.dk |
# Copyright (c) 2005-2011 The CRUX PPC Team - http://cruxppc.org/ |
| 6 |
# |
# |
| 7 |
# $Id: 14/01/2008 05:02:13 acrux *0.10* $ |
# CRUX PPC |
| 8 |
# CRUX PPC 2.4 |
# 32bit Release |
| 9 |
# release codename is: _Mafarka _le _futuriste |
# release codename is: ottobre 2010 |
| 10 |
# |
# |
| 11 |
|
|
| 12 |
COLLECTIONS = core opt xorg |
CRUXPPCVERSION = 2.7 |
| 13 |
|
COLLECTIONS = core opt xorg |
| 14 |
KERNEL_MIRROR = ftp://ftp.eu.kernel.org |
KERNEL_MIRROR = ftp://ftp.eu.kernel.org |
| 15 |
KERNEL_VERSION = 2.6.27.5 |
KERNEL_VERSION = 2.6.36.3 |
| 16 |
KERNEL_PATCHES = cruxppc-logo.diff |
KERNEL_PATCHES = cruxppc-logo.diff linux-$(KERNEL_VERSION).patch |
| 17 |
|
# if you change PKG_EXT then remember to fix line 226 |
| 18 |
|
PKG_EXT = pkg.tar.xz |
| 19 |
|
PKGMK_CONF = $(PWD)/pkgmk.conf |
| 20 |
|
PORTS_DIR = $(PWD)/ports |
| 21 |
FAKE_ROOT_DIR = $(PWD)/tmp/fake_root |
FAKE_ROOT_DIR = $(PWD)/tmp/fake_root |
| 22 |
ISO_ROOT_DIR = $(PWD)/tmp/iso_root |
ISO_ROOT_DIR = $(PWD)/tmp/iso_root |
| 23 |
ISO_FILENAME = $(PWD)/crux-ppc-2.4.iso |
SRCISO_ROOT_DIR = $(PWD)/tmp/srciso_root |
| 24 |
ISO_PACKAGES = filesystem bash coreutils bzip2 e2fsprogs jfsutils xfsprogs \ |
ISO_FILENAME = $(PWD)/crux-ppc-$(CRUXPPCVERSION).iso |
| 25 |
reiserfsprogs patch findutils glibc grep gzip kbd module-init-tools \ |
SRCISO_FILENAME = $(PWD)/crux-ppc-$(CRUXPPCVERSION)-source.iso |
| 26 |
less yaboot gawk ncurses net-tools pkgutils procps readline sed shadow \ |
ISO_PACKAGES = filesystem bash coreutils bzip2 e2fsprogs jfsutils \ |
| 27 |
mktemp sysklogd sysvinit tar util-linux-ng vim which dialog nano mdadm \ |
xfsprogs reiserfsprogs patch findutils glibc grep gzip kbd \ |
| 28 |
parted mac-fdisk hfsutils nvsetenv yaboot glib mc \ |
module-init-tools less gawk ncurses net-tools pkgutils \ |
| 29 |
pciutils libusb usbutils sysfsutils udev iproute2 memtester zlib |
procps readline sed shadow sysklogd sysvinit tar \ |
| 30 |
|
util-linux-ng vim which dialog nano mdadm pciutils libusb libusb-compat \ |
| 31 |
PORTS_core = $(shell /bin/ls -I README ports/core) |
mac-fdisk parted hfsutils nvsetenv yaboot glib mc \ |
| 32 |
PORTS_opt = yaboot run-parts pbbuttonsd parted nvsetenv ncftp memtester mac-fdisk \ |
memtester mkimage parthenope bc \ |
| 33 |
rp-pppoe elinks eject b43-fwcutter nano dialog mdadm wireless-tools \ |
sysfsutils usbutils udev zlib openssl openssh \ |
| 34 |
libpng glib mc glitz libjpeg hicolor-icon-theme atk wpa_supplicant \ |
dhcpcd wget iproute2 libpcre iputils libgmp libdevmapper lvm2 \ |
| 35 |
freetype cairo libtiff fontconfig pango gtk libidl firefox \ |
attr acl libcap tcp_wrappers btrfs-progs |
| 36 |
cdrtools sudo imlib2 fluxbox fetchmail procmail \ |
|
| 37 |
libxml2 libxslt libdrm mutt xterm p5-xml-parser \ |
PORTS_core = $(shell /bin/ls -I README -I libstdc++-compat64 $(PORTS_DIR)/core) |
| 38 |
python sqlite3 nspr dbus nss dbus-glib xulrunner parthenope \ |
PORTS_opt = $(shell /bin/cat packages.opt32) |
| 39 |
intltool libungif |
PORTS_xorg = $(shell /bin/cat packages.xorg) |
|
PORTS_xorg = $(shell /bin/ls -I README ports/xorg) |
|
|
|
|
| 40 |
|
|
| 41 |
ifeq ($(FORCE),yes) |
ifeq ($(FORCE),yes) |
| 42 |
PKGMK_FORCE=-f |
PKGMK_FORCE=-f |
| 54 |
@echo " bootstrap bootstrap all collections" |
@echo " bootstrap bootstrap all collections" |
| 55 |
@echo " kernel download and build kernel" |
@echo " kernel download and build kernel" |
| 56 |
@echo " iso create iso image" |
@echo " iso create iso image" |
| 57 |
|
@echo " source-iso create source-iso image" |
| 58 |
@echo "Collections:" |
@echo "Collections:" |
| 59 |
@echo " $(COLLECTIONS)" |
@echo " $(COLLECTIONS)" |
| 60 |
|
|
|
pull: |
|
|
@for i in $(COLLECTIONS); do echo Updating $$i; (cd ports/$$i; git pull git://cruxppc.crux.it/srv/git/ports/$$i.git master); done |
|
| 61 |
|
|
| 62 |
check-root: |
check-root: |
| 63 |
@if [ "$$UID" != "0" ]; then \ |
@if [ "$$UID" != "0" ]; then \ |
| 66 |
fi |
fi |
| 67 |
|
|
| 68 |
check-log: |
check-log: |
| 69 |
@grep "^=======> ERROR:"; \ |
@grep "> ERROR:"; \ |
| 70 |
if [ "$$?" = "0" ]; then \ |
if [ "$$?" = "0" ]; then \ |
| 71 |
echo "(see log file for details)"; \ |
echo "(see log file for details)"; \ |
| 72 |
exit 1; \ |
exit 1; \ |
| 82 |
for FILE in $(KERNEL_PATCHES); do \ |
for FILE in $(KERNEL_PATCHES); do \ |
| 83 |
cd kernel/linux-$(KERNEL_VERSION) && patch -p1 < ../$$FILE && cd ../..; \ |
cd kernel/linux-$(KERNEL_VERSION) && patch -p1 < ../$$FILE && cd ../..; \ |
| 84 |
done |
done |
|
cp -a kernel/linux-$(KERNEL_VERSION) kernel/linux-$(KERNEL_VERSION)-64bit |
|
| 85 |
cp -a kernel/linux-$(KERNEL_VERSION) kernel/linux-$(KERNEL_VERSION)-Sam440ep |
cp -a kernel/linux-$(KERNEL_VERSION) kernel/linux-$(KERNEL_VERSION)-Sam440ep |
| 86 |
#patch -p1 -d kernel/linux-$(KERNEL_VERSION)-Sam440ep < kernel/linux-$(KERNEL_VERSION)-Sam440ep.patch |
patch -p1 -d kernel/linux-$(KERNEL_VERSION)-Sam440ep < kernel/linux-$(KERNEL_VERSION)-Sam440ep.patch |
| 87 |
cp -a kernel/linux-$(KERNEL_VERSION) kernel/linux-$(KERNEL_VERSION)-Efika |
cp -a kernel/linux-$(KERNEL_VERSION) kernel/linux-$(KERNEL_VERSION)-Efika |
| 88 |
|
patch -p1 -d kernel/linux-$(KERNEL_VERSION)-Efika < kernel/linux-$(KERNEL_VERSION)-Efika.patch |
| 89 |
cp -a kernel/linux-$(KERNEL_VERSION) kernel/linux-$(KERNEL_VERSION)-Pegasos2 |
cp -a kernel/linux-$(KERNEL_VERSION) kernel/linux-$(KERNEL_VERSION)-Pegasos2 |
| 90 |
patch -p1 -d kernel/linux-$(KERNEL_VERSION)-Pegasos2 < kernel/linux-$(KERNEL_VERSION)-Pegasos2.patch |
# patch -p1 -d kernel/linux-$(KERNEL_VERSION)-Pegasos2 < kernel/linux-$(KERNEL_VERSION)-Pegasos2.patch |
| 91 |
cp -a kernel/linux-$(KERNEL_VERSION) kernel/linux-$(KERNEL_VERSION)-Chrp32 |
## cp -a kernel/linux-$(KERNEL_VERSION) kernel/linux-$(KERNEL_VERSION)-Chrp32 |
|
#cp -a kernel/linux-$(KERNEL_VERSION) kernel/linux-$(KERNEL_VERSION)-Apple64 |
|
|
#cp -a kernel/linux-$(KERNEL_VERSION) kernel/linux-$(KERNEL_VERSION)-pSeries |
|
| 92 |
|
|
| 93 |
kernel/linux-$(KERNEL_VERSION)/vmlinux: kernel/linux-$(KERNEL_VERSION) |
kernel/linux-$(KERNEL_VERSION)/vmlinux: kernel/linux-$(KERNEL_VERSION) |
| 94 |
make -C kernel/linux-$(KERNEL_VERSION) mrproper |
make -C kernel/linux-$(KERNEL_VERSION) mrproper |
| 95 |
cp -f kernel/linux-$(KERNEL_VERSION).config kernel/linux-$(KERNEL_VERSION)/.config |
cp -f kernel/linux-$(KERNEL_VERSION).config kernel/linux-$(KERNEL_VERSION)/.config |
| 96 |
make -C kernel/linux-$(KERNEL_VERSION) oldconfig |
make -C kernel/linux-$(KERNEL_VERSION) oldconfig |
| 97 |
make -j16 -C kernel/linux-$(KERNEL_VERSION) all |
make -j4 -C kernel/linux-$(KERNEL_VERSION) all |
| 98 |
touch kernel/linux-$(KERNEL_VERSION)/arch/powerpc/boot/zImage.pmac |
touch kernel/linux-$(KERNEL_VERSION)/arch/powerpc/boot/zImage.pmac |
| 99 |
|
|
|
make -C kernel/linux-$(KERNEL_VERSION)-64bit mrproper |
|
|
cp -f kernel/linux-$(KERNEL_VERSION)-64bit.config kernel/linux-$(KERNEL_VERSION)-64bit/.config |
|
|
make -C kernel/linux-$(KERNEL_VERSION)-64bit oldconfig |
|
|
make -j16 -C kernel/linux-$(KERNEL_VERSION)-64bit all |
|
|
touch kernel/linux-$(KERNEL_VERSION)-64bit/vmlinux |
|
|
|
|
| 100 |
make -C kernel/linux-$(KERNEL_VERSION)-Sam440ep mrproper |
make -C kernel/linux-$(KERNEL_VERSION)-Sam440ep mrproper |
| 101 |
cp -f kernel/linux-$(KERNEL_VERSION)-Sam440ep.config kernel/linux-$(KERNEL_VERSION)-Sam440ep/.config |
cp -f kernel/linux-$(KERNEL_VERSION)-Sam440ep.config kernel/linux-$(KERNEL_VERSION)-Sam440ep/.config |
| 102 |
make -C kernel/linux-$(KERNEL_VERSION)-Sam440ep oldconfig |
make -C kernel/linux-$(KERNEL_VERSION)-Sam440ep oldconfig |
| 103 |
make -j16 -C kernel/linux-$(KERNEL_VERSION)-Sam440ep all |
make -j4 -C kernel/linux-$(KERNEL_VERSION)-Sam440ep all |
| 104 |
touch kernel/linux-$(KERNEL_VERSION)-Sam440ep/vmlinux |
touch kernel/linux-$(KERNEL_VERSION)-Sam440ep/arch/powerpc/boot/cuImage.sam440ep |
| 105 |
|
|
| 106 |
make -C kernel/linux-$(KERNEL_VERSION)-Efika mrproper |
make -C kernel/linux-$(KERNEL_VERSION)-Efika mrproper |
| 107 |
cp -f kernel/linux-$(KERNEL_VERSION)-Efika.config kernel/linux-$(KERNEL_VERSION)-Efika/.config |
cp -f kernel/linux-$(KERNEL_VERSION)-Efika.config kernel/linux-$(KERNEL_VERSION)-Efika/.config |
| 108 |
make -C kernel/linux-$(KERNEL_VERSION)-Efika oldconfig |
make -C kernel/linux-$(KERNEL_VERSION)-Efika oldconfig |
| 109 |
make -j16 -C kernel/linux-$(KERNEL_VERSION)-Efika all |
make -j4 -C kernel/linux-$(KERNEL_VERSION)-Efika all |
| 110 |
touch kernel/linux-$(KERNEL_VERSION)-Efika/arch/powerpc/boot/zImage.chrp |
touch kernel/linux-$(KERNEL_VERSION)-Efika/arch/powerpc/boot/zImage.chrp |
| 111 |
make -C kernel/linux-$(KERNEL_VERSION)-Pegasos2 mrproper |
make -C kernel/linux-$(KERNEL_VERSION)-Pegasos2 mrproper |
| 112 |
cp -f kernel/linux-$(KERNEL_VERSION)-Pegasos2.config kernel/linux-$(KERNEL_VERSION)-Pegasos2/.config |
cp -f kernel/linux-$(KERNEL_VERSION)-Pegasos2.config kernel/linux-$(KERNEL_VERSION)-Pegasos2/.config |
| 113 |
make -C kernel/linux-$(KERNEL_VERSION)-Pegasos2 oldconfig |
make -C kernel/linux-$(KERNEL_VERSION)-Pegasos2 oldconfig |
| 114 |
make -j16 -C kernel/linux-$(KERNEL_VERSION)-Pegasos2 all |
make -j4 -C kernel/linux-$(KERNEL_VERSION)-Pegasos2 all |
| 115 |
touch kernel/linux-$(KERNEL_VERSION)-Pegasos2/arch/powerpc/boot/zImage.chrp |
touch kernel/linux-$(KERNEL_VERSION)-Pegasos2/arch/powerpc/boot/zImage.chrp |
| 116 |
|
|
| 117 |
make -C kernel/linux-$(KERNEL_VERSION)-Chrp32 mrproper |
## make -C kernel/linux-$(KERNEL_VERSION)-Chrp32 mrproper |
| 118 |
cp -f kernel/linux-$(KERNEL_VERSION)-Chrp32.config kernel/linux-$(KERNEL_VERSION)-Chrp32/.config |
## cp -f kernel/linux-$(KERNEL_VERSION)-Chrp32.config kernel/linux-$(KERNEL_VERSION)-Chrp32/.config |
| 119 |
make -C kernel/linux-$(KERNEL_VERSION)-Chrp32 oldconfig |
## make -C kernel/linux-$(KERNEL_VERSION)-Chrp32 oldconfig |
| 120 |
make -j16 -C kernel/linux-$(KERNEL_VERSION)-Chrp32 all |
## make -j4 -C kernel/linux-$(KERNEL_VERSION)-Chrp32 all |
| 121 |
touch kernel/linux-$(KERNEL_VERSION)-Chrp32/vmlinux |
## touch kernel/linux-$(KERNEL_VERSION)-Chrp32/vmlinux |
| 122 |
|
|
| 123 |
kernel: kernel/linux-$(KERNEL_VERSION)/vmlinux |
kernel: kernel/linux-$(KERNEL_VERSION)/vmlinux |
| 124 |
|
|
| 125 |
kernel-clean: |
kernel-clean: |
| 126 |
if [ -e kernel/linux-$(KERNEL_VERSION) ]; then rm -rf kernel/linux-$(KERNEL_VERSION); fi |
if [ -e kernel/linux-$(KERNEL_VERSION) ]; then rm -rf kernel/linux-$(KERNEL_VERSION); fi |
|
if [ -e kernel/linux-$(KERNEL_VERSION)-64bit ]; then rm -rf kernel/linux-$(KERNEL_VERSION)-64bit; fi |
|
| 127 |
if [ -e kernel/linux-$(KERNEL_VERSION)-Sam440ep ]; then rm -rf kernel/linux-$(KERNEL_VERSION)-Sam440ep; fi |
if [ -e kernel/linux-$(KERNEL_VERSION)-Sam440ep ]; then rm -rf kernel/linux-$(KERNEL_VERSION)-Sam440ep; fi |
| 128 |
if [ -e kernel/linux-$(KERNEL_VERSION)-Efika ]; then rm -rf kernel/linux-$(KERNEL_VERSION)-Efika; fi |
if [ -e kernel/linux-$(KERNEL_VERSION)-Efika ]; then rm -rf kernel/linux-$(KERNEL_VERSION)-Efika; fi |
| 129 |
if [ -e kernel/linux-$(KERNEL_VERSION)-Pegasos2 ]; then rm -rf kernel/linux-$(KERNEL_VERSION)-Pegasos2; fi |
if [ -e kernel/linux-$(KERNEL_VERSION)-Pegasos2 ]; then rm -rf kernel/linux-$(KERNEL_VERSION)-Pegasos2; fi |
| 130 |
#if [ -e kernel/linux-$(KERNEL_VERSION)-Apple64 ]; then rm -rf kernel/linux-$(KERNEL_VERSION)-Apple64; fi |
## if [ -e kernel/linux-$(KERNEL_VERSION)-Chrp32 ]; then rm -rf kernel/linux-$(KERNEL_VERSION)-Chrp32; fi |
|
if [ -e kernel/linux-$(KERNEL_VERSION)-Chrp32 ]; then rm -rf kernel/linux-$(KERNEL_VERSION)-Chrp32; fi |
|
|
#if [ -e kernel/linux-$(KERNEL_VERSION)-pSeries ]; then rm -rf kernel/linux-$(KERNEL_VERSION)-pSeries; fi |
|
| 131 |
|
|
| 132 |
clean: kernel-clean |
clean: kernel-clean |
| 133 |
|
|
| 134 |
$(COLLECTIONS): check-root |
$(COLLECTIONS): check-root |
| 135 |
@for p in $(PORTS_$(@)); do \ |
@for p in $(PORTS_$(@)); do \ |
| 136 |
echo "p: $$p"; \ |
echo "p: $$p"; \ |
| 137 |
(cd ports/$@/$$p && if [ -e pre-install ]; then sh pre-install; fi; pkgmk -d $(PKGMK_FORCE)); \ |
(cd $(PORTS_DIR)/$@/$$p; pkgmk -d $(PKGMK_FORCE)); \ |
| 138 |
done |
done |
| 139 |
|
|
| 140 |
all: $(COLLECTIONS) |
all: $(COLLECTIONS) |
| 151 |
@echo "Installing packages" |
@echo "Installing packages" |
| 152 |
@mkdir -p $(FAKE_ROOT_DIR)/var/lib/pkg |
@mkdir -p $(FAKE_ROOT_DIR)/var/lib/pkg |
| 153 |
@touch $(FAKE_ROOT_DIR)/var/lib/pkg/db |
@touch $(FAKE_ROOT_DIR)/var/lib/pkg/db |
| 154 |
@for COLL in $(COLLECTIONS); do \ |
# @for COLL in $(COLLECTIONS); do \ |
| 155 |
for PACKAGE in ports/$$COLL/*/*.pkg.tar.gz; do \ |
# for PACKAGE in $(PORTS_DIR)/$$COLL/*/*.$(PKG_EXT); do \ |
| 156 |
echo " $$PACKAGE"; \ |
# echo " $$PACKAGE"; \ |
| 157 |
pkgadd -r $(FAKE_ROOT_DIR) $$PACKAGE; \ |
# pkgadd -r $(FAKE_ROOT_DIR) $$PACKAGE; \ |
| 158 |
done; \ |
# done; \ |
| 159 |
|
# done |
| 160 |
|
@for p in $(PORTS_core); do \ |
| 161 |
|
echo " $$p"; \ |
| 162 |
|
pkgadd -r $(FAKE_ROOT_DIR) $(PORTS_DIR)/core/$$p/$$p*.$(PKG_EXT); \ |
| 163 |
|
done |
| 164 |
|
@for p in $(PORTS_opt); do \ |
| 165 |
|
echo " $$p"; \ |
| 166 |
|
pkgadd -r $(FAKE_ROOT_DIR) $(PORTS_DIR)/opt/$$p/$$p*.$(PKG_EXT); \ |
| 167 |
|
done |
| 168 |
|
@for p in $(PORTS_xorg); do \ |
| 169 |
|
echo " $$p"; \ |
| 170 |
|
pkgadd -r $(FAKE_ROOT_DIR) $(PORTS_DIR)/xorg/$$p/$$p*.$(PKG_EXT); \ |
| 171 |
done |
done |
| 172 |
@echo "Mounting /dev on $(FAKE_ROOT_DIR)/dev" |
@echo "Mounting /dev on $(FAKE_ROOT_DIR)/dev" |
| 173 |
@mount --bind /dev $(FAKE_ROOT_DIR)/dev |
@mount --bind /dev $(FAKE_ROOT_DIR)/dev |
| 176 |
@echo "Mouting $$PWD on $(FAKE_ROOT_DIR)/src" |
@echo "Mouting $$PWD on $(FAKE_ROOT_DIR)/src" |
| 177 |
@mkdir $(FAKE_ROOT_DIR)/src |
@mkdir $(FAKE_ROOT_DIR)/src |
| 178 |
@mount --bind $$PWD $(FAKE_ROOT_DIR)/src |
@mount --bind $$PWD $(FAKE_ROOT_DIR)/src |
| 179 |
@cp /etc/pkgmk.conf $(FAKE_ROOT_DIR)/etc |
@cp -L $(PKGMK_CONF) $(FAKE_ROOT_DIR)/etc |
| 180 |
@echo "Entering chroot enrivonment" |
@echo "Entering chroot enrivonment" |
| 181 |
@chroot $(FAKE_ROOT_DIR) /bin/bash --login -c "cd /src && $(MAKE) FORCE=yes all" |
@chroot $(FAKE_ROOT_DIR) /bin/bash --login -c "cd /src && $(MAKE) FORCE=yes all" |
| 182 |
@echo "Exiting chroot enrivonment" |
@echo "Exiting chroot enrivonment" |
| 193 |
bootstrap: check-root |
bootstrap: check-root |
| 194 |
@echo "Bootstrap started (`date +'%F %T'`)" |
@echo "Bootstrap started (`date +'%F %T'`)" |
| 195 |
@echo "- Stage 0 (`date +'%F %T'`)" |
@echo "- Stage 0 (`date +'%F %T'`)" |
| 196 |
@find ports/ -name ".footprint" -exec rm {} \; |
@for i in $(PORTS_core) $(PORTS_opt) $(PORTS_xorg); do\ |
| 197 |
|
rm -f $(PORTS_DIR)/*/$$i/.footprint.$(HOSTTYPE);\ |
| 198 |
|
done |
| 199 |
@$(MAKE) all &> log.stage0 |
@$(MAKE) all &> log.stage0 |
| 200 |
@$(MAKE) check-log < log.stage0 |
@$(MAKE) check-log < log.stage0 |
| 201 |
@echo "- Stage 1 (`date +'%F %T'`)" |
@echo "- Stage 1 (`date +'%F %T'`)" |
| 202 |
@find ports/ -name ".footprint" -exec rm {} \; |
@for i in $(PORTS_core) $(PORTS_opt) $(PORTS_xorg); do\ |
| 203 |
|
rm -f $(PORTS_DIR)/*/$$i/.footprint.$(HOSTTYPE);\ |
| 204 |
|
done |
| 205 |
@$(MAKE) all-chroot &> log.stage1 |
@$(MAKE) all-chroot &> log.stage1 |
| 206 |
@$(MAKE) check-log < log.stage1 |
@$(MAKE) check-log < log.stage1 |
| 207 |
@echo "- Stage 2 (`date +'%F %T'`)" |
@echo "- Stage 2 (`date +'%F %T'`)" |
| 218 |
@(cd doc; ../scripts/get_wiki_release_notes) |
@(cd doc; ../scripts/get_wiki_release_notes) |
| 219 |
|
|
| 220 |
iso: check-root handbook releasenotes dependencies-check |
iso: check-root handbook releasenotes dependencies-check |
|
@#kernel |
|
| 221 |
@echo "Creating ISO image ($(ISO_FILENAME))" |
@echo "Creating ISO image ($(ISO_FILENAME))" |
| 222 |
@if [ -e $(ISO_ROOT_DIR) ]; then rm -rf $(ISO_ROOT_DIR); fi |
@if [ -e $(ISO_ROOT_DIR) ]; then rm -rf $(ISO_ROOT_DIR); fi |
| 223 |
@mkdir -p $(ISO_ROOT_DIR) |
@mkdir -p $(ISO_ROOT_DIR) |
| 224 |
@echo "- Installing packages" |
@echo "- Installing packages" |
| 225 |
@for PACKAGE in $(ISO_PACKAGES); do \ |
@for PACKAGE in $(ISO_PACKAGES); do \ |
| 226 |
tar -C $(ISO_ROOT_DIR) -xzpf ports/*/$$PACKAGE/$$PACKAGE\#*.pkg.tar.gz; \ |
tar -C $(ISO_ROOT_DIR) -xJpf $(PORTS_DIR)/*/$$PACKAGE/$$PACKAGE\#*.$(PKG_EXT); \ |
| 227 |
done |
done |
| 228 |
@echo "- Copying ISO specific files" |
@echo "- Copying ISO specific files" |
| 229 |
@mkdir -p $(ISO_ROOT_DIR)/etc $(ISO_ROOT_DIR)/ppc/{chrp,efika,mac,pegasos2,ppc32,ppc64,sam440ep} |
@mkdir -p $(ISO_ROOT_DIR)/etc $(ISO_ROOT_DIR)/ppc/{chrp,efika,mac,pegasos2,ppc32,sam440ep} |
| 230 |
@cp iso/ppc/bootinfo.txt $(ISO_ROOT_DIR)/ppc |
@cp iso/ppc/bootinfo.txt $(ISO_ROOT_DIR)/ppc |
| 231 |
@cp iso/ppc/chrp/yaboot $(ISO_ROOT_DIR)/ppc/chrp |
@cp iso/ppc/chrp/{yaboot.chrp,yaboot.msg} $(ISO_ROOT_DIR)/ppc/chrp |
| 232 |
@cp iso/ppc/mac/{ofboot.b,yaboot} $(ISO_ROOT_DIR)/ppc/mac |
@cp iso/ppc/mac/{ofboot.b,yaboot} $(ISO_ROOT_DIR)/ppc/mac |
| 233 |
@cp iso/ppc/ppc32/yaboot.conf $(ISO_ROOT_DIR)/ppc/ppc32 |
@cp iso/ppc/ppc32/{yaboot.conf,yaboot.msg} $(ISO_ROOT_DIR)/ppc/ppc32 |
|
@cp iso/ppc/ppc64/yaboot.conf $(ISO_ROOT_DIR)/ppc/ppc64 |
|
| 234 |
@cp iso/ppc/sam440ep/{Parthenope,menu.lst} $(ISO_ROOT_DIR)/ppc/sam440ep |
@cp iso/ppc/sam440ep/{Parthenope,menu.lst} $(ISO_ROOT_DIR)/ppc/sam440ep |
| 235 |
@cp iso/ppc/sam440ep/menu.lst $(ISO_ROOT_DIR) |
@cp iso/ppc/sam440ep/menu.lst $(ISO_ROOT_DIR) |
| 236 |
@cp iso/etc/{fstab,hosts,inittab,issue,motd,ld.so.conf,protocols,rc,rc.shutdown,rc.single,services,yaboot.conf} $(ISO_ROOT_DIR)/etc |
@cp iso/etc/{fstab,hosts,inittab,issue,motd,ld.so.conf,protocols,rc,rc.shutdown,rc.single,services,shadow,yaboot.conf} $(ISO_ROOT_DIR)/etc |
| 237 |
@echo "- Installing kernel" |
@echo "- Installing kernel" |
| 238 |
@cp kernel/linux-$(KERNEL_VERSION)/System.map $(ISO_ROOT_DIR)/ppc/ppc32 |
@cp kernel/linux-$(KERNEL_VERSION)/System.map $(ISO_ROOT_DIR)/ppc/ppc32 |
| 239 |
@cp kernel/linux-$(KERNEL_VERSION)/vmlinux $(ISO_ROOT_DIR)/ppc/ppc32 |
@cp kernel/linux-$(KERNEL_VERSION)/arch/powerpc/boot/zImage.pmac $(ISO_ROOT_DIR)/ppc/ppc32 |
|
@cp kernel/linux-$(KERNEL_VERSION)-64bit/System.map $(ISO_ROOT_DIR)/ppc/ppc64 |
|
|
@cp kernel/linux-$(KERNEL_VERSION)-64bit/vmlinux $(ISO_ROOT_DIR)/ppc/ppc64 |
|
|
@cp kernel/linux-$(KERNEL_VERSION)-64bit/arch/powerpc/boot/zImage $(ISO_ROOT_DIR)/ppc/ppc64 |
|
| 240 |
@cp kernel/linux-$(KERNEL_VERSION)-Sam440ep/System.map $(ISO_ROOT_DIR)/ppc/sam440ep |
@cp kernel/linux-$(KERNEL_VERSION)-Sam440ep/System.map $(ISO_ROOT_DIR)/ppc/sam440ep |
| 241 |
@cp kernel/linux-$(KERNEL_VERSION)-Sam440ep/arch/powerpc/boot/cuImage.sam440ep $(ISO_ROOT_DIR)/ppc/sam440ep/uImage |
@cp kernel/linux-$(KERNEL_VERSION)-Sam440ep/arch/powerpc/boot/cuImage.sam440ep $(ISO_ROOT_DIR)/ppc/sam440ep/uImage |
| 242 |
@cp kernel/linux-$(KERNEL_VERSION)-Efika/System.map $(ISO_ROOT_DIR)/ppc/efika |
@cp kernel/linux-$(KERNEL_VERSION)-Efika/System.map $(ISO_ROOT_DIR)/ppc/efika |
| 243 |
@cp kernel/linux-$(KERNEL_VERSION)-Efika/arch/powerpc/boot/zImage.chrp $(ISO_ROOT_DIR)/ppc/efika |
@cp kernel/linux-$(KERNEL_VERSION)-Efika/arch/powerpc/boot/zImage.chrp $(ISO_ROOT_DIR)/ppc/efika |
| 244 |
@cp kernel/linux-$(KERNEL_VERSION)-Pegasos2/System.map $(ISO_ROOT_DIR)/ppc/pegasos2 |
@cp kernel/linux-$(KERNEL_VERSION)-Pegasos2/System.map $(ISO_ROOT_DIR)/ppc/pegasos2 |
| 245 |
@cp kernel/linux-$(KERNEL_VERSION)-Pegasos2/arch/powerpc/boot/zImage.chrp $(ISO_ROOT_DIR)/ppc/pegasos2 |
@cp kernel/linux-$(KERNEL_VERSION)-Pegasos2/arch/powerpc/boot/zImage.chrp $(ISO_ROOT_DIR)/ppc/pegasos2 |
| 246 |
@cp kernel/linux-$(KERNEL_VERSION)-Chrp32/System.map $(ISO_ROOT_DIR)/ppc/chrp/System.map |
## @cp kernel/linux-$(KERNEL_VERSION)-Chrp32/System.map $(ISO_ROOT_DIR)/ppc/chrp |
| 247 |
@cp kernel/linux-$(KERNEL_VERSION)-Chrp32/vmlinux $(ISO_ROOT_DIR)/ppc/chrp |
## @cp kernel/linux-$(KERNEL_VERSION)-Chrp32/vmlinux $(ISO_ROOT_DIR)/ppc/chrp |
|
@#cp kernel/linux-$(KERNEL_VERSION)-Apple64/System.map $(ISO_ROOT_DIR)/ppc/ppc64 |
|
|
@#cp kernel/linux-$(KERNEL_VERSION)-Apple64/vmlinux $(ISO_ROOT_DIR)/ppc/ppc64 |
|
|
@#@cp kernel/linux-$(KERNEL_VERSION)-pSeries/System.map $(ISO_ROOT_DIR)/boot/System.map-pSeries |
|
|
@#@cp kernel/linux-$(KERNEL_VERSION)-pSeries/vmlinux $(ISO_ROOT_DIR)/boot/vmlinux-pSeries |
|
| 248 |
@echo "- Installing kernel modules (see modules_install.log)" |
@echo "- Installing kernel modules (see modules_install.log)" |
| 249 |
@make -C kernel/linux-$(KERNEL_VERSION) INSTALL_MOD_PATH=$(ISO_ROOT_DIR) modules_install &> modules_install.log |
@make -C kernel/linux-$(KERNEL_VERSION) INSTALL_MOD_PATH=$(ISO_ROOT_DIR) modules_install &> modules_install.log |
|
@make -C kernel/linux-$(KERNEL_VERSION)-64bit INSTALL_MOD_PATH=$(ISO_ROOT_DIR) modules_install &> modules_install.log-64bit |
|
| 250 |
@make -C kernel/linux-$(KERNEL_VERSION)-Sam440ep INSTALL_MOD_PATH=$(ISO_ROOT_DIR) modules_install &> modules_install.log-Sam440ep |
@make -C kernel/linux-$(KERNEL_VERSION)-Sam440ep INSTALL_MOD_PATH=$(ISO_ROOT_DIR) modules_install &> modules_install.log-Sam440ep |
| 251 |
@make -C kernel/linux-$(KERNEL_VERSION)-Efika INSTALL_MOD_PATH=$(ISO_ROOT_DIR) modules_install &> modules_install.log-Efika |
@make -C kernel/linux-$(KERNEL_VERSION)-Efika INSTALL_MOD_PATH=$(ISO_ROOT_DIR) modules_install &> modules_install.log-Efika |
| 252 |
@make -C kernel/linux-$(KERNEL_VERSION)-Pegasos2 INSTALL_MOD_PATH=$(ISO_ROOT_DIR) modules_install &> modules_install.log-Pegasos2 |
@make -C kernel/linux-$(KERNEL_VERSION)-Pegasos2 INSTALL_MOD_PATH=$(ISO_ROOT_DIR) modules_install &> modules_install.log-Pegasos2 |
| 253 |
@make -C kernel/linux-$(KERNEL_VERSION)-Chrp32 INSTALL_MOD_PATH=$(ISO_ROOT_DIR) modules_install &> modules_install.log-Chrp32 |
## @make -C kernel/linux-$(KERNEL_VERSION)-Chrp32 INSTALL_MOD_PATH=$(ISO_ROOT_DIR) modules_install &> modules_install.log-Chrp32 |
|
@#make -C kernel/linux-$(KERNEL_VERSION)-Apple64 INSTALL_MOD_PATH=$(ISO_ROOT_DIR) modules_install &> modules_install.log-Apple64 |
|
|
@#@make -C kernel/linux-$(KERNEL_VERSION)-pSeries INSTALL_MOD_PATH=$(ISO_ROOT_DIR) modules_install &> modules_install.log-pSeries |
|
| 254 |
@echo "- Deleting superfluous files" |
@echo "- Deleting superfluous files" |
| 255 |
@cd $(ISO_ROOT_DIR) && rm -rf var opt home |
@cd $(ISO_ROOT_DIR) && rm -rf var opt home |
| 256 |
@cd $(ISO_ROOT_DIR)/usr && rm -rf man include lib/*.a lib/*.o lib/gconv lib/locale src |
@cd $(ISO_ROOT_DIR)/usr && rm -rf man include lib/*.a lib/*.o lib/gconv lib/locale src |
| 263 |
@cd $(ISO_ROOT_DIR)/lib/modules/$(KERNEL_VERSION) && rm -f build |
@cd $(ISO_ROOT_DIR)/lib/modules/$(KERNEL_VERSION) && rm -f build |
| 264 |
@echo "- Creating symlinks" |
@echo "- Creating symlinks" |
| 265 |
@ln -sf /tmp/var $(ISO_ROOT_DIR)/var |
@ln -sf /tmp/var $(ISO_ROOT_DIR)/var |
| 266 |
@ln -sf /proc/mounts $(ISO_ROOT_DIR)/etc/mtab |
@ln -sf /proc/mounts $(ISO_ROOT_DIR)/etc/mtab |
| 267 |
@echo "- Updating library links and cache" |
@echo "- Updating library links and cache" |
| 268 |
@ldconfig -r $(ISO_ROOT_DIR) |
@ldconfig -r $(ISO_ROOT_DIR) |
| 269 |
@echo "- Copying CRUX PPC packages" |
@echo "- Copying CRUX PPC packages" |
| 272 |
@cp doc/releasenotes.txt $(ISO_ROOT_DIR)/crux |
@cp doc/releasenotes.txt $(ISO_ROOT_DIR)/crux |
| 273 |
@cp iso/setup.dependencies $(ISO_ROOT_DIR)/crux |
@cp iso/setup.dependencies $(ISO_ROOT_DIR)/crux |
| 274 |
@cp doc/gpl.txt $(ISO_ROOT_DIR)/crux |
@cp doc/gpl.txt $(ISO_ROOT_DIR)/crux |
| 275 |
@cp iso/bin/{setup,setup-helper,setup-chroot,serial_console} $(ISO_ROOT_DIR)/usr/bin |
@cp iso/bin/{setup,setup-helper,setup-chroot,serial_console,ofpathname,new-ofpath} $(ISO_ROOT_DIR)/usr/bin |
| 276 |
@mkdir -p $(ISO_ROOT_DIR)/crux/kernel |
@mkdir -p $(ISO_ROOT_DIR)/crux/kernel |
| 277 |
@cp kernel/linux-$(KERNEL_VERSION).tar.bz2 $(ISO_ROOT_DIR)/crux/kernel |
@cp kernel/linux-$(KERNEL_VERSION).tar.bz2 $(ISO_ROOT_DIR)/crux/kernel |
| 278 |
@cp kernel/linux-$(KERNEL_VERSION).config $(ISO_ROOT_DIR)/crux/kernel |
@cp kernel/linux-$(KERNEL_VERSION).config $(ISO_ROOT_DIR)/crux/kernel |
|
@cp kernel/linux-$(KERNEL_VERSION)-64bit.config $(ISO_ROOT_DIR)/crux/kernel |
|
| 279 |
@cp kernel/linux-$(KERNEL_VERSION)-Sam440ep.config $(ISO_ROOT_DIR)/crux/kernel |
@cp kernel/linux-$(KERNEL_VERSION)-Sam440ep.config $(ISO_ROOT_DIR)/crux/kernel |
| 280 |
|
@cp kernel/linux-$(KERNEL_VERSION)-Sam440ep.patch $(ISO_ROOT_DIR)/crux/kernel |
| 281 |
@cp kernel/linux-$(KERNEL_VERSION)-Efika.config $(ISO_ROOT_DIR)/crux/kernel |
@cp kernel/linux-$(KERNEL_VERSION)-Efika.config $(ISO_ROOT_DIR)/crux/kernel |
| 282 |
|
@cp kernel/linux-$(KERNEL_VERSION)-Efika.patch $(ISO_ROOT_DIR)/crux/kernel |
| 283 |
@cp kernel/linux-$(KERNEL_VERSION)-Pegasos2.config $(ISO_ROOT_DIR)/crux/kernel |
@cp kernel/linux-$(KERNEL_VERSION)-Pegasos2.config $(ISO_ROOT_DIR)/crux/kernel |
| 284 |
@cp kernel/linux-$(KERNEL_VERSION)-Pegasos2.patch $(ISO_ROOT_DIR)/crux/kernel |
# @cp kernel/linux-$(KERNEL_VERSION)-Pegasos2.patch $(ISO_ROOT_DIR)/crux/kernel |
| 285 |
@cp kernel/linux-$(KERNEL_VERSION)-Chrp32.config $(ISO_ROOT_DIR)/crux/kernel |
## @cp kernel/linux-$(KERNEL_VERSION)-Chrp32.config $(ISO_ROOT_DIR)/crux/kernel |
|
@#cp kernel/linux-$(KERNEL_VERSION)-Apple64.config $(ISO_ROOT_DIR)/crux/kernel |
|
|
@#@cp kernel/linux-$(KERNEL_VERSION)-pSeries.config $(ISO_ROOT_DIR)/crux/kernel |
|
| 286 |
@for FILE in $(KERNEL_PATCHES); do \ |
@for FILE in $(KERNEL_PATCHES); do \ |
| 287 |
cp kernel/$$FILE $(ISO_ROOT_DIR)/crux/kernel; \ |
cp kernel/$$FILE $(ISO_ROOT_DIR)/crux/kernel; \ |
| 288 |
done |
done |
| 289 |
@for COLL in $(COLLECTIONS); do \ |
@mkdir -p $(ISO_ROOT_DIR)/crux/core |
| 290 |
mkdir -p $(ISO_ROOT_DIR)/crux/$$COLL; \ |
@for PKG in $(PORTS_core); do \ |
| 291 |
cp ports/$$COLL/*/*.pkg.tar.gz $(ISO_ROOT_DIR)/crux/$$COLL; \ |
cp $(PORTS_DIR)/core/$$PKG/*.$(PKG_EXT) $(ISO_ROOT_DIR)/crux/core; \ |
| 292 |
(cd ports/$$COLL; \ |
done |
| 293 |
for i in `find -name "pre-install"`; do \ |
@mkdir -p $(ISO_ROOT_DIR)/crux/opt |
| 294 |
cp $$i $(ISO_ROOT_DIR)/crux/$$COLL/`echo $$i | sed -e 's|\.\/||' -e 's|\/|\.|g'`; \ |
@for PKG in $(PORTS_opt); do \ |
| 295 |
done; \ |
cp $(PORTS_DIR)/opt/$$PKG/*.$(PKG_EXT) $(ISO_ROOT_DIR)/crux/opt; \ |
| 296 |
for i in `find -name "post-install"`; do \ |
done |
| 297 |
cp $$i $(ISO_ROOT_DIR)/crux/$$COLL/`echo $$i | sed -e 's|\.\/||' -e 's|\/|\.|g'`; \ |
@mkdir -p $(ISO_ROOT_DIR)/crux/xorg |
| 298 |
done; \ |
@for PKG in $(PORTS_xorg); do \ |
| 299 |
); \ |
cp $(PORTS_DIR)/xorg/$$PKG/*.$(PKG_EXT) $(ISO_ROOT_DIR)/crux/xorg; \ |
| 300 |
done |
done |
| 301 |
@echo "- Starting mkisofs" |
@echo "- Starting genisoimage" |
| 302 |
@if [ -f $(ISO_FILENAME) ]; then rm -f $(ISO_FILENAME); fi |
@if [ -f $(ISO_FILENAME) ]; then rm -f $(ISO_FILENAME); fi |
| 303 |
@mkisofs -r -V CRUX-PPC -U -chrp-boot -hfs -part -probe -no-desktop \ |
@genisoimage -r -V CRUX-PPC -iso-level 4 -chrp-boot -hfs -part -probe -no-desktop \ |
| 304 |
-hfs-bless $(ISO_ROOT_DIR)/ppc/mac -map iso/boot/map.hfs \ |
-hfs-bless $(ISO_ROOT_DIR)/ppc/mac -map iso/boot/map.hfs \ |
| 305 |
-b ppc/sam440ep/Parthenope -no-emul-boot \ |
-b ppc/sam440ep/Parthenope -no-emul-boot \ |
| 306 |
-hide-rr-moved -o $(ISO_FILENAME) $(ISO_ROOT_DIR) |
-hide-rr-moved -o $(ISO_FILENAME) $(ISO_ROOT_DIR) |
| 312 |
@if [ -e iso/setup.dependencies ]; then rm iso/setup.dependencies; fi |
@if [ -e iso/setup.dependencies ]; then rm iso/setup.dependencies; fi |
| 313 |
@make iso/setup.dependencies |
@make iso/setup.dependencies |
| 314 |
@for i in `cat iso/setup.dependencies | sed -e 's|[^:]*:\ ||' -e 's|\ |\n|g' | sort | uniq`; do \ |
@for i in `cat iso/setup.dependencies | sed -e 's|[^:]*:\ ||' -e 's|\ |\n|g' | sort | uniq`; do \ |
| 315 |
prt-get search $$i > /dev/null ; \ |
ilenia -s $$i > /dev/null ; \ |
| 316 |
if [ "$$?" != "0" ]; then \ |
if [ "$$?" != "0" ]; then \ |
| 317 |
echo "Missing dependence $$i" ;\ |
echo "Missing dependence $$i" ;\ |
| 318 |
exit 1 ;\ |
exit 1 ;\ |
| 319 |
fi ; \ |
fi ; \ |
| 320 |
done |
done |
| 322 |
iso/setup.dependencies: |
iso/setup.dependencies: |
| 323 |
@for PORT in $(foreach c,$(COLLECTIONS),$(PORTS_$(c))); do \ |
@for PORT in $(foreach c,$(COLLECTIONS),$(PORTS_$(c))); do \ |
| 324 |
echo -n $$PORT": "; \ |
echo -n $$PORT": "; \ |
| 325 |
prt-get quickdep $$PORT; \ |
ilenia -D --all $$PORT | awk '{ print $$1 }' | xargs; \ |
| 326 |
done > $@ |
done > $@ |
| 327 |
|
|
| 328 |
|
source-iso: |
| 329 |
|
@echo "Creating ISO image with sources ($(SRCISO_FILENAME))" |
| 330 |
|
@rm -rf $(SRCISO_ROOT_DIR) |
| 331 |
|
@mkdir -p $(SRCISO_ROOT_DIR)/{ports,kernel,misc} |
| 332 |
|
@echo "- Copying ports" |
| 333 |
|
@for PORT in $(PORTS_core) $(PORTS_opt) $(PORTS_xorg); do \ |
| 334 |
|
find ports -mindepth 2 -maxdepth 2 -name $$PORT -type d -exec cp -r {} $(SRCISO_ROOT_DIR)/ports \; ; \ |
| 335 |
|
rm -f $(SRCISO_ROOT_DIR)/ports/$$PORT/{*~,build.log,.footprint*,.md5sum,*.$(PKG_EXT)}; \ |
| 336 |
|
done |
| 337 |
|
@echo "- Copying kernel and patches" |
| 338 |
|
@cp kernel/linux-$(KERNEL_VERSION).tar.bz2 $(SRCISO_ROOT_DIR)/kernel |
| 339 |
|
@for PATCH in $(KERNEL_PATCHES); do cp kernel/$$PATCH $(SRCISO_ROOT_DIR)/kernel; done |
| 340 |
|
@echo "- Creating README" |
| 341 |
|
@echo "- Starting genisoimage" |
| 342 |
|
@genisoimage -R -l -J -V CRUX-PPC-$(CRUXVERSION) -A "CRUX PPC" -o $(SRCISO_FILENAME) $(SRCISO_ROOT_DIR) |
| 343 |
|
@md5sum `basename $(SRCISO_FILENAME)` > `basename $(SRCISO_FILENAME) .iso`.md5 |
| 344 |
|
|
| 345 |
# End of file |
# End of file |