1*2eeaed14Srobj#!/bin/sh 2*2eeaed14Srobj 3*2eeaed14Srobj# 4*2eeaed14Srobj# CDDL HEADER START 5*2eeaed14Srobj# 6*2eeaed14Srobj# The contents of this file are subject to the terms of the 7*2eeaed14Srobj# Common Development and Distribution License (the "License"). 8*2eeaed14Srobj# You may not use this file except in compliance with the License. 9*2eeaed14Srobj# 10*2eeaed14Srobj# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 11*2eeaed14Srobj# or http://www.opensolaris.org/os/licensing. 12*2eeaed14Srobj# See the License for the specific language governing permissions 13*2eeaed14Srobj# and limitations under the License. 14*2eeaed14Srobj# 15*2eeaed14Srobj# When distributing Covered Code, include this CDDL HEADER in each 16*2eeaed14Srobj# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 17*2eeaed14Srobj# If applicable, add the following below this CDDL HEADER, with the 18*2eeaed14Srobj# fields enclosed by brackets "[]" replaced with your own identifying 19*2eeaed14Srobj# information: Portions Copyright [yyyy] [name of copyright owner] 20*2eeaed14Srobj# 21*2eeaed14Srobj# CDDL HEADER END 22*2eeaed14Srobj# 23*2eeaed14Srobj# 24*2eeaed14Srobj# Copyright 2008 Sun Microsystems, Inc. All rights reserved. 25*2eeaed14Srobj# Use is subject to license terms. 26*2eeaed14Srobj# 27*2eeaed14Srobj#ident "%Z%%M% %I% %E% SMI" 28*2eeaed14Srobj 29*2eeaed14Srobj# 30*2eeaed14Srobj# Construct translation tables for defines in libipmi.h to translate to readable 31*2eeaed14Srobj# strings. 32*2eeaed14Srobj# 33*2eeaed14Srobj 34*2eeaed14Srobjif [ $# -ne 1 ]; then 35*2eeaed14Srobj echo >&2 "USAGE: $0 <path to libimpi.h>" 36*2eeaed14Srobj exit 1 37*2eeaed14Srobjfi 38*2eeaed14Srobj 39*2eeaed14Srobjif [ -r $1 ]; then 40*2eeaed14Srobj libipmi_h=$1 41*2eeaed14Srobjelse 42*2eeaed14Srobj echo >&2 "USAGE: $0 <path to libimpi.h>" 43*2eeaed14Srobj echo >&2 "Make sure libipmi.h exists and is readable" 44*2eeaed14Srobj exit 1 45*2eeaed14Srobjfi 46*2eeaed14Srobj 47*2eeaed14Srobjecho "\ 48*2eeaed14Srobj/* 49*2eeaed14Srobj * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 50*2eeaed14Srobj * Use is subject to license terms. 51*2eeaed14Srobj */ 52*2eeaed14Srobj 53*2eeaed14Srobj#pragma ident \"%Z%%M% %I% %E% SMI\" 54*2eeaed14Srobj 55*2eeaed14Srobj#include <libipmi.h> 56*2eeaed14Srobj#include <ipmi_impl.h>" 57*2eeaed14Srobj 58*2eeaed14Srobj# 59*2eeaed14Srobj# Error table. 60*2eeaed14Srobj# 61*2eeaed14Srobjecho " 62*2eeaed14Srobjipmi_name_trans_t ipmi_errno_table[] = {" 63*2eeaed14Srobj 64*2eeaed14Srobjpattern=" \(EIPMI_[0-9A-Z_]*\)[^ \/]*\/\* \(.*\) \*\/$" 65*2eeaed14Srobjreplace=" { \1, \"\2\" }," 66*2eeaed14Srobj 67*2eeaed14Srobjcat $libipmi_h | sed -n "s/$pattern/$replace/p" || exit 1 68*2eeaed14Srobj 69*2eeaed14Srobjecho "\t{ 0, NULL } 70*2eeaed14Srobj};" 71*2eeaed14Srobj 72*2eeaed14Srobj# 73*2eeaed14Srobj# Entity table. 74*2eeaed14Srobj# 75*2eeaed14Srobjecho "\nipmi_name_trans_t ipmi_entity_table[] = {" 76*2eeaed14Srobj 77*2eeaed14Srobjpattern="#define IPMI_ET_\([A-Z0-9_]*\).*\$" 78*2eeaed14Srobjreplace=" { IPMI_ET_\1, \"\1\" }," 79*2eeaed14Srobj 80*2eeaed14Srobjcat $libipmi_h | sed -n "s/$pattern/$replace/p" || exit 1 81*2eeaed14Srobj 82*2eeaed14Srobjecho "\t{ 0, NULL } 83*2eeaed14Srobj};" 84*2eeaed14Srobj 85*2eeaed14Srobj# 86*2eeaed14Srobj# Sensor types. 87*2eeaed14Srobj# 88*2eeaed14Srobjecho "\nipmi_name_trans_t ipmi_sensor_type_table[] = {" 89*2eeaed14Srobj 90*2eeaed14Srobjpattern="#define IPMI_ST_\([A-Z0-9_]*\).*\$" 91*2eeaed14Srobjreplace=" { IPMI_ST_\1, \"\1\" }," 92*2eeaed14Srobj 93*2eeaed14Srobjcat $libipmi_h | sed -n "s/$pattern/$replace/p" || exit 1 94*2eeaed14Srobj 95*2eeaed14Srobjecho "\t{ 0, NULL } 96*2eeaed14Srobj};" 97*2eeaed14Srobj 98*2eeaed14Srobj# 99*2eeaed14Srobj# Reading types. 100*2eeaed14Srobj# 101*2eeaed14Srobjecho "\nipmi_name_trans_t ipmi_reading_type_table[] = {" 102*2eeaed14Srobj 103*2eeaed14Srobjpattern="#define IPMI_RT_\([A-Z0-9_]*\).*\$" 104*2eeaed14Srobjreplace=" { IPMI_RT_\1, \"\1\" }," 105*2eeaed14Srobj 106*2eeaed14Srobjcat $libipmi_h | sed -n "s/$pattern/$replace/p" || exit 1 107*2eeaed14Srobj 108*2eeaed14Srobjecho "\t{ 0, NULL } 109*2eeaed14Srobj};" 110