]> granicus.if.org Git - pdns/commitdiff
add semistaticg++ wrapper
authorPeter van Dijk <peter.van.dijk@netherlabs.nl>
Mon, 5 Nov 2012 14:28:55 +0000 (14:28 +0000)
committerPeter van Dijk <peter.van.dijk@netherlabs.nl>
Mon, 5 Nov 2012 14:28:55 +0000 (14:28 +0000)
git-svn-id: svn://svn.powerdns.com/pdns/trunk/pdns@2849 d19b8d6e-7fed-0310-83ef-9ca221ded41b

build-scripts/semistaticg++ [new file with mode: 0755]

diff --git a/build-scripts/semistaticg++ b/build-scripts/semistaticg++
new file mode 100755 (executable)
index 0000000..4a7f1a0
--- /dev/null
@@ -0,0 +1,19 @@
+#!/usr/bin/env python
+import sys,os
+
+args = sys.argv[1:]
+if '-static' not in args:
+       os.execvp('g++', ['g++']+args)
+
+libs = []
+otherargs = []
+for arg in args:
+       if arg == '-static':
+               continue
+       if arg.startswith('-l') and arg not in ('-lm','-ldl','-lpthread'):
+               libs.append(arg)
+       else:
+               otherargs.append(arg)
+
+gargv=['gcc']+otherargs+['-Wl,-Bstatic']+libs+['-lstdc++','-Wl,-Bdynamic','-static-libgcc']
+os.execvp('gcc', gargv)