Skip to content

Commit

Permalink
Merge pull request #24 from pi8027/replace-ocamlbuild-with-dune
Browse files Browse the repository at this point in the history
Replace OCamlbuild with Dune
  • Loading branch information
pi8027 authored Mar 29, 2024
2 parents 2b9fd27 + dc6fb49 commit 4380988
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 13 deletions.
29 changes: 16 additions & 13 deletions Makefile.benchmark.coq.local
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
# versions of OCaml.
OCAML_OPAMSWITCH?=
ifeq (,$(OCAML_OPAMSWITCH))
OCAMLBUILD?= ocamlbuild
DUNE?= dune
else
OCAMLBUILD?= opam exec --switch $(OCAML_OPAMSWITCH) -- ocamlbuild
DUNE?= opam exec --switch $(OCAML_OPAMSWITCH) -- dune
endif

HSDIR := benchmark/haskell
Expand All @@ -26,10 +26,9 @@ EXTRACTED_ML_FILES := \
$(MLDIR)/mergesort_coq_cbn_tmc.ml \
$(MLDIR)/mergesort_coq_cbnacc_tmc.ml

ML_FLAGS := -cflags -w,a -verbose 0 -package unix -tag 'optimize(3)'

EXTRACTED_BINARIES := $(HSDIR)/Benchmark $(HSDIR)/BenchmarkExp \
$(MLDIR)/benchmark.native $(MLDIR)/benchmark_exp.native
EXTRACTED_BINARIES := \
$(HSDIR)/Benchmark $(HSDIR)/BenchmarkExp \
$(MLDIR)/benchmark $(MLDIR)/benchmark_exp

$(HSDIR)/Benchmark: $(HSDIR)/Benchmark.hs $(HSDIR)/Benchlib.hs \
$(EXTRACTED_HS_FILES)
Expand All @@ -39,13 +38,17 @@ $(HSDIR)/BenchmarkExp: $(HSDIR)/BenchmarkExp.hs $(HSDIR)/Benchlib.hs \
$(EXTRACTED_HS_FILES)
cd $(HSDIR) && stack ghc BenchmarkExp.hs -- $(HS_FLAGS)

$(MLDIR)/benchmark.native: $(MLDIR)/benchmark.ml $(MLDIR)/benchlib.ml \
$(EXTRACTED_ML_FILES) $(EXTRACTED_ML_FILES:.ml=.mli)
cd $(MLDIR) && $(OCAMLBUILD) benchmark.native $(ML_FLAGS)

$(MLDIR)/benchmark_exp.native: $(MLDIR)/benchmark_exp.ml $(MLDIR)/benchlib.ml \
$(EXTRACTED_ML_FILES) $(EXTRACTED_ML_FILES:.ml=.mli)
cd $(MLDIR) && $(OCAMLBUILD) benchmark_exp.native $(ML_FLAGS)
$(MLDIR)/benchmark: $(MLDIR)/benchmark.ml $(MLDIR)/benchlib.ml \
$(EXTRACTED_ML_FILES) $(EXTRACTED_ML_FILES:.ml=.mli)
cd $(MLDIR) && \
$(DUNE) build benchmark.exe && \
ln -s _build/default/benchmark.exe benchmark

$(MLDIR)/benchmark_exp: $(MLDIR)/benchmark_exp.ml $(MLDIR)/benchlib.ml \
$(EXTRACTED_ML_FILES) $(EXTRACTED_ML_FILES:.ml=.mli)
cd $(MLDIR) && \
$(DUNE) build benchmark_exp.exe && \
ln -s _build/default/benchmark_exp.exe benchmark_exp

$(HSDIR)/MergesortCoqCbn.hs $(MLDIR)/mergesort_coq_cbn.ml: \
benchmark/extraction_cbn.vo
Expand Down
5 changes: 5 additions & 0 deletions benchmark/ocaml/dune
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
(executables
(names benchmark benchmark_exp)
(libraries unix)
(flags (:standard -w a))
(ocamlopt_flags (:standard -O3)))
2 changes: 2 additions & 0 deletions benchmark/ocaml/dune-project
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
(lang dune 3.0)
(name stablesort_benchmarks)

0 comments on commit 4380988

Please sign in to comment.