{"id":21928139,"url":"https://github.com/depp/bazel-gba-example","last_synced_at":"2025-03-22T12:18:51.929Z","repository":{"id":140487230,"uuid":"525951065","full_name":"depp/bazel-gba-example","owner":"depp","description":"Bazel GBA (Game Boy Advance) Example","archived":false,"fork":false,"pushed_at":"2022-08-18T02:10:01.000Z","size":20,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-27T11:46:12.508Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Starlark","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/depp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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":"2022-08-17T20:56:00.000Z","updated_at":"2024-08-04T14:20:30.000Z","dependencies_parsed_at":"2023-03-12T16:30:30.308Z","dependency_job_id":null,"html_url":"https://github.com/depp/bazel-gba-example","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/depp%2Fbazel-gba-example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/depp%2Fbazel-gba-example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/depp%2Fbazel-gba-example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/depp%2Fbazel-gba-example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/depp","download_url":"https://codeload.github.com/depp/bazel-gba-example/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244952961,"owners_count":20537494,"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":[],"created_at":"2024-11-28T22:21:27.815Z","updated_at":"2025-03-22T12:18:51.918Z","avatar_url":"https://github.com/depp.png","language":"Starlark","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bazel GBA Example\n\nThis is an example project for building a Game Boy Advance game with Bazel.\n\n## Caution\n\nThis downloads dependencies directly from the devKitPro package repository. Those packages will eventually be replaced with newer versions, and this repository will fail to build. At that point, you'll have to update this repo to a newer version of the packages.\n\nBazel will cache the downloads locally and share them across different projects. However, please be kind. Do not build this project inside a CI environment without using your own cache. Here are some ways you can avoid relying on the devKitPro package servers:\n\n- You can cache by routing Bazel through a caching proxy. See [Bazel: Using Proxies][bazel-proxy]).\n\n- If you have have a mirror of devKitPro, you can modify `_BASE_URLS` in [platform/repo.bzl](platform/repo.bzl) to point at the mirror.\n\n[bazel-proxy]: https://bazel.build/docs/external#using-proxies\n\n## Building\n\nRequires Bazel. Tested on Linux and macOS. You do not have to install devKitARM, Bazel will download it automatically.\n\n```shell\n$ bazel build -c opt --platforms=//platform:gba //source:game\n```\n\nThis will create the ROM image `bazel-bin/source/game.gba`. If you are developing, you should enable C compiler warnings and treat them as errors. You can do this by creating a `.bazelrc.user` file in the root workspace directory with the following line:\n\n```\nbuild --//bazel:warnings=error\n```\n\nThe original ELF file will be placed at `bazel-bin/source/game.elf`. You can compile in debug mode by using `-c dbg` instead of `-c opt`. If you omit the `-c` option entirely, Bazel will simply build as fast as possible.\n\n## Licensing\n\nWith some exceptions, code in the Bazel GBA example is licensed under the terms of the MIT license. See LICENSE.txt for details.\n\nThe file `platform/cc_toolchain_config.bzl` is licensed under the terms of the Apache License, version 2.0.\n\n### LibGBA\n\nLibGBA is open-source, licensed under the terms of the LGPL, with exceptions.\n\nSee: https://github.com/devkitPro/libgba/blob/master/libgba_license.txt\n\n### LibTonc\n\nNote that libtonc is open-source, but the license is not documented in the libtonc Git repository.\n\nSee: https://web.archive.org/web/20200918104259/https://www.coranac.com/projects/tonc/\n\n\u003e cearn on 2018-06-24 at 9:56 said:\n\n\u003e Damian, tonclib is MIT licenced. Or would have been if I hadn't forgotten to add the license file \u003e\\_\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdepp%2Fbazel-gba-example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdepp%2Fbazel-gba-example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdepp%2Fbazel-gba-example/lists"}