diff options
| author | Axel Souchet <0vercl0k@tuxfamily.org> | 2018-09-09 06:11:00 -0700 |
|---|---|---|
| committer | serpilliere <serpilliere@users.noreply.github.com> | 2018-09-09 15:11:00 +0200 |
| commit | 8e6b39d80e9f8db8389bd2a8106d0f64b91c19e9 (patch) | |
| tree | dbf342089690704e89c10532b83d1d81709a49f4 /miasm2/jitter/jitcore_llvm.py | |
| parent | e61116884ac7879db08313542c6c28a8b00297c5 (diff) | |
| download | focaccia-miasm-8e6b39d80e9f8db8389bd2a8106d0f64b91c19e9.tar.gz focaccia-miasm-8e6b39d80e9f8db8389bd2a8106d0f64b91c19e9.zip | |
Adds Windows support and AppVeyor CI (#835)
* Get miasm to work on Windows, also add AppVeyor CI * Fix gcc jitter on Linux * Make the dse_crackme tests work on Windows * calling build and then install is less confusing than install twice * fix os.rename race condition on Windows * clean it up * Clean up after the unused cl.exe's artifacts * Use is_win instead of an additional check * Fix issue on Windows where 'w' and 'wb' modes are different * Address review feedback * setuptools is actually not required, so reverting
Diffstat (limited to 'miasm2/jitter/jitcore_llvm.py')
| -rw-r--r-- | miasm2/jitter/jitcore_llvm.py | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/miasm2/jitter/jitcore_llvm.py b/miasm2/jitter/jitcore_llvm.py index ea4f20ec..6c7d47ac 100644 --- a/miasm2/jitter/jitcore_llvm.py +++ b/miasm2/jitter/jitcore_llvm.py @@ -5,18 +5,18 @@ import tempfile from miasm2.jitter.llvmconvert import * import miasm2.jitter.jitcore as jitcore import Jitllvm - +import platform class JitCore_LLVM(jitcore.JitCore): "JiT management, using LLVM as backend" # Architecture dependant libraries - arch_dependent_libs = {"x86": "JitCore_x86.so", - "arm": "JitCore_arm.so", - "msp430": "JitCore_msp430.so", - "mips32": "JitCore_mips32.so", - "aarch64": "JitCore_aarch64.so", - "ppc32": "JitCore_ppc32.so", + arch_dependent_libs = {"x86": "JitCore_x86", + "arm": "JitCore_arm", + "msp430": "JitCore_msp430", + "mips32": "JitCore_mips32", + "aarch64": "JitCore_aarch64", + "ppc32": "JitCore_ppc32", } def __init__(self, ir_arch, bin_stream): @@ -49,9 +49,10 @@ class JitCore_LLVM(jitcore.JitCore): # Get architecture dependant Jitcore library (if any) lib_dir = os.path.dirname(os.path.realpath(__file__)) lib_dir = os.path.join(lib_dir, 'arch') + ext = '.so' if platform.system() != 'Windows' else '.pyd' try: jit_lib = os.path.join( - lib_dir, self.arch_dependent_libs[self.ir_arch.arch.name]) + lib_dir, self.arch_dependent_libs[self.ir_arch.arch.name] + ext) libs_to_load.append(jit_lib) except KeyError: pass |