Include the git sha in the adb version.

Also add --version to adbd to display the same thing.

Change-Id: I47dfbad16c892c42ea938aedd085ba77492791ba
This commit is contained in:
Dan Albert 2015-05-05 17:46:50 -07:00
parent 3f05fb5d97
commit 1ba1d7c1ee
3 changed files with 34 additions and 21 deletions

View File

@ -11,6 +11,13 @@ else
adb_host_clang := true
endif
adb_version := $(shell git -C $(LOCAL_PATH) rev-parse --short=12 HEAD 2>/dev/null)-android
ADB_COMMON_CFLAGS := \
-Wall -Werror \
-Wno-unused-parameter \
-DADB_REVISION='"$(adb_version)"' \
# libadb
# =========================================================
@ -37,8 +44,7 @@ LIBADB_TEST_SRCS := \
transport_test.cpp \
LIBADB_CFLAGS := \
-Wall -Werror \
-Wno-unused-parameter \
$(ADB_COMMON_CFLAGS) \
-Wno-missing-field-initializers \
-fvisibility=hidden \
@ -171,8 +177,7 @@ LOCAL_SRC_FILES := \
file_sync_client.cpp \
LOCAL_CFLAGS += \
-Wall -Werror \
-Wno-unused-parameter \
$(ADB_COMMON_CFLAGS) \
-D_GNU_SOURCE \
-DADB_HOST=1 \
@ -224,10 +229,9 @@ LOCAL_SRC_FILES := \
set_verity_enable_state_service.cpp \
LOCAL_CFLAGS := \
$(ADB_COMMON_CFLAGS) \
-DADB_HOST=0 \
-D_GNU_SOURCE \
-Wall -Werror \
-Wno-unused-parameter \
-Wno-deprecated-declarations \
ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))

View File

@ -358,29 +358,25 @@ void close_stdin() {
}
#endif
// TODO(danalbert): Split this file up into adb_main.cpp and adbd_main.cpp.
int main(int argc, char **argv) {
#if ADB_HOST
// adb client/server
adb_sysdeps_init();
#else
close_stdin();
#endif
adb_trace_init();
#if ADB_HOST
D("Handling commandline()\n");
return adb_commandline(argc - 1, const_cast<const char**>(argv + 1));
#else
/* If adbd runs inside the emulator this will enable adb tracing via
* adb-debug qemud service in the emulator. */
adb_qemu_trace_init();
// adbd
while (true) {
int c;
int option_index = 0;
static struct option opts[] = {
{"root_seclabel", required_argument, 0, 's' },
{"device_banner", required_argument, 0, 'b' }
{"root_seclabel", required_argument, nullptr, 's'},
{"device_banner", required_argument, nullptr, 'b'},
{"version", no_argument, nullptr, 'v'},
};
c = getopt_long(argc, argv, "", opts, &option_index);
int option_index = 0;
int c = getopt_long(argc, argv, "", opts, &option_index);
if (c == -1)
break;
switch (c) {
@ -390,11 +386,24 @@ int main(int argc, char **argv) {
case 'b':
adb_device_banner = optarg;
break;
case 'v':
printf("Android Debug Bridge Daemon version %d.%d.%d %s\n",
ADB_VERSION_MAJOR, ADB_VERSION_MINOR, ADB_SERVER_VERSION,
ADB_REVISION);
return 0;
default:
break;
}
}
close_stdin();
adb_trace_init();
/* If adbd runs inside the emulator this will enable adb tracing via
* adb-debug qemud service in the emulator. */
adb_qemu_trace_init();
D("Handling main()\n");
return adb_main(0, DEFAULT_ADB_PORT);
#endif

View File

@ -66,8 +66,8 @@ static std::string product_file(const char *extra) {
}
static void version(FILE* out) {
fprintf(out, "Android Debug Bridge version %d.%d.%d\n",
ADB_VERSION_MAJOR, ADB_VERSION_MINOR, ADB_SERVER_VERSION);
fprintf(out, "Android Debug Bridge version %d.%d.%d %s\n", ADB_VERSION_MAJOR,
ADB_VERSION_MINOR, ADB_SERVER_VERSION, ADB_REVISION);
}
static void help() {