{"id":13723547,"url":"https://github.com/code-lever/elixir-cmake","last_synced_at":"2026-04-02T02:03:12.319Z","repository":{"id":57494411,"uuid":"126390860","full_name":"code-lever/elixir-cmake","owner":"code-lever","description":"CMake compiler for Mix","archived":false,"fork":false,"pushed_at":"2023-03-12T18:57:17.000Z","size":37,"stargazers_count":9,"open_issues_count":0,"forks_count":8,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-16T09:18:52.835Z","etag":null,"topics":["cmake","elixir","erlang","mix"],"latest_commit_sha":null,"homepage":null,"language":"Elixir","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/code-lever.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-03-22T20:22:53.000Z","updated_at":"2024-07-08T21:16:02.000Z","dependencies_parsed_at":"2024-11-14T18:30:57.387Z","dependency_job_id":"3686cde1-f174-44ad-81d5-0201969ee5a4","html_url":"https://github.com/code-lever/elixir-cmake","commit_stats":{"total_commits":54,"total_committers":7,"mean_commits":7.714285714285714,"dds":0.4444444444444444,"last_synced_commit":"a951fc27039fb5a419162d948ade31723ebccf54"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/code-lever%2Felixir-cmake","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/code-lever%2Felixir-cmake/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/code-lever%2Felixir-cmake/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/code-lever%2Felixir-cmake/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/code-lever","download_url":"https://codeload.github.com/code-lever/elixir-cmake/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244083738,"owners_count":20395512,"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":["cmake","elixir","erlang","mix"],"created_at":"2024-08-03T01:01:42.757Z","updated_at":"2025-10-10T17:39:44.535Z","avatar_url":"https://github.com/code-lever.png","language":"Elixir","readme":"# CMake compiler for Mix\n\n[![Build Status](https://api.travis-ci.org/code-lever/elixir-cmake.svg)](https://travis-ci.org/code-lever/elixir-cmake)\n[![Hex Version](https://img.shields.io/hexpm/v/elixir_cmake.svg \"Hex Version\")](https://hex.pm/packages/elixir_cmake)\n\nA CMake compiler to help building Ports/NIFs in your Elixir/mix project.\n\n## Installation\n\nAdd `elixir_cmake` to your list of dependencies in `mix.exs`:\n\n```elixir\ndef deps do\n  [\n    {:elixir_cmake, \"~\u003e 0.7.0\"}\n  ]\nend\n```\n\nAdd `:cmake` to your compilers in `mix.exs`:\n\n```elixir\ndef project do\n  [\n    # ...\n    compilers: [:cmake] ++ Mix.compilers(),\n    # ...\n  ]\nend\n```\n\n## Basic Usage\n\n### CMakeLists.txt\n\nCreate your CMakeLists.txt in the root of your project or specify the path to an\nexisting CMakeLists.txt file in your project config.\n\n```elixir\ndef project do\n  [\n    # ...\n    cmake_lists: \"path/to/CMakeLists.txt\",\n    # ...\n  ]\nend\n```\n\nThe source files can reside anywhere the CMakeLists.txt file has access to.\n\nYou will need to copy the contents to your `priv` directory by either specifying\na compile alias or by directing the binary output to `priv/` in your CMakeLists.txt.\nfile.\n\nIn this example we specify a project named`EXAMPLE`, with source files in `src/`:\n\n```cmake\ncmake_minimum_required(VERSION 3.0)\nproject(EXAMPLE)\nset(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/priv)\nfile(GLOB EXAMPLE_SRC src/*.c)\n\nSET (CMAKE_C_FLAGS \"-g -O3 -pedantic -Wall -Wextra -Wno-unused-parameter -std=c99\")\n\ninclude_directories(SYSTEM)\n\nadd_executable(example ${EXAMPLE_SRC})\n```\n\nRun `mix compile` (or `mix compile.cmake` for just the CMake build) and you should find a compiled\nbinary in `priv/` afterwards.\n\n## Configuration Options\n\n    TODO\n\nBe sure to read [the documentation too](http://hexdocs.pm/elixir_cmake).\n","funding_links":[],"categories":["Languages Integration"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcode-lever%2Felixir-cmake","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcode-lever%2Felixir-cmake","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcode-lever%2Felixir-cmake/lists"}