fpcmake(1)
β¨ fpcmake(1) β the Free Pascal makefile constructor, bestie edition β¨
okay so picture this: you're in the Free Pascal ecosystem and you need a Makefile, but writing one by hand is giving suffering. enter fpcmake, the Free Pascal makefile constructor program, aka your new best friend π«Ά
πΈ SYNOPSIS πΈ
fpcmake [-Ttarget] [-pwhrqvV] [filename [filename [filename]]]
π DESCRIPTION π
fpcmake reads a Makefile.fpc and converts it into a Makefile that's suitable for reading by GNU make, so it can compile your projects for you. no cap.
it's similar in functionality to GNU autoconf, or to Imake for making X projects. it's giving "we have build systems at home" but honestly? it ate. π
π USAGE π
fpcmake accepts filenames of makefile description files as its command-line arguments. for each of these files it will create a Makefile in the same directory where the file is located, overwriting any existing file with the same name. π yes, literally overwriting. she does not ask permission.
if no options are given, it just attempts to read the file Makefile.fpc in the current directory and tries to construct a Makefile from it. any previously existing Makefile will be erased. π
see fpcmake(5) for a description of the format of the Makefile.fpc file. iykyk.
β OPTIONS β
fpcmake has a small number of options to control its behaviour:
-hβ emit a short help text describing the use offpcmake. the "bestie explain" button π«Ά-pβ if this option is given, a package description file is generated as well as a makefile. two for one, slay β¨-qβ tellsfpcmaketo be more quiet, i.e. emit less messages. lowkey mode π€«-rβ if this option is given,fpcmakewill recursively scan subdirectories formakefile.fpcfiles and generate makefiles for them. it's going down the whole tree, no stone unturned, main character energy π-Tβ specifies the targets for whichfpcmakeshould generate makefiles. this can be a comma-separated list of target systems, or the special identifierallwhich indicates that a makefile should be generated for all supported platforms. periodt. π-vβ this option instructsfpcmaketo be more verbose. she's talking. a lot. π-Vβ printfpcmakeversion and exit. quick lil flex then bye π-wβ this is the standard option and tellsfpcmaketo generate a makefile. the default vibe check β
π¦ SEE ALSO π¦
heads up bestie:-rgoes digging recursively, and the plain no-args mode will straight up erase an existingMakefile. read the room before you run it. π
okay that's the whole page, mwah π this was Free Pascal, dated 11 Jan 2005 β iconic behavior from 2005, honestly, and she still slays. bye bestie! πΈπβ¨
π¦ where this page comes from
- arch rolling: fpc 3.2.2-11 Β· GPL AND LGPL AND custom
- epel 10: fpc 3.2.2-20.el10_1 Β· GPL-2.0-or-later AND LGPL-2.1-or-later WITH Independent-modules-exception
- epel 9: fpc 3.2.2-10.el9 Β· GPLv2+ and LGPLv2+ with exceptions
- fedora 43: fpc 3.2.2-20.fc43 Β· GPL-2.0-or-later AND LGPL-2.1-or-later WITH Independent-modules-exception
- fedora 43: fpc 3.2.2-20.fc43 Β· GPL-2.0-or-later AND LGPL-2.1-or-later WITH Independent-modules-exception
- fedora 44: fpc 3.2.4~rc1-3.fc44 Β· GPL-2.0-or-later AND LGPL-2.1-or-later WITH Independent-modules-exception
- fedora 44: fpc 3.2.4~rc1-3.fc44 Β· GPL-2.0-or-later AND LGPL-2.1-or-later WITH Independent-modules-exception
- nixos 26.05: fpc 3.2.2
- nixos 26.05: lazarus-gtk2 4.4-0
- nixos 26.05: lazarus-qt5 4.4-0
- nixos 26.05: lazarus-qt6 4.4-0
- nixpkgs unstable: fpc 3.2.2
- nixpkgs unstable: lazarus-cocoa 4.8-0
- nixpkgs unstable: lazarus-gtk3 4.8-0
- nixpkgs unstable: lazarus-qt5 4.8-0
- nixpkgs unstable: lazarus-qt6 4.8-0
- opensuse-leap 16.0: fpc 3.2.2-bp160.1.35 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- opensuse-leap 16.0: fpc 3.2.2-bp160.1.35 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- opensuse-leap 16.0: fpc 3.2.2-bp160.1.35 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms