This is an archive of the discontinued LLVM Phabricator instance.

[lldb] Build lldb-mi with cmake on Linux only
AbandonedPublic

Authored by emaste on May 26 2014, 5:58 AM.

Details

Reviewers
chilledheart
Summary

According to tools/Makefile rL209117

ifeq ($(HOST_OS),Linux)
DIRS += lldb-mi
endif

lldb-mi should be built with cmake on Linux only

Diff Detail

Event Timeline

chilledheart retitled this revision from to [lldb] Build lldb-mi with cmake on Linux only.
chilledheart updated this object.
chilledheart edited the test plan for this revision. (Show Details)
chilledheart added a subscriber: Unknown Object (MLST).
emaste requested changes to this revision.May 26 2014, 6:00 AM
emaste added a reviewer: emaste.
emaste added a subscriber: emaste.

Actually the bug is that Makefile builds it only for Linux; it should be changed there.

This revision now requires changes to proceed.May 26 2014, 6:00 AM
chilledheart added a comment.EditedMay 26 2014, 6:12 AM

In fact, lldb-mi prevents lldb from being built with cmake(Ninja) under osx 10.9.
Below is part of building log:

[1/9] Linking CXX executable bin/llvm-config
[2/9] cd /Users/chilledheart/tmp/tools/lldb/scripts && echo -n
-n
[3/9] Building CXX object tools/lldb/tools/lldb-mi/CMakeFiles/lldb-mi.dir/MIUtilFileStd.cpp.o
[4/9] Building CXX object tools/lldb/tools/lldb-mi/CMakeFiles/lldb-mi.dir/MICmnMIValueConst.cpp.o
[5/9] Building CXX object tools/lldb/tools/lldb-mi/CMakeFiles/lldb-mi.dir/MICmnMIValueResult.cpp.o
[6/9] Building CXX object tools/lldb/tools/lldb-mi/CMakeFiles/lldb-mi.dir/MICmnStreamStdin.cpp.o
[7/9] Building CXX object tools/lldb/tools/lldb-mi/CMakeFiles/lldb-mi.dir/MICmnThreadMgrStd.cpp.o
FAILED: /usr/bin/clang++  -std=c++1y -stdlib=libc++  -DNDEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -stdlib=libc++ -fPIC -fvisibility-inlines-hidden -Wall -W -Wno-unused-parameter -Wwrite-strings -Wmissing-field-initializers -pedantic -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor -std=c++1y -fcolor-diagnostics -std=c++11 -Wno-deprecated-declarations -Wno-unknown-pragmas -Wno-deprecated-register -fno-rtti -Itools/lldb/tools/lldb-mi -I/Users/chilledheart/llvm/tools/lldb/tools/lldb-mi -I/Users/chilledheart/llvm/tools/lldb/include -Itools/lldb/include -Iinclude -I/Users/chilledheart/llvm/include -I/System/Library/Frameworks/Python.framework/Headers -I/Users/chilledheart/llvm/tools/lldb/../clang/include -Itools/lldb/../clang/include -MMD -MT tools/lldb/tools/lldb-mi/CMakeFiles/lldb-mi.dir/MIUtilFileStd.cpp.o -MF "tools/lldb/tools/lldb-mi/CMakeFiles/lldb-mi.dir/MIUtilFileStd.cpp.o.d" -o tools/lldb/tools/lldb-mi/CMakeFiles/lldb-mi.dir/MIUtilFileStd.cpp.o -c /Users/chilledheart/llvm/tools/lldb/tools/lldb-mi/MIUtilFileStd.cpp
/Users/chilledheart/llvm/tools/lldb/tools/lldb-mi/MIUtilFileStd.cpp:104:77: error: use of undeclared identifier 'errno'
                SetErrorDescriptionn( MIRSRC( IDS_UTIL_FILE_ERR_OPENING_FILE ), strerror( errno ), vFileNamePath.c_str() );
                                                                                          ^
1 error generated.
FAILED: /usr/bin/clang++  -std=c++1y -stdlib=libc++  -DNDEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -stdlib=libc++ -fPIC -fvisibility-inlines-hidden -Wall -W -Wno-unused-parameter -Wwrite-strings -Wmissing-field-initializers -pedantic -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor -std=c++1y -fcolor-diagnostics -std=c++11 -Wno-deprecated-declarations -Wno-unknown-pragmas -Wno-deprecated-register -fno-rtti -Itools/lldb/tools/lldb-mi -I/Users/chilledheart/llvm/tools/lldb/tools/lldb-mi -I/Users/chilledheart/llvm/tools/lldb/include -Itools/lldb/include -Iinclude -I/Users/chilledheart/llvm/include -I/System/Library/Frameworks/Python.framework/Headers -I/Users/chilledheart/llvm/tools/lldb/../clang/include -Itools/lldb/../clang/include -MMD -MT tools/lldb/tools/lldb-mi/CMakeFiles/lldb-mi.dir/MICmnStreamStdin.cpp.o -MF "tools/lldb/tools/lldb-mi/CMakeFiles/lldb-mi.dir/MICmnStreamStdin.cpp.o.d" -o tools/lldb/tools/lldb-mi/CMakeFiles/lldb-mi.dir/MICmnStreamStdin.cpp.o -c /Users/chilledheart/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStdin.cpp
/Users/chilledheart/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStdin.cpp:26:10: fatal error: 'stropts.h' file not found
#include <stropts.h>
         ^
1 error generated.
ninja: build stopped: subcommand failed.

Edited:
I should post it earlier.

Should be fixed with r209632 - can you try now?

Thanks!

lldb is built (with lldb-mi) successfuly.

Hi emaste

Since this is fixed ages ago, could you close(or abandon) this for me? 

Really appreciate it.
emaste commandeered this revision.Feb 4 2015, 8:32 AM
emaste abandoned this revision.
emaste edited reviewers, added: chilledheart; removed: emaste.