1511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall##===- source/Interpreter/Makefile  ------------------------*- Makefile -*-===##
2511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall# 
3511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall#                     The LLVM Compiler Infrastructure
4511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall#
5511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall# This file is distributed under the University of Illinois Open Source
6511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall# License. See LICENSE.TXT for details.
7511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall# 
8511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall##===----------------------------------------------------------------------===##
9511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall
10511eca30a483e912c274e1d8ba3a0f8f081e2227JP AbgrallLLDB_LEVEL := ../..
11511eca30a483e912c274e1d8ba3a0f8f081e2227JP AbgrallLIBRARYNAME := lldbInterpreter
12511eca30a483e912c274e1d8ba3a0f8f081e2227JP AbgrallBUILD_ARCHIVE = 1
13511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall
14511eca30a483e912c274e1d8ba3a0f8f081e2227JP AbgrallBUILT_SOURCES := LLDBWrapPython.cpp
15511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall
16511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrallinclude $(LLDB_LEVEL)/Makefile
17511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall-include $(PROJ_OBJ_DIR)/LLDBWrapPython.cpp.d
18511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall
19511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall# Drop -Wfour-char-constants,  which we are not currently clean with.
20511eca30a483e912c274e1d8ba3a0f8f081e2227JP AbgrallEXTRA_OPTIONS += -Wno-four-char-constants
21511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall
22511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall# Drop -Wself-assign, -Wmissing-field-initializers and -Wsometimes-uninitialized,
23511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall# which we are not currently clean with (due to SWIG generated cpp source).
24511eca30a483e912c274e1d8ba3a0f8f081e2227JP AbgrallEXTRA_OPTIONS += -Wno-missing-field-initializers -Wno-self-assign -Wno-sometimes-uninitialized
25511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall
26511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall# edit-swig-python-wrapper-file.py needs $(SRCROOT)
27511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrallexport SRCROOT := $(PROJ_SRC_DIR)/$(LLDB_LEVEL)
28511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall
29511eca30a483e912c274e1d8ba3a0f8f081e2227JP AbgrallPYTHON_DIR := $(PROJ_OBJ_ROOT)/$(BuildMode)
30511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall
31511eca30a483e912c274e1d8ba3a0f8f081e2227JP AbgrallLLDBWrapPython.cpp lldb.py: $(PROJ_SRC_DIR)/$(LLDB_LEVEL)/scripts/Python/modify-python-lldb.py \
32511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall                            $(PROJ_SRC_DIR)/$(LLDB_LEVEL)/scripts/Python/edit-swig-python-wrapper-file.py \
33511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall                            $(wildcard $(PROJ_SRC_DIR)/$(LLDB_LEVEL)/scripts/Python/interface/*.i)
34511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall	$(Echo) Generating LLDBWrapPython.cpp
35511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall	$(Verb) "$(PROJ_SRC_DIR)/$(LLDB_LEVEL)/scripts/build-swig-wrapper-classes.sh" "$(PROJ_SRC_DIR)/$(LLDB_LEVEL)" "$(PROJ_OBJ_DIR)" "$(PROJ_OBJ_DIR)" "$(PYTHON_DIR)" -m $(if $(DISABLE_AUTO_DEPENDENCIES),,-M)
36511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall	$(Verb) "$(PROJ_SRC_DIR)/$(LLDB_LEVEL)/scripts/finish-swig-wrapper-classes.sh" "$(PROJ_SRC_DIR)/$(LLDB_LEVEL)" "$(PROJ_OBJ_DIR)" "$(PROJ_OBJ_DIR)" "$(PYTHON_DIR)" -m
37511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall
38511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrallinstall-local:: lldb.py
39511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall	$(Echo) Installing $(BuildMode) LLDB python modules
40511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall	$(Verb) "$(PROJ_SRC_DIR)/$(LLDB_LEVEL)/scripts/finish-swig-wrapper-classes.sh" "$(PROJ_SRC_DIR)/$(LLDB_LEVEL)" "$(PROJ_OBJ_DIR)" "$(PROJ_OBJ_DIR)" "" -m
41511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall
42511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrallclean-local::
43511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall	$(Verb) $(RM) -f LLDBWrapPython.cpp lldb.py
44511eca30a483e912c274e1d8ba3a0f8f081e2227JP Abgrall