1*b32fbb63SXin Li#!/bin/bash 2*b32fbb63SXin Li 3*b32fbb63SXin Liif [[ $# -ne 3 ]] 4*b32fbb63SXin Lithen 5*b32fbb63SXin Li echo "Diff AAOS sysui & notifications projects between two revesions" 6*b32fbb63SXin Li echo "Usage $0 <path_to_android_checkout> <diff_start_hash_or_label> <diff_end_hash_or_label>" 7*b32fbb63SXin Li echo "Example 1: $0 ~/Android/android11-release remotes/aosp/android10-qpr3-release remotes/aosp/android11-release" 8*b32fbb63SXin Li echo "Example 2: $0 ~/Android/master fbec38f2ae804519be36b146c4c5a3772ad0327a 5079993610225086d0c059cb693881d83ed64af9" 9*b32fbb63SXin Li exit 1 10*b32fbb63SXin Lifi 11*b32fbb63SXin Li 12*b32fbb63SXin Li# i.e. something like ~/Android/android11-release 13*b32fbb63SXin LiANDROID_CHECKOUT=$1 14*b32fbb63SXin Li# i.e. something like remotes/aosp/android10-qpr3-release 15*b32fbb63SXin Li# ref: branches https://android.googlesource.com/platform/frameworks/base/+refs 16*b32fbb63SXin LiLABEL_START=$2 17*b32fbb63SXin Li# i.e. something like remotes/aosp/android11-release 18*b32fbb63SXin LiLABEL_END=$3 19*b32fbb63SXin Li 20*b32fbb63SXin Ligit_stat_method () { 21*b32fbb63SXin Li FILE_LIST=`eval $1 | cat` 22*b32fbb63SXin Li if [[ -z $FILE_LIST ]] 23*b32fbb63SXin Li then 24*b32fbb63SXin Li echo "Query does not return any files: \"$1\"" 25*b32fbb63SXin Li else 26*b32fbb63SXin Li echo "Running:" 27*b32fbb63SXin Li echo "git diff --stat $LABEL_START $LABEL_END -- \`$1\`" 28*b32fbb63SXin Li eval "git diff --stat $LABEL_START $LABEL_END -- \`$1\`" | cat 29*b32fbb63SXin Li fi 30*b32fbb63SXin Li} 31*b32fbb63SXin Li 32*b32fbb63SXin Lino_sysui_ext_project() { 33*b32fbb63SXin Li echo "sysui is not overwritten as no project at: $SYSUI_EXT_PROJECT" 34*b32fbb63SXin Li echo "If there is, change SYSUI_EXT_PROJECT in the script." 35*b32fbb63SXin Li} 36*b32fbb63SXin Li 37*b32fbb63SXin Li# These values should be updated as necessary. 38*b32fbb63SXin LiSYSUI_BASE_PROJECT=frameworks/base 39*b32fbb63SXin LiSYSUI_BASE_PATTERN=packages/CarSystemUI 40*b32fbb63SXin LiSYSUI_EXT_PROJECT=vendor/auto/embedded 41*b32fbb63SXin LiSYSUI_EXT_PATTERN=AAECarSystemUI 42*b32fbb63SXin LiNOTIF_PROJECT=packages/apps/Car/Notification 43*b32fbb63SXin LiNOTIF_PATTERN=car/notification 44*b32fbb63SXin Li 45*b32fbb63SXin LiOVERLAY_PROJECT=packages/services/Car 46*b32fbb63SXin LiOVERLAY_PATTERN=res/values 47*b32fbb63SXin LiRRO_PATTERN=/rro/ 48*b32fbb63SXin LiSYSUI_RAW_PATTERN=SystemUI 49*b32fbb63SXin Li 50*b32fbb63SXin Liecho "Android Checkout:" $ANDROID_CHECKOUT 51*b32fbb63SXin Liecho "SysUI Base Pattern:" $SYSUI_BASE_PATTERN 52*b32fbb63SXin Liecho "SysUI Base Project:" $SYSUI_BASE_PROJECT 53*b32fbb63SXin Liecho "SysUI Ext Pattern:" $SYSUI_EXT_PATTERN 54*b32fbb63SXin Liecho "SysUI Ext Project:" $SYSUI_EXT_PROJECT 55*b32fbb63SXin Liecho "Notif Pattern:" $NOTIF_PATTERN 56*b32fbb63SXin Liecho "Notif Project:" $NOTIF_PROJECT 57*b32fbb63SXin Liecho "Overlay Pattern:" $OVERLAY_PATTERN 58*b32fbb63SXin Liecho "RRO Pattern:" $RRO_PATTERN 59*b32fbb63SXin Liecho "Overlay Project:" $OVERLAY_PROJECT 60*b32fbb63SXin Liecho "SysUI Raw Pattern:" $SYSUI_RAW_PATTERN 61*b32fbb63SXin Li 62*b32fbb63SXin Liecho "" 63*b32fbb63SXin Liecho "" 64*b32fbb63SXin Li 65*b32fbb63SXin Liecho "----------------------------------------------------------" 66*b32fbb63SXin Liecho "Customized Code" 67*b32fbb63SXin Liecho "----------------------------------------------------------" 68*b32fbb63SXin Liecho "*****************************" 69*b32fbb63SXin Liecho "Base SysUI" 70*b32fbb63SXin Liecho "*****************************" 71*b32fbb63SXin Licd $ANDROID_CHECKOUT 72*b32fbb63SXin Licd $SYSUI_BASE_PROJECT 73*b32fbb63SXin Liecho "Working directory:" `pwd` 74*b32fbb63SXin Li 75*b32fbb63SXin Ligit_stat_method "find . -name '*.java' | egrep -v 'test' | egrep '$SYSUI_BASE_PATTERN'" 76*b32fbb63SXin Li 77*b32fbb63SXin Liecho "" 78*b32fbb63SXin Li 79*b32fbb63SXin Liecho "*****************************" 80*b32fbb63SXin Liecho "Ext SysUI" 81*b32fbb63SXin Liecho "*****************************" 82*b32fbb63SXin Liif [[ -e $SYSUI_EXT_PROJECT ]]; then 83*b32fbb63SXin Li cd $ANDROID_CHECKOUT 84*b32fbb63SXin Li cd $SYSUI_EXT_PROJECT 85*b32fbb63SXin Li echo "Working directory:" `pwd` 86*b32fbb63SXin Li 87*b32fbb63SXin Li git_stat_method "find . -name '*.java' | egrep -v 'test' | egrep '$SYSUI_EXT_PATTERN'" 88*b32fbb63SXin Lielse 89*b32fbb63SXin Li no_sysui_ext_project 90*b32fbb63SXin Lifi 91*b32fbb63SXin Li 92*b32fbb63SXin Liecho "" 93*b32fbb63SXin Li 94*b32fbb63SXin Liecho "*****************************" 95*b32fbb63SXin Liecho "Notification" 96*b32fbb63SXin Liecho "*****************************" 97*b32fbb63SXin Licd $ANDROID_CHECKOUT 98*b32fbb63SXin Licd $NOTIF_PROJECT 99*b32fbb63SXin Liecho "Working directory:" `pwd` 100*b32fbb63SXin Li 101*b32fbb63SXin Ligit_stat_method "find . -name '*.java' | egrep -v 'test' | egrep '$NOTIF_PATTERN'" 102*b32fbb63SXin Li 103*b32fbb63SXin Liecho "" 104*b32fbb63SXin Liecho "" 105*b32fbb63SXin Liecho "" 106*b32fbb63SXin Li 107*b32fbb63SXin Liecho "----------------------------------------------------------" 108*b32fbb63SXin Liecho "Customized Configs" 109*b32fbb63SXin Liecho "----------------------------------------------------------" 110*b32fbb63SXin Liecho "*****************************" 111*b32fbb63SXin Liecho "Resource Overlays SysUI" 112*b32fbb63SXin Liecho "*****************************" 113*b32fbb63SXin Licd $ANDROID_CHECKOUT 114*b32fbb63SXin Licd $OVERLAY_PROJECT 115*b32fbb63SXin Liecho "Working directory:" `pwd` 116*b32fbb63SXin Li 117*b32fbb63SXin Ligit_stat_method "find . -name '*.xml' | egrep -v '$RRO_PATTERN' | egrep '$OVERLAY_PATTERN' | egrep '$SYSUI_RAW_PATTERN'" 118*b32fbb63SXin Li 119*b32fbb63SXin Liecho "" 120*b32fbb63SXin Li 121*b32fbb63SXin Liecho "*****************************" 122*b32fbb63SXin Liecho "RROs SysUI" 123*b32fbb63SXin Liecho "*****************************" 124*b32fbb63SXin Licd $ANDROID_CHECKOUT 125*b32fbb63SXin Licd $OVERLAY_PROJECT 126*b32fbb63SXin Liecho "Working directory:" `pwd` 127*b32fbb63SXin Li 128*b32fbb63SXin Ligit_stat_method "find . -name '*.xml' | egrep '$RRO_PATTERN' | egrep '$SYSUI_RAW_PATTERN'" 129*b32fbb63SXin Li 130*b32fbb63SXin Liecho "" 131*b32fbb63SXin Li 132*b32fbb63SXin Liecho "*****************************" 133*b32fbb63SXin Liecho "Resource Overlays Notification" 134*b32fbb63SXin Liecho "*****************************" 135*b32fbb63SXin Licd $ANDROID_CHECKOUT 136*b32fbb63SXin Licd $OVERLAY_PROJECT 137*b32fbb63SXin Liecho "Working directory:" `pwd` 138*b32fbb63SXin Li 139*b32fbb63SXin Ligit_stat_method "find . -name '*.xml' | egrep -v '$RRO_PATTERN' | egrep '$OVERLAY_PATTERN' | egrep '$NOTIF_PATTERN'" 140*b32fbb63SXin Li 141*b32fbb63SXin Liecho "" 142*b32fbb63SXin Li 143*b32fbb63SXin Liecho "*****************************" 144*b32fbb63SXin Liecho "RROs Notification" 145*b32fbb63SXin Liecho "*****************************" 146*b32fbb63SXin Licd $ANDROID_CHECKOUT 147*b32fbb63SXin Licd $OVERLAY_PROJECT 148*b32fbb63SXin Liecho "Working directory:" `pwd` 149*b32fbb63SXin Li 150*b32fbb63SXin Ligit_stat_method "find . -name '*.xml' | egrep '$RRO_PATTERN' | egrep '$NOTIF_PATTERN'" 151*b32fbb63SXin Li 152*b32fbb63SXin Liecho "" 153*b32fbb63SXin Liecho "" 154*b32fbb63SXin Liecho "" 155*b32fbb63SXin Li 156*b32fbb63SXin Liecho "----------------------------------------------------------" 157*b32fbb63SXin Liecho "Customized Tests" 158*b32fbb63SXin Liecho "----------------------------------------------------------" 159*b32fbb63SXin Liecho "*****************************" 160*b32fbb63SXin Liecho "Base SysUI" 161*b32fbb63SXin Liecho "*****************************" 162*b32fbb63SXin Licd $ANDROID_CHECKOUT 163*b32fbb63SXin Licd $SYSUI_BASE_PROJECT 164*b32fbb63SXin Liecho "Working directory:" `pwd` 165*b32fbb63SXin Li 166*b32fbb63SXin Ligit_stat_method "find . -name '*.java' | egrep '*test*' | egrep '$SYSUI_BASE_PATTERN'" 167*b32fbb63SXin Li 168*b32fbb63SXin Liecho "" 169*b32fbb63SXin Li 170*b32fbb63SXin Liecho "*****************************" 171*b32fbb63SXin Liecho "Ext SysUI" 172*b32fbb63SXin Liecho "*****************************" 173*b32fbb63SXin Liif [[ -e $SYSUI_EXT_PROJECT ]]; then 174*b32fbb63SXin Li cd $ANDROID_CHECKOUT 175*b32fbb63SXin Li cd $SYSUI_EXT_PROJECT 176*b32fbb63SXin Li echo "Working directory:" `pwd` 177*b32fbb63SXin Li 178*b32fbb63SXin Li git_stat_method "find . -name '*.java' | egrep '*test*' | egrep '$SYSUI_EXT_PATTERN'" 179*b32fbb63SXin Lielse 180*b32fbb63SXin Li no_sysui_ext_project 181*b32fbb63SXin Lifi 182*b32fbb63SXin Li 183*b32fbb63SXin Liecho "" 184*b32fbb63SXin Li 185*b32fbb63SXin Liecho "*****************************" 186*b32fbb63SXin Liecho "Notification" 187*b32fbb63SXin Liecho "*****************************" 188*b32fbb63SXin Licd $ANDROID_CHECKOUT 189*b32fbb63SXin Licd $NOTIF_PROJECT 190*b32fbb63SXin Liecho "Working directory:" `pwd` 191*b32fbb63SXin Li 192*b32fbb63SXin Ligit_stat_method "find . -name '*.java' | egrep '*test*' | egrep '$NOTIF_PATTERN'" 193