.PATH: .
+MKCDREC=@BUILD_DIR@/mkcdrec
+CWD=@BUILD_DIR@/linux/cdrom
-first_rule: all
+first_rule: mkcdrec
dummy:
#-------------------------------------------------------------------------
./makeinitrd
kernel:
- ./makekernel
+ ./makekernel @KERNEL@
binaries:
./makebinaries
copy-bacula:
cp -a bacula/ cdimage/
+pre-mkcdrec:
+ ./mkcdrec_rd
+ @echo "Patching mkcdrec Config.sh for Bacula"
+ @mkdir -p tmp
+ @rm -f tmp/1 tmp/2 tmp/1
+ @cp ${MKCDREC}/Config.sh tmp/2
+ @echo "s%^BACULA_DIR.*$$%BACULA_DIR=${CWD}/bacula%g" >tmp/1
+ @sed -f tmp/1 tmp/2 >tmp/3
+ @echo "s%^BACULA_RESTORE.*$$%BACULA_RESTORE=\"y\"%g" >tmp/1
+ @sed -f tmp/1 tmp/3 >tmp/4
+ @echo "s%^DVD_Drive.*$$%DVD_Drive=0%g" >tmp/1
+ @sed -f tmp/1 tmp/4 >tmp/5
+ @echo "s%^USECOLOR.*$$%USECOLOR=n%g" >tmp/1
+ @sed -f tmp/1 tmp/5 >${MKCDREC}/Config.sh
+ @rm -rf tmp
+ @cp -f @BACULA_BIN@/bacula-fd bacula/bin
+ @cp -f @BACULA_SCRIPTS@/bacula-fd.conf bacula/bin
+
+main-mkcdrec: dummy
+ @echo "Doing make in mkcdrec directory"
+ (cd ${MKCDREC}; make rescue)
+
+post-mkcdrec:
+ @echo "Cleaning up"
+ cp /tmp/CDrec.iso bootcd.iso
+ chmod 644 bootcd.iso
+ rm -f /tmp/CDrec.iso
+ rm -f custom-rd.img.bz2
+
+
+# This will build the old Bacula rescue
all: kernel binaries bacula initrd iso
+mkcdrec: kernel binaries bacula pre-mkcdrec main-mkcdrec post-mkcdrec
+
copy-static-fd: kernel binaries static-bacula initrd iso
# This needs to be customized for your burner.
+# Use either dev=ATA:x,y,z (as reported by cdrecord -scanbus)
+# or dev=/dev/<device> (e.g. hdc)
burn:
- cdrecord dev=ATA:@CDSTL@ gracetime=2 fs=4096k driveropts=burnfree -v \
+ cdrecord dev=@DEV@ gracetime=2 fs=4096k driveropts=burnfree -v \
-useinfo speed=48 -dao -eject -pad -data "bootcd.iso"
# Blank the CDROM assuming it is +rw
blank:
- cdrecord dev=ATA:@CDSTL@ gracetime=2 -v blank=fast -useinfo speed=48
+ cdrecord dev=@DEV@ gracetime=2 -v blank=fast -useinfo speed=48
scan:
cdrecord -scanbus
#
# Clean out files that are rebuilt
#
- @rm -f bootcd.iso
+ @rm -f bootcd.iso custom-rd.img.bz2
@rm -f 1 2 3 4
@rm -rf mnt
@rm -rf roottree/bin roottree/proc roottree/boot
@rm -rf roottree/lib roottree/sbin roottree/dev
@rm -rf roottree/dev roottree/sys roottree/sysroot
- @rm -rf roottree/sys
+ @rm -rf roottree/sys roottree/usr
@rm -rf roottree/initrd roottree/cdrom roottree/mnt
@rm -rf roottree/tmp roottree/var
@rm -f roottree/etc/services roottree/etc/exports
@rm -f cdtree/boot/isolinux/vmlinuz
@rm -f cdtree/boot/isolinux/map
@(cd bacula; make distclean)
+ @(cd ${MKCDREC}; make clean)
+ @(cd ${MKCDREC}/busybox; make distclean)