aboutsummaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
authorcomex2015-06-20 03:21:49 -0400
committercomex2015-06-20 03:21:49 -0400
commit5558f3331394ea0a9cad2aec1ca469e6a0406038 (patch)
tree4b0875bfcfdf705e1e251ad5fb2235578e3fa184 /configure
parentremove outdated note (diff)
downloadsubstitute-5558f3331394ea0a9cad2aec1ca469e6a0406038.tar.gz
We are actually emitting makefiles and building now (with make and ninja); some things remain for MVP though, like detecting makefile change, rebuilding in case of rule changes, helper functions...
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure26
1 files changed, 26 insertions, 0 deletions
diff --git a/configure b/configure
new file mode 100755
index 0000000..39163cb
--- /dev/null
+++ b/configure
@@ -0,0 +1,26 @@
+#!/usr/bin/env python2.7
+import mconfig
+settings = mconfig.settings_root
+settings.package_unix_name.value = 'substitute'
+
+c = settings.host_machine().c_tools()
+
+c.cc.required()
+
+mconfig.parse_args()
+settings.cflags = ['-I%s/lib' % (settings.src,)] + settings.cflags
+
+emitter = settings.emitter
+mconfig.build_and_link_c_objs(emitter, settings.host_machine(), settings,
+ 'dylib',
+ '(out)/libsubstitute.dylib',
+ [
+ '(src)/lib/darwin/find-syms.c',
+ '(src)/lib/darwin/inject.c',
+ '(src)/lib/darwin/interpose.c',
+ ]
+)
+# todo use wrapper
+emitter.add_command(['all'], [settings.out + '/libsubstitute.dylib'], [], phony=True)
+emitter.set_default_rule('all')
+mconfig.emit()