summaryrefslogtreecommitdiffstats
path: root/lib/liballoc/build.jst
diff options
context:
space:
mode:
authorLouis Burda <quent.burda@gmail.com>2024-10-02 03:56:19 +0200
committerLouis Burda <quent.burda@gmail.com>2024-10-02 03:58:38 +0200
commit897ff51fdb9bccb90415d1bcd54541640dba4465 (patch)
tree79e1605d790d54ffe619cfd7791f13507a744217 /lib/liballoc/build.jst
parent23df461346fac31009f48ab577c3ad0c837b5f7d (diff)
downloadlibtabular-c-master.tar.gz
libtabular-c-master.zip
Rename to rmkHEADmaster
Diffstat (limited to 'lib/liballoc/build.jst')
-rw-r--r--lib/liballoc/build.jst51
1 files changed, 51 insertions, 0 deletions
diff --git a/lib/liballoc/build.jst b/lib/liballoc/build.jst
new file mode 100644
index 0000000..f590d49
--- /dev/null
+++ b/lib/liballoc/build.jst
@@ -0,0 +1,51 @@
+
+
+cflags = -Wunused-function -Wunused-variable -Wconversion -Wformat
+ -I include -O2
+
+rule liba
+ gcc -o $out.tmp.o $in $cflags -r
+ objcopy --keep-global-symbols=liballoc.api $out.tmp.o $out.fixed.o
+ ar rcs $out $out.fixed.o
+ rm $out.tmp.o $out.fixed.o
+
+rule libso
+ gcc -o $out $in $cflags -shared -Wl,-version-script liballoc.lds
+
+rule cc
+ gcc -o $out $in $cflags
+
+rule mkdir
+ mkdir $out
+
+target build
+ mkdir
+
+target build/liballoc.a
+ liba src/allocator.c | include/allocator.h build
+
+target build/liballoc.so
+ libso src/allocator.c | include/allocator.h build
+
+target build/test
+ cc src/test.c build/liballoc.a | build
+
+command clean
+ rm -rf build
+
+command cleanall
+ just clean
+
+command install
+ install -m755 build/liballoc.a -t "/usr/local/lib"
+ install -m755 build/liballoc.so -t "/usr/local/lib"
+ install -m644 include/allocator.h -t "/usr/local/include"
+
+command uninstall
+ rm -f "/usr/local/lib/liballoc.a"
+ rm -f "/usr/local/lib/liballoc.so"
+ rm -f "/usr/local/include/allocator.h"
+
+command all
+ just build/liballoc.a build/liballoc.so build/test
+