Re: [PATCH 10/13] D: The D runtime library and license.

2017-10-02 Thread Iain Buclaw
On 11 September 2017 at 19:01, Jeff Law  wrote:
> On 05/28/2017 03:47 PM, Iain Buclaw wrote:
>> This patch adds the D runtime library and license (Boost) files.  D
>> runtime is a low level that implements the building blocks of the
>> runtime environment, as well as C and C++ platform bindings.  Many
>> high level operations are lowered to generate calls to various
>> functions defined in this library.
>>
>> I've uploaded the patch to my ftp, sorry about the impromptu of this,
>> I had everything neatly lined up, but stumbled after being rejected by
>> the mail daemon.
> So with libphobos the big question is whether or not the library is
> supposed to be a part of GCC or if we're just a downstream user of a
> library with a reasonably permissive license (and I'm going to assume
> that all the files are under a suitable license, I spot checked, but did
> not look at each and every one).
>
> There's a lot of code in here I'd want to look at more closely if we're
> maintaining it within the GCC project, but which I'd let go if we're
> strictly downstream.
>
> Jeff
>

For Phobos, we are strictly downstream.  All sources are Boost license.

https://dlang.org/phobos/index.html

For D runtime library, there's a little more integration going on
between library and compiler, and is the one component that is
absolutely vital if you want to link anything.

Iain.


Re: [PATCH 10/13] D: The D runtime library and license.

2017-09-11 Thread Jeff Law
On 05/28/2017 03:47 PM, Iain Buclaw wrote:
> This patch adds the D runtime library and license (Boost) files.  D
> runtime is a low level that implements the building blocks of the
> runtime environment, as well as C and C++ platform bindings.  Many
> high level operations are lowered to generate calls to various
> functions defined in this library.
> 
> I've uploaded the patch to my ftp, sorry about the impromptu of this,
> I had everything neatly lined up, but stumbled after being rejected by
> the mail daemon.
So with libphobos the big question is whether or not the library is
supposed to be a part of GCC or if we're just a downstream user of a
library with a reasonably permissive license (and I'm going to assume
that all the files are under a suitable license, I spot checked, but did
not look at each and every one).

There's a lot of code in here I'd want to look at more closely if we're
maintaining it within the GCC project, but which I'd let go if we're
strictly downstream.

Jeff



[PATCH 10/13] D: The D runtime library and license.

2017-05-28 Thread Iain Buclaw
This patch adds the D runtime library and license (Boost) files.  D
runtime is a low level that implements the building blocks of the
runtime environment, as well as C and C++ platform bindings.  Many
high level operations are lowered to generate calls to various
functions defined in this library.

I've uploaded the patch to my ftp, sorry about the impromptu of this,
I had everything neatly lined up, but stumbled after being rejected by
the mail daemon.

Regards,
Iain.

---

