# Votre bibliothèque de threads légers doit se
# trouver dans le module "scheduler.ml" et
# se conformer aux signatures données en énoncé.

# Une fois le scheduler écrit on pourra ajouter
# la cible read. Ensuite, n'importe quelle cible
# x quand x.ml est le fichier correspondant,
# dépendant uniquement de scheduler.ml.
all: tserver

tserver: tserver.ml
	ocamlc -thread unix.cma threads.cma tserver.ml -o $@

%: scheduler.cmo %.cmo
	ocamlc unix.cma scheduler.cmo $(@).cmo -o $@

%.cmo: %.ml
	ocamlc -c $<

%.cmi: %.mli
	ocamlc -c $<

-include .depend

.depend: $(wildcard *.ml *.mli)
	ocamldep $(wildcard *.ml *.mli) > .depend

test_read: read
	(cat read.ml read.ml read.ml read.ml ; sleep 3 ; cat read.ml) | ./read
