Add mbtk_version
Change-Id: I9f52b147f4f2a40af31eab9dd0014e7ae2402a44
diff --git a/build.sh b/build.sh
index 89fd1e0..0e675bb 100755
--- a/build.sh
+++ b/build.sh
@@ -131,6 +131,7 @@
[ -f out/bin/mbtk_sdk_ready ] && cp -f out/bin/mbtk_sdk_ready $1/bin
[ -f out/bin/mbtk_reboot ] && cp -f out/bin/mbtk_reboot $1/bin
[ -f out/bin/mbtk_gnssd ] && cp -f out/bin/mbtk_gnssd $1/bin
+ [ -f out/bin/mbtk_version ] && cp -f out/bin/mbtk_version $1/bin
}
function file_copy()
diff --git a/mbtk/include/mbtk/mbtk_version.h b/mbtk/include/mbtk/mbtk_version.h
new file mode 100755
index 0000000..9b56a22
--- /dev/null
+++ b/mbtk/include/mbtk/mbtk_version.h
@@ -0,0 +1,30 @@
+/*
+* mbtk_version.h
+*
+* mbtk_source compilation informations.
+*
+* Author : lb
+* Date : 2024/6/7 16:51:20
+*/
+#ifndef __MBTK_VERSION_H
+#define __MBTK_VERSION_H
+#include "mbtk_type.h"
+
+typedef enum {
+ MBTK_BUILD_DEF_AF_SUPPORT = 0,
+ MBTK_BUILD_DEF_YX_SUPPORT,
+ MBTK_BUILD_DEF_SG_SUPPORT,
+ MBTK_BUILD_DEF_MBTK_ALL_CID_SUPPORT,
+ MBTK_BUILD_DEF_MBTK_GNSS_MODE,
+
+ MBTK_BUILD_DEF_NUM
+} mbtk_build_define_enum;
+
+typedef struct {
+ char name[64];
+ char value[64];
+} mbtk_build_def_info_t;
+
+void mbtk_build_def_get(char *buff, int buff_len);
+
+#endif /* __MBTK_VERSION_H */
diff --git a/mbtk/libmbtk_lib/Makefile b/mbtk/libmbtk_lib/Makefile
index bb1bc91..5e46530 100755
--- a/mbtk/libmbtk_lib/Makefile
+++ b/mbtk/libmbtk_lib/Makefile
@@ -45,7 +45,8 @@
src/mbtk_utils.c \
src/ringbuffer.c \
src/mbtk_mtd.c \
- src/mbtk_device_info.c
+ src/mbtk_device_info.c \
+ src/mbtk_version.c
OBJS = $(patsubst %.c, %.o, $(patsubst %.cpp, %.o, $(LOCAL_SRC_FILES)))
$(info OBJS = $(OBJS))
diff --git a/mbtk/libmbtk_lib/src/mbtk_version.c b/mbtk/libmbtk_lib/src/mbtk_version.c
new file mode 100755
index 0000000..cbc2e68
--- /dev/null
+++ b/mbtk/libmbtk_lib/src/mbtk_version.c
@@ -0,0 +1,114 @@
+/*
+* mbtk_version.c
+*
+* mbtk_source compilation informations.
+*
+*/
+/******************************************************************************
+
+ EDIT HISTORY FOR FILE
+
+ WHEN WHO WHAT,WHERE,WHY
+-------- -------- -------------------------------------------------------
+2024/6/7 LiuBin Initial version
+
+******************************************************************************/
+#include "mbtk_version.h"
+
+#define STR_GET(str) (#str)
+
+static mbtk_build_def_info_t def_infos[MBTK_BUILD_DEF_NUM];
+static bool inited = FALSE;
+
+static void def_item_set(mbtk_build_define_enum def_id, char *name, char *value)
+{
+ switch(def_id)
+ {
+ case MBTK_BUILD_DEF_AF_SUPPORT:
+ {
+ strcpy(name, STR_GET(MBTK_BUILD_DEF_AF_SUPPORT));
+#ifdef MBTK_AF_SUPPORT
+ strcpy(value, "Y");
+#else
+ strcpy(value, "N");
+#endif
+ break;
+ }
+ case MBTK_BUILD_DEF_YX_SUPPORT:
+ {
+ strcpy(name, STR_GET(MBTK_BUILD_DEF_YX_SUPPORT));
+#ifdef MBTK_YX_SUPPORT
+ strcpy(value, "Y");
+#else
+ strcpy(value, "N");
+#endif
+ break;
+ }
+ case MBTK_BUILD_DEF_SG_SUPPORT:
+ {
+ strcpy(name, STR_GET(MBTK_BUILD_DEF_SG_SUPPORT));
+#ifdef MBTK_SG_SUPPORT
+ strcpy(value, "Y");
+#else
+ strcpy(value, "N");
+#endif
+ break;
+ }
+ case MBTK_BUILD_DEF_MBTK_ALL_CID_SUPPORT:
+ {
+ strcpy(name, STR_GET(MBTK_BUILD_DEF_MBTK_ALL_CID_SUPPORT));
+#ifdef MBTK_ALL_CID_SUPPORT
+ strcpy(value, "Y");
+#else
+ strcpy(value, "N");
+#endif
+ break;
+ }
+ case MBTK_BUILD_DEF_MBTK_GNSS_MODE:
+ {
+ strcpy(name, STR_GET(MBTK_BUILD_DEF_MBTK_GNSS_MODE));
+#if defined(MBTK_GNSS_6228)
+ strcpy(value, "6228");
+#elif defined(MBTK_GNSS_5311)
+ strcpy(value, "5311");
+#else
+ strcpy(value, "Unknown");
+#endif
+ break;
+ }
+ default:
+ {
+ strcpy(name, "Unknown");
+ strcpy(value, "Unknown");
+ break;
+ }
+ }
+}
+
+static void def_info_reset()
+{
+ if(!inited) {
+ int index = 0;
+ while(index < MBTK_BUILD_DEF_NUM) {
+ memset(&(def_infos[index]), 0, sizeof(mbtk_build_def_info_t));
+ def_item_set(index, def_infos[index].name, def_infos[index].value);
+ index++;
+ }
+ inited = TRUE;
+ }
+}
+
+void mbtk_build_def_get(char *buff, int buff_len)
+{
+ if(buff && buff_len > 0) {
+ def_info_reset();
+
+ int len = 0;
+ int index = 0;
+ while(index < MBTK_BUILD_DEF_NUM) {
+ len += snprintf(buff + len, buff_len - len, "%s:%s\n", def_infos[index].name, def_infos[index].value);
+ index++;
+ }
+ }
+}
+
diff --git a/mbtk/mbtk_utils/mbtk_version.c b/mbtk/mbtk_utils/mbtk_version.c
new file mode 100755
index 0000000..93a3326
--- /dev/null
+++ b/mbtk/mbtk_utils/mbtk_version.c
@@ -0,0 +1,16 @@
+#include <stdio.h>
+#include <stdlib.h>
+
+#include "mbtk_version.h"
+
+int main(int argc, char *argv[])
+{
+ char buff[2048] = {0};
+
+ mbtk_build_def_get(buff, sizeof(buff));
+
+ printf("%s\n", buff);
+
+ return 0;
+}
+