blob: b1d01c099271d44894adc210711d5139c23e7754 [file] [log] [blame]
Alex Bennée2f282712018-12-14 20:54:33 +00001# -*- coding:utf-8 -*-
2# Copyright (C) 2006 Libresoft
3#
4# This program is free software; you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by
6# the Free Software Foundation; either version 2 of the License, or
Philippe Mathieu-Daudé568c4392019-01-11 16:55:55 +01007# (at your option) any later version.
Alex Bennée2f282712018-12-14 20:54:33 +00008#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU Library General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
Khadija Kamran0c201cc2023-02-20 07:01:09 +000015# along with this program. If not, see <https://www.gnu.org/licenses/>.
Alex Bennée2f282712018-12-14 20:54:33 +000016#
17# Authors : Gregorio Robles <grex@gsyc.escet.urjc.es>
18# Authors : Germán Póo-Caamaño <gpoo@gnome.org>
19#
20# This QEMU version is a cut-down version of what originally shipped
21# in the gitdm sample-config directory.
22#
23# This file contains associations parameters regarding filetypes
zhaolichang639b0902020-09-17 15:50:29 +080024# (documentation, development, multimedia, images...)
Alex Bennée2f282712018-12-14 20:54:33 +000025#
26# format:
27# filetype <type> <regex> [<comment>]
28#
29# Order:
30# The list should keep an order, so filetypes can be counted properly.
31# ie. we want ltmain.sh -> 'build' instead of 'code'.
32#
33# If there is an filetype which is not in order but has values, it will
34# be added at the end.
35#
Markus Armbruster2f1b4092019-08-22 14:23:49 +020036order build,interface,tests,code,documentation,devel-doc,blobs
Alex Bennée2f282712018-12-14 20:54:33 +000037
38#
39#
40# Code files (headers and the like included
41# (most common languages first
42#
43filetype code \.c$ # C
Paolo Bonzini139c1832020-02-04 12:41:01 +010044filetype code \.c.inc$ # C
Alex Bennée2f282712018-12-14 20:54:33 +000045filetype code \.C$ # C++
46filetype code \.cpp$ # C++
47filetype code \.c\+\+$ # C++
48filetype code \.cxx$ # C++
49filetype code \.cc$ # C++
50filetype code \.h$ # C or C++ header
51filetype code \.hh$ # C++ header
52filetype code \.hpp$ # C++ header
53filetype code \.hxx$ # C++ header
54filetype code \.sh$ # Shell
55filetype code \.pl$ # Perl
56filetype code \.py$ # Python
57filetype code \.s$ # Assembly
58filetype code \.S$ # Assembly
59filetype code \.asm$ # Assembly
60filetype code \.awk$ # awk
zhaolichang639b0902020-09-17 15:50:29 +080061filetype code ^common$ # script fragments
62filetype code ^common.*$ # script fragments
Alex Bennée2f282712018-12-14 20:54:33 +000063filetype code (qom|qmp)-\w+$ # python script fragments
64
65#
66# Interface/api files
67#
68filetype interface \.json$ # json
69filetype interface \.hx$ # documented options
70
71#
72# Test related blobs (unfortunately we can't filter out test code)
73#
74filetype tests \.hex$
75filetype tests \d{2,3}$ # test data 00-999
76filetype tests ^[A-Z]{4}$ # ACPI test data
77filetype tests ^[A-Z]{4}\.*$ # ACPI test data
78filetype tests \.out$
79filetype tests \.out\.nocache$
80filetype tests \.err$
81filetype tests \.exit$ # bad-if-FOO.exit etc
82filetype tests \.decode$
83filetype tests \.yml$ # travis/shippable config
84
85#
86# Development documentation files (for hacking generally)
87#
88filetype devel-doc ^readme.*$
89filetype devel-doc ^changelog.*
90filetype devel-doc ^hacking.*$
91filetype devel-doc ^licen(s|c)e.*$
92filetype devel-doc ^copying.*$
93filetype devel-doc ^MAINTAINERS$
94filetype devel-doc ^BSD-2-Clause$
95filetype devel-doc ^BSD-3-Clause$
96filetype devel-doc ^GPL-2.0$
97filetype devel-doc \.txt$
98filetype devel-doc \.rst$
99filetype devel-doc \.texi$
100filetype devel-doc \.pod$
101
102#
103# Building, compiling, and configuration admin files
104#
105filetype build configure.*$
106filetype build Makefile$
107filetype build Makefile\.*$
108filetype build config$
109filetype build conf$
110filetype build \.cfg$
111filetype build \.mk$
112filetype build \.mak$
113filetype build \.docker$
114filetype build \.pre$
115filetype build ^.gitignore$
116filetype build ^.gitmodules$
117filetype build ^.gitpublish$
118filetype build ^.mailmap$
119filetype build ^.dir-locals.el$
120filetype build ^.editorconfig$
121filetype build ^.exrc$
122filetype build ^.gdbinit$
123filetype build \.cocci$ # Coccinelle semantic patches
124
125#
126# Misc blobs
127#
128filetype blobs \.bin$
129filetype blobs \.dtb$
130filetype blobs \.dts$
131filetype blobs \.rom$
132filetype blobs \.img$
133filetype blobs \.ndrv$
134filetype blobs \.bmp$
135filetype blobs \.svg$
136filetype blobs ^pi_10.com$
137
138
139#
140# Documentation files
141#
142filetype documentation \.html$
143filetype documentation \.txt$
144filetype documentation \.texi$
145filetype documentation \.po$ # translation files