RAKE-COMPILER(1)
π RAKE-COMPILER π
okay bestie, gather round, because we're talking about rake-compiler, the Rake-based Ruby Extension (C, Java) task generator β¨ β and no, it's not a compiler for rake, it's a whole vibe for building native gems. Let's go π«Ά
πΈ NAME πΈ
rake-compiler β a Rake-based Ruby Extension (C, Java) task generator. that's the whole thing. iconic. π
β¨ DESCRIPTION β¨
okay so first things first: Rake-compiler is first and foremost a productivity tool for Ruby developers π₯ its whole goal is to make the busy developer's life easier by simplifying the building and packaging of Ruby extensions β by simplifying code and reducing duplication. less copy-paste suffering, more slay.
it follows convention over configuration by advocating a standardized build and package structure for both C and Java based RubyGems. no cap. one structure, everybody knows where things go, we all thrive π
and ngl, rake-compiler is the result of many hard-won experiences dealing with several diverse RubyGems that provided native extensions for different platforms and different user configurations in different ways π like, details such as differences in code portability, differences in code clarity, and differences in project directory structure often made it very difficult for newcomers to those RubyGems. so this tool exists so that new people can actually walk in the door without getting lost. bestie behavior fr fr π
π USAGE π
the shape of it, exactly as it is:
rake-compiler [-f rakefile] {options} targets...
that's the whole recipe. options in, targets out. β¨
π OPTIONS π
here's every single flag, no skips, no shortcuts, we keep all of them because that's the rules π
--backtrace=[OUT]β turn on the full backtrace.OUTcan bestderr(which is the default) orstdout. pick your channel bestie π¦--commentsβ show commented tasks only. only the ones with commentary β¨--job-stats [LEVEL]β display job statistics.LEVEL=historydisplays a complete job list π--rulesβ trace the rules resolution. watch the rules do their thing π--suppress-backtrace PATTERNβ suppress backtrace lines matching the regexpPATTERN. ignored if--traceis on. so don't be surprised when it does nothing while tracing, that's just how it is π-A,--allβ show all tasks, even uncommented ones (in combination with-Tor-D) π-B,--build-allβ build all prerequisites, including those which are up-to-date. yes, even the fresh ones. rebuild everything, no fear π₯-D,--describe [PATTERN]β describe the tasks (matching the optionalPATTERN), then exit. π¬-e,--execute CODEβ execute some Ruby code and exit. hit it and quit it β¨-E,--execute-continue CODEβ execute some Ruby code, then continue with normal task processing. code first, then business as usual π«Ά-f,--rakefile [FILENAME]β useFILENAMEas the rakefile to search for. π-G,--no-system,--nosystemβ use standard project Rakefile search paths, ignore system wide rakefiles. bye system files π-g,--systemβ using system wide (global) rakefiles (usually~/.rake/*.rake). π-I,--libdir LIBDIRβ includeLIBDIRin the search path for required modules. π§-j,--jobs [NUMBER]β specifies the maximum number of tasks to execute in parallel. (default is number of CPU cores + 4) β parallel queen energy π-m,--multitaskβ treat all tasks as multitasks. everything's a multitask now, we don't discriminate π-n,--dry-runβ do a dry run without executing actions. look, don't touch π-N,--no-search,--nosearchβ do not search parent directories for the Rakefile. stay in your lane, parents π«-P,--prereqsβ display the tasks and dependencies, then exit. π-p,--execute-print CODEβ execute some Ruby code, print the result, then exit. π¨οΈ-q,--quietβ do not log messages to standard output. shhh π€«-r,--require MODULEβ requireMODULEbefore executing rakefile. π¦-R,--rakelibdir RAKELIBDIR,β auto-import any.rakefiles inRAKELIBDIR. (default is'rakelib') ποΈ--rakelibβ π-s,--silentβ like--quiet, but also suppresses the'in directory'announcement. extra quiet. silent but deadly π-t,--trace=[OUT]β turn on invoke/execute tracing, enable full backtrace.OUTcan bestderr(the default) orstdout. π΅οΈ-T,--tasks [PATTERN]β display the tasks (matching the optionalPATTERN) with descriptions, then exit.-ATcombination displays all of tasks contained no description. π-v,--verboseβ log message to standard output. tell me everything π£οΈ-V,--versionβ display the program version. π-W,--where [PATTERN]β describe the tasks (matching the optionalPATTERN), then exit. π-X,--no-deprecation-warningsβ disable the deprecation warnings. we're ignoring the past, don't perceive it π-h,-H,--helpβ display this help message. hi bestie, here's the menu π«Ά
π AUTHOR π
this manual page was written by Youhei SASAKI <uwabami@gfd-dennou.org>, for the Debian GNU/Linux system (but may be used by others). shoutout to the author, absolute legend, main character energy π
and that's the whole page bestie, you made it to the end, i'm so proud π
rake-compiler 1.0.5 Β· September 2018 β that's the version and date, and that's a wrap. go build something native and gorgeous, you've got this π¦πβ¨
π¦ where this page comes from
- debian bookworm: rake-compiler 1.2.1-1 Β· MIT
- debian trixie: rake-compiler 1.2.5-2 Β· MIT
- ubuntu jammy: rake-compiler 1.1.1-1 Β· MIT
- ubuntu noble: rake-compiler 1.2.5-1 Β· MIT
- ubuntu questing: rake-compiler 1.2.5-2
- ubuntu resolute: rake-compiler 1.3.1-1 Β· MIT
- ubuntu stonking: rake-compiler 1.3.1-1 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms