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