b01aff70d2
libdriver. at_wini now queues messages it can't handle it receives when waiting for an interrupt. this way it can do receive(ANY) and timeouts should be working again (were broken for VFS, as with the advent of VFS, at_wini could get requests from a filesystem while it was waiting for an interrupt - as a hack, the receive() was changed to receive(HARDWARE)). Added mq.c to libdriver, and made libdriver an actual library that drivers link with -L../libdriver -ldriver. (So adding files, if necessary, is easier next time.)
58 lines
1.1 KiB
Makefile
58 lines
1.1 KiB
Makefile
# Makefile for memory driver (MEMORY)
|
|
DRIVER = memory
|
|
|
|
# directories
|
|
u = /usr
|
|
i = $u/include
|
|
s = $i/sys
|
|
m = $i/minix
|
|
b = $i/ibm
|
|
d = ..
|
|
|
|
# programs, flags, etc.
|
|
MAKE = exec make
|
|
CC = exec cc
|
|
CFLAGS = -I$i
|
|
LDFLAGS = -i -L../libdriver
|
|
LIBS = -lsysutil -ldriver -lsys
|
|
|
|
# imgrd_s.s is the ACK assembler version of the ramdisk. For more portability,
|
|
# use the C version imgrd.c. However, the C compiler takes too much memory
|
|
# compiling imgrd.c.
|
|
IMGRD=imgrd_s.o
|
|
#IMGRD=imgrd.c
|
|
|
|
OBJ = memory.o allocmem.o $(IMGRD)
|
|
|
|
# build local binary
|
|
all build: $(DRIVER)
|
|
|
|
$(DRIVER): ramdisk_image $(OBJ)
|
|
$(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBS)
|
|
install -S 8k $(DRIVER)
|
|
|
|
imgrd.o: ramdisk/image.c
|
|
|
|
imgrd_s.o: ramdisk/image.s
|
|
TMPDIR=/usr/tmp $(CC) -T /usr/tmp -c imgrd_s.s
|
|
|
|
ramdisk_image:
|
|
cd ramdisk && make
|
|
|
|
# install with other drivers
|
|
install: /usr/sbin/$(DRIVER)
|
|
/usr/sbin/$(DRIVER): $(DRIVER)
|
|
install -o root -cs $? $@
|
|
|
|
# clean up local files
|
|
clean:
|
|
rm -f $(DRIVER) *.o *.bak
|
|
cd ramdisk && make clean
|
|
|
|
depend:
|
|
/usr/bin/mkdep "$(CC) -E $(CPPFLAGS)" memory.c ../libdriver/*.c > .depend
|
|
cd ramdisk && make depend
|
|
|
|
# Include generated dependencies.
|
|
include .depend
|
|
|