open_src/system/core/adb가 윈도우용으로 빌드될 때 아래의 소스들이 컴파일된다.
usb_windows.c
get_my_path_windows.c
adb.c
console.c
transport.c
transport_local.c
transport_usb.c
commandline.c
adb_client.c
sockets.c
services.c
file_sync_client.c
shlist.c
utils.c
usb_vendors.c
아래 위치의 헤더파일들이 참조된다.
development/host/windows/usb/api/
프로그램의 시작지점은 아래와 같다.
int main(int argc, char **argv)
{
adb_trace_init();
#if ADB_HOST
adb_sysdeps_init();
return adb_commandline(argc - 1, argv + 1);
#else
if((argc > 1) && (!strcmp(argv[1],"recovery"))) {
adb_device_banner = "recovery";
recovery_mode = 1;
}
start_device_log();
return adb_main(0);
#endif
}
commandline.c의 아래 함수에 커맨드라인 명령어의 처리 코드를 찾아볼 수 있다.
int adb_commandline(int argc, char **argv)
{
...
}