Pdpmake
Public domain POSIX make
Install / Use
/learn @rmyorston/PdpmakeREADME
Public domain POSIX make
This is an implementation of POSIX make.
It should build on most modernish Unix-style systems:
-
It comes with its own makefile, naturally, but if you don't have a
makebinary already the commandcc -o make *.cshould get you started. -
Command line options may not work properly due to differences in how
getopt(3)is reset. AdjustGETOPT_RESET()in make.h for your platform, if necessary. -
Building on MacOS may require a command like:
make CFLAGS="-D_DARWIN_C_SOURCE -Dst_mtim=st_mtimespec"
Microsoft Windows users will find pdpmake included in the
BusyBox for Windows binaries.
Download an appropriate binary for your system and rename it make.exe or
pdpmake.exe. BusyBox for Windows includes a Unix shell and many utilities.
These can be used in Makefiles without any further setup.
The default configuration enables some non-POSIX extensions. Generally these are compatible with GNU make:
- double-colon rules
ifdef/ifndef/ifeq/ifneq/else/endifconditionalslib.a(mem1.o mem2.o...)syntax for archive members:=macro assignments (equivalent to POSIX::=)- chained inference rules
*/?/[]wildcards for filenames in target rules- the
$<and$*internal macros are valid for target rules - skip duplicate entries in
$? -C directorycommand line option#doesn't start a comment in macro expansions or build commands#may be escaped with a backslash- macro definitions and targets can be mixed on the command line
When extensions are enabled adding the .POSIX target to your makefile
will disable them. Other versions of make tend to allow extensions even
in POSIX mode.
Setting the environment variable PDPMAKE_POSIXLY_CORRECT (its value
doesn't matter) or giving the --posix option as the first on the
command line also turn off extensions.
Additional information and release notes are available.
Related Skills
node-connect
351.8kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
110.9kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
351.8kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
351.8kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
