Plik _tags
oprócz nazwy myocamlbuild.ml
stanowi podstawę systemu kompilacji ocamlbuild
.
ocamlbuild
to bardzo ogólne narzędzie, które może kompilować wszystko. Sterowany jest przez solver, który według celu, ustawionego przez użytkownika, znajduje rozwiązanie, które może zaspokoić cel. Rozwiązaniem jest łańcuch reguł stosowanych do plików. Pliki mogą być oznaczone tagami. Tagi mogą zmieniać reguły. Na przykład może dodawać flagi, takie jak włączanie profilowania lub łączenie z biblioteką.
Plik _tags
zapewnia mechanizm przypisywania znaczników do plików i ma prostą gramatykę:
pattern ":" tag "," {tag}.
Co jest na lewo od :
jest rzeczywiście wzorzec lub wyrażenie regularne. Każdy plik pasujący do wyrażenia zostanie przypisany wraz ze wszystkimi znacznikami, które pojawią się na prawo od :
.
oznacza dla wszystkich plików w tym folderze, a wszystkie podfoldery - skrót: true
. <*>
oznacza dla wszystkich plików w tym folderze (bez zstępowania w podfolderach). Inne przykłady to: <*.ml>
, <*.cmx>
lub <**/*.cma>
(btw or
może również służyć do budowy wzorca).
OCamlbuild jest udokumentowany w OCaml Manual, istnieje również dump starego wiki, z dużą ilością informacji.
Ale zabawa polega na tym, że zwykle nie trzeba tego wiedzieć, aby używać OCaml. Dostępne jest narzędzie OASIS
, które zautomatyzuje wszystkie zadania i utworzy dla Ciebie plik _tags
z prostej i wysokopoziomowej definicji.