12eeaed14Srobj#!/bin/sh 22eeaed14Srobj 32eeaed14Srobj# 42eeaed14Srobj# CDDL HEADER START 52eeaed14Srobj# 62eeaed14Srobj# The contents of this file are subject to the terms of the 72eeaed14Srobj# Common Development and Distribution License (the "License"). 82eeaed14Srobj# You may not use this file except in compliance with the License. 92eeaed14Srobj# 102eeaed14Srobj# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 112eeaed14Srobj# or http://www.opensolaris.org/os/licensing. 122eeaed14Srobj# See the License for the specific language governing permissions 132eeaed14Srobj# and limitations under the License. 142eeaed14Srobj# 152eeaed14Srobj# When distributing Covered Code, include this CDDL HEADER in each 162eeaed14Srobj# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 172eeaed14Srobj# If applicable, add the following below this CDDL HEADER, with the 182eeaed14Srobj# fields enclosed by brackets "[]" replaced with your own identifying 192eeaed14Srobj# information: Portions Copyright [yyyy] [name of copyright owner] 202eeaed14Srobj# 212eeaed14Srobj# CDDL HEADER END 222eeaed14Srobj# 232eeaed14Srobj# 242eeaed14Srobj# Copyright 2008 Sun Microsystems, Inc. All rights reserved. 252eeaed14Srobj# Use is subject to license terms. 262eeaed14Srobj# 272eeaed14Srobj#ident "%Z%%M% %I% %E% SMI" 282eeaed14Srobj 292eeaed14Srobj# 302eeaed14Srobj# Construct translation tables for defines in libipmi.h to translate to readable 312eeaed14Srobj# strings. 322eeaed14Srobj# 332eeaed14Srobj 342eeaed14Srobjif [ $# -ne 1 ]; then 352eeaed14Srobj echo >&2 "USAGE: $0 <path to libimpi.h>" 362eeaed14Srobj exit 1 372eeaed14Srobjfi 382eeaed14Srobj 392eeaed14Srobjif [ -r $1 ]; then 402eeaed14Srobj libipmi_h=$1 412eeaed14Srobjelse 422eeaed14Srobj echo >&2 "USAGE: $0 <path to libimpi.h>" 432eeaed14Srobj echo >&2 "Make sure libipmi.h exists and is readable" 442eeaed14Srobj exit 1 452eeaed14Srobjfi 462eeaed14Srobj 472eeaed14Srobjecho "\ 482eeaed14Srobj/* 492eeaed14Srobj * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 502eeaed14Srobj * Use is subject to license terms. 512eeaed14Srobj */ 522eeaed14Srobj 532eeaed14Srobj#pragma ident \"%Z%%M% %I% %E% SMI\" 542eeaed14Srobj 552eeaed14Srobj#include <libipmi.h> 562eeaed14Srobj#include <ipmi_impl.h>" 572eeaed14Srobj 582eeaed14Srobj# 592eeaed14Srobj# Error table. 602eeaed14Srobj# 612eeaed14Srobjecho " 622eeaed14Srobjipmi_name_trans_t ipmi_errno_table[] = {" 632eeaed14Srobj 642eeaed14Srobjpattern=" \(EIPMI_[0-9A-Z_]*\)[^ \/]*\/\* \(.*\) \*\/$" 652eeaed14Srobjreplace=" { \1, \"\2\" }," 662eeaed14Srobj 672eeaed14Srobjcat $libipmi_h | sed -n "s/$pattern/$replace/p" || exit 1 682eeaed14Srobj 692eeaed14Srobjecho "\t{ 0, NULL } 702eeaed14Srobj};" 712eeaed14Srobj 722eeaed14Srobj# 732eeaed14Srobj# Entity table. 742eeaed14Srobj# 752eeaed14Srobjecho "\nipmi_name_trans_t ipmi_entity_table[] = {" 762eeaed14Srobj 772eeaed14Srobjpattern="#define IPMI_ET_\([A-Z0-9_]*\).*\$" 782eeaed14Srobjreplace=" { IPMI_ET_\1, \"\1\" }," 792eeaed14Srobj 802eeaed14Srobjcat $libipmi_h | sed -n "s/$pattern/$replace/p" || exit 1 812eeaed14Srobj 822eeaed14Srobjecho "\t{ 0, NULL } 832eeaed14Srobj};" 842eeaed14Srobj 852eeaed14Srobj# 862eeaed14Srobj# Sensor types. 872eeaed14Srobj# 882eeaed14Srobjecho "\nipmi_name_trans_t ipmi_sensor_type_table[] = {" 892eeaed14Srobj 902eeaed14Srobjpattern="#define IPMI_ST_\([A-Z0-9_]*\).*\$" 912eeaed14Srobjreplace=" { IPMI_ST_\1, \"\1\" }," 922eeaed14Srobj 932eeaed14Srobjcat $libipmi_h | sed -n "s/$pattern/$replace/p" || exit 1 942eeaed14Srobj 952eeaed14Srobjecho "\t{ 0, NULL } 962eeaed14Srobj};" 972eeaed14Srobj 982eeaed14Srobj# 992eeaed14Srobj# Reading types. 1002eeaed14Srobj# 1012eeaed14Srobjecho "\nipmi_name_trans_t ipmi_reading_type_table[] = {" 1022eeaed14Srobj 1032eeaed14Srobjpattern="#define IPMI_RT_\([A-Z0-9_]*\).*\$" 1042eeaed14Srobjreplace=" { IPMI_RT_\1, \"\1\" }," 1052eeaed14Srobj 1062eeaed14Srobjcat $libipmi_h | sed -n "s/$pattern/$replace/p" || exit 1 1072eeaed14Srobj 1082eeaed14Srobjecho "\t{ 0, NULL } 1092eeaed14Srobj};" 110*825ba0f2Srobj 111*825ba0f2Srobj# 112*825ba0f2Srobj# Units 113*825ba0f2Srobj# 114*825ba0f2Srobjecho "\nipmi_name_trans_t ipmi_units_type_table[] = {" 115*825ba0f2Srobj 116*825ba0f2Srobjpattern="#define IPMI_UNITS_\([A-Z0-9_]*\).*\$" 117*825ba0f2Srobjreplace=" { IPMI_UNITS_\1, \"\1\" }," 118*825ba0f2Srobj 119*825ba0f2Srobjcat $libipmi_h | sed -n "s/$pattern/$replace/p" || exit 1 120*825ba0f2Srobj 121*825ba0f2Srobjecho "\t{ 0, NULL } 122*825ba0f2Srobj};" 123*825ba0f2Srobj 124