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
79 (cd examples
; $(MAKE
))
81 curl.cma
: $(CURLBCOBJS
) dllcurl-helper
$(EXT_DLL
)
82 $(OCAMLMKLIB
) -o curl
$(CURLBCOBJS
) -oc curl-helper
$(CLIBS
)
84 curl.cmxa
: $(CURLOBJS
) dllcurl-helper
$(EXT_DLL
)
85 $(OCAMLMKLIB
) -o curl
$(CURLOBJS
) -oc curl-helper
$(CLIBS
)
87 curl_lwt.cmo
: curl_lwt.ml
88 $(FINDLIB
) c
-package lwt.unix
-c
$(FLAGS
) $< -o
$@
90 curl_lwt.cmx
: curl_lwt.ml
91 $(FINDLIB
) opt
-package lwt.unix
-c
$(FLAGS
) $< -o
$@
93 curl_lwt.cmi
: curl_lwt.mli
94 $(FINDLIB
) c
-package lwt
-c
$(FLAGS
) $< -o
$@
97 $(OCAMLOPT
) -c
$(FLAGS
) $< -o
$@
100 $(OCAMLC
) -c
$(FLAGS
) $< -o
$@
103 $(OCAMLC
) -c
$(FLAGS
) $< -o
$@
105 libcurl-helper
$(EXT_LIB
) dllcurl-helper
$(EXT_DLL
): $(CURLHELPEROBJS
)
106 $(OCAMLMKLIB
) -oc curl-helper
$(CURLHELPEROBJS
) $(CLIBS
)
109 $(OCAMLC
) -c
-ccopt
"$(CFLAGS)" $<
112 ifneq (@OCAMLFIND@
,no
)
113 $(FINDLIB
) install -patch-version @PACKAGE_VERSION@
-ldconf ignore curl META
$(INSTALL_TARGETS
)
115 mkdir
-p
$(INSTALLDIR
)
116 $(INSTALLDATA
) curl.cma
$(INSTALLDIR
)
117 ifeq (@OCAMLBEST@
,opt
)
118 $(INSTALLDATA
) curl.cmxa
$(INSTALLDIR
)
120 $(INSTALLDATA
) curl.mli curl.cmi
$(INSTALLDIR
)
121 $(INSTALLDATA
) curl
$(EXT_LIB
) libcurl-helper
$(EXT_LIB
) $(INSTALLDIR
)
125 ifneq (@OCAMLFIND@
,no
)
126 $(FINDLIB
) remove curl
128 (cd
$(INSTALLDIR
) && rm -f curl.cma curl.cmxa curl.mli curl.cmi curl
$(EXT_LIB
) libcurl-helper
$(EXT_LIB
))
136 NAME
=@PACKAGE_NAME@
-@PACKAGE_VERSION@
139 git tag
-a
-m @PACKAGE_VERSION@ @PACKAGE_VERSION@
140 git archive
--prefix=$(NAME
)/ @PACKAGE_VERSION@ | gzip
> $(NAME
).
tar.gz
141 gpg
-a
-b
$(NAME
).
tar.gz
144 @
rm -f
$(TARGETS
) *~
*.cm
* *$(EXT_OBJ
) *$(EXT_LIB
) *$(EXT_DLL
) .depend core
145 @
(cd examples
; $(MAKE
) clean)
148 @
rm -f config.log config.status config.h examples
/Makefile
152 @
$(OCAMLDEP
) *.mli
*.ml
> .depend
154 ifeq ($(wildcard .depend
),.depend
)
155 ifneq ($(MAKECMDGOALS
),clean)