Iain Buclaw <[email protected]> writes:
> diff --git a/libphobos/d_rules.am b/libphobos/d_rules.am
> new file mode 100644
> index 00000000000..b16cf5052d2
> --- /dev/null
> +++ b/libphobos/d_rules.am
> @@ -0,0 +1,60 @@
> +# This file contains some common rules for D source compilation
> +# used for libdruntime and libphobos
> +
> +# If there are no sources with known extension (i.e. only D sources)
> +# automake forgets to set this
Needs a copyright notice and licence.
> +# AC_LANG(D)
> +# -----------
> +# (we have to use GDC as variable prefix as our GCC patches set GDC
> +# GDC_FOR_BUILD etc. If we ever want to support other D compilers all
> +# names need to be changed to DC)
Seems like this is still talking about GDC as a separate project.
> + # This checks to see if the host supports the compiler-generated builtins
> + # for atomic operations for various integral sizes. Note, this is intended
> + # to be an all-or-nothing switch, so all the atomic operations that are
> + # used should be checked.
> + AC_MSG_CHECKING([for atomic builtins for byte])
> + AC_CACHE_VAL(druntime_cv_atomic_byte, [
> + AC_TRY_LINK(
> + [import gcc.builtins;], [
> + shared(byte) c1;
> + byte c2, c3;
> + __atomic_compare_exchange_1(&c1, &c2, c3, false, 5, 5);
> + __atomic_load_1(&c1, 5);
> + __atomic_store_1(&c1, c2, 5);
> + return 0;
> + ],
> + [druntime_cv_atomic_byte=yes],
> + [druntime_cv_atomic_byte=no])
> + ])
> + AC_MSG_RESULT($druntime_cv_atomic_byte)
Link tests generally don't work for newlib targets, since they often
require a specific command-line option to specify the target system.
But perhaps you don't support newlib targets anyway. Either way,
it shouldn't hold up acceptance.
> --- /dev/null
> +++ b/libphobos/src/Makefile.am
> @@ -0,0 +1,211 @@
> +# Makefile for the Phobos standard library.
> +# Copyright (C) 2012-2017 Free Software Foundation, Inc.
2012-2018.
> diff --git a/libphobos/testsuite/Makefile.am b/libphobos/testsuite/Makefile.am
> new file mode 100644
> index 00000000000..dd99d9d871e
> --- /dev/null
> +++ b/libphobos/testsuite/Makefile.am
> @@ -0,0 +1,15 @@
> +## Process this file with automake to produce Makefile.in.
> +
> +AUTOMAKE_OPTIONS = foreign dejagnu
> +
> +# Setup the testing framework, if you have one
> +EXPECT = $(shell if test -f $(top_builddir)/../expect/expect; then \
> + echo $(top_builddir)/../expect/expect; else echo expect; fi)
> +
> +_RUNTEST = $(shell if test -f $(top_srcdir)/../dejagnu/runtest; then \
> + echo $(top_srcdir)/../dejagnu/runtest; else echo runtest; fi)
> +RUNTEST = "$(_RUNTEST) $(AM_RUNTESTFLAGS)"
> +
> +AM_MAKEFLAGS = "EXEEXT=$(EXEEXT)"
> +
> +CLEANFILES = *.log *.sum
Should probably have a copyright & licence here too, even though
it's small, since it could grow in future.
> +// { dg-shouldfail "static_dtor_exception" }
> +// { dg-output "object.Exception@.*: static_dtor_exception" }
> +// Issue 16594
> +import core.stdc.stdio;
Which bug tracker is this referring to? Maybe a URI would be better,
to avoid confusion with GCC's bugzilla. Same for other bugzilla
references in later tests. Or just remove if the tracker isn't public.
OK otherwise, thanks.
I think that's the last of the unreviewed patches. Let me know
if I missed one.
Richard