5 .PHONY
: all targets examples
install clean distclean depend release doc build
test reinstall
7 .SUFFIXES
: .ml .mli .cmx .cmi .cmo .cmxa .cma .c @EXT_OBJ@
9 INSTALLDIR
= @INSTALLDIR@
11 INSTALLDATA
= @INSTALL_DATA@
17 OCAMLMKLIB
= @OCAMLMKLIB@
26 CFLAGS
= @CFLAGS@ @DEFS@
-Wall
28 CURLHELPEROBJS
= curl-helper
$(EXT_OBJ
)
30 CURLBCOBJS
= $(CURLOBJS
:.cmx
=.cmo
)
34 TARGETS
:= curl.cma libcurl-helper
$(EXT_LIB
) dllcurl-helper
$(EXT_DLL
)
35 ifneq (@OCAML_PKG_lwt@
,no
)
36 TARGETS
+= curl_lwt.cmo
38 ifeq (@OCAMLBEST@
,opt
)
40 ifneq (@OCAML_PKG_lwt@
,no
)
41 TARGETS
+= curl_lwt.cmx
45 INSTALL_TARGETS
= curl
$(EXT_LIB
) curl.cmi curl.mli
$(TARGETS
)
46 ifneq (@OCAML_PKG_lwt@
,no
)
47 INSTALL_TARGETS
+= curl_lwt.cmi curl_lwt.mli curl_lwt
$(EXT_OBJ
)
58 examples
/test_memory_leaks
59 ifneq (@OCAML_PKG_lwt@
,no
)
60 examples
/test_lwt_unit
62 ifeq (@OCAMLBEST@
,opt
)
63 examples
/test_cb_exn.opt
64 examples
/test_memory_leaks.opt
65 ifneq (@OCAML_PKG_lwt@
,no
)
66 examples
/test_lwt_unit.opt
72 ifneq (@OCAML_PKG_lwt@
,no
)
73 ocamlfind ocamldoc
-html
-d doc
-package lwt curl.mli curl_lwt.mli
75 ocamldoc
-html
-d doc curl.mli
78 targets
: $(TARGETS
) examples
81 (cd examples
; $(MAKE
))
83 curl.cma
: $(CURLBCOBJS
) dllcurl-helper
$(EXT_DLL
)
84 $(OCAMLMKLIB
) -o curl
$(CURLBCOBJS
) -oc curl-helper
$(CLIBS
)
86 curl.cmxa
: $(CURLOBJS
) dllcurl-helper
$(EXT_DLL
)
87 $(OCAMLMKLIB
) -o curl
$(CURLOBJS
) -oc curl-helper
$(CLIBS
)
89 curl_lwt.cmo
: curl_lwt.ml
90 $(FINDLIB
) c
-package lwt.unix
-c
$(FLAGS
) $< -o
$@
92 curl_lwt.cmx
: curl_lwt.ml
93 $(FINDLIB
) opt
-package lwt.unix
-c
$(FLAGS
) $< -o
$@
95 curl_lwt.cmi
: curl_lwt.mli
96 $(FINDLIB
) c
-package lwt
-c
$(FLAGS
) $< -o
$@
99 $(OCAMLOPT
) -c
$(FLAGS
) $< -o
$@
102 $(OCAMLC
) -c
$(FLAGS
) $< -o
$@
105 $(OCAMLC
) -c
$(FLAGS
) $< -o
$@
107 libcurl-helper
$(EXT_LIB
) dllcurl-helper
$(EXT_DLL
): $(CURLHELPEROBJS
)
108 $(OCAMLMKLIB
) -oc curl-helper
$(CURLHELPEROBJS
) $(CLIBS
)
111 $(OCAMLC
) -c
-ccopt
"$(CFLAGS)" $<
114 ifneq (@OCAMLFIND@
,no
)
115 $(FINDLIB
) install -patch-version @PACKAGE_VERSION@
-ldconf ignore curl META
$(INSTALL_TARGETS
)
117 mkdir
-p
$(INSTALLDIR
)
118 $(INSTALLDATA
) curl.cma
$(INSTALLDIR
)
119 ifeq (@OCAMLBEST@
,opt
)
120 $(INSTALLDATA
) curl.cmxa
$(INSTALLDIR
)
122 $(INSTALLDATA
) curl.mli curl.cmi
$(INSTALLDIR
)
123 $(INSTALLDATA
) curl
$(EXT_LIB
) libcurl-helper
$(EXT_LIB
) $(INSTALLDIR
)
127 ifneq (@OCAMLFIND@
,no
)
128 $(FINDLIB
) remove curl
130 (cd
$(INSTALLDIR
) && rm -f curl.cma curl.cmxa curl.mli curl.cmi curl
$(EXT_LIB
) libcurl-helper
$(EXT_LIB
))
138 NAME
=@PACKAGE_NAME@
-@PACKAGE_VERSION@
141 git tag
-a
-m @PACKAGE_VERSION@ @PACKAGE_VERSION@
142 git archive
--prefix=$(NAME
)/ @PACKAGE_VERSION@ | gzip
> $(NAME
).
tar.gz
143 gpg
-a
-b
$(NAME
).
tar.gz
146 @
rm -f
$(TARGETS
) *~
*.cm
* *$(EXT_OBJ
) *$(EXT_LIB
) *$(EXT_DLL
) .depend core
147 @
(cd examples
; $(MAKE
) clean)
150 @
rm -f config.log config.status config.h examples
/Makefile
154 @
$(OCAMLDEP
) *.mli
*.ml
> .depend
156 ifeq ($(wildcard .depend
),.depend
)
157 ifneq ($(MAKECMDGOALS
),clean)