{"id":15060998,"url":"https://github.com/ocaml/oasis","last_synced_at":"2025-10-20T00:32:15.176Z","repository":{"id":4582824,"uuid":"5724770","full_name":"ocaml/oasis","owner":"ocaml","description":"Cabal like system for OCaml","archived":false,"fork":false,"pushed_at":"2020-10-24T21:40:51.000Z","size":5561,"stargazers_count":126,"open_issues_count":197,"forks_count":45,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-01-30T09:41:44.683Z","etag":null,"topics":["oasis","ocaml","ocamlbuild","omake"],"latest_commit_sha":null,"homepage":null,"language":"OCaml","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ocaml.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.txt","contributing":null,"funding":null,"license":"COPYING.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-09-08T02:21:36.000Z","updated_at":"2024-11-01T17:29:19.000Z","dependencies_parsed_at":"2022-09-21T00:42:55.003Z","dependency_job_id":null,"html_url":"https://github.com/ocaml/oasis","commit_stats":null,"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ocaml%2Foasis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ocaml%2Foasis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ocaml%2Foasis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ocaml%2Foasis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ocaml","download_url":"https://codeload.github.com/ocaml/oasis/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237236958,"owners_count":19277082,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["oasis","ocaml","ocamlbuild","omake"],"created_at":"2024-09-24T23:07:58.347Z","updated_at":"2025-10-20T00:32:09.413Z","avatar_url":"https://github.com/ocaml.png","language":"OCaml","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Travis-CI Build Status](https://travis-ci.org/ocaml/oasis.svg?branch=master)](https://travis-ci.org/ocaml/oasis)\n[![AppVeyor Build status](https://ci.appveyor.com/api/projects/status/42gumiqt5le643t2?svg=true)](https://ci.appveyor.com/project/gildor478/oasis)\n[![Join the chat at https://gitter.im/ocaml/oasis](https://badges.gitter.im/ocaml/oasis.svg)](https://gitter.im/ocaml/oasis?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge)\n\noasis - Tooling for building OCaml libraries and applications\n=============================================================\n\n\u003cimg src=\"https://raw.githubusercontent.com/ocaml/oasis/master/doc/images/logo.svg\" width=\"64\" height=\"64\"/\u003e\u003c/img\u003e\n\nOASIS generates a full configure, build and install system for your\napplication. It starts with a simple `_oasis` file at the toplevel of your\nproject and creates everything required.\n\nOASIS leverages existing OCaml tooling to perform most of it's work. In fact,\nit might be more appropriate to think of it as simply the glue that binds\nthese other subsystems together and coordinates the work that they do. It\nshould support the following tools:\n\n * OCamlbuild\n * OMake\n * OCamlMakefile (todo),\n * ocaml-autoconf (todo)\n\nIt also features a do-it-yourself command line invocation and an internal\nconfigure/install scheme. Libraries are managed through findlib. It has been\ntested on GNU Linux and Windows.\n\nIt also allows to have standard entry points and description. It helps to\nintegrate your libraries and software with third parties tools like OPAM.\n\n[Bug reports](https://github.com/ocaml/oasis/issues)\n\n\nInstall OASIS\n-------------\n\nThe recommended way to install oasis is via the [opam package manager][opam]:\n\n[opam]: https://opam.ocaml.org\n\n```sh\n$ opam install oasis\n```\n\nAs an alternative, [INSTALL.md](INSTALL.md) explains how  to build OASIS from the sources.\n\nDocumentation\n-------------\n\n* [OASIS Quickstart](doc/QUICKSTART.md) which show you how to set up\n  OASIS for a single executable and library.\n* Have a look at our [frequently asked questions](doc/FAQ.md)\n* [OASIS User manual](doc/MANUAL.mkd)\n* [Contributing](doc/CONTRIBUTE.md)\n* [Release process](doc/HACKING.md)\n\nExamples\n--------\n\n* [custom](https://github.com/ocaml/oasis/blob/master/examples/custom/_oasis)\n a project that uses the custom plugin and make to build\n* [flags](https://github.com/ocaml/oasis/blob/master/examples/flags/_oasis)\n a project that uses flags and .ab files where these flags are substituted\n* [interdepend-libraries](https://github.com/ocaml/oasis/blob/master/examples/interdepend-libraries/_oasis)\n a project that uses several libraries linked together\n* [with-c](https://github.com/ocaml/oasis/blob/master/examples/with-c/_oasis)\n a project that uses C files in libraries and executables\n* [with-data](https://github.com/ocaml/oasis/blob/master/examples/with-data/_oasis)\n a project that installs data files\n* [with-subpackages](https://github.com/ocaml/oasis/blob/master/examples/with-subpackage/_oasis)\n a project that uses a syntax extension and a library\n* [browse the examples](https://github.com/ocaml/oasis/tree/master/examples)\n directory of OASIS for other examples\n\nFeatured projects that use \\_oasis:\n\n* [ocamlify](https://github.com/gildor478/ocamlify):\n  the [\\_oasis](https://github.com/gildor478/ocamlify/blob/master/_oasis) file includes 2 syntax extensions,\n  a library and tests\n\nRelated documentation\n---------------------\n\n[OMake README](src/plugins/omake/README.md)\n\nCopyright and license\n---------------------\n\n(C) 2011-2016 Sylvain Le Gall\n(C) 2008-2010 OCamlCore SARL\n\noasis is distributed under the terms of the GNU Lesser General Public License\nversion 2.1 with OCaml linking exception.\n\nSee [COPYING.txt](COPYING.txt) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Focaml%2Foasis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Focaml%2Foasis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Focaml%2Foasis/lists"}