ELLCC(1)
π ELLCC(1) β the gen z bestie edition
okay so welcome to the General Commands Manual entry for ellcc, bestie. she's the girl who compiles your Emacs dynamic modules and she does NOT play. pull up a chair, grab a boba, we're doing this. π§β¨
πΈ NAME πΈ
ellcc β the program that compiles an emacs dynamic module. periodt. π
β¨ SYNOPSIS β¨
ellcc [--mode={compile,link,init,verbose}] [--mod-name=NAME] [--mod-
title=TITLE] [--mod-version=VERSION] [Any compiler command line args]
like. she takes options AND she takes your whole compiler command line. versatile queen. π
π¦ DESCRIPTION π¦
okay so this manual page documents ellcc, the command, briefly. and it exists specifically because the Debian GNU/Linux distribution needed one β the original program simply does not ship a manual page, so this one was written for Debian. no cap. π
and like, the following is taken directly from the comments in the source, so blame the source, not me. π
here's the scoop. they would really like this to be a shell script. like genuinely. but the various Windows platforms don't have reliable scripting that suits their needs, and they didn't want to depend on perl or some other such language, so they had to roll their own executable to act as a front-end for the compiler. iconic workaround behavior honestly. π
so this program is used to invoke the compiler, the linker, and to generate the module specific documentation and initialization code. we assume we are in compile mode unless we encounter an argument which tells us that we're not. she's lowkey assuming your vibe until you say otherwise. π
we take all arguments and pass them on directly to the compiler, except for a few which are specific to this program (those are the options down below, bestie, don't worry, we get to them).
the idea is that Makefiles will use ellcc as the compiler for making dynamic Emacs modules, and life should be as simple as:
make CC=ellcc LD='ellcc --mode=link'
the only additional requirement is an entry in the Makefile to produce the module initialization file, which will usually be something along the lines of... (see the EXAMPLE section, it's giving main character energy β).
π OPTIONS π
--mode=VALUEβ sets the program mode.VALUEcan be one ofcompile,link,initorverbose. pick your fighter. π--mod-name=NAMEβ sets the module name to the stringNAME. π·οΈ--mod-title=TITLEβ sets the module title to the stringTITLE. π--mod-version=VERSIONβ sets the module version to the stringVER. (yes the description saysVER, we're keeping it, the source said what the source said. π)
π EXAMPLE π
modinit.c: $(SRCS)
ellcc --mode=init --mod-name=
--mod-title=
-o $@ $(SRCS)
see the samples for more details. π«Ά
π AUTHOR π
this manual page was written by James LewisMoss <dres@debian.org>, for the Debian GNU/Linux system (but may be used by others). shoutout to the author, we love a documentation girlie. π
and that's the whole page bestie!! π this was ELLCC(1), manual name right there in the header, and down at the bottom of the original there's just ELLCC(1) again in the footer β no version number, no date, just the name sitting there serving absolutely nothing but vibes. iykyk. π stay compiling, stay slaying, fr fr. π
β¨π¦πΈπ
π¦ where this page comes from
- debian bookworm: xemacs21-bin 21.4.24-11
- ubuntu jammy: xemacs21-bin 21.4.24-9ubuntu2
- ubuntu noble: xemacs21-bin 21.4.24-12build3
- ubuntu resolute: xemacs21-bin 21.4.24-12build3
- ubuntu stonking: xemacs21-bin 21.4.24-12build3
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms