d: Add openbsd support for D compiler [PR99691]

gcc/ChangeLog:

	PR d/99691
	* config.gcc (*-*-openbsd*): Add openbsd-d.o.
	* config/t-openbsd: Add openbsd-d.o.
	* config/openbsd-d.c: New file.
This commit is contained in:
Iain Buclaw 2021-03-21 11:00:29 +01:00
parent 6081d8994e
commit 8ab1d63744
3 changed files with 46 additions and 0 deletions

View file

@ -917,6 +917,8 @@ case ${target} in
default_use_cxa_atexit=yes
;;
esac
d_target_objs="${d_target_objs} openbsd-d.o"
target_has_targetdm=yes
;;
*-*-phoenix*)
gas=yes

39
gcc/config/openbsd-d.c Normal file
View file

@ -0,0 +1,39 @@
/* Functions for generic OpenBSD as target machine for GNU D compiler.
Copyright (C) 2021 Free Software Foundation, Inc.
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3, or (at your option)
any later version.
GCC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "memmodel.h"
#include "tm.h"
#include "tm_p.h"
#include "d/d-target.h"
#include "d/d-target-def.h"
static void
openbsd_d_os_builtins (void)
{
d_add_builtin_version ("Posix");
d_add_builtin_version ("OpenBSD");
}
#undef TARGET_D_OS_VERSIONS
#define TARGET_D_OS_VERSIONS openbsd_d_os_builtins
struct gcc_targetdm targetdm = TARGETDM_INITIALIZER;

View file

@ -1,2 +1,7 @@
# We don't need GCC's own include files.
USER_H = $(EXTRA_HEADERS)
# OpenBSD-specific D support.
openbsd-d.o: $(srcdir)/config/openbsd-d.c
$(COMPILE) $<
$(POSTCOMPILE)