#
# Makefile for the gcc/linux-based V2_OS module testing distribution
#
# 20/12/1999 c.e. prelz
#
# Copyright (C) V2_Lab Rotterdam
#
# $Log: Makefile,v $
# Revision 1.1  1999/12/23 10:12:48  karl
# Initial revision
#
#
CC=gcc
CFLAGS=-Wall -O6 -m486 -ffreestanding 
LDFLAGS=--warn-common -Map $*.map 
TOOLS=../../tools

DISTRO_FILES=Makefile readme.carlo v2os.h v2os_mod.h std.lds mod.lds lib.c modlib.c loader.s modload.s gccmod.c gccmodtest.c

exe: gccmod.v2m gccmodtest.app
loaded: gccmod.loaded gccmodtest.loaded

clean:
	-rm *.app *.v2m *.loaded *.o *.map

distro:
	-rm -rf mod_distro
	-mkdir mod_distro
	cp -aR ${DISTRO_FILES} mod_distro
	zip mod.zip mod_distro/*
	tar cvfz mod.tgz mod_distro

gccmod.o: v2os.h v2os_mod.h
gccmodtest.o: v2os.h

gccmod.v2m: lib.o modlib.o
gccmodtest.app: lib.o

%.app: %.o loader.o
	ld $(LDFLAGS) -T std.lds -o $@ $^ 

%.v2m: %.o modload.o 
	ld $(LDFLAGS) -T mod.lds -o $@ $^

%.loaded: %.app
	-${TOOLS}/v2fs_delete -p /dev/fd0 -m $<
	${TOOLS}/file_to_v2obj -f $< -t "SYS." -o - | ${TOOLS}/file_to_v2fs -p /dev/fd0 -f -
	touch $@

%.loaded: %.v2m
	-${TOOLS}/v2fs_delete -p /dev/fd0 -m $<
	${TOOLS}/file_to_v2obj -f $< -t "SYS." -o - | ${TOOLS}/file_to_v2fs -p /dev/fd0 -f -
	touch $@

