[1/1] toplevel: unify the GCC and GDB/binutils .editorconfig files
Commit Message
Both GCC and GDB/binutils now have root editorconfig files. It would
make sense to unify them as this sets the general tone for these
projects.
ChangeLog:
* .editorconfig: Unify the GCC and GDB/binutils root config.
---
.editorconfig | 122 ++++++++++++++++++++++++++++++++++++++++++++++----
1 file changed, 113 insertions(+), 9 deletions(-)
Comments
On 9/23/25 12:49 PM, Richard Earnshaw wrote:
> Both GCC and GDB/binutils now have root editorconfig files. It would
> make sense to unify them as this sets the general tone for these
> projects.
>
> ChangeLog:
> * .editorconfig: Unify the GCC and GDB/binutils root config.
From the point of view of GDB, this looks fine, thanks for doing this.
Simon
On Tue, 23 Sept 2025 at 18:11, Simon Marchi wrote:
>
> On 9/23/25 12:49 PM, Richard Earnshaw wrote:
> > Both GCC and GDB/binutils now have root editorconfig files. It would
> > make sense to unify them as this sets the general tone for these
> > projects.
> >
> > ChangeLog:
> > * .editorconfig: Unify the GCC and GDB/binutils root config.
>
> From the point of view of GDB, this looks fine, thanks for doing this.
This looks like a vast improvement on the bare-bones config I added
for GCC, thanks.
On 24/09/2025 09:23, Jonathan Wakely wrote:
> On Tue, 23 Sept 2025 at 18:11, Simon Marchi wrote:
>>
>> On 9/23/25 12:49 PM, Richard Earnshaw wrote:
>>> Both GCC and GDB/binutils now have root editorconfig files. It would
>>> make sense to unify them as this sets the general tone for these
>>> projects.
>>>
>>> ChangeLog:
>>> * .editorconfig: Unify the GCC and GDB/binutils root config.
>>
>> From the point of view of GDB, this looks fine, thanks for doing this.
>
>
> This looks like a vast improvement on the bare-bones config I added
> for GCC, thanks.
>
I've now pushed this to the GCC repo, but I've not yet heard anything from the binutils maintainers. Do I need to wait for them, or is Simon's ack for GDB enough?
R.
On 10/1/25 10:44 AM, Richard Earnshaw (lists) wrote:
> On 24/09/2025 09:23, Jonathan Wakely wrote:
>> On Tue, 23 Sept 2025 at 18:11, Simon Marchi wrote:
>>>
>>> On 9/23/25 12:49 PM, Richard Earnshaw wrote:
>>>> Both GCC and GDB/binutils now have root editorconfig files. It would
>>>> make sense to unify them as this sets the general tone for these
>>>> projects.
>>>>
>>>> ChangeLog:
>>>> * .editorconfig: Unify the GCC and GDB/binutils root config.
>>>
>>> From the point of view of GDB, this looks fine, thanks for doing this.
>>
>>
>> This looks like a vast improvement on the bare-bones config I added
>> for GCC, thanks.
>>
>
> I've now pushed this to the GCC repo, but I've not yet heard anything from the binutils maintainers. Do I need to wait for them, or is Simon's ack for GDB enough?
>
> R.
I think you can go ahead and push it, I really don't see how it could be
controversial.
Simon
On 01/10/2025 15:58, Simon Marchi wrote:
> On 10/1/25 10:44 AM, Richard Earnshaw (lists) wrote:
>> On 24/09/2025 09:23, Jonathan Wakely wrote:
>>> On Tue, 23 Sept 2025 at 18:11, Simon Marchi wrote:
>>>>
>>>> On 9/23/25 12:49 PM, Richard Earnshaw wrote:
>>>>> Both GCC and GDB/binutils now have root editorconfig files. It would
>>>>> make sense to unify them as this sets the general tone for these
>>>>> projects.
>>>>>
>>>>> ChangeLog:
>>>>> * .editorconfig: Unify the GCC and GDB/binutils root config.
>>>>
>>>> From the point of view of GDB, this looks fine, thanks for doing this.
>>>
>>>
>>> This looks like a vast improvement on the bare-bones config I added
>>> for GCC, thanks.
>>>
>>
>> I've now pushed this to the GCC repo, but I've not yet heard anything from the binutils maintainers. Do I need to wait for them, or is Simon's ack for GDB enough?
>>
>> R.
>
> I think you can go ahead and push it, I really don't see how it could be
> controversial.
>
> Simon
Done.
R.
@@ -1,38 +1,142 @@
-# top-most EditorConfig file for gcc
+# Copyright 2025 Free Software Foundation, Inc.
+#
+# This program 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 of the License, or
+# (at your option) any later version.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+
+# This file helps editors auto-configure whitespace settings.
+#
+# See here for more information about the format and editor support:
+#
+# https://editorconfig.org/
+
+# This file is common to the GCC and GDB/Binutils projects. If you
+# update one, please sync it with the other.
+
+# top-most EditorConfig file
root = true
[*]
end_of_line = lf
insert_final_newline = true
+tab_width = 8
-[*.{h,cc}]
+# EditorConfig files
+[.editorconfig]
charset = utf-8
-indent_style = tab
-indent_size = 2
-tab_width = 8
trim_trailing_whitespace = true
-[{Makefile,ChangeLog}*]
+# Makefile
+[{Makefile,*.mk,*.am}*]
indent_style = tab
indent_size = 8
trim_trailing_whitespace = true
+# ChangeLogs
[ChangeLog*]
+indent_style = tab
+indent_size = 8
+trim_trailing_whitespace = true
+charset = utf-8
+
+# C/C++
+[*.{c,h,cc}]
charset = utf-8
+indent_style = tab
+indent_size = 2
+trim_trailing_whitespace = true
+# GCC .def files. These are generally C fragments that get included
+# one or more times
+[gcc/**.def]
+charset = utf-8
+indent_style = tab
+indent_size = 2
+trim_trailing_whitespace = true
+
+# Texinfo files
[*.texi]
charset = utf-8
indent_size = 2
-tab_width = 8
trim_trailing_whitespace = true
+# Expect / TCL
+[*.{exp,tcl}]
+indent_style = tab
+indent_size = 4
+trim_trailing_whitespace = true
+
+# Python
[*.py]
indent_style = space
indent_size = 4
trim_trailing_whitespace = true
-[*.exp]
+# Assembler
+[*.{s,S,asm}]
+indent_style = tab
+indent_size = 8
+trim_trailing_whitespace = true
+
+# GCC Machine description files
+[gcc/config/**.md]
+indent_style = tab
+indent_size = 2
+trim_trailing_whitespace = true
+
+# Awk
+[*.awk]
+indent_style = tab
+indent_size = 2
+trim_trailing_whitespace = true
+
+# Autoconf
+[*.{ac,m4}]
+indent_style = tab
+indent_size = 2
+trim_trailing_whitespace = true
+
+# Shell scripts
+[*.sh]
indent_style = tab
indent_size = 4
-tab_width = 8
+trim_trailing_whitespace = true
+
+# Ada
+[*.ad[bs]]
+indent_style = space
+indent_size = 3
+trim_trailing_whitespace = true
+
+# D
+[*.d]
+indent_style = space
+indent_size = 4
+trim_trailing_whitespace = true
+
+# Go
+[*.go]
+indent_style = tab
+indent_size = 8
+trim_trailing_whitespace = true
+
+# Fortran
+[*.[Ff]90]
+indent_style = space
+indent_size = 2
+trim_trailing_whitespace = true
+
+# Cobol
+[*.cbl]
+indent_style = space
+indent_size = 2
trim_trailing_whitespace = true