[lldb-dev] [PATCH] Everyone: please download, build and test the new iohandler branch
Steve Pucci
spucci at google.com
Fri Jan 10 07:25:37 PST 2014
Thanks, Abid. That's helpful. When was the last time you updated from the
iohandler branch and tried to compile? I think the change requiring the
patch I sent was just introduced yesterday 9am PST or so.
Thanks again,
Steve
On Fri, Jan 10, 2014 at 1:53 AM, Abid, Hafiz <Hafiz_Abid at mentor.com> wrote:
> Hi Todd,
>
> (Hafiz - I don't recall if you were using 4.8.1, but if so, it'd be great
> if you had a few minutes to run a build with it on tip of iohandler without
> Steve's soon-to-be-updated patch).
>
>
>
> I am using 4.8.1 and I did not see this issue. I have run the
> lldb(iohandler branch and built with 4.8.1) a few times without any crash.
>
>
>
> Regards,
>
> Aibid
>
>
>
> *From:* Todd Fiala [mailto:tfiala at google.com]
> *Sent:* 09 January 2014 23:20
> *To:* Steve Pucci
> *Cc:* Abid, Hafiz; lldb-dev at cs.uiuc.edu
> *Subject:* Re: [lldb-dev] [PATCH] Everyone: please download, build and
> test the new iohandler branch
>
>
>
> Also - after that comes out - if anyone is on gcc 4.8.x, where x is not 2,
> I'd be interested in hearing if they get the issue with the default
> compiler-generated operator= on tip of this branch. I hit a period of time
> between gcc 4.6.2 and 4.6.3 where gcc either failed to generate operator=
> and the copy constructor (and optionally crashed) but that settled out by
> gcc 4.6.3 release. If this is an issue with gcc 4.8.2 but not 4.8.1, I'd
> like to report it. (Hafiz - I don't recall if you were using 4.8.1, but if
> so, it'd be great if you had a few minutes to run a build with it on tip of
> iohandler without Steve's soon-to-be-updated patch).
>
>
>
> On Thu, Jan 9, 2014 at 3:15 PM, Todd Fiala <tfiala at google.com> wrote:
>
> Steve's going to fix a couple typos in that patch. We're missing a few
> rhs. on the right hand side of the assignment operations.
>
>
>
> On Thu, Jan 9, 2014 at 1:52 PM, Steve Pucci <spucci at google.com> wrote:
>
> Hi all,
>
>
>
> I have a new compilation problem (patch attached) with Ubuntu 12.04 using
> gcc 4.8.2. It looks like gcc is not properly autogenerating a constructor,
> so the workaround is to provide one manually.
>
>
>
> - Steve
>
>
>
> Index: source/Core/IOHandler.cpp
>
> ===================================================================
>
> --- source/Core/IOHandler.cpp (revision 198879)
>
> +++ source/Core/IOHandler.cpp (working copy)
>
> @@ -2252,6 +2252,23 @@
>
> {
>
> }
>
>
>
> + TreeItem &
>
> + operator=(const TreeItem &rhs)
>
> + {
>
> + if (this != &rhs)
>
> + {
>
> + m_parent = rhs.m_parent;
>
> + m_delegate = rhs.m_delegate;
>
> + m_user_data = rhs.m_user_data;
>
> + m_row_idx = rhs.m_row_idx;
>
> + m_children = rhs.m_children;
>
> + m_might_have_children = m_might_have_children;
>
> + m_is_expanded = m_is_expanded;
>
> + m_did_calculate_children = m_did_calculate_children;
>
> + }
>
> + return *this;
>
> + }
>
> +
>
> size_t
>
> GetDepth () const
>
> {
>
>
>
>
>
> On Thu, Jan 9, 2014 at 1:10 PM, Steve Pucci <spucci at google.com> wrote:
>
> Hi all,
>
>
>
> Running the iohandler branch on Ubuntu 12.04 using gcc 4.8.2, using
> configure rather than CMake, ran into a similar issue as Abid (needed to
> add -lcurses, and also add back in -ledit; patch attached). I'm getting
> these test failures:
>
>
>
> Ran 272 tests.
>
> Failing Tests (4)
>
> FAIL: LLDB (suite) :: TestCommandRegex.py (Linux
> spucci-linux.mtv.corp.google.com 3.2.5-gg1336 #1 SMP Thu Aug 29 02:37:18
> PDT 2013 x86_64 x86_64)
>
> FAIL: LLDB (suite) :: TestDataFormatterCategories.py (Linux
> spucci-linux.mtv.corp.google.com 3.2.5-gg1336 #1 SMP Thu Aug 29 02:37:18
> PDT 2013 x86_64 x86_64)
>
> FAIL: LLDB (suite) :: TestDataFormatterGlobals.py (Linux
> spucci-linux.mtv.corp.google.com 3.2.5-gg1336 #1 SMP Thu Aug 29 02:37:18
> PDT 2013 x86_64 x86_64)
>
> FAIL: LLDB (suite) :: TestConvenienceVariables.py (Linux
> spucci-linux.mtv.corp.google.com 3.2.5-gg1336 #1 SMP Thu Aug 29 02:37:18
> PDT 2013 x86_64 x86_64)
>
>
>
> We will be looking at these shortly, but we're also tracking a compilation
> error that's blocking this now on this branch (more about that shortly).
>
>
>
> - Steve
>
>
>
> Patch:
>
>
>
> Index: lib/Makefile
>
> ===================================================================
>
> --- lib/Makefile (revision 198878)
>
> +++ lib/Makefile (working copy)
>
> @@ -148,7 +148,7 @@
>
> # Don't allow unresolved symbols.
>
> LLVMLibsOptions += -Wl,--no-undefined
>
> # Link in python
>
> - LLVMLibsOptions += $(PYTHON_BUILD_FLAGS) -lrt
>
> + LLVMLibsOptions += $(PYTHON_BUILD_FLAGS) -lrt -ledit -lncurses
>
> LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT)
>
> endif
>
>
>
>
>
>
>
> On Wed, Jan 8, 2014 at 9:09 AM, Abid, Hafiz <Hafiz_Abid at mentor.com> wrote:
>
> > Great, please check in any changes you need in order to build!
>
> Committed in revision 198773.
>
>
> >
> > On Jan 7, 2014, at 8:21 AM, Abid, Hafiz <Hafiz_Abid at mentor.com> wrote:
> >
> > > Hi Greg,
> > >
> > >> -----Original Message-----
> > >> From: lldb-dev-bounces at cs.uiuc.edu
> > >> [mailto:lldb-dev-bounces at cs.uiuc.edu]
> > >> On Behalf Of Greg Clayton
> > >> Sent: 02 January 2014 22:57
> > >> To: lldb-dev at cs.uiuc.edu
> > >> Subject: [lldb-dev] Everyone: please download, build and test the new
> > >> iohandler branch
> > >>
> > >> svn co
> > >> https://$USER@llvm.org/svn/llvm-project/lldb/branches/iohandler
> > >>
> > >> The first step is to get it building for your platform as I am sure
> > >> the Makefiles are out of date.
> > >>
> > >> This branch will soon be merged back into top of tree, but I wanted
> > >> to give all the major platforms time to submit patches against this
> > >> to get things working on all systems before any buildbots get broken.
> > >>
> > >> The major benefits include:
> > >> - editline is not built into the lldb shared library so all IOHandler
> > >> objects can use the editline functionality.
> > >> - autocomplete now working in the embedded python interpreter
> > >> - history now working in the embedded python interpreter
> > >> - autocomplete now working for multi-line command entering (like in
> > >> "breakpoint command add")
> > >> - when editing multiple lines you can use the UP and DOWN arrow keys
> > >> to edit previous lines. This makes multi-line expressions and
> > >> commands much easier to write and edit. Use ^B and ^N for next/prev
> > >> history when in multi- line mode.
> > >> - curses is now supported with the new IOHandler infrastructure. To
> > >> try this out, run and hit a breakpoint, and type "gui" on the command
> > >> line to drop into the curses GUI mode! Lots of stuff isn't hooked up
> > >> yet, but I am sure the open source community can help fill in some
> > >> new views and improve existing ones.
> > >>
> > >> So please get this building and test this on your system and let us
> > >> know what issues you run into.
> > >
> > > I tried to build this branch using cmake on Ubuntu 12.04 with gcc 4.8.
> > > There were some build issues that I fixed as follows.
> > >
> > > Include limits.h in Editline.cpp for PATH_MAX and libncurses in the
> cmake
> > files.
> > > I also noted that libedit version on my system was missing some
> > > defines like EL_PROMPT_ESC. I have to get hold of a recent version for
> > libedit.
> > > After that lldb builds fine on my system. Still have to test it though.
> > >
> > > I am pasting the changes needed for the build below.
> > >
> > >
> > > Index: source/Host/common/Editline.cpp
> > >
> > ================================================================
> > ===
> > > --- source/Host/common/Editline.cpp (revision 198682)
> > > +++ source/Host/common/Editline.cpp (working copy)
> > > @@ -15,6 +14,8 @@
> > > #include "lldb/Core/StringList.h"
> > > #include "lldb/Host/Host.h"
> > >
> > > +#include <limits.h>
> > > +
> > > using namespace lldb;
> > > using namespace lldb_private;
> > >
> > > Index: source/Symbol/ClangASTType.cpp
> > >
> > ================================================================
> > ===
> > > --- source/Symbol/ClangASTType.cpp (revision 198682)
> > > +++ source/Symbol/ClangASTType.cpp (working copy)
> > > @@ -1135,7 +1135,7 @@
> > > if (typedef_type)
> > > {
> > > const TypedefNameDecl *typedef_decl =
> typedef_type->getDecl();
> > > - type_name = typedef_decl-
> > >getQualifiedNameAsString(printing_policy);
> > > + type_name = typedef_decl->getQualifiedNameAsString();
> > > }
> > > else
> > > {
> > > Index: CMakeLists.txt
> > >
> > ================================================================
> > ===
> > > --- CMakeLists.txt (revision 198682)
> > > +++ CMakeLists.txt (working copy)
> > > @@ -265,6 +265,10 @@
> > > list(APPEND system_libs execinfo)
> > > endif()
> > >
> > > +if (CMAKE_SYSTEM_NAME MATCHES "Linux")
> > > + list(APPEND system_libs ncurses)
> > > +endif()
> > > +
> > > #add_subdirectory(include)
> > > add_subdirectory(docs)
> > > if (NOT CMAKE_SYSTEM_NAME MATCHES "Windows")
> > >
> > > Regards,
> > > Abid
> > >
> > >>
> > >> Greg Clayton
> > >>
> > >> _______________________________________________
> > >> lldb-dev mailing list
> > >> lldb-dev at cs.uiuc.edu
> > >> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
>
>
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
>
>
>
>
>
>
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
>
>
>
>
>
> --
>
> Todd Fiala |
>
> Software Engineer |
>
> tfiala at google.com |
>
> 650-943-3180
>
>
>
>
>
>
>
> --
>
> Todd Fiala |
>
> Software Engineer |
>
> tfiala at google.com |
>
> 650-943-3180
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20140110/8e287db7/attachment.html>
More information about the lldb-dev
mailing list