Bam
Bam is a fast and flexible build system. Bam uses Lua to describe the build process. It's takes its inspiration for the script files from scons. While scons focuses on being 100% correct when building, bam makes a few sacrifices to acquire fast full and incremental build times.
Install / Use
/learn @matricks/BamREADME
bam
Bam is a build system with the focus on being having fast build times and flexiable build scripts. Instead of having a custom language it uses Lua to describe the build steps. It's written in clean C and is distrubuted under the liberal zlib licence. Available on many platforms including but not limited to Linux, Mac OS X and Windows.
Build Status
Quick Taste
This section is a short introduction to bam and is designed to get you started quickly.
1: settings = NewSettings()
2: settings.cc.defines:Add("MYDEFINE")
3: source = Collect("src/*.c")
5: objects = Compile(settings, source)
4: exe = Link(settings, "my_app", objects)
Line 1 creates a new settings object. This contains all the settings on how to compile, link etc.
Line 2 sets a define to be used during compliation.
Line 3 gathers all the files under the src/ directory which has .c as extention. Collect returns a table of strings which are the files.
Line 4 compiles the source using the specified settings and returns a table of the object files.
Line 5 links the object files to an executable named "my_app", using the specified settings.
Getting it
bam is distributed as source only and downloads can be found at https://github.com/matricks/bam/releases
Related Skills
node-connect
343.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
90.0kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
343.1kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
343.1kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
