xref: /aosp_15_r20/tools/aadevtools/dev/sysui_oem_diff.sh (revision b32fbb6340ee6fe4a25d7b39d84085c084465677)
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