shithub: nix

Download patch

ref: a81860928bfc8fc0bcfd60b20dcc50d41b630aad
author: glenda <glenda@cirno>
date: Thu May 2 17:00:34 EDT 2024

original mkfile from pc64

diff: cannot open b/pc64//null: file does not exist: 'b/pc64//null'
--- /dev/null
+++ b/pc64/mkfile
@@ -1,0 +1,164 @@
+CONF=pc64
+CONFLIST=pc64 pccpu64
+
+objtype=amd64
+</$objtype/mkfile
+p=9
+
+# must match mem.h
+KTZERO=0xffffffff80110000
+APBOOTSTRAP=0xffffffff80007000
+REBOOTADDR=0x11000
+
+DEVS=`{rc ../port/mkdevlist $CONF}
+
+PORT=\
+	alarm.$O\
+	alloc.$O\
+	allocb.$O\
+	auth.$O\
+	cache.$O\
+	chan.$O\
+	dev.$O\
+	edf.$O\
+	fault.$O\
+	iomap.$O\
+	memmap.$O\
+	page.$O\
+	parse.$O\
+	pgrp.$O\
+	portclock.$O\
+	print.$O\
+	proc.$O\
+	qio.$O\
+	qlock.$O\
+	random.$O\
+	rdb.$O\
+	rebootcmd.$O\
+	segment.$O\
+	syscallfmt.$O\
+	sysfile.$O\
+	sysproc.$O\
+	taslock.$O\
+	tod.$O\
+	xalloc.$O\
+	userinit.$O\
+
+OBJ=\
+	l.$O\
+	cga.$O\
+	fpu.$O\
+	i8253.$O\
+	i8259.$O\
+	main.$O\
+	memory.$O\
+	mmu.$O\
+	irq.$O\
+	trap.$O\
+	bootargs.$O\
+	$CONF.root.$O\
+	$CONF.rootc.$O\
+	$DEVS\
+	$PORT\
+
+LIB=\
+	/$objtype/lib/libmemlayer.a\
+	/$objtype/lib/libmemdraw.a\
+	/$objtype/lib/libdraw.a\
+	/$objtype/lib/libip.a\
+	/$objtype/lib/libsec.a\
+	/$objtype/lib/libmp.a\
+	/$objtype/lib/libc.a\
+	/$objtype/lib/libfis.a\
+	/$objtype/lib/libaml.a\
+	/$objtype/lib/libdtracy.a\
+
+ETHER=`{cd ../pc; echo devether.c ether*.c | sed 's/\.c/.'$O'/g'}
+AUDIO=`{cd ../pc; echo devaudio.c audio*.c | sed 's/\.c/.'$O'/g'}
+VGA=`{cd ../pc; echo devvga.c screen.c vga*.c | sed 's/\.c/.'$O'/g'}
+SDEV=`{cd ../pc; echo sd*.c | sed 's/\.c/.'$O'/g'}
+
+$p$CONF:	$OBJ $CONF.$O $LIB
+	$LD -o $target -T$KTZERO -R4096 -l $prereq
+	size $target
+
+install:V:	$p$CONF
+	cp $p$CONF /$objtype/
+	for(i in $EXTRACOPIES)
+		import $i / /n/$i && cp $p$CONF $p$CONF.gz /n/$i/$objtype/
+
+
+# copies generated by the rule below
+PCHEADERS=usbehci.h screen.h mp.h io.h ahci.h \
+	yukdump.h
+
+REPCH=`{echo $PCHEADERS | sed 's/\.h//g; s/ /|/g'}
+^($REPCH)\.h:R:	../pc/\1.h
+	cp $prereq .
+
+REPCC=`{../port/mkfilelist ../pc}
+^($REPCC)\.$O:R:	'../pc/\1.c'
+	$CC $CFLAGS -I. -. ../pc/$stem1.c
+
+<../boot/bootmkfile
+<../port/portmkfile
+<|../port/mkbootrules $CONF
+
+l.$O rebootcode.$O apbootstrap.$O:	mem.h
+
+$ETHER: 			../port/etherif.h ../port/netif.h
+$AUDIO:				../port/audioif.h
+ether8003.$O ether8390.$O:	ether8390.h
+etheryuk.$O:			yukdump.h
+$VGA mouse.$O:			screen.h /sys/include/memdraw.h
+vgavesa.$O:			/386/include/ureg.h
+
+mp.$O:				mp.h apbootstrap.i
+apic.$O squidboy.$O:		mp.h
+archmp.$O archacpi.$O:		mp.h
+
+sd53c8xx.$O:			../pc/sd53c8xx.i
+../pc/sd53c8xx.i:		../pc/sd53c8xx.n
+	cd ../pc && mk sd53c8xx.i
+
+$SDEV pmmc.$O:			../port/sd.h
+sdiahci.$O:			ahci.h
+devaoe.$O sdaoe.$O:		../port/aoe.h
+main.$O:			rebootcode.i
+
+devusb.$O usbuhci.$O usbohci.$O usbehci.$O usbehcipc.$O usbxhci.$O: ../port/usb.h
+usbehci.$O usbehcipc.$O:	usbehci.h
+
+trap.$O main.$O:		/sys/include/tos.h
+
+ether8169.$O:			../port/ethermii.h
+etherdp83820.$O:		../port/ethermii.h
+etherigbe.$O:			../port/ethermii.h
+ethervgbe.$O:			../port/ethermii.h
+ethervt6102.$O:			../port/ethermii.h
+ethervt6105m.$O:		../port/ethermii.h
+
+etherwpi.$O:			../port/wifi.h
+etherrt2860.$O: 		../port/wifi.h
+
+initcode.out:		init9.$O initcode.$O /$objtype/lib/libc.a
+	$LD -l -R1 -s -o $target $prereq
+
+$O.rebootcode:		rebootcode.$O
+	$LD -l -R1 -s -o $target -T$REBOOTADDR $prereq
+rebootcode.out:		$O.rebootcode
+	dd -if $prereq(1) -of $target -bs 1 -iseek 40
+
+$O.apbootstrap:		apbootstrap.$O
+	$LD -l -R1 -s -o $target -T$APBOOTSTRAP $prereq
+apbootstrap.out:	$O.apbootstrap
+	dd -if $prereq(1) -of $target -bs 1 -iseek 40
+
+sd53c8xx.i:	sd53c8xx.n
+	aux/na $prereq > $target
+
+acid:V:
+	$CC -a -w main.c>acid
+
+%.clean:V:
+	rm -f $stem.c [9bz]$stem [9bz]$stem.gz boot$stem.* $O.rebootcode $O.apbootstrap $PCHEADERS