1*90c8c64dSAndroid Build Coastguard Worker#!/usr/bin/awk -f 2*90c8c64dSAndroid Build Coastguard Worker 3*90c8c64dSAndroid Build Coastguard Worker# Supports only "simple" diff3 style conflicts. Criss-cross conflicts are not supported. 4*90c8c64dSAndroid Build Coastguard Worker 5*90c8c64dSAndroid Build Coastguard WorkerBEGIN { 6*90c8c64dSAndroid Build Coastguard Worker if (TARGET !~ /^(LOCAL|BASE|REMOTE)$/) { 7*90c8c64dSAndroid Build Coastguard Worker print "Usage: ./split3.awk <file_with_diff3_conflict_markers -v TARGET={LOCAL,BASE,REMOTE}" 8*90c8c64dSAndroid Build Coastguard Worker exit 1 9*90c8c64dSAndroid Build Coastguard Worker } 10*90c8c64dSAndroid Build Coastguard Worker 11*90c8c64dSAndroid Build Coastguard Worker PRINT = 1 12*90c8c64dSAndroid Build Coastguard Worker} 13*90c8c64dSAndroid Build Coastguard Worker 14*90c8c64dSAndroid Build Coastguard Worker/^<{7}( .+)?$/ { 15*90c8c64dSAndroid Build Coastguard Worker PRINT = (TARGET == "LOCAL") 16*90c8c64dSAndroid Build Coastguard Worker next 17*90c8c64dSAndroid Build Coastguard Worker} 18*90c8c64dSAndroid Build Coastguard Worker 19*90c8c64dSAndroid Build Coastguard Worker/^\|{7}( .+)?$/ { 20*90c8c64dSAndroid Build Coastguard Worker PRINT = (TARGET == "BASE") 21*90c8c64dSAndroid Build Coastguard Worker next 22*90c8c64dSAndroid Build Coastguard Worker} 23*90c8c64dSAndroid Build Coastguard Worker 24*90c8c64dSAndroid Build Coastguard Worker/^={7}( .+)?$/ { 25*90c8c64dSAndroid Build Coastguard Worker PRINT = (TARGET == "REMOTE") 26*90c8c64dSAndroid Build Coastguard Worker next 27*90c8c64dSAndroid Build Coastguard Worker} 28*90c8c64dSAndroid Build Coastguard Worker 29*90c8c64dSAndroid Build Coastguard Worker/^>{7}( .+)?$/ { 30*90c8c64dSAndroid Build Coastguard Worker PRINT = 1 31*90c8c64dSAndroid Build Coastguard Worker next 32*90c8c64dSAndroid Build Coastguard Worker} 33*90c8c64dSAndroid Build Coastguard Worker 34*90c8c64dSAndroid Build Coastguard WorkerPRINT { print } 35