Thread overview
Is it legal to embed dmd and Phobos into the program?
Oct 30, 2020
Ali Çehreli
Oct 30, 2020
Max Haughton
Oct 30, 2020
Max Haughton
Oct 30, 2020
Adam D. Ruppe
October 30, 2020
(Yes, I am aware of "DMD as a library".)

Still, would it be legal to embed a dmd build environment into a binary to unzip it at run time to compile code as needed? To compile a shared library to dynamically load, from source code that is also embedded?L Poor person's JIT compilation? :)

I am currently implementing it without the dmd part. Curious about whether dmd part would be legal or not.

Ali

P.S. What about the 'unzip' program? May I embed that as well? The whole OS? Ok, I started having too much fun... :)
October 30, 2020
On Friday, 30 October 2020 at 20:18:43 UTC, Ali Çehreli wrote:
> (Yes, I am aware of "DMD as a library".)
>
> Still, would it be legal to embed a dmd build environment into a binary to unzip it at run time to compile code as needed? To compile a shared library to dynamically load, from source code that is also embedded?L Poor person's JIT compilation? :)
>
> I am currently implementing it without the dmd part. Curious about whether dmd part would be legal or not.
>
> Ali
>
> P.S. What about the 'unzip' program? May I embed that as well? The whole OS? Ok, I started having too much fun... :)

It's all boost licensed, right? Should be fine because of that (best leave a copyright notice just to be sure)

Unzip is probably GPL'ed if it's from Linux, but could be distributed without source of unmodified (if your program only works with a specific GPL'ed program then it can be in violation of the GPL to not publish it's source but it's just a archive manager)

October 30, 2020
On Friday, 30 October 2020 at 20:53:16 UTC, Max Haughton wrote:
> On Friday, 30 October 2020 at 20:18:43 UTC, Ali Çehreli wrote:
>> (Yes, I am aware of "DMD as a library".)
>>
>> Still, would it be legal to embed a dmd build environment into a binary to unzip it at run time to compile code as needed? To compile a shared library to dynamically load, from source code that is also embedded?L Poor person's JIT compilation? :)
>>
>> I am currently implementing it without the dmd part. Curious about whether dmd part would be legal or not.
>>
>> Ali
>>
>> P.S. What about the 'unzip' program? May I embed that as well? The whole OS? Ok, I started having too much fun... :)
>
> It's all boost licensed, right? Should be fine because of that (best leave a copyright notice just to be sure)

Boost requires the whole license to be available unless you only distribute a pure machine executable.

October 30, 2020
On Friday, 30 October 2020 at 20:18:43 UTC, Ali Çehreli wrote:
> Still, would it be legal to embed a dmd build environment into a binary to unzip it at run time to compile code as needed?

yup

> P.S. What about the 'unzip' program? May I embed that as well?

Phobos' std.zip is good enough to make your own!
October 30, 2020
On Friday, 30 October 2020 at 21:02:43 UTC, Ola Fosheim Grøstad wrote:
> On Friday, 30 October 2020 at 20:53:16 UTC, Max Haughton wrote:
>> On Friday, 30 October 2020 at 20:18:43 UTC, Ali Çehreli wrote:
>>> [...]
>>
>> It's all boost licensed, right? Should be fine because of that (best leave a copyright notice just to be sure)
>
> Boost requires the whole license to be available unless you only distribute a pure machine executable.

Good to know. I normally include copyright and licence notices anyway just to be sure (and I think a project should display what went into it, like sausages)