Quantcast

Building LibreOffice from an IDE

classic Classic list List threaded Threaded
4 messages Options
Bjoern Michaelsen Bjoern Michaelsen
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Building LibreOffice from an IDE

Hi,

so I just pushed:

 https://gerrit.libreoffice.org/gitweb?p=core.git;a=commitdiff;h=ba99e296077e6bc6d6a153d01a45bd9ebe1a1d35

to master. As it says, this allows building LibreOffice conveniently from an
IDE -- kdevelop in this case -- with most of the usual features:

- autocompletion
- building a module from the IDE
- building all of LibreOffice from the IDE
- nondebug and debug build configs for the above
- starting LibreOffice from the IDE
- running unitchecks, slowchecks and subsequentchecks from the IDE

It doesnt yet allow debugging from the IDE, but I guess it wouldnt be too hard to add.

a few canveats:
- autocompletion works, but:
  * you should have a full build before starting with this as otherwise generated
    headers (that is all of UNO) is missing
  * for high level modules, parsing all of the header takes a _lot_ of time,
     once that is done though, it seems to be working rather snappy
- our toplevel Makefile.in with all its "you tell me to do foo, but I rather do
  bar"-wrapping logic, does not handle "make unitcheck slowcheck
  subsequentcheck" correctly, but that needs fixing there.
- building objects for different libraries and targets (with different defines
  and include paths) from one directory isnt something that kdevelop handles
  well, but I dont yet know if that is of realpractical relevance for the
  autocomplete.
  This is a historic abomination anyway and should be killed with fire, see:
  https://bugs.freedesktop.org/show_bug.cgi?id=70422

If you want to try it out, do:

 make kdevelop-ide-integration

and open one of the *.kdev4 projects with kdevelop. Note that the kdevelop
specific part of this is a mere ~150 lines of Python (half of that config
templates), so this is a call to arms too:

 You prefer Eclipse, Netbeans, MS Visual Studio, $YOURIDE?

 Well, then add the same for those IDEs! ;)
 https://bugs.freedesktop.org/show_bug.cgi?id=70414

TBH I did this mostly to prove a point on how easy it is to get this IDE stuff
out of gbuild, not because I crave to develop LibreOffice in a IDE.


OTOH, now that I see the potential there ...

Best,

Bjoern
_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
Olivier Hallot Olivier Hallot
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Building LibreOffice from an IDE

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Real good news... indeed. Thanks you so much for that, Bjoern.

I was already using kdevelop for editing, type checking and
autocompletion. Very handy. But lack of time, kdevelop crashes and heavy
page swaps prevented me to full use of it.

Eager to test... How about git/gerrit?

Cheers

Olivier

Em 19-11-2013 10:08, bjoern escreveu:

> Hi,
>
> so I just pushed:
>
>  https://gerrit.libreoffice.org/gitweb?p=core.git;a=commitdiff;h=ba99e296077e6bc6d6a153d01a45bd9ebe1a1d35
>
> to master. As it says, this allows building LibreOffice conveniently from an
> IDE -- kdevelop in this case -- with most of the usual features:
>
> - autocompletion
> - building a module from the IDE
> - building all of LibreOffice from the IDE
> - nondebug and debug build configs for the above
> - starting LibreOffice from the IDE
> - running unitchecks, slowchecks and subsequentchecks from the IDE
>
> It doesnt yet allow debugging from the IDE, but I guess it wouldnt be too hard to add.
>
> a few canveats:
> - autocompletion works, but:
>   * you should have a full build before starting with this as otherwise generated
>     headers (that is all of UNO) is missing
>   * for high level modules, parsing all of the header takes a _lot_ of time,
>      once that is done though, it seems to be working rather snappy
> - our toplevel Makefile.in with all its "you tell me to do foo, but I rather do
>   bar"-wrapping logic, does not handle "make unitcheck slowcheck
>   subsequentcheck" correctly, but that needs fixing there.
> - building objects for different libraries and targets (with different defines
>   and include paths) from one directory isnt something that kdevelop handles
>   well, but I dont yet know if that is of realpractical relevance for the
>   autocomplete.
>   This is a historic abomination anyway and should be killed with fire, see:
>   https://bugs.freedesktop.org/show_bug.cgi?id=70422
>
> If you want to try it out, do:
>
>  make kdevelop-ide-integration
>
> and open one of the *.kdev4 projects with kdevelop. Note that the kdevelop
> specific part of this is a mere ~150 lines of Python (half of that config
> templates), so this is a call to arms too:
>
>  You prefer Eclipse, Netbeans, MS Visual Studio, $YOURIDE?
>
>  Well, then add the same for those IDEs! ;)
>  https://bugs.freedesktop.org/show_bug.cgi?id=70414
>
> TBH I did this mostly to prove a point on how easy it is to get this IDE stuff
> out of gbuild, not because I crave to develop LibreOffice in a IDE.
>
>
> OTOH, now that I see the potential there ...
>
> Best,
>
> Bjoern
> _______________________________________________
> LibreOffice mailing list
> [hidden email]
> http://lists.freedesktop.org/mailman/listinfo/libreoffice
>

