3 ms·
I'm a bit uninformed as well. Obviously it must use assembly in some places, it has makefiles for building and some scripts in perl. Here's what a cloc clone ha
by correct_horse 6y ago
I'm a bit uninformed as well. Obviously it must use assembly in some places, it has makefiles for building and some scripts in perl. Here's what a cloc clone has to say.
tokei
===============================================================================
Language Files Lines Code Comments Blanks
===============================================================================
ASN.1 11 484 343 33 108
Assembly 3 2751 2450 0 301
GNU Style Assembly 1296 370153 270691 56418 43044
Autoconf 6 347 303 20 24
Automake 3 31 23 3 5
BASH 54 1991 1438 321 232
C 28971 19846129 14634535 2351170 2860424
C Header 21110 6056898 4465297 1010398 581203
C++ 8 2313 2016 68 229
C++ Header 2 125 59 55 11
CSS 1 137 80 29 28
Device Tree 3351 900862 735380 54238 111244
Gherkin (Cucumber) 1 252 174 50 28
Happy 9 5750 5061 0 689
HEX 1 86 86 0 0
INI 1 7 3 3 1
JSON 328 174872 174872 0 0
LD Script 15 412 317 48 47
Makefile 2587 64666 43896 10957 9813
Module-Definition 2 124 109 0 15
Perl 53 40583 31126 3931 5526
Python 118 36932 29072 2980 4880
ReStructuredText 2621 548840 417105 0 131735
Ruby 1 29 25 0 4
Shell 556 85666 59725 10972 14969
SVG 59 39038 37555 1405 78
Plain Text 3230 239573 0 197373 42200
Unreal Script 5 716 446 162 108
Vim script 1 42 33 6 3
XSL 15 300 183 78 39
YAML 921 91167 72962 3985 14220
===============================================================================
Total 65340 28511276 20985365 3704703 3821208
===============================================================================
- nix23 6y agoThe Unreal Script is for the new 3D menuconfig ;)
- est31 6y agoSomeone should replace that with GDscript.
- skissane 6y agoI was surprised to see C++ in there, but I understand it is simply some of the user-space tooling (in particular, some small parts of the perf tool are written in C++, in order to embed clang/LLVM.) Likewise, Perl/Python/Ruby are just scripts included for various purposes (such as building documentation). Interestingly, some of the assembler code included in the kernel is generated by Perl scripts (crypto code for ARM and MIPS). Perl is also used to compile "SCSI SCRIPTS" which are used by the NCR 53c810 SCSI driver.