Author: Armin Rigo <[email protected]>
Branch: 
Changeset: r90890:2846cda12de2
Date: 2017-04-01 11:11 +0200
http://bitbucket.org/pypy/pypy/changeset/2846cda12de2/

Log:    Trying to fix the vmprof platform-conditionals

diff --git a/rpython/rlib/rvmprof/cintf.py b/rpython/rlib/rvmprof/cintf.py
--- a/rpython/rlib/rvmprof/cintf.py
+++ b/rpython/rlib/rvmprof/cintf.py
@@ -22,29 +22,31 @@
     SHARED.join('symboltable.c')
 ]
 if sys.platform.startswith('linux'):
-    separate_module_files += [
-       BACKTRACE.join('backtrace.c'),
-       BACKTRACE.join('state.c'),
-       BACKTRACE.join('elf.c'),
-       BACKTRACE.join('dwarf.c'),
-       BACKTRACE.join('fileline.c'),
-       BACKTRACE.join('mmap.c'),
-       BACKTRACE.join('mmapio.c'),
-       BACKTRACE.join('posix.c'),
-       BACKTRACE.join('sort.c'),
-    ]
+    if sys.maxint > 2**32:     # doesn't seem to compile on 32-bit Linux
+        separate_module_files += [
+           BACKTRACE.join('backtrace.c'),
+           BACKTRACE.join('state.c'),
+           BACKTRACE.join('elf.c'),
+           BACKTRACE.join('dwarf.c'),
+           BACKTRACE.join('fileline.c'),
+           BACKTRACE.join('mmap.c'),
+           BACKTRACE.join('mmapio.c'),
+           BACKTRACE.join('posix.c'),
+           BACKTRACE.join('sort.c'),
+        ]
+        compile_extra += ['-DVMPROF_BACKTRACE']
     _libs = ['dl']
     compile_extra += ['-DVMPROF_UNIX']
     compile_extra += ['-DVMPROF_LINUX']
-elif sys.platform == 'darwin':
+elif sys.platform == 'win32':
+    compile_extra = ['-DRPYTHON_VMPROF', '-DVMPROF_WINDOWS']
+    separate_module_files = [SHARED.join('vmprof_main_win32.c')]
+    _libs = []
+else:
+    # Guessing a BSD-like Unix platform
     compile_extra += ['-DVMPROF_UNIX']
     compile_extra += ['-DVMPROF_MAC']
     _libs = []
-else:
-    # windows
-    compile_extra = ['-DRPYTHON_VMPROF', '-DVMPROF_WINDOWS']
-    separate_module_files = [SHARED.join('vmprof_main_win32.c')]
-    _libs = []
 
 
 eci_kwds = dict(
diff --git a/rpython/rlib/rvmprof/src/shared/symboltable.c 
b/rpython/rlib/rvmprof/src/shared/symboltable.c
--- a/rpython/rlib/rvmprof/src/shared/symboltable.c
+++ b/rpython/rlib/rvmprof/src/shared/symboltable.c
@@ -8,7 +8,7 @@
 #include <stdlib.h>
 
 #include <dlfcn.h>
-#ifdef VMPROF_LINUX
+#ifdef VMPROF_BACKTRACE
 #include <link.h>
 #endif
 
@@ -215,7 +215,7 @@
         name[name_len-1] = 0;
     }
     lookup_vmprof_debug_info(name, info.dli_fbase, srcfile, srcfile_len, 
lineno);
-#elif defined(__unix__)
+#elif defined(RVMPROF_BACKTRACE)
     if (bstate == NULL) {
         bstate = backtrace_create_state (NULL, 1, backtrace_error_cb, NULL);
     }
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to