MKLIBFLAGS =
OBJEXT = cmo
LIBEXT = cma
- OLDFLAGS =
+ OLDFLAGS = -dllpath .
endif
# Target Definitions
clean:
$(RM) tide *.cm* *.o *.a *.so
+ $(RM) tide lib/*.cm* lib/*.o
-env.$(LIBEXT): env.$(OBJEXT) env_set.o env_get.o env_unset.o
+env.$(LIBEXT): lib/env.$(OBJEXT) lib/env_prims.o
tide: env.$(LIBEXT) tide.$(OBJEXT)
# Implicit Rule Definitions
#-------------------------------------------------------------------------------
%:
- $(OC) $(OLDFLAGS) -o $@ $^ -I .
+ $(OC) $(OLDFLAGS) -o $@ $^ -I . -I lib
%.$(LIBEXT):
$(MKLIB) $(MKLIBFLAGS) $(OCFLAGS) -o $* -oc $* $^
%.$(OBJEXT): %.ml
- $(OC) $(OCFLAGS) -c -o $@ $^
+ $(OC) $(OCFLAGS) -c -o $@ $^ -I lib
%.o: %.c
- $(OC) $(OCFLAGS) -c -o $@ $^
+ $(OC) $(OCFLAGS) -c $^
+ mv $(notdir $@) $(dir $@)
+++ /dev/null
-#include <curses.h>
-#include <caml/mlvalues.h>
-#include <caml/memory.h>
-#include <caml/alloc.h>
-#include <caml/custom.h>
-#include <stdlib.h>
-
-CAMLprim value env_get(value var) {
- CAMLparam1(var);
- puts("bar");
- CAMLreturn(caml_copy_string(""));
-}
+++ /dev/null
-#include <curses.h>
-#include <caml/mlvalues.h>
-#include <caml/memory.h>
-#include <caml/alloc.h>
-#include <caml/custom.h>
-#include <stdlib.h>
-
-CAMLprim value env_unset(value var) {
- CAMLparam1(var);
- puts("baz");
- CAMLreturn(Val_int(0));
-}
#include <caml/custom.h>
#include <stdlib.h>
+CAMLprim value env_get(value var) {
+ CAMLparam1(var);
+ puts("bar");
+ CAMLreturn(caml_copy_string(""));
+}
+
CAMLprim value env_set(value var, value val) {
CAMLparam2(var, val);
puts("foo");
CAMLreturn(Val_int(0));
}
+
+CAMLprim value env_unset(value var) {
+ CAMLparam1(var);
+ puts("baz");
+ CAMLreturn(Val_int(0));
+}