xref: /xnu-11417.121.6/config/generate_combined_symbolsets_plist.sh (revision a1e26a70f38d1d7daa7b49b258e2f8538ad81650)
1*a1e26a70SApple OSS Distributions#!/bin/sh
2*a1e26a70SApple OSS Distributions
3*a1e26a70SApple OSS Distributionsset -e
4*a1e26a70SApple OSS Distributions
5*a1e26a70SApple OSS Distributionsif [ $# -lt 2 ]; then
6*a1e26a70SApple OSS Distributions    echo "Usage: $0 output.plist input1.plist [input2.plist ... ]" 1>&2
7*a1e26a70SApple OSS Distributions    exit 1
8*a1e26a70SApple OSS Distributionsfi
9*a1e26a70SApple OSS Distributions
10*a1e26a70SApple OSS DistributionsOUTPUT="$1"
11*a1e26a70SApple OSS Distributionsshift
12*a1e26a70SApple OSS Distributions
13*a1e26a70SApple OSS Distributionsprintf \
14*a1e26a70SApple OSS Distributions'<?xml version="1.0" encoding="UTF-8"?>
15*a1e26a70SApple OSS Distributions<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
16*a1e26a70SApple OSS Distributions<plist version="1.0">
17*a1e26a70SApple OSS Distributions<dict>
18*a1e26a70SApple OSS Distributions	<key>SymbolsSets</key>
19*a1e26a70SApple OSS Distributions	<array>
20*a1e26a70SApple OSS Distributions' > "$OUTPUT"
21*a1e26a70SApple OSS Distributions
22*a1e26a70SApple OSS Distributionsfor f in "$@"; do
23*a1e26a70SApple OSS Distributionsawk '
24*a1e26a70SApple OSS Distributions	BEGIN {
25*a1e26a70SApple OSS Distributions		print "		<dict>"
26*a1e26a70SApple OSS Distributions	}
27*a1e26a70SApple OSS Distributions	/^\t/ {
28*a1e26a70SApple OSS Distributions		print "		" $0
29*a1e26a70SApple OSS Distributions		next
30*a1e26a70SApple OSS Distributions	}
31*a1e26a70SApple OSS Distributions	END {
32*a1e26a70SApple OSS Distributions		print "		</dict>"
33*a1e26a70SApple OSS Distributions	}
34*a1e26a70SApple OSS Distributions' "$f" >> "$OUTPUT"
35*a1e26a70SApple OSS Distributionsdone
36*a1e26a70SApple OSS Distributions
37*a1e26a70SApple OSS Distributionsprintf \
38*a1e26a70SApple OSS Distributions'	</array>
39*a1e26a70SApple OSS Distributions	<key>WeakRefFallbackSymbol</key>
40*a1e26a70SApple OSS Distributions	<dict>
41*a1e26a70SApple OSS Distributions		<key>SymbolName</key>
42*a1e26a70SApple OSS Distributions		<string>_gOSKextUnresolved</string>
43*a1e26a70SApple OSS Distributions	</dict>
44*a1e26a70SApple OSS Distributions</dict>
45*a1e26a70SApple OSS Distributions</plist>
46*a1e26a70SApple OSS Distributions' >> "$OUTPUT"
47*a1e26a70SApple OSS Distributions
48*a1e26a70SApple OSS Distributionsexit 0
49