MKIFY(1)

πŸ“¦ version 3.1, in nixos 26.05, nixpkgs unstable

πŸ‘‘ MKIFY(1) β€” like, the BSDBuild auto-bundling script, bestie ✨

okay so this is the manual page for mkify, from the General Commands Manual section. sit down, grab a strawberry πŸ“, we're doing build systems today.


🌸 NAME 🌸

mkify β€” the BSDBuild auto-bundling script. that's it, that's the vibe. πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

mkify module ...

literally just: mkify and then a bunch of module names. so easy. slay. ✨


πŸ¦‹ DESCRIPTION πŸ¦‹

okay so here's what mkify actually does: it copies installed BSDBuild include files from their system location into mk under the working directory. simple as that, no cap. πŸ’–

it takes a list of BSDBuild modules as arguments β€” for example, if you pass prog, that'll cause build.prog.mk(5) to be installed. and the icon πŸ‘‘ part? mkify also scans for include directives and automatically installs all the dependencies too. it does the homework for you, fr fr.

so like, the BSDBuild build system is designed to be bundled with applications as a stand-alone set of make(1) include files. those typically get installed in a directory named mk in the top-level directory (or some other central location) in an application source code β€” and the whole point is that people building apps which use the BSDBuild build system do not need to have BSDBuild or any other software installed on their systems. it's self-sufficient. main character energy. 🧚

now, you might be thinking "bestie, isn't needing a mk directory kind of a problem?" and honestly? the original page says the need may be perceived as a problem, but there are several advantages:

  1. Makefiles are not generated β€” they can be edited directly. BSDBuild will generate Makefiles only when performing concurrent builds (i.e., building object files in a directory separate from the source tree). πŸ™ˆ
  2. BSDBuild makefiles are orders of magnitude smaller than any generated Makefile, which avoids masses of redundant code. the way that's just efficient πŸ’€
  3. There is no Makefile.in, so the total number of files in your tree is reduced. less clutter, better vibes. 🌈

πŸ’œ SEE ALSO πŸ’œ

and if you wanna go deeper: http://hypertriton.com/bsdbuild/ πŸ”₯


ngl bestie, this whole thing is giving "small files, big brain." go forth and bundle. 🫢

mwah πŸ’‹ β€” this page came from Debian, dated JULY 19, 2007, and it lives in the MKIFY(1) chapter of your manual. bye queen, see you in the next make πŸŽ€

πŸ“¦ where this page comes from