summaryrefslogtreecommitdiff
path: root/pkg/libffi/gen.lua
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2017-09-17 00:03:34 -0700
committerMichael Forney <mforney@mforney.org>2017-09-25 19:23:06 -0700
commitba94a8513d9a0aadb3f2c834c74b64aa644c61e8 (patch)
tree48ac6c85baa7b9d960b9e1e726a906e61ca60967 /pkg/libffi/gen.lua
parentcb362b531d79708a259bbf070dee5104fd63df08 (diff)
Rewrite ninja generation scripts in Lua
Diffstat (limited to 'pkg/libffi/gen.lua')
-rw-r--r--pkg/libffi/gen.lua30
1 files changed, 30 insertions, 0 deletions
diff --git a/pkg/libffi/gen.lua b/pkg/libffi/gen.lua
new file mode 100644
index 00000000..55bdb8a1
--- /dev/null
+++ b/pkg/libffi/gen.lua
@@ -0,0 +1,30 @@
+cflags{
+ '-I include',
+ '-I $dir',
+ '-I $outdir/include',
+ '-I $srcdir/include',
+}
+
+build('sed', '$outdir/include/ffi.h', '$srcdir/include/ffi.h.in', {
+ expr={
+ '-e s,@VERSION@,3.2.1,',
+ '-e s,@TARGET@,X86_64,',
+ '-e s,@HAVE_LONG_DOUBLE@,1,',
+ '-e s,@HAVE_LONG_DOUBLE_VARIANT@,0,',
+ '-e s,@FFI_EXEC_TRAMPOLINE_TABLE@,0,',
+ },
+})
+
+pkg.hdrs = {
+ copy('$outdir/include', '$srcdir/src/x86', {'ffitarget.h'}),
+ '$outdir/include/ffi.h',
+ install=true,
+}
+
+lib('libffi.a', [[src/(
+ prep_cif.c types.c raw_api.c java_raw_api.c closures.c
+ x86/(ffi64.c unix64.S ffi.c sysv.S)
+)]], {'$dir/headers'})
+file('lib/libffi.a', '644', '$outdir/libffi.a')
+
+fetch 'git'