5 # Change this to match your libevent installation.
7 EVENT_LIBDIR
=/usr
/local
/lib
8 EVENT_INCDIR
=/usr
/local
/include
12 XOBJECTS
=$(OBJECTS
:.cmo
=.cmx
)
13 C_OBJECTS
=event_stubs.o
16 XARCHIVE
=$(ARCHIVE
:.cma
=.cmxa
)
17 CARCHIVE_NAME
=mloevent
18 CARCHIVE
=lib
$(CARCHIVE_NAME
).a
20 # Flags for the C compiler.
21 CFLAGS
=-DFULL_UNROLL
-Wall
-O2
-I
$(EVENT_INCDIR
)
38 depend
: *.c
*.ml
*.mli
40 $(OCAMLDEP
) *.mli
*.ml
>> depend
43 $(CARCHIVE
): $(C_OBJECTS
)
44 $(OCAMLMKLIB
) -oc
$(CARCHIVE_NAME
) $(C_OBJECTS
) \
45 -L
$(EVENT_LIBDIR
) $(EVENT_LIB
)
46 $(ARCHIVE
): $(CARCHIVE
) $(OBJECTS
)
47 $(OCAMLMKLIB
) -o
$(NAME
) $(OBJECTS
) -oc
$(CARCHIVE_NAME
) \
48 -L
$(EVENT_LIBDIR
) $(EVENT_LIB
)
49 $(XARCHIVE
): $(CARCHIVE
) $(XOBJECTS
)
50 $(OCAMLMKLIB
) -o
$(NAME
) $(XOBJECTS
) -oc
$(CARCHIVE_NAME
) \
51 -L
$(EVENT_LIBDIR
) $(EVENT_LIB
)
56 { test ! -f
$(XARCHIVE
) || extra
="$(XARCHIVE) $(OBJECTS:.cmo=.cmx) $(NAME).a"; }; \
57 $(OCAMLFIND
) install libevent
-patch-version
$(VERSION
) META
$(OBJECTS
:.cmo
=.cmi
) $(OBJECTS
:.cmo
=.mli
) $(ARCHIVE
) \
58 dll
$(CARCHIVE_NAME
).so lib
$(CARCHIVE_NAME
).a
$$extra
62 $(OCAMLFIND
) remove libevent
67 cd doc
; $(OCAMLDOC
) -html
-I .. ..
/*.mli
71 test: testbyte testopt
78 unittest
: all unittest.ml
79 $(OCAMLFIND
) ocamlc
-dllpath .
-o unittest
-package oUnit
-cclib
-L.
-linkpkg \
80 $(ARCHIVE
) unittest.ml
81 unittest.opt
: allopt unittest.ml
82 $(OCAMLFIND
) ocamlopt
-o unittest.opt
-package oUnit
-cclib
-L.
-linkpkg \
83 $(XARCHIVE
) unittest.ml
88 rm -f
*~
*.cm
* *.o
*.a
*.so doc
/*.html doc
/*.css depend \
93 .SUFFIXES
: .ml .mli .cmo .cmi .cmx
96 $(OCAMLC
) -c
$(COMPFLAGS
) $<
98 $(OCAMLC
) -c
$(COMPLAGS
) -nolabels
$<
100 $(OCAMLOPT
) -c
$(COMPFLAGS
) -nolabels
$<
102 $(OCAMLC
) -c
-ccopt
"$(CFLAGS)" $<
106 FULLNAME
=ocaml-libevent-
$(VERSION
)
110 git tag
-a
-m
$(VERSION
) v
$(VERSION
)
111 git archive
--prefix=$(FULLNAME
)/ v
$(VERSION
) | gzip
> $(FULLNAME
).
tar.gz
112 gpg
-a
-b
$(FULLNAME
).
tar.gz