This repository has been archived on 2024-03-03. You can view files and clone it, but cannot push or open issues or pull requests.
adlin/Makefile

58 lines
2.5 KiB
Makefile
Raw Normal View History

2019-02-27 01:41:13 +00:00
tuto1: login-app/login-app token-validator/token-validator login-initrd.img server.iso
2018-02-10 23:21:53 +00:00
2018-03-05 16:39:56 +00:00
fonts: fonts/Inconsolata-16b.psf fonts/Inconsolata-16r.psf fonts/Inconsolata-32b.psf fonts/Inconsolata-32r.psf
fonts/Inconsolata-16b.psf:
wget https://github.com/xeechou/Inconsolata-psf/raw/master/Inconsolata-16b.psf
fonts/Inconsolata-16r.psf:
wget https://github.com/xeechou/Inconsolata-psf/raw/master/Inconsolata-16r.psf
fonts/Inconsolata-32b.psf:
wget https://github.com/xeechou/Inconsolata-psf/raw/master/Inconsolata-32b.psf
fonts/Inconsolata-32r.psf:
wget https://github.com/xeechou/Inconsolata-psf/raw/master/Inconsolata-32r.psf
token-validator/token-validator: token-validator/*.go
go generate ./token-validator
GOOS=linux GOARM=5 GOARCH=arm go build -tags netgo -ldflags '-w -extldflags "-static"' -o $@ ./token-validator
2019-02-27 01:41:13 +00:00
challenge-initrd.img: challenge.yml subject/adlin.6.gz subject/adlin-TP1-topologie.png fonts/Inconsolata-16b.psf.gz fonts/Inconsolata-16r.psf.gz fonts/Inconsolata-32b.psf.gz fonts/Inconsolata-32r.psf.gz pkg/challenge/adlin pkg/challenge/issue pkg/challenge/init
linuxkit build $<
server.iso: server.yml students.csv ssl/fullchain.pem ssl/privkey.pem challenge-initrd.img challenge-kernel login-initrd.img
linuxkit build -format iso-bios $<
2018-03-05 17:01:34 +00:00
tuto2-kernel: tuto2.yml
linuxkit build $<
tuto2-initrd.img: tuto2.yml
linuxkit build $<
tuto2-cmdline: tuto2.yml
linuxkit build $<
2019-03-14 05:46:09 +00:00
tuto2.iso: tuto2.yml tuto2-kernel tuto2-initrd.img tuto2-cmdline
linuxkit build -format iso-bios $<
tuto2-srs.iso: tuto2.iso pkg/debian-tuto2/isolinux.cfg
2018-03-05 17:01:34 +00:00
$(eval TDIR := $(shell mktemp -d))
2019-03-14 05:46:09 +00:00
bsdtar xf $< -C $(TDIR)
2019-03-10 18:32:59 +00:00
cp pkg/debian-tuto2/isolinux.cfg /usr/share/syslinux/isolinux.bin /usr/share/syslinux/ldlinux.c32 /usr/share/syslinux/vesamenu.c32 /usr/share/syslinux/menu.c32 /usr/share/syslinux/libcom32.c32 /usr/share/syslinux/libutil.c32 /usr/share/syslinux/poweroff.c32 $(TDIR)/isolinux/
2019-03-14 05:46:09 +00:00
$(eval CMDLINE := $(shell cat tuto2-cmdline | sed 's/console=ttyS0 //;s#root=/dev/sr0 ##;s#root=/dev/sda1 ##;s#adlin.format=/dev/sda ##;'))
2018-03-05 17:01:34 +00:00
sed -i 's#<CMDLINE>#$(CMDLINE)#' $(TDIR)/isolinux/isolinux.cfg
2019-03-14 05:46:09 +00:00
mkisofs -o $@ -l -J -R -c isolinux/boot.cat -b isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table -joliet-long -input-charset utf8 -V AdLin2 $(TDIR)
2018-03-05 17:01:34 +00:00
rm -rf $(TDIR)
isohybrid $@
2019-03-14 05:46:09 +00:00
tuto2-srs.iso.gz: tuto2-srs.iso
gzip -9 < $< > $@
2019-03-29 11:48:57 +00:00
tuto3-kernel: tuto3.yml
linuxkit build $<
tuto3-initrd.img: tuto3.yml
linuxkit build $<
tuto3-cmdline: tuto3.yml
linuxkit build $<
tuto3.iso: tuto3.yml
linuxkit build -format iso-bios $<
tuto3.iso.gz: tuto3.iso
gzip -9 < $< > $@