aboutsummaryrefslogblamecommitdiff
path: root/release/scripts/mtree-to-plist.awk
blob: 453c63bb54f07243d126903ccb60e591ad7c02c8 (plain) (tree)
1
2
3
4
5
6
7
8
9
10


                          
                                                


                                     
                                                 

                                            
                                                 

                                           
                                              

                                            
                                                 

                                           
                                               




                                


                                          




                          
 
                                                              
 
#!/usr/bin/awk
/^[^#]/ {
	gsub(/^\./,"", $1)
	uname = gname = mode = flags = tags = ""
	for (i=2; i<=NF; i++) {
		if ($i ~ /^uname=/) {
			uname=$i
			gsub(/uname=/, "", uname)
		} else if ($i ~ /^gname=/) {
			gname=$i
			gsub(/gname=/, "", gname)
		} else if ($i ~ /^mode=/) {
			mode=$i
			gsub(/mode=/,"", mode)
		} else if ($i ~ /^flags=/) {
			flags=$i
			gsub(/flags=/, "", flags)
		} else if ($i ~ /^tags=/) {
			tags=$i
			gsub(/tags=/, "", tags)
		}
	}
	if (length(tags) == 0)
		next
	if (tags ~ /package=/) {
		gsub(/package=/,"",tags)
		gsub(/,/, "-", tags)
		gsub(/runtime-/, "", tags)
		pkg=tags
	} else {
		pkg=tags
	}
	output=pkg".plist"

	print "@("uname","gname","mode","flags") " $1 > output
}