ftp://ftp.gdcproject.org/patches/10-d-runtime-library.patch.xz

 libphobos/libdruntime/LICENSE  |   26 +
 libphobos/libdruntime/core/atomic.d| 1772 ++
 libphobos/libdruntime/core/attribute.d |   57 +
 libphobos/libdruntime/core/bitop.d | 1018 
 libphobos/libdruntime/core/checkedint.d|  519 ++
 libphobos/libdruntime/core/cpuid.d | 1132 
 libphobos/libdruntime/core/demangle.d  | 2030 +++
 libphobos/libdruntime/core/exception.d |  718 +++
 libphobos/libdruntime/core/internal/abort.d|   45 +
 libphobos/libdruntime/core/internal/convert.d  |  638 ++
 libphobos/libdruntime/core/internal/hash.d |  508 ++
 libphobos/libdruntime/core/internal/spinlock.d |  103 +
 libphobos/libdruntime/core/internal/string.d   |  207 +
 libphobos/libdruntime/core/internal/traits.d   |  189 +
 libphobos/libdruntime/core/math.d  |  160 +
 libphobos/libdruntime/core/memory.d|  791 +++
 libphobos/libdruntime/core/runtime.d   |  843 +++
 libphobos/libdruntime/core/simd.d  |  462 ++
 libphobos/libdruntime/core/stdc/complex.d  |  177 +
 libphobos/libdruntime/core/stdc/config.d   |  151 +
 libphobos/libdruntime/core/stdc/ctype.d|   49 +
 libphobos/libdruntime/core/stdc/errno.d| 1232 
 libphobos/libdruntime/core/stdc/errno_.c   |   25 +
 libphobos/libdruntime/core/stdc/fenv.d |  392 ++
 libphobos/libdruntime/core/stdc/float_.d   |   92 +
 libphobos/libdruntime/core/stdc/inttypes.d |  443 ++
 libphobos/libdruntime/core/stdc/limits.d   |   61 +
 libphobos/libdruntime/core/stdc/locale.d   |  186 +
 libphobos/libdruntime/core/stdc/math.d | 2667 +
 libphobos/libdruntime/core/stdc/signal.d   |   78 +
 libphobos/libdruntime/core/stdc/stdarg.d   |  687 +++
 libphobos/libdruntime/core/stdc/stddef.d   |   33 +
 libphobos/libdruntime/core/stdc/stdint.d   |  258 +
 libphobos/libdruntime/core/stdc/stdio.d| 1261 
 libphobos/libdruntime/core/stdc/stdlib.d   |  224 +
 libphobos/libdruntime/core/stdc/string.d   |   95 +
 libphobos/libdruntime/core/stdc/tgmath.d   | 1131 
 libphobos/libdruntime/core/stdc/time.d |  165 +
 libphobos/libdruntime/core/stdc/wchar_.d   |  236 +
 libphobos/libdruntime/core/stdc/wctype.d   |   65 +
 libphobos/libdruntime/core/stdcpp/exception.d  |  106 +
 libphobos/libdruntime/core/stdcpp/typeinfo.d   |  146 +
 libphobos/libdruntime/core/sync/barrier.d  |  151 +
 libphobos/libdruntime/core/sync/condition.d|  606 ++
 libphobos/libdruntime/core/sync/config.d   |   68 +
 libphobos/libdruntime/core/sync/exception.d|   32 +
 libphobos/libdruntime/core/sync/mutex.d|  275 +
 libphobos/libdruntime/core/sync/rwmutex.d  |  528 ++
 libphobos/libdruntime/core/sync/semaphore.d|  445 ++
 libphobos/libdruntime/core/sys/bionic/fcntl.d  |5 +
 libphobos/libdruntime/core/sys/bionic/unistd.d |5 +
 libphobos/libdruntime/core/sys/freebsd/dlfcn.d |  113 +
 libphobos/libdruntime/core/sys/freebsd/execinfo.d  |  133 +
 libphobos/libdruntime/core/sys/freebsd/sys/cdefs.d |   16 +
 libphobos/libdruntime/core/sys/freebsd/sys/elf.d   |   11 +
 libphobos/libdruntime/core/sys/freebsd/sys/elf32.d |  187 +
 libphobos/libdruntime/core/sys/freebsd/sys/elf64.d |  193 +
 .../libdruntime/core/sys/freebsd/sys/elf_common.d  |  853 +++
 libphobos/libdruntime/core/sys/freebsd/sys/event.d |  130 +
 .../libdruntime/core/sys/freebsd/sys/link_elf.d|   79 +
 libphobos/libdruntime/core/sys/freebsd/sys/mman.d  |  143 +
 libphobos/libdruntime/core/sys/freebsd/time.d  |   25 +
 libphobos/libdruntime/core/sys/linux/config.d  |   28 +
 libphobos/libdruntime/core/sys/linux/dlfcn.d   |  306 +
 libphobos/libdruntime/core/sys/linux/elf.d | 2529 
 libphobos/libdruntime/core/sys/linux/epoll.d   |  130 +
 libphobos/libdruntime/core/sys/linux/errno.d   |   19 +
 libphobos/libdruntime/core/sys/linux/execinfo.d|   16 +
 libphobos/libdruntime/core/sys/linux/fcntl.d   |   18 +
 libphobos/libdruntime/core/sys/linux/link.d|  177 +
 libphobos/libdruntime/core/sys/linux/stdio.d   |  105 +
 libphobos/libdruntime/core/sys/linux/sys/inotify.d |  102 +
 li