]> git.saurik.com Git - apple/xnu.git/blob - config/generate_combined_symbolsets_plist.sh
xnu-7195.101.1.tar.gz
[apple/xnu.git] / config / generate_combined_symbolsets_plist.sh
1 #!/bin/sh
2
3 set -e
4
5 if [ $# -lt 2 ]; then
6 echo "Usage: $0 output.plist input1.plist [input2.plist ... ]" 1>&2
7 exit 1
8 fi
9
10 OUTPUT="$1"
11 shift
12
13 printf \
14 '<?xml version="1.0" encoding="UTF-8"?>
15 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
16 <plist version="1.0">
17 <dict>
18 <key>SymbolsSets</key>
19 <array>
20 ' > "$OUTPUT"
21
22 for f in "$@"; do
23 awk '
24 BEGIN {
25 print " <dict>"
26 }
27 /^\t/ {
28 print " " $0
29 next
30 }
31 END {
32 print " </dict>"
33 }
34 ' "$f" >> "$OUTPUT"
35 done
36
37 printf \
38 ' </array>
39 <key>WeakRefFallbackSymbol</key>
40 <dict>
41 <key>SymbolName</key>
42 <string>_gOSKextUnresolved</string>
43 </dict>
44 </dict>
45 </plist>
46 ' >> "$OUTPUT"
47
48 exit 0