| SUMMARY = "Phosphor hwmon configuration generator" |
| DESCRIPTION = "Generate phosphor-hwmon configuration from an MRW." |
| PR = "r1" |
| |
| inherit obmc-phosphor-license |
| inherit allarch |
| inherit mrw-xml |
| |
| DEPENDS += "mrw-perl-tools-native mrw-native" |
| |
| do_compile_append() { |
| ${STAGING_BINDIR_NATIVE}/perl-native/perl \ |
| ${STAGING_BINDIR_NATIVE}/hwmon.pl \ |
| -x ${mrw_datadir}/${MRW_XML} \ |
| -d ${WORKDIR}/mrw-config-files |
| } |
| |
| def find_conf_files(dir): |
| from fnmatch import fnmatch |
| myfiles = [] |
| |
| #These conf files generated by hwmon.pl are in |
| #subdirectories which we need to preserve the path to. |
| for root, dirs, files in os.walk(dir): |
| for name in files: |
| if fnmatch(name, "*.conf"): |
| myfiles.append(os.path.join(root, name)) |
| |
| return myfiles |
| |
| python install_conf_files() { |
| from shutil import copy |
| |
| conf_file_dir = os.path.join( |
| d.getVar("WORKDIR", True), |
| 'mrw-config-files') |
| files = find_conf_files(conf_file_dir) |
| |
| install_dir = os.path.join(d.getVar("D", True), |
| "etc", "default", "obmc", "hwmon") |
| |
| dir_len = len(conf_file_dir) |
| |
| for f in files: |
| dest = os.path.join(install_dir, f[dir_len + 1:]) |
| parent = os.path.dirname(dest) |
| if not os.path.exists(parent): |
| os.makedirs(parent) |
| |
| copy(f, dest) |
| } |
| |
| do_install[postfuncs] += "install_conf_files" |