[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