- --
Olivier Hallot
Founder, Board of Directors Member - The Document Foundation
The Document Foundation, Kurfürstendamm 188, 10707 - Berlin, Germany
Gemeinnützige rechtsfähige Stiftung des bürgerlichen Rechts
Legal details: http://www.documentfoundation.org/imprint
LibreOffice translation leader for Brazilian Portuguese
+55-21-8822-8812
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.14 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQEcBAEBAgAGBQJSi1rEAAoJEJp3R7nH3vLx85gH/3FBWOMtFKThDku8w/D5iXct
qGbj9XVwHdaiUnMgOBuGGU9IznYIorvMFr/3OKC0CwZ0cwKltuofr/EboBO8z8sC
hjvdT/QpxHzvuJ1KLgfS3nNolqLr8Hsnkpqte54qnpBjfWRXevo/Yb8qVjSm/lx+
k/IenCJzAJxZVijOigJFf2ppyLqo08sqxk7kywEqVFkg/i7GdtZb/VhRKqiz3Usf
WWgKN3J7Ym1TDpLTsei+kplTYvkhwehtg0br2iknsjjseJvORsayqt3cJk085Pw4
NIsOW6MFTokwUyF/QEaf6DomcUqf3frHgN2qbkhBcJ1fEyfLWSuW2Jt69k6WBwk=
=App3
-----END PGP SIGNATURE-----
_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
Bjoern Michaelsen Bjoern Michaelsen
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Building LibreOffice from an IDE

Hi,

On Tue, Nov 19, 2013 at 10:34:15AM -0200, Olivier Hallot wrote:
>  But lack of time, kdevelop crashes and heavy page swaps prevented me to full use of it.

Well, generating the project files doesnt make the fact that LibreOffice is a
big beast magically disappear unfortunately(*).
 
> Eager to test... How about git/gerrit?

Well, this enables the kdevelop git plugin, so yeah -- you also get a version
control UI in kdevelop with this:

http://cgit.freedesktop.org/libreoffice/core/tree/bin/gbuild-to-ide?ba99e296077e6bc6d6a153d01a45bd9ebe1a1d35#n238

Best,

Bjoern


(*) "LibreOffice: based on technology breaking your toolchain since 1985!"
_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
Bjoern Michaelsen Bjoern Michaelsen
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Building LibreOffice from an IDE

In reply to this post by Bjoern Michaelsen
On Tue, Nov 19, 2013 at 01:08:08PM +0100, bjoern wrote:
> - our toplevel Makefile.in with all its "you tell me to do foo, but I rather do
>   bar"-wrapping logic, does not handle "make unitcheck slowcheck
>   subsequentcheck" correctly, but that needs fixing there.

done with https://gerrit.libreoffice.org/gitweb?p=core.git;a=commit;h=4eebd65858655eef3f39e40ecbe74c505f6b4688

Best,

Bjoern
_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
Loading...