it worked but we couldn't figure out how to do the fucking keyboard shortcuts without patching lablgtk3 and understanding a whole bunch of c interface stuff

This commit is contained in:
cqc
2024-04-02 19:18:40 -05:00
parent 3c32f068fb
commit 68828973cb
18 changed files with 224 additions and 1308 deletions

172
dune
View File

@ -1,160 +1,32 @@
(env
(dev (flags (:standard -warn-error -A))))
(executables
(names cors_proxy)
(libraries httpaf httpaf-lwt-unix base stdio fmt http-lwt-client)
(modules cors_proxy))
(library (name store)
(libraries
digestif.ocaml
checkseum.ocaml
irmin.mem
git
irmin-git
cohttp-lwt-jsoo
mimic
js_of_ocaml)
(modules store gitkey)
(preprocess
(pps js_of_ocaml-ppx)))
fmt
irmin.unix
irmin-git.unix
irmin-graphql.unix
lwt
lwt.unix
)
(modules store)
)
(executables
(names oplevel)
(modules oplevel secrets)
(libraries
store
js_of_ocaml-compiler js_of_ocaml-tyxml js_of_ocaml-toplevel
lwt js_of_ocaml-lwt
;; not used directly
graphics
tyxml
tyxml.functor
js_of_ocaml.deriving
react reactiveData
str dynlink
ocp-indent.lib
higlo
js_of_ocaml-lwt.graphics
js_of_ocaml-ppx
js_of_ocaml-compiler.runtime
js_of_ocaml-compiler.dynlink
uucp
httpaf
tyxml-ppx
tyxml-syntax)
(flags
(:standard -rectypes -warn-error -A))
(link_flags
(:standard -linkall -keep-docs -keep-locs ))
(modes js byte )
(js_of_ocaml
(link_flags (:standard))
(build_runtime_flags
(:standard
+toplevel.js
+dynlink.js
--file
%{dep:examples.ml}
--file
%{dep:test_dynlink.cmo}
--file
%{dep:test_dynlink.js}
))
(flags
(:standard
--toplevel --linkall --target-env=browser
(:include effects_flags.sexp)
)))
(modules
oplevel toplevel ppx_support graphics_support colorize ocp_indent indent b64 )
(preprocess
(pps js_of_ocaml-ppx)))
(rule
(targets test_dynlink.cmo test_dynlink.cmi)
(action
(run ocamlc -c %{dep:test_dynlink.ml})))
(rule
(targets test_dynlink.js)
(action
(run %{bin:js_of_ocaml} --pretty --toplevel %{dep:test_dynlink.cmo})))
(rule
(targets export.txt)
(deps
(package js_of_ocaml-ppx)
(package js_of_ocaml)
(package js_of_ocaml-compiler)
(package js_of_ocaml-lwt)
(package js_of_ocaml-tyxml)
(package js_of_ocaml-toplevel))
(action
(run
jsoo_listunits
-o
%{targets}
stdlib
graphics
str
dynlink
js_of_ocaml-compiler.runtime
js_of_ocaml-lwt.graphics
js_of_ocaml-ppx.as-lib
js_of_ocaml.deriving
lwt
tyxml.functor
tyxml.functor:html_types.cmi
react
reactiveData
js_of_ocaml
js_of_ocaml-lwt
js_of_ocaml-tyxml
js_of_ocaml-toplevel)))
(executable
(name effects_flags)
(modules effects_flags))
(rule
(target effects_flags.sexp)
(action
(with-stdout-to
%{target}
(run ./effects_flags.exe sexp))))
(rule
(target effects_flags.txt)
(action
(with-stdout-to
%{target}
(run ./effects_flags.exe txt))))
(rule
(targets oplevel.js)
(action
(run
%{bin:js_of_ocaml}
compile
--pretty
%{read-strings:effects_flags.txt}
--Werror
--target-env
browser
--file
%{dep:examples.ml}
--file
%{dep:test_dynlink.cmo}
--file
%{dep:test_dynlink.js}
--toplevel
--linkall
%{dep:oplevel.bc}
-o
%{targets})))
(alias
(name default)
(deps oplevel.bc.js index.html))
store
lablgtk3
lablgtk3-sourceview3
lwt_glib
irmin-git
compiler-libs.toplevel
)
(link_flags (-linkall))
(modes byte)
(preprocess
(pps ppx_irmin))
)