#+TITLE: Common [[elisp:(org-babel-tangle)]] This directory contains many utility functions used by all the other directories. - [[./angular_momentum.org][Angular Momentum]] - [[./bitstring.org][Bit string]] * Dune files :PROPERTIES: :dune: lib/dune :dune-test: test/dune :header-args: :noweb yes :END: ** Headers #+begin_src elisp :tangle (org-entry-get nil "dune" t) (library #+end_src #+begin_src elisp :tangle (org-entry-get nil "dune-test" t) (library #+end_src ** Library *** General information #+begin_src elisp :tangle (org-entry-get nil "dune" t) (name common) (public_name qcaml.common) (synopsis "General utilities used in all QCaml libraries.") #+end_src #+begin_src elisp :tangle (org-entry-get nil "dune-test" t) (name test_common) (synopsis "Test for common library") #+end_src *** Dependencies #+begin_src elisp :tangle (org-entry-get nil "dune" t) (libraries str zarith getopt ) #+end_src #+begin_src elisp :tangle (org-entry-get nil "dune-test" t) (libraries alcotest qcaml.common ) #+end_src *** Extra C files The ~math_functions~ file contains small C snippets to add missing functionalities to OCaml, such as support for the ~popcnt~ instruction. #+begin_src elisp :tangle (org-entry-get nil "dune" t) (c_names math_functions ) (c_flags (:standard) -Ofast -march=native -fPIC ) #+end_src ** Footers #+begin_src elisp :tangle (org-entry-get nil "dune" t) ) #+end_src #+begin_src elisp :tangle (org-entry-get nil "dune-test" t) ) #+end_src