1*2127Sstevel#!/bin/sh 2*2127Sstevel 3*2127Sstevel# Copyright 2003 by Sun Microsystems, Inc. All rights reserved. 4*2127Sstevel# Use is subject to license terms. 5*2127Sstevel# 6*2127Sstevel#pragma ident "%Z%%M% %I% %E% SMI" 7*2127Sstevel 8*2127Sstevelset -e 9*2127SstevelPATH=/bin:/usr/bin:$PATH; export PATH 10*2127Ssteveltrap "rm -f tmp$$[abc].[oc]" 0 11*2127Ssteveltarget=port_ipv6 12*2127Sstevelnew=new_${target}.h 13*2127Sstevelold=${target}.h 14*2127Sstevel 15*2127Sstevelcat > tmp$$a.c <<EOF 16*2127Sstevel#include <sys/types.h> 17*2127Sstevel#include <netinet/in.h> 18*2127Sstevelstruct sockaddr_in6 xx; 19*2127SstevelEOF 20*2127Sstevel 21*2127Sstevelcat > tmp$$b.c <<EOF 22*2127Sstevel#include <sys/types.h> 23*2127Sstevel#include <netinet/in.h> 24*2127Sstevelstruct in6_addr xx; 25*2127SstevelEOF 26*2127Sstevel 27*2127Sstevelcat > tmp$$c.c <<EOF 28*2127Sstevel#include <sys/types.h> 29*2127Sstevel#include <netinet/in.h> 30*2127Sstevelstruct sockaddr_in6 xx; 31*2127Sstevelmain() { xx.sin6_scope_id = 0; } 32*2127SstevelEOF 33*2127Sstevel 34*2127Sstevelcat > ${new} <<EOF 35*2127Sstevel 36*2127Sstevel/* This file is automatically generated. Do Not Edit. */ 37*2127Sstevel 38*2127Sstevel#ifndef ${target}_h 39*2127Sstevel#define ${target}_h 40*2127Sstevel 41*2127SstevelEOF 42*2127Sstevel 43*2127Sstevelif ${CC} -c tmp$$a.c > /dev/null 2>&1 44*2127Sstevelthen 45*2127Sstevel echo "#define HAS_INET6_STRUCTS" >> ${new} 46*2127Sstevel if ${CC} -c tmp$$b.c > /dev/null 2>&1 47*2127Sstevel then 48*2127Sstevel : 49*2127Sstevel else 50*2127Sstevel echo "#define in6_addr in_addr6" >> ${new} 51*2127Sstevel fi 52*2127Sstevel if ${CC} -c tmp$$c.c > /dev/null 2>&1 53*2127Sstevel then 54*2127Sstevel echo "#define HAVE_SIN6_SCOPE_ID" >> ${new} 55*2127Sstevel else 56*2127Sstevel echo "#undef HAVE_SIN6_SCOPE_ID" >> ${new} 57*2127Sstevel fi 58*2127Sstevelelse 59*2127Sstevel echo "#undef HAS_INET6_STRUCTS" >> ${new} 60*2127Sstevelfi 61*2127Sstevelecho >> ${new} 62*2127Sstevelecho "#endif" >> ${new} 63*2127Sstevelif [ -f ${old} ]; then 64*2127Sstevel if cmp -s ${new} ${old} ; then 65*2127Sstevel rm -f ${new} 66*2127Sstevel else 67*2127Sstevel rm -f ${old} 68*2127Sstevel mv ${new} ${old} 69*2127Sstevel fi 70*2127Sstevelelse 71*2127Sstevel mv ${new} ${old} 72*2127Sstevelfi 73*2127Sstevelexit 0 74