Skip to content

A Gentoo ebuild repository (overlay) for Xmake

Notifications You must be signed in to change notification settings

xmake-io/xmake-overlay

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

xmake-overlay

A Gentoo overlay that provides ebuilds for xmake and related packages.

Overview

This overlay contains ebuilds for packages that use the xmake build system, including:

  • xmake_ls - A language server for xmake projects
  • tbox - A glib-like multi-platform C library
  • xmake.eclass - A custom eclass for building xmake-based packages in Gentoo

Installation

Using eselect-repository (Recommended)

eselect repository add xmake-overlay git https://github.com/xmake-io/xmake-overlay.git
emerge --sync xmake-overlay

Using eselect-repository with local path

If you have a local clone of the repository:

eselect repository add xmake-overlay git /path/to/local/xmake-overlay
emerge --sync xmake-overlay

Manual installation

Add the overlay to your /etc/portage/repos.conf/xmake-overlay.conf:

[xmake-overlay]
location = /var/db/repos/xmake-overlay
sync-type = git
sync-uri = https://github.com/xmake-io/xmake-overlay.git
auto-sync = yes

Then sync:

emerge --sync

Available Packages

dev-util/xmake_ls

A language server for xmake that provides IDE integration features like:

  • Auto-completion
  • Go to definition
  • Find references
  • Diagnostics
  • And more...
emerge dev-util/xmake_ls

dev-libs/tbox

A glib-like multi-platform C library with features like:

  • Cross-platform utilities
  • Memory management
  • String operations
  • File I/O
  • Network programming
  • And more...
emerge dev-libs/tbox

xmake.eclass

This overlay includes a custom xmake.eclass that provides functions for building xmake-based packages:

  • xmake_src_prepare() - Prepares the build environment
  • xmake_src_configure() - Configures the xmake project
  • xmake_src_compile() - Builds the project
  • xmake_src_install() - Installs the built files

Usage Example

# Copyright 2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

inherit xmake

DESCRIPTION="Your package description"
HOMEPAGE="https://github.com/user/project"
SRC_URI="https://github.com/user/project/archive/v${PV}.tar.gz"

LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"

DEPEND=""
RDEPEND="${DEPEND}"

# Set the project kind (shared, static, or executable)
XMAKE_PROJECT_KIND="shared"

# Optional: Add extra configuration flags
# XMAKE_EXTRA_CONFIG_FLAGS=( "--demo=n" "--small=y" )

Requirements

  • Gentoo Linux or any derived Linux distributions or a Gentoo Prefix running on supported host OS
  • Portage package manager
  • Git (for repository synchronization)

Contributing

Contributions are welcome! Please feel free to submit pull requests or open issues for:

  • New package ebuilds
  • Bug fixes
  • Improvements to the xmake.eclass
  • Documentation updates

License

This overlay is licensed under the GNU General Public License v2. Individual packages may have different licenses as specified in their respective ebuild files.

Support

For issues related to:

Links

About

A Gentoo ebuild repository (overlay) for Xmake

Resources

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

  •  

Packages

No packages published

Languages