| ##===- source/Interpreter/Makefile ------------------------*- Makefile -*-===## |
| # |
| # The LLVM Compiler Infrastructure |
| # |
| # This file is distributed under the University of Illinois Open Source |
| # License. See LICENSE.TXT for details. |
| # |
| ##===----------------------------------------------------------------------===## |
| |
| LLDB_LEVEL := ../.. |
| LIBRARYNAME := lldbInterpreter |
| BUILD_ARCHIVE = 1 |
| include $(LLDB_LEVEL)/../../Makefile.config |
| |
| ifneq ($(HOST_OS),MingW) |
| ifeq (,$(findstring -DLLDB_DISABLE_PYTHON,$(CXXFLAGS))) |
| DO_BUILD_LLDBWrapPython = 1 |
| BUILT_SOURCES := LLDBWrapPython.cpp |
| endif |
| endif |
| |
| include $(LLDB_LEVEL)/Makefile |
| -include $(PROJ_OBJ_DIR)/LLDBWrapPython.cpp.d |
| |
| ifeq ($(DO_BUILD_LLDBWrapPython),1) |
| # Drop -Wfour-char-constants, which we are not currently clean with. |
| EXTRA_OPTIONS += -Wno-four-char-constants |
| |
| # Drop -Wself-assign, -Wmissing-field-initializers, -Wsometimes-uninitialized, |
| # -Wcast-qual, and -Wdeprecated-register which we are not clean with due to SWIG |
| # generated cpp source. |
| EXTRA_OPTIONS += -Wno-missing-field-initializers -Wno-self-assign -Wno-sometimes-uninitialized -Wno-cast-qual -Wno-deprecated-register |
| |
| PYTHON_DIR := $(PROJ_OBJ_ROOT)/$(BuildMode) |
| |
| SWIG_SOURCES := $(shell find $(PROJ_SRC_DIR)/$(LLDB_LEVEL)/scripts -type f -name '*.swig' -print) |
| |
| LLDBWrapPython.cpp lldb.py: $(PROJ_SRC_DIR)/$(LLDB_LEVEL)/scripts/Python/modify-python-lldb.py \ |
| $(wildcard $(PROJ_SRC_DIR)/$(LLDB_LEVEL)/scripts/interface/*.i) \ |
| ${SWIG_SOURCES} |
| $(Echo) Generating LLDBWrapPython.cpp |
| $(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) |
| $(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 |
| |
| install-local:: lldb.py |
| $(Echo) Installing $(BuildMode) LLDB python modules |
| $(Verb) "$(PROJ_SRC_DIR)/$(LLDB_LEVEL)/scripts/finish-swig-wrapper-classes.sh" "$(PROJ_SRC_DIR)/$(LLDB_LEVEL)" "$(PROJ_OBJ_DIR)" "$(PROJ_OBJ_DIR)" "$(DESTDIR)$(prefix)" -m |
| |
| clean-local:: |
| $(Verb) $(RM) -f LLDBWrapPython.cpp lldb.py |
| endif |