Announcement

Collapse
No announcement yet.

Moving Towards Building The Linux Kernel With Clang

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • phoronix
    started a topic Moving Towards Building The Linux Kernel With Clang

    Moving Towards Building The Linux Kernel With Clang

    Phoronix: Moving Towards Building The Linux Kernel With Clang

    While it hasn't been a news item for a couple months, a group of developers are still hard at work to advance the LLVM/Clang compiler and the Linux kernel to a point where this alternative compiler to GCC can be used for building the Linux kernel...

    http://www.phoronix.com/vr.php?view=MTIyMTU

  • XorEaxEax
    replied
    Originally posted by pingufunkybeat View Post
    They are both free, but in different ways.

    BSD licenses primarily ensure the freedom of the developer to do whatever they want with the code.

    GPL licenses primarily give freedom to the user of the software to do whatever they want with the code.

    Different people will have different priorities when it comes to these two.
    Yes, but the main draw with GPL for developers is that they, as 'recipients' are entitled to enhancements made to their code. This practical advantage is in my opinion the BIG reason why GPL is the most used licence by far, rather than the ideological stance it takes.

    I think it also makes a great licence for companies who wants to cooperate with open source on a legally binding even playfield, the large amount of full-time developers paid by companies to work on Linux seems to support my thesis.

    On the other hand if you do not want/need/expect any help with developing a piece of software (either because it's 'done' or you have the resources to take it anywhere you want without help) then I think BSD/MIT style licencing is much more appropriate.

    Also, some type of software is better suited for certain licences I think, something which is developed as a whole is better suited for GPL than framework/component style code which is better off in a practical sense when licenced permissively or LGPL style.

    Leave a comment:


  • XorEaxEax
    replied
    Originally posted by elanthis View Post
    Clang is a superior compiler frontend.
    Only if you cherry pick features, if you look at language support and compability GCC easily comes out at top. Clang has areas in which it shines, particularly diagnostics but it's nowhere near a full drop-in replacement for the GCC frontend.

    Originally posted by elanthis View Post
    GCC has tons of cruft and is difficult to work with; this has led to a general problem gaining new contributors,
    Originally posted by elanthis View Post
    a slow exodus of existing developers
    Here you go with unsubstantiated claims only aimed at painting a negative picture, with nothing backing them up. I've seen absolutely no indication of the project GCC losing developers, please point me to some facts.

    Originally posted by elanthis View Post
    then evil vile horrible proprietary companies might use one or the other with a proprietary tool.
    This is exactly what happened, Steve Jobs when running NeXT tried to use GCC as a backend for their proprietary ObjC frontend, which he legally couldn't and since he needed GCC this is how it ended up with ObjC support. Yes, proprietary companies want to use open source (NeXT and later Apple built their software on GCC long before Clang and LLVM existed or where even useable), but few of them have the decency to give back except when legally compelled to as history shows. This technical barrier has been alleviated by the plugin system which GCC now supports.

    Originally posted by elanthis View Post
    Clang, on the other hand, was designed with full knowledge of the fact that the absolute least important thing that a compiler frontend can be used for in this day and age is the actual compilation.
    Clang was developed because Apple wanted a frontend to complement LLVM which was permissively licenced so that they can incorporate it into their proprietary offerings. The key word here is _proprietary_, XCode is proprietary so they want to make use of surrounding tools which allow them to keep their solutions proprietary, like they picked up DTrace and turned it into their proprietary Instruments.

    Originally posted by elanthis View Post
    Also, LLVM is possibly going to be faster than GCC in the future.
    Certainly possible, it's also just as possible that GCC will improve diagnostics to match and better Clang/LLVM. Meanwhile Clang/LLVM hasn't come closer to GCC in the last couple of releases and judging by the tests I've done with snapshots during the current release cycle (that said, development snapshots are not definitive) GCC 4.8 widens the performance gap even further. (note, I only benchmark X86_64)

    Originally posted by elanthis View Post
    Given the rate of change between the two projects, it's quite likely that'll happen,
    You base this upon what data?

    As for my views on GCC and LLVM/Clang, I like them both. GCC has been and is still my primary compiler toolchain at work and at home, but Clang/LLVM is there aswell and I compile against them both.

    But even if you are 'all in' for Clang/LLVM like elanthis obviously is, you'd have to be a f***ing moron to want to see GCC disappear. Yet elanthis has made no secret that in his 'rabid fandom' or if it's 'rabid hatred' he wants GCC gone. (so yes, he is a moron)

    Again Apple developed Clang as a frontend to use with their proprietary solutions, they are a proprietary company. The reason they keep siphoning off the BSD projects is because they can use that code in proprietary offerings. This is what leads to my fear with Clang (and in part with LLVM), which is that Apple will eventually stop submitting their enhancements as open source, probably it will start with small things which they say only have relevance against their proprietary solutions like XCode but then it will continue on, simply because Apple is at it's core a proprietary company with lock-in as their model.

    So now, if you like Clang/LLVM and want to have it available and developed all in the open then the single biggest thing ensuring that this will remain so is the existance and well-being of an alternative like GCC.

    And beyond that, we have the fact that competition is what keeps stagnation away. GCC has had competition in a form from proprietary compiler solutions but obviously having strong competition from another open source compiler will continue to benefit these two projects (and more importantly us users) immensely.

    Leave a comment:


  • pingufunkybeat
    replied
    Originally posted by Sergio View Post
    So, the BSD license gives you the FREEDOM to do whatever you want with the code (like closing it) and yet is not FREE software.
    The GPL FORCES you to stick with a license and an 'ideology' and yet it is considered FREE software.
    The irony...
    They are both free, but in different ways.

    BSD licenses primarily ensure the freedom of the developer to do whatever they want with the code.

    GPL licenses primarily give freedom to the user of the software to do whatever they want with the code.

    Different people will have different priorities when it comes to these two.

    Leave a comment:


  • Rigaldo
    replied
    Originally posted by mybug View Post
    Delicious spam you got there!
    ... and on a lot of your posts (if not all, didn't bother checking).
    It's probably one of those spambots that copy other posts and add image links ..

    Leave a comment:


  • mybug
    replied
    Originally posted by Greg0ory
    I would like to have a full OSS setup, but the 3 monitors make that difficult.
    [\img]http://www.rdox.info/01.jpg[\/img][\img]http://www.rdox.info/02.jpg[\/img][\img]http://www.rdox.info/8.jpg[\/img][\img]http://www.rdox.info/03.jpg[\/img]
    Delicious spam you got there!
    ... and on a lot of your posts (if not all, didn't bother checking).

    Leave a comment:


  • BitRot
    replied
    Originally posted by crazycheese View Post
    I repeat yet again - BSD PROMOTES CLOSED SOURCE SOFTWARE.

    GPL allows closed source software.

    Nothing in BSD will prevent closing down. Everything in GPL is designed to keep seperate from closed source.

    BSD is not free software, it is "public software", public domain plus small copyright notice.

    This is the single difference that results in 3 clause vs 5 page license difference.

    Pay attention to MacOSX, its in essence a stolen BSD.

    And BSD crowd is trolling Linux, how them should be desktop OS too and how Linux prevents it. This is ridiculous they don't storm Apple for some things to put back! They are what their license is.
    Please, you're making a fool out of yourself.
    Again, the BSD license certainly does not promote closed source software, and no, you can't "close it down", that's ridiculous.
    You can't change the license of a BSD licensed project to something proprietary, that's just not possible. LLVM will always be free software.
    It's just that companies like Apple can take it, modify it how they want and distribute it how they like. Thats freedom, you know. However, that doesn't mean you have to pay for the original LLVM, which is still free.

    And OS X isn't a stolen BSD, Apple just took parts(like the network stack) from FreeBSD- and guess what, FreeBSD people are fine with that, only hardcore GPL people seem to be offended of this.
    You have to realize that people who chose a BSD-style license may not think how you do, have different views on things, and thus prefer a BSD-style license over a GPL one.
    I believe you're smart enough to accept that people are not always like you and make different decisions.

    Leave a comment:


  • blackiwid
    replied
    to the flash thing.

    I wonder always how much hate people are willing to capture for their actions for so little gain.

    I mean ok if you are Microsoft and make much money with beeing evil, I can understand it, but does Adobe really makes (much/any) Money from keeping the flash player closed source? I mean its not only the classic 5% Linux guys who hate them extremly, its also all the Android users at least they should ^^ and apple hates them. Because they releases the biggest crap ever.

    I mean if the flash player would be even somewhat resourcefriendly by playing a 720p file, but they do not only suck in giving no free client out for a tool thats free of charge. they even are light-years away from having a resourcefriendly client.

    So I wish to next christmess to them aids or something like that. Unbelivable how much suffering someone can produce "just for fun" for millions of people, because they can.

    fuckin....

    Leave a comment:


  • Sergio
    replied
    Originally posted by crazycheese View Post
    I repeat yet again - BSD PROMOTES CLOSED SOURCE SOFTWARE.

    GPL allows closed source software.

    Nothing in BSD will prevent closing down. Everything in GPL is designed to keep seperate from closed source.

    BSD is not free software, it is "public software", public domain plus small copyright notice.

    This is the single difference that results in 3 clause vs 5 page license difference.

    Pay attention to MacOSX, its in essence a stolen BSD.

    And BSD crowd is trolling Linux, how them should be desktop OS too and how Linux prevents it. This is ridiculous they don't storm Apple for some things to put back! They are what their license is.
    So, the BSD license gives you the FREEDOM to do whatever you want with the code (like closing it) and yet is not FREE software.
    The GPL FORCES you to stick with a license and an 'ideology' and yet it is considered FREE software.
    The irony...

    Leave a comment:


  • crazycheese
    replied
    Originally posted by erendorn View Post
    Ok so let's say there is a proprietary extension in LLVM, two cases:
    - open source developers can write the same thing. They write it, and continue to use LLVM. It costs them the same amount of work than if the project was GPLed.
    - open source devs cannot write the same thing. They don't, and they still couldn't have written it if the project was GPLed. Still the same situation as if the project was GPLed.
    The key aspect is that closed source components written to block other actors are never open sourced. Corporations in that position prefer to rewrite/buy elsewhere the whole thing anyway than make such sacrifices.
    Please read Adobe Flash license. Short version: if you ever used any Flash component (including Player), you agreed to License conditions. One of the conditions is - you may neither reverse engineer, nor create any clean reimplementation of it. Once you used it even once, you can't rewrite it.

    And then, there is this patent thingy. Real cheap if you are a corporation.
    This cancels out your first variant.

    However, if the license didn't have this clause, should they need it, they would rewrite it, since they are not bound by agreements.

    And then the precedent is still not happened, the bomb is ticking, until then its just enough to know that its lying there waiting for the day.

    And yes, from the technical side, its always good to rewrite the stuff once more to get rid of deep architectural mistakes, and having one more compiler with unique build-up is a good thing.

    Leave a comment:

Working...
X