summaryrefslogtreecommitdiff
path: root/src/main/c/common/make-quickndirty.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/c/common/make-quickndirty.c')
-rw-r--r--src/main/c/common/make-quickndirty.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/main/c/common/make-quickndirty.c b/src/main/c/common/make-quickndirty.c
new file mode 100644
index 0000000..816d99e
--- /dev/null
+++ b/src/main/c/common/make-quickndirty.c
@@ -0,0 +1,18 @@
+#if 0 /* Template for QuickNDirty builds */
+
+ && CC=gcc \
+ && LD=gcc \
+ && OBJDUMP=objdump \
+ && BINEXT= \
+ && SRCFILE="src/path/to/input.c" \
+ && OBJFILE="/tmp/HDG4zsUwy697siH6" \
+ && OUTFILE="build/bin/out${BINEXT?}" \
+ && CFLAGS="-nostdlib -Wall -Wextra -Werror -pedantic -fmax-errors=1 -Iinclude" \
+ && LDFLAGS="-Wl,-nostdlib,-dn,-lgarbage,-lcJSON,-lmbedtls,-lmbedx509,-lmbedcrypto,-lexpat,-dy,-lpthread,-lgcc,-Lbuild/lib,-Limport/lib" \
+ && mkdir -p build/bin \
+ && ${CC:?} -c -o "${OBJFILE:?}" "${SRCFILE:?}" ${CFLAGS:?} \
+ && ${LD:?} -o "${OUTFILE:?}" "${OBJFILE:?}" ${LDFLAGS:?} \
+ && bullshit=$(${OBJDUMP?} -p "${OUTFILE:?}"|grep DLL\ Name|egrep -v ' (KERNEL32.dll|SHELL32.dll|WS2_32.dll|ADVAPI32.dll|msvcrt.dll)$'||true) \
+ && if test -n "$bullshit"; then printf '\n ERROR: Bullshit has sneaked in:\n\n%s\n\n' "$bullshit"; rm "${OUTFILE:?}"; false; fi \
+
+#endif