TIME = @TIME@
GPROF = @GPROF@
+BYTESWAP_H = @BYTESWAP_H@
+
+OCAMLLIB = @OCAMLLIB@
+top_srcdir = @top_srcdir@
+
pkg_cil = @pkg_cil@
pkg_extlib = @pkg_extlib@
OCAMLDOCFLAGS = -html -sort
+CC = @CC@
+CFLAGS = @CFLAGS@ -Wall -Werror -fPIC -I$(top_srcdir) -I$(OCAMLLIB)
+
+LIBRARY_PATH = @abs_top_builddir@
+LD_LIBRARY_PATH = @abs_top_builddir@
+export LIBRARY_PATH
+export LD_LIBRARY_PATH
+
SUBDIRS =
ifneq ($(pkg_cil),no)
ifneq ($(pkg_extlib),no)
BENCHMARKS = $(patsubst %.ml,%,$(wildcard benchmarks/*.ml))
-all: bitstring.cma bitstring_persistent.cma \
+all: $(BYTESWAP_H) \
+ bitstring.cma bitstring_persistent.cma \
bitstring.cmxa bitstring_persistent.cmxa \
pa_bitstring.cmo \
bitstring-objinfo
@for d in $(SUBDIRS); do $(MAKE) -C $$d $@; done
-bitstring.cma: bitstring_types.cmo bitstring_config.cmo bitstring.cmo \
- bitmatch.cmo
- $(OCAMLFIND) ocamlc -a -o $@ $^
+bitstring.cma: bitstring_types.cmo bitstring_config.cmo \
+ bitstring_c.o bitstring.cmo bitmatch.cmo
+ $(OCAMLMKLIB) -o bitstring $^
bitstring_persistent.cma: bitstring_persistent.cmo
$(OCAMLFIND) ocamlc -a -o $@ $^
$(OCAMLFIND) ocamlc $(OCAMLCFLAGS) $(OCAMLCPACKAGES) \
-I +camlp4 -pp camlp4of -c $<
-bitstring.cmxa: bitstring_types.cmx bitstring_config.cmx bitstring.cmx \
- bitmatch.cmx
- $(OCAMLFIND) ocamlopt -a -o $@ $^
+bitstring.cmxa: bitstring_types.cmx bitstring_config.cmx \
+ bitstring_c.o bitstring.cmx bitmatch.cmx
+ $(OCAMLMKLIB) -o bitstring $^
bitstring_persistent.cmxa: bitstring_persistent.cmx
$(OCAMLFIND) ocamlopt -a -o $@ $^
bitstring.cma bitstring_persistent.cma \
$< -o $@
+# Create byteswap.h if the system doesn't have this file.
+# From gnulib, license is LGPLv2+.
+
+byteswap.h: byteswap.in.h
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ cat $(srcdir)/byteswap.in.h; \
+ } > $@-t
+ mv -f $@-t $@
+
# Tests and examples.
PP = -pp "camlp4o bitstring.cma bitstring_persistent.cma pa_bitstring.cmo"
# Install.
install:
- ocamlfind install bitstring META *.mli *.cmx *.cma *.cmxa *.a \
+ ocamlfind install bitstring META *.mli *.cmx *.cma *.cmxa *.a *.so \
bitstring.cmi \
bitstring_persistent.cmi \
pa_bitstring.cmo