Files
SFG545 26e2527492 build: support selecting enabled utils in Meson
Add a new Meson array option, utils, to allow building only selected applets while keeping the default as all.

Gate source inclusion, dependencies, symlink/manpage/script install steps, and test registration by enabled util set, and make applet dispatch in src/main.c compile-time conditional via generated config defines.

Document selective build usage in README.
2026-04-18 06:34:18 -05:00

1.0 KiB

VX

VX is a BSD-oriented multicall utility for Linux.

It bundles a growing set of FreeBSD-derived userland tools into a single vx binary, with applets selected by argv[0] or by subcommand.

Included applets

  • patch
  • diff, cmp, diff3, sdiff
  • which
  • gzip, gunzip, zcat, gzcat, uncompress
  • grep, egrep, fgrep, rgrep
  • find
  • xargs
  • lspci, setpci

Build

VX uses Meson.

meson setup builddir
meson compile -C builddir
meson test -C builddir

To build only selected utilities:

meson setup builddir -Dutils=grep,find,xargs

The default is -Dutils=all.

Run

You can invoke applets either through the multicall binary:

./builddir/vx grep pattern file
./builddir/vx find . -name '*.c'

or via installed symlinks such as grep, find, or patch.

Notes

  • The project force-includes src/compat-headers/compat.h to provide Linux compatibility shims for BSD userland code.
  • Some behavior is intentionally BSD-flavored, even where GNU tools differ.