54 lines
1.3 KiB
Makefile
54 lines
1.3 KiB
Makefile
OCAMLBUILD=bapbuild -no-hygiene
|
|
BAPBUNDLE=bapbundle
|
|
ROOT_MODULE=dwarfsynth
|
|
TARBALL=dwarfsynth.tar.gz
|
|
|
|
LIBDWARFW_SO=libdwarfw/build/libdwarfw.so
|
|
LIBDWARFW_SO_MESON=libdwarfw/build/build.ninja
|
|
|
|
|
|
all: install ml_dwarf_write.bin
|
|
|
|
.PHONY: ml_dwarf_write.bin
|
|
ml_dwarf_write.bin: $(LIBDWARFW_SO)
|
|
$(MAKE) -C DwarfSynth/c_bindings
|
|
ln -fs DwarfSynth/c_bindings/ml_dwarf_write.bin .
|
|
|
|
.PHONY: $(LIBDWARFW_SO)
|
|
$(LIBDWARFW_SO):
|
|
cd libdwarfw && test -d build || meson build
|
|
ninja -C libdwarfw/build
|
|
|
|
.PHONY: $(ROOT_MODULE).plugin
|
|
$(ROOT_MODULE).plugin:
|
|
$(OCAMLBUILD) $(ROOT_MODULE).plugin
|
|
|
|
###############################################################################
|
|
.PHONY: install
|
|
install: $(ROOT_MODULE).plugin
|
|
$(BAPBUNDLE) install $<
|
|
|
|
###############################################################################
|
|
.PHONY: clean
|
|
clean:
|
|
rm -rf _build
|
|
|
|
###############################################################################
|
|
tarball: $(TARBALL)
|
|
|
|
.PHONY: $(TARBALL)
|
|
$(TARBALL):
|
|
tar czf $(TARBALL) \
|
|
--exclude=.git \
|
|
--exclude=.gitignore \
|
|
--exclude=libdwarfw/build \
|
|
--exclude-backups \
|
|
--exclude=*.bck \
|
|
--exclude=*.bin \
|
|
--exclude=*.o \
|
|
--exclude=*.cmi \
|
|
--exclude=*.cmx \
|
|
--transform='s#^#dwarfsynth/#g' \
|
|
csmith DwarfSynth dwarfsynth.ml DwarfSynth.mlpack HEURISTICS.md \
|
|
libdwarfw LICENSE Makefile README.md synthesize_dwarf.sh _tags \
|
|
testsuite
|