diff options
Diffstat (limited to 'build.jst.tmpl')
| -rw-r--r-- | build.jst.tmpl | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/build.jst.tmpl b/build.jst.tmpl new file mode 100644 index 0000000..7122b18 --- /dev/null +++ b/build.jst.tmpl @@ -0,0 +1,60 @@ +#default PREFIX /usr/local +#default INCLDIR /include +#default LIBDIR /lib +#default CC gcc + +#ifdef DEBUG +#define OPT_CFLAGS -Og -g +#else +#define OPT_CFLAGS -O2 +#endif + +cflags = -Wunused-function -Wunused-variable -Wconversion -Wformat + -I include -fPIC #{OPT_CFLAGS} #{EXTRA_CFLAGS} + +rule liba + gcc -o $out.tmp.o $in $cflags -r + objcopy --keep-global-symbols=libslip.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 libslip.lds + +rule cc + gcc -o $out $in $cflags + +rule mkdir + mkdir $out + +target build + mkdir + +target build/libslip.a + liba src/slip.c | include/slip.h build + +target build/libslip.so + libso src/slip.c | include/slip.h build + +target build/test + cc src/test.c build/libslip.a | build + +command clean + rm -rf build + +command cleanall + just clean + +command install + install -m755 build/libslip.a -t "#{DESTDIR}#{PREFIX}#{LIBDIR}" + install -m755 build/libslip.so -t "#{DESTDIR}#{PREFIX}#{LIBDIR}" + install -m644 include/slip.h -t "#{DESTDIR}#{PREFIX}#{INCLDIR}" + +command uninstall + rm -f "#{DESTDIR}#{PREFIX}#{LIBDIR}/libslip.a" + rm -f "#{DESTDIR}#{PREFIX}#{LIBDIR}/libslip.so" + rm -f "#{DESTDIR}#{PREFIX}#{INCLDIR}/slip.h" + +command all + just build/libslip.a build/libslip.so build/test + |
