From 30b4d0d0b9c82e2ae5c9abde62967c5fe01c4f84 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Wed, 9 Jan 2019 06:14:15 +0000 Subject: [PATCH] libgomp: Avoid complex dependencies for RTEMS libgomp/ * config/rtems/affinity-fmt.c: New file. Include affinity-fmt.c, undefining HAVE_GETPID and HAVE_GETHOSTNAME, and mapping fwrite to write. From-SVN: r267751 --- libgomp/ChangeLog | 6 ++++ libgomp/config/rtems/affinity-fmt.c | 49 +++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 libgomp/config/rtems/affinity-fmt.c diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index f9539545015..498e71bacdc 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,3 +1,9 @@ +2019-01-09 Sebastian Huber + + * config/rtems/affinity-fmt.c: New file. Include affinity-fmt.c, + undefining HAVE_GETPID and HAVE_GETHOSTNAME, and mapping fwrite to + write. + 2019-01-09 Tom de Vries PR target/88756 diff --git a/libgomp/config/rtems/affinity-fmt.c b/libgomp/config/rtems/affinity-fmt.c new file mode 100644 index 00000000000..e4e14c163e9 --- /dev/null +++ b/libgomp/config/rtems/affinity-fmt.c @@ -0,0 +1,49 @@ +/* Copyright (C) 2018-2019 Free Software Foundation, Inc. + + This file is part of the GNU Offloading and Multi Processing Library + (libgomp). + + Libgomp 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. + + Libgomp 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. + + Under Section 7 of GPL version 3, you are granted additional + permissions described in the GCC Runtime Library Exception, version + 3.1, as published by the Free Software Foundation. + + You should have received a copy of the GNU General Public License and + a copy of the GCC Runtime Library Exception along with this program; + see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + . */ + +#include "libgomp.h" +#include +#include +#include +#ifdef HAVE_UNISTD_H +#include +#endif +#ifdef HAVE_INTTYPES_H +# include /* For PRIx64. */ +#endif +#ifdef HAVE_UNAME +#include +#endif + +/* The HAVE_GETPID and HAVE_GETHOSTNAME configure tests are passing for RTEMS, + but the extra information they give are of little value for the user. + Override the configure test results here. */ +#undef HAVE_GETPID +#undef HAVE_GETHOSTNAME + +/* Avoid the complex fwrite() in favour of the simple write(). */ +#undef fwrite +#define fwrite(ptr, size, nmemb, stream) write (1, (ptr), (nmemb) * (size)) + +#include "../../affinity-fmt.c" -- 2.30.2