GCC and LLVM - What's in a licence?

Richard Hillesley discusses the pros and cons of the GCC and LLVM compiler collections, and the difference a licence makes.

The effects of modularity and licence degradation continue to be at the heart of debates among the GCC Community, and centre around the age-old arguments about whether the GPL or BSD approach (some would say the free or open source approach) to licensing offer a better manifestation of free software.

The BSD licence has an idealistic and permissive relationship with the code. Third parties can take the code, repackage it, and pass it on in any form they wish without any obligation to feed code changes back to the community. The code can be recycled in any form, proprietary or free, as long as the original attribution is preserved. This position has benefits and drawbacks, depending on your point of view, but from the perspective of those that advocate BSD licensing, reflects a faith in the better side of human nature.

The GPL, and other copyleft licences, insist that if the code is released, the changed source is fed back to the community. Code developed under a BSD licence can be absorbed into a proprietary product, and there is no obligation to feed back changes. GPL code, and any changes or extensions to that code, must be released as free software.

The downside of this has been that the Linux kernel, unlike the BSDs, is released under the GPLv2 and has been less able to freely absorb features such as ZFS or DTrace, which are released under incompatible open source licences. Nonetheless, various ports and re-implementations of both ZFS and DTrace for GNU/Linux are under way. The upside of the GPL is that greater volumes of software have remained free for successive generations of free software developers.

Licensing is a divisive issue, but is the core difference between the philosophies of the BSD and GNU/Linux communities, and may be one of the reasons why GNU/Linux has been adopted as the universal operating system among the former Unix companies - commonality, interoperability and continuity of the software are useful side effects of copyleft and the GPL.

Featured Resources

The definitive guide to warehouse efficiency

Get your free guide to creating efficiencies in the warehouse

Free download

The total economic impact™ of Datto

Cost savings and business benefits of using Datto Integrated Solutions

Download now

Three-step guide to modern customer experience

Support the critical role CX plays in your business

Free download

Ransomware report

The global state of the channel

Download now

Most Popular

How to find RAM speed, size and type
Laptops

How to find RAM speed, size and type

17 Sep 2021
What are the pros and cons of AI?
machine learning

What are the pros and cons of AI?

8 Sep 2021
The technology powering the future of shopping
Technology

The technology powering the future of shopping

16 Sep 2021