[lldb-dev] LLDB doesn't compile on OS X
Zachary Turner
zturner at google.com
Wed Feb 4 07:43:23 PST 2015
I'm not a cmake expert, but what is the correct way of detecting debug vs.
release, even if the user has not specified CMAKE_BUILD_TYPE explicitly?
On Wed, Feb 4, 2015 at 1:47 AM kutio <kutioo at gmail.com> wrote:
> Hello guys !
>
> I was not able to compile the python lldb support because of
> scripts/finishSwigWrapperClasses.py.
>
> I found the problem it's because the --buildConfig parameter was empty.
> And since the commit below, this parameter is mandatory :
>
> git show b84a8a0216a8ee3e2b6c7e963de5bc2c78ece61d
> commit b84a8a0216a8ee3e2b6c7e963de5bc2c78ece61d
> Author: Zachary Turner <zturner at google.com>
> Date: Thu Jul 17 20:36:14 2014 +0000
>
> Create an _d suffixed symlink when doing a debug Windows build.
>
> _lldb is built as an extension module on Windows. Normally to load
> an extension module named 'foo', Python would look for the file
> 'foo.pyd'. However, when a debug interpreter is used, Python will
> look for the file 'foo_d.pyd'. This change checks the build
> configuration and creates the correct symlink name based on the
> build configuration.
>
> I found a workaround at the moment but this not sustainable because I
> think this parameter was introduced for good reasons :
>
> ff --git a/scripts/finishSwigWrapperClasses.py
> b/scripts/finishSwigWrapperClasses.py
> index 0fe7dec..3fddecf 100644
> --- a/scripts/finishSwigWrapperClasses.py
> +++ b/scripts/finishSwigWrapperClasses.py
> @@ -172,7 +172,7 @@ def validate_arguments( vArgv ):
> "--srcRoot": "m",
> "--targetDir": "m",
> "--cfgBldDir": "o",
> - "--buildConfig": "m",
> + "--buildConfig": "o",
> "--prefix": "o",
> "--cmakeBuildConfiguration": "o",
> "--argsFile": "o" };
> diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt
> index b4421fc..048dc5a 100644
> --- a/source/CMakeLists.txt
> +++ b/source/CMakeLists.txt
> @@ -176,7 +176,7 @@ if ( LLDB_ENABLE_PYTHON_SCRIPTS_SWIG_API_GENERATION )
> add_custom_command( TARGET liblldb
> POST_BUILD
> DEPENDS
> ${CMAKE_CURRENT_SOURCE_DIR}/../scripts/finishSwigWrapperClasses.py
> - COMMAND ${PYTHON_EXECUTABLE}
> ${CMAKE_CURRENT_SOURCE_DIR}/../scripts/finishSwigWrapperClasses.py
> --buildConfig=${CMAKE_BUILD_TYPE} "--srcRoot=${LLDB_SOURCE_DIR}"
> "--targetDir=${CMAKE_CURRENT_BINARY_DIR}/../scripts"
> "--cfgBldDir=${CMAKE_CURRENT_BINARY_DIR}/../scripts"
> "--prefix=${CMAKE_BINARY_DIR}"
> "--cmakeBuildConfiguration=${CMAKE_CFG_INTDIR}" -m
> + COMMAND ${PYTHON_EXECUTABLE}
> ${CMAKE_CURRENT_SOURCE_DIR}/../scripts/finishSwigWrapperClasses.py
> "--srcRoot=${LLDB_SOURCE_DIR}"
> "--targetDir=${CMAKE_CURRENT_BINARY_DIR}/../scripts"
> "--cfgBldDir=${CMAKE_CURRENT_BINARY_DIR}/../scripts"
> "--prefix=${CMAKE_BINARY_DIR}"
> "--cmakeBuildConfiguration=${CMAKE_CFG_INTDIR}" -m
> COMMENT "Python script sym-linking LLDB Python API")
> endif ()
> endif ()
>
> We should understand why with OS X CMakefile this parameter is empty.
>
> Regards
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20150204/a0611519/attachment.html>
More information about the lldb-dev
mailing list