virt_mem_mmap.cmo \
virt_mem_types.cmo \
virt_mem_list_head.cmo \
- kernel_task_struct.cmo \
- kernel_net_device.cmo \
- kernel_net.cmo \
- kernel_in_device.cmo \
- kernel_in_ifaddr.cmo \
- kernel_inet6_dev.cmo \
- kernel_inet6_ifaddr.cmo \
+ kernel.cmo \
virt_mem_ksyms.cmo \
virt_mem_kallsyms.cmo \
virt_mem_utsname.cmo \
- virt_mem_tasks.cmo \
- virt_mem_net_devices.cmo \
virt_mem.cmo \
virt_mem_capture.cmo \
virt_mem_dump.cmo
+# virt_mem_tasks.cmo
+# virt_mem_net_devices.cmo
+
XOBJS = $(OBJS:%.cmo=%.cmx)
all: $(TARGETS)
virt_mem.cmxa: $(XOBJS)
ocamlmklib -o virt_mem $^
+# The autogenerated code in kernel.ml contains recursive types.
+kernel.cmo: kernel.ml
+ $(OCAMLFIND) ocamlc -rectypes $(OCAMLCFLAGS) $(OCAMLCPACKAGES) -c $<
+
+kernel.cmx: kernel.ml
+ $(OCAMLFIND) ocamlopt -rectypes $(OCAMLOPTFLAGS) $(OCAMLOPTPACKAGES) -c $<
+
# Just for testing Virt_mem_mmap module:
test_mmap: virt_mem_utils.cmx virt_mem_mmap_c.o virt_mem_mmap.cmx test_mmap.cmx
ocamlfind ocamlopt \