|
4 | 4 |
|
5 | 5 | function json = doctor() |
6 | 6 |
|
7 | | -raw = struct('matlab_arch', computer('arch')); |
| 7 | +raw = struct('matlab', []); |
| 8 | +raw.matlab.arch = computer('arch'); |
8 | 9 |
|
9 | 10 | if ~stdlib.isoctave() |
10 | 11 | try |
11 | 12 | r = matlabRelease().Release; |
12 | 13 | catch |
13 | 14 | r = ['R' version('-release')]; |
14 | 15 | end |
15 | | - raw.matlab_release = r; |
| 16 | + raw.matlab.release = r; |
16 | 17 |
|
17 | 18 | m = stdlib.matlab_bin_path(); |
18 | | - raw.matlab_extern_bin = m.extern_bin; |
19 | | - raw.matlab_root = m.root; |
20 | | - raw.matlab_arch_bin = m.arch_bin; |
21 | | - raw.matlab_bin = m.bin; |
| 19 | + raw.matlab.extern_bin = m.extern_bin; |
| 20 | + raw.matlab.root = m.root; |
| 21 | + raw.matlab.arch_bin = m.arch_bin; |
| 22 | + raw.matlab.bin = m.bin; |
22 | 23 | end |
23 | 24 |
|
24 | 25 | h5v = stdlib.h5get_version(); |
|
32 | 33 | end |
33 | 34 |
|
34 | 35 | if stdlib.has_java() |
35 | | - raw.java_vendor = stdlib.java_vendor(); |
36 | | - raw.java_version = stdlib.java_version(); |
37 | | - raw.java_home = stdlib.java_home(); |
| 36 | + raw.java.vendor = stdlib.java_vendor(); |
| 37 | + raw.java.version = stdlib.java_version(); |
| 38 | + raw.java.home = stdlib.java_home(); |
38 | 39 | end |
39 | 40 |
|
40 | 41 | if stdlib.has_dotnet() |
41 | | - raw.dotnet_version = stdlib.dotnet_version(); |
| 42 | + raw.dotnet.version = stdlib.dotnet_version(); |
42 | 43 | end |
43 | 44 |
|
44 | 45 | if stdlib.has_perl() |
45 | | - raw.perl_version = sprintf('%d.%d.%d', stdlib.perl_version()); |
46 | | - raw.perl_exe = stdlib.perl_exe(); |
| 46 | + raw.perl.version = sprintf('%d.%d.%d', stdlib.perl_version()); |
| 47 | + raw.perl.exe = stdlib.perl_exe(); |
47 | 48 | end |
48 | 49 |
|
49 | 50 | if stdlib.has_python() |
50 | | - raw.python_version = sprintf('%d.%d.%d', stdlib.python_version()); |
51 | | - raw.python_home = stdlib.python_home(); |
| 51 | + raw.python.version = sprintf('%d.%d.%d', stdlib.python_version()); |
| 52 | + raw.python.home = stdlib.python_home(); |
52 | 53 | end |
53 | 54 |
|
54 | 55 | if ismac() |
55 | | - raw.xcode_version = stdlib.xcode_version(); |
| 56 | + raw.xcode.version = stdlib.xcode_version(); |
56 | 57 | end |
57 | 58 |
|
58 | 59 | if ~stdlib.isoctave() |
|
61 | 62 | for i = 1:length(langs) |
62 | 63 | lang = langs{i}; |
63 | 64 | co = mex.getCompilerConfigurations(lang); |
64 | | - ct = ['compiler_' lang]; |
65 | | - vt = ['compiler_' lang '_version']; |
66 | | - raw.(ct) = ''; |
67 | | - raw.(vt) = ''; |
| 65 | + raw.compiler.(lang).name = ''; |
| 66 | + raw.compiler.(lang).version = ''; |
68 | 67 |
|
69 | 68 | if ~isempty(co) |
70 | | - raw.(ct) = co.Name; |
71 | | - raw.(vt) = co.Version; |
| 69 | + raw.compiler.(lang).name = co(1).Name; |
| 70 | + raw.compiler.(lang).version = co(1).Version; |
72 | 71 | end |
73 | 72 | end |
74 | 73 |
|
75 | 74 | end |
76 | 75 |
|
| 76 | + |
77 | 77 | try |
78 | 78 | json = jsonencode(raw, 'PrettyPrint', true); |
79 | 79 | catch e |
|
0 commit comments