1
0
Fork
You've already forked sbundle
0
You're bundled up now, wait 'til you get older
  • C 97.6%
  • Shell 2.4%
2026年03月07日 21:38:31 +00:00
src remove skip message 2026年03月07日 21:38:31 +00:00
test persist cc and flags; polish up 2026年01月31日 15:26:22 +00:00
.editorconfig persist cc and flags; polish up 2026年01月31日 15:26:22 +00:00
.gitignore persist cc and flags; polish up 2026年01月31日 15:26:22 +00:00
Build.sh add compile of -Wall and -Wextra and fix warning 2026年03月07日 18:00:28 +00:00
bundle add target support and docs; clean up 2026年03月07日 20:50:40 +00:00
DOCUMENTATION add target support and docs; clean up 2026年03月07日 20:50:40 +00:00
LICENSE first commit! 2026年01月31日 15:10:20 +00:00
README add target support and docs; clean up 2026年03月07日 20:50:40 +00:00

sbundle
=======
sbundle is a minimal suckless build system, but it may not be your regular
build system.
sbundle reads a bundle file (by default, aptly named, 'bundle' in the root
of your project), and compiles and links files specified in it.
Documentation can be found in DOCUMENTATION.
Why not just use GNU make or the like?
======================================
sbundle is designed to be suckless, and by using a robust bundle file, it helps
build more quicker and also helps to make more compact scripts which generates
bundles (like automake but for bundle).
gen-bundle, made in Lua, is a simple module that can be used to generate bundles:
https://codeberg.org/micro4scopic/gen-bundle.
Achievements
============
sbundle is self reproducable. Build by running '/bin/sh ./Build.sh', and then
run './sbundle'. You should find and be able to run 'sbundle.test', which was built
by the bootstrapped sbundle.
The root bundle file may of also produced an error, but that is expected as it is a
simple test that different compilers can be used. If you have x86_64-linux-musl-gcc
installed then it would work ;)
sbundle now supports more versatile "targets" for strict headers. This means that
something like a curl command can be checked if it has been done by checking if
the target output you set exists (or for more commands perhaps a simple lock file).
If you are just using the normal header then target support is already builtin using
the executable name.
To-do
=====
Parallel jobs!
Warning
=======
sbundle is premature with a limited set of features, and may contain bugs or
not meet your required needs. For now, use with caution.
About
=====
sbundle was designed for Deep Linux, but can be used pretty much anywhere.
	
	Copyright (C) 2025 Ruben Preece <holeinwall@anche.no>
	This program is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
	GNU General Public License, or LICENSE in this program's source
	directory, for more details.