-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
68 lines (60 loc) · 1.83 KB
/
Copy pathCMakeLists.txt
File metadata and controls
68 lines (60 loc) · 1.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
# We need SWIG
FIND_PACKAGE(SWIG REQUIRED)
INCLUDE(${SWIG_USE_FILE})
# Add Python
FIND_PACKAGE(PythonLibs)
INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH})
# Add AsmJit
SET(ASMJIT_BASE ${CMAKE_CURRENT_SOURCE_DIR}/deps/AsmJit-1.0-beta4)
SET(ASMJIT_DIR ${ASMJIT_BASE}/AsmJit)
# AsmJit sources
SET(ASMJIT_SOURCES
${ASMJIT_DIR}/AssemblerX86X64.cpp
${ASMJIT_DIR}/CodeGenerator.cpp
${ASMJIT_DIR}/Compiler.cpp
${ASMJIT_DIR}/CompilerX86X64.cpp
${ASMJIT_DIR}/CpuInfo.cpp
${ASMJIT_DIR}/Defs.cpp
${ASMJIT_DIR}/DefsX86X64.cpp
${ASMJIT_DIR}/Logger.cpp
${ASMJIT_DIR}/MemoryManager.cpp
${ASMJIT_DIR}/MemoryMarker.cpp
${ASMJIT_DIR}/OperandX86X64.cpp
${ASMJIT_DIR}/Platform.cpp
${ASMJIT_DIR}/Util.cpp
)
# AsmJit C++ headers
SET(ASMJIT_HEADERS
${ASMJIT_DIR}/ApiBegin.h
${ASMJIT_DIR}/ApiEnd.h
${ASMJIT_DIR}/AsmJit.h
${ASMJIT_DIR}/Assembler.h
${ASMJIT_DIR}/AssemblerX86X64.h
${ASMJIT_DIR}/Build.h
${ASMJIT_DIR}/CodeGenerator.h
${ASMJIT_DIR}/Compiler.h
${ASMJIT_DIR}/CompilerX86X64.h
${ASMJIT_DIR}/Config.h
${ASMJIT_DIR}/CpuInfo.h
${ASMJIT_DIR}/Defs.h
${ASMJIT_DIR}/DefsX86X64.h
${ASMJIT_DIR}/Logger.h
${ASMJIT_DIR}/MemoryManager.h
${ASMJIT_DIR}/MemoryMarker.h
${ASMJIT_DIR}/Operand.h
${ASMJIT_DIR}/OperandX86X64.h
${ASMJIT_DIR}/Platform.h
${ASMJIT_DIR}/Util.h
${ASMJIT_DIR}/Util_p.h
)
INCLUDE_DIRECTORIES(${ASMJIT_BASE})
# Setup output directories
SET(LIBRARY_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/lib)
SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/bin)
SET(CMAKE_SWIG_FLAGS "")
SET(CMAKE_SWIG_OUTDIR "lib")
SET_SOURCE_FILES_PROPERTIES(swig/AsmJitLib.i PROPERTIES CPLUSPLUS ON)
SET_SOURCE_FILES_PROPERTIES(swig/AsmJitLib.i SWIG_FLAGS "-includeall")
SWIG_ADD_MODULE(AsmJitLib python swig/AsmJitLib.i ${ASMJIT_SOURCES})
SWIG_LINK_LIBRARIES(AsmJitLib ${PYTHON_LIBRARIES})