diff options
Diffstat (limited to 'lib/liballoc/build.jst')
| -rw-r--r-- | lib/liballoc/build.jst | 51 |
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 + |
