aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xtools/emmaken.py12
-rwxr-xr-xtools/emmakenxx.py3
2 files changed, 8 insertions, 7 deletions
diff --git a/tools/emmaken.py b/tools/emmaken.py
index 76c2e9c8..cc98a01e 100755
--- a/tools/emmaken.py
+++ b/tools/emmaken.py
@@ -17,7 +17,7 @@ Example uses:
* With configure, do something like
- EMMAKEN_JUST_CONFIGURE=1 RANLIB=PATH/emmaken.py AR=PATH/emmaken.py CXX=PATH/emmaken.py CC=PATH/emmaken.py ./configure [options]
+ EMMAKEN_JUST_CONFIGURE=1 RANLIB=PATH/emmaken.py AR=PATH/emmaken.py CXX=PATH/emmakenxx.py CC=PATH/emmaken.py ./configure [options]
where PATH is the path to this file.
@@ -68,7 +68,7 @@ exec(open(path_from_root('tools', 'shared.py'), 'r').read())
CONFIGURE_CONFIG = os.environ.get('EMMAKEN_JUST_CONFIGURE')
CMAKE_CONFIG = 'CMakeFiles/cmTryCompileExec.dir' in ' '.join(sys.argv)# or 'CMakeCCompilerId' in ' '.join(sys.argv)
if CONFIGURE_CONFIG or CMAKE_CONFIG:
- compiler = 'g++' if 'CXXCompiler' in ' '.join(sys.argv) else 'gcc'
+ compiler = 'g++' if 'CXXCompiler' in ' '.join(sys.argv) or os.environ.get('EMMAKEN_CXX') else 'gcc'
exit(os.execvp(compiler, [compiler] + sys.argv[1:]))
try:
@@ -85,9 +85,8 @@ try:
CC = to_cc(CXX)
# If we got here from a redirection through emmakenxx.py, then force a C++ compiler here
- if sys.argv[-1] == '-EMMAKEN_CXX':
+ if os.environ.get('EMMAKEN_CXX'):
CC = CXX
- sys.argv = sys.argv[:-1]
CC_ARG_SKIP = ['-O1', '-O2', '-O3']
CC_ADDITIONAL_ARGS = ['-m32', '-g', '-U__i386__', '-U__x86_64__', '-U__i386', '-U__x86_64', '-U__SSE__', '-U__SSE2__', '-UX87_DOUBLE_ROUNDING', '-UHAVE_GCC_ASM_FOR_X87']
@@ -113,7 +112,8 @@ try:
opts = []
files = []
- for arg in sys.argv[1:]:
+ for i in range(1, len(sys.argv)):
+ arg = sys.argv[i]
if arg.startswith('-'):
opts.append(arg)
else:
@@ -122,7 +122,7 @@ try:
use_cxx = False
if arg.endswith(('.c', '.cc', '.cpp', '.dT')):
use_linker = False
- if arg.endswith('.h'):
+ if arg.endswith('.h') and sys.argv[i-1] != '-include':
header = True
use_linker = False
diff --git a/tools/emmakenxx.py b/tools/emmakenxx.py
index e271d765..3fd434a4 100755
--- a/tools/emmakenxx.py
+++ b/tools/emmakenxx.py
@@ -12,5 +12,6 @@ def path_from_root(*pathelems):
exec(open(path_from_root('tools', 'shared.py'), 'r').read())
emmaken = path_from_root('tools', 'emmaken.py')
-exit(os.execvp('python', ['python', emmaken] + sys.argv[1:] + ['-EMMAKEN_CXX']))
+os.environ['EMMAKEN_CXX'] = '1'
+exit(os.execvp('python', ['python', emmaken] + sys.argv[1:]))