|
1 | 1 | # SPDX-License-Identifier: GPL-2.0-or-later |
2 | 2 |
|
3 | | -plugin_sources = [ |
4 | | - 'plugins/amzn/amzn-nvme.c', |
5 | | - 'plugins/dapustor/dapustor-nvme.c', |
6 | | - 'plugins/dell/dell-nvme.c', |
7 | | - 'plugins/dera/dera-nvme.c', |
8 | | - 'plugins/fdp/fdp.c', |
9 | | - 'plugins/huawei/huawei-nvme.c', |
10 | | - 'plugins/ibm/ibm-nvme.c', |
11 | | - 'plugins/innogrit/innogrit-nvme.c', |
12 | | - 'plugins/inspur/inspur-nvme.c', |
13 | | - 'plugins/intel/intel-nvme.c', |
14 | | - 'plugins/mangoboost/mangoboost-nvme.c', |
15 | | - 'plugins/memblaze/memblaze-nvme.c', |
16 | | - 'plugins/micron/micron-nvme.c', |
17 | | - 'plugins/nbft/nbft-plugin.c', |
18 | | - 'plugins/netapp/netapp-nvme.c', |
19 | | - 'plugins/nvidia/nvidia-nvme.c', |
20 | | - 'plugins/sandisk/sandisk-nvme.c', |
21 | | - 'plugins/sandisk/sandisk-utils.c', |
22 | | - 'plugins/scaleflux/sfx-nvme.c', |
23 | | - 'plugins/seagate/seagate-nvme.c', |
24 | | - 'plugins/shannon/shannon-nvme.c', |
25 | | - 'plugins/ssstc/ssstc-nvme.c', |
26 | | - 'plugins/toshiba/toshiba-nvme.c', |
27 | | - 'plugins/transcend/transcend-nvme.c', |
28 | | - 'plugins/virtium/virtium-nvme.c', |
29 | | - 'plugins/wdc/wdc-nvme.c', |
30 | | - 'plugins/wdc/wdc-utils.c', |
31 | | - 'plugins/ymtc/ymtc-nvme.c', |
32 | | - 'plugins/zns/zns.c', |
33 | | -] |
34 | | - |
35 | | -subdir('feat') |
36 | | -subdir('lm') |
37 | | -subdir('ocp') |
38 | | - |
39 | | -if conf.get('HAVE_SED_OPAL') != 0 |
40 | | - subdir('sed') |
| 3 | +# Define all available plugins and their source files |
| 4 | +all_plugins = { |
| 5 | + 'amzn': ['plugins/amzn/amzn-nvme.c'], |
| 6 | + 'dapustor': ['plugins/dapustor/dapustor-nvme.c'], |
| 7 | + 'dell': ['plugins/dell/dell-nvme.c'], |
| 8 | + 'dera': ['plugins/dera/dera-nvme.c'], |
| 9 | + 'fdp': ['plugins/fdp/fdp.c'], |
| 10 | + 'huawei': ['plugins/huawei/huawei-nvme.c'], |
| 11 | + 'ibm': ['plugins/ibm/ibm-nvme.c'], |
| 12 | + 'innogrit': ['plugins/innogrit/innogrit-nvme.c'], |
| 13 | + 'inspur': ['plugins/inspur/inspur-nvme.c'], |
| 14 | + 'intel': ['plugins/intel/intel-nvme.c'], |
| 15 | + 'mangoboost': ['plugins/mangoboost/mangoboost-nvme.c'], |
| 16 | + 'memblaze': ['plugins/memblaze/memblaze-nvme.c'], |
| 17 | + 'micron': ['plugins/micron/micron-nvme.c'], |
| 18 | + 'nbft': ['plugins/nbft/nbft-plugin.c'], |
| 19 | + 'netapp': ['plugins/netapp/netapp-nvme.c'], |
| 20 | + 'nvidia': ['plugins/nvidia/nvidia-nvme.c'], |
| 21 | + 'sandisk': ['plugins/sandisk/sandisk-nvme.c', 'plugins/sandisk/sandisk-utils.c'], |
| 22 | + 'scaleflux': ['plugins/scaleflux/sfx-nvme.c'], |
| 23 | + 'seagate': ['plugins/seagate/seagate-nvme.c'], |
| 24 | + 'shannon': ['plugins/shannon/shannon-nvme.c'], |
| 25 | + 'ssstc': ['plugins/ssstc/ssstc-nvme.c'], |
| 26 | + 'toshiba': ['plugins/toshiba/toshiba-nvme.c'], |
| 27 | + 'transcend': ['plugins/transcend/transcend-nvme.c'], |
| 28 | + 'virtium': ['plugins/virtium/virtium-nvme.c'], |
| 29 | + 'wdc': ['plugins/wdc/wdc-nvme.c', 'plugins/wdc/wdc-utils.c'], |
| 30 | + 'ymtc': ['plugins/ymtc/ymtc-nvme.c'], |
| 31 | + 'zns': ['plugins/zns/zns.c'], |
| 32 | +} |
| 33 | + |
| 34 | +# Get the list of plugins to build |
| 35 | +selected_plugins = get_option('plugins') |
| 36 | + |
| 37 | +# Build the plugin_sources list from simple plugins |
| 38 | +plugin_sources = [] |
| 39 | +foreach plugin_name : selected_plugins |
| 40 | + plugin_name_stripped = plugin_name.strip() |
| 41 | + if plugin_name_stripped in all_plugins |
| 42 | + plugin_sources += all_plugins[plugin_name_stripped] |
| 43 | + endif |
| 44 | +endforeach |
| 45 | + |
| 46 | +if 'feat' in selected_plugins |
| 47 | + subdir('feat') |
| 48 | +endif |
| 49 | + |
| 50 | +if 'lm' in selected_plugins |
| 51 | + subdir('lm') |
| 52 | +endif |
| 53 | + |
| 54 | +if 'ocp' in selected_plugins |
| 55 | + subdir('ocp') |
| 56 | +endif |
| 57 | + |
| 58 | +if 'sed' in selected_plugins and conf.get('HAVE_SED_OPAL') != 0 |
| 59 | + subdir('sed') |
41 | 60 | endif |
42 | 61 |
|
43 | | -if json_c_dep.found() |
44 | | - subdir('solidigm') |
| 62 | +if 'solidigm' in selected_plugins and json_c_dep.found() |
| 63 | + subdir('solidigm') |
45 | 64 | endif |
0 commit comments