From c05cceb2f3baa96c9381be38717bdf6f1f3adb76 Mon Sep 17 00:00:00 2001 From: LIU Hao Date: Sat, 22 Oct 2022 17:31:46 +0800 Subject: [PATCH] libgcc: Update 'gthr-mcf.h' to include a dedicated header for libobjc 'libobjc/thr.c' includes 'gthr.h'. While all the other gthread headers have `#ifdef _LIBOBJC` checks, and provide a different set of inline functions, I think having one header provide two completely unrelated set of APIs is unsatisfactory, complicates maintenance, and hinders further development. This commit references a new header for libobjc, and adds a copyright notice, as in other headers. libgcc/ChangeLog: * config/i386/gthr-mcf.h: Include 'gthr_libobjc.h' when building libobjc, instead of 'gthr.h' --- libgcc/config/i386/gthr-mcf.h | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/libgcc/config/i386/gthr-mcf.h b/libgcc/config/i386/gthr-mcf.h index 58131bb7ca9..40da86802b6 100644 --- a/libgcc/config/i386/gthr-mcf.h +++ b/libgcc/config/i386/gthr-mcf.h @@ -1 +1,36 @@ +/* Threads compatibility routines for libgcc and libobjc. */ +/* Copyright (C) 2022 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. + +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 +. */ + +#ifdef _LIBOBJC + +/* libobjc references some internal structures and requires a + * dedicated set of functions. */ +#include + +#else /* _LIBOBJC */ + +/* This is for libgcc and libstdc++. */ #include + +#endif /* _LIBOBJC */ -- 2.38.1