[feature][T8TSK-63][tester] T800 Adding a self-start Service Feature (Test)
Change-Id: I078ae422999a94a27700e4ed122d6bf1e0b52778
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/lynq-tester-service/lynq-tester-service.bb b/meta/meta-mediatek-mt2735/recipes-lynq/lynq-tester-service/lynq-tester-service.bb
new file mode 100755
index 0000000..7e18cd9
--- /dev/null
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/lynq-tester-service/lynq-tester-service.bb
@@ -0,0 +1,40 @@
+inherit externalsrc package systemd
+
+DESCRIPTION = "lynq_tester.service demo"
+#LICENSE = "MediaTekProprietary"
+LICENSE = "CLOSED"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e1696b147d49d491bcb4da1a57173fff"
+DEPENDS += "platform-libs dbus glib-2.0"
+inherit workonsrc
+WORKONSRC = "${TOPDIR}/../src/lynq/framework/lynq-tester-service/src"
+
+TARGET_CC_ARCH += "${LDFLAGS}"
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE_${PN} = "lynq_tester.service"
+FILES_${PN} += "${systemd_unitdir}/system/lynq_tester.service"
+
+#Parameters passed to do_compile()
+EXTRA_OEMAKE = "'RAT_CONFIG_C2K_SUPPORT = ${RAT_CONFIG_C2K_SUPPORT}'\
+ 'MTK_MULTI_SIM_SUPPORT = ${MTK_MULTI_SIM_SUPPORT}'\
+ 'TARGET_PLATFORM = ${TARGET_PLATFORM}'"
+
+#INHIBIT_PACKAGE_STRIP = "1"
+do_compile () {
+ if test "${PACKAGE_ARCH}" = "cortexa7hf-vfp-vfpv4-neon" || test "${PACKAGE_ARCH}" = "cortexa7hf-neon-vfpv4"; then
+ oe_runmake all ROOT=${STAGING_DIR_HOST} OFLAGS="--sysroot=${STAGING_DIR_HOST} -mhard-float"
+ else
+ oe_runmake all ROOT=${STAGING_DIR_HOST} OFLAGS="--sysroot=${STAGING_DIR_HOST}"
+ fi
+}
+
+do_install() {
+ if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ install -d ${D}${systemd_unitdir}/system/
+ install -m 0644 ${B}/lynq_tester.service ${D}${systemd_unitdir}/system
+ fi
+
+ install -d ${D}${bindir}/
+ install -m 0755 ${S}/lynq-tester-service ${D}${bindir}/
+ install -d ${D}${includedir}
+}
+
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/packagegroups/packagegroup-lync-mt2735.bb b/meta/meta-mediatek-mt2735/recipes-lynq/packagegroups/packagegroup-lync-mt2735.bb
index 5edcd36..1f838fa 100755
--- a/meta/meta-mediatek-mt2735/recipes-lynq/packagegroups/packagegroup-lync-mt2735.bb
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/packagegroups/packagegroup-lync-mt2735.bb
@@ -48,4 +48,5 @@
lynq-gnss-test \
ntp \
tzdata \
+ lynq-tester-service \
"
diff --git a/src/lynq/framework/lynq-tester-service/src/LICENSE b/src/lynq/framework/lynq-tester-service/src/LICENSE
new file mode 100755
index 0000000..77f59ed
--- /dev/null
+++ b/src/lynq/framework/lynq-tester-service/src/LICENSE
@@ -0,0 +1,31 @@
+Copyright Statement:
+
+This software/firmware and related documentation ("MediaTek Software") are
+protected under relevant copyright laws. The information contained herein is
+confidential and proprietary to MediaTek Inc. and/or its licensors. Without
+the prior written permission of MediaTek inc. and/or its licensors, any
+reproduction, modification, use or disclosure of MediaTek Software, and
+information contained herein, in whole or in part, shall be strictly
+prohibited.
+
+MediaTek Inc. (C) 2015. All rights reserved.
+
+BY OPENING THIS FILE, RECEIVER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO RECEIVER
+ON AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL
+WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR
+NONINFRINGEMENT. NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH
+RESPECT TO THE SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY,
+INCORPORATED IN, OR SUPPLIED WITH THE MEDIATEK SOFTWARE, AND RECEIVER AGREES
+TO LOOK ONLY TO SUCH THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO.
+RECEIVER EXPRESSLY ACKNOWLEDGES THAT IT IS RECEIVER'S SOLE RESPONSIBILITY TO
+OBTAIN FROM ANY THIRD PARTY ALL PROPER LICENSES CONTAINED IN MEDIATEK
+SOFTWARE. MEDIATEK SHALL ALSO NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE
+RELEASES MADE TO RECEIVER'S SPECIFICATION OR TO CONFORM TO A PARTICULAR
+STANDARD OR OPEN FORUM. RECEIVER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S
+ENTIRE AND CUMULATIVE LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE
+RELEASED HEREUNDER WILL BE, AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE
+MEDIATEK SOFTWARE AT ISSUE, OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE
+CHARGE PAID BY RECEIVER TO MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
diff --git a/src/lynq/framework/lynq-tester-service/src/lynq_tester.service b/src/lynq/framework/lynq-tester-service/src/lynq_tester.service
new file mode 100755
index 0000000..ccccbc6
--- /dev/null
+++ b/src/lynq/framework/lynq-tester-service/src/lynq_tester.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=lynq tester service
+After=wmtd.service
+#After=mtkfusionrild.service
+#Requires=mtkfusionrild.service
+
+[Service]
+StandardOutput=kmsg+console
+Type=simple
+RemainAfterExit=no
+ExecStart=/usr/bin/lynq-tester-service
+
+[Install]
+Alias=pwrwifid
+WantedBy=multi-user.target
diff --git a/src/lynq/framework/lynq-tester-service/src/lynq_tester_service.c b/src/lynq/framework/lynq-tester-service/src/lynq_tester_service.c
new file mode 100755
index 0000000..2a983a3
--- /dev/null
+++ b/src/lynq/framework/lynq-tester-service/src/lynq_tester_service.c
@@ -0,0 +1,18 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+int main()
+{
+ if (access("/data/lynq-test.sh", F_OK) == 0)
+ {
+ system("echo /data/lynq-test.sh exist >> /var/log/syslog.log");
+ system("sh /data/lynq-test.sh");
+ }
+ else
+ {
+ system("echo /data/lynq-test.sh no exist >> /var/log/syslog.log");
+ }
+}
+
diff --git a/src/lynq/framework/lynq-tester-service/src/makefile b/src/lynq/framework/lynq-tester-service/src/makefile
new file mode 100755
index 0000000..881a9fa
--- /dev/null
+++ b/src/lynq/framework/lynq-tester-service/src/makefile
@@ -0,0 +1,56 @@
+SHELL = /bin/sh
+RM = rm -f
+
+LOCAL_CFLAGS := -Wall \
+ -g -Os \
+ -flto \
+ -DRIL_SHLIB \
+ -DATCI_PARSE \
+ -DKEEP_ALIVE \
+ -D__LINUX_OS__ \
+ -DECALL_SUPPORT
+
+
+
+
+LOCAL_PATH = .
+
+LOCAL_C_INCLUDES = \
+ -I. \
+ -I$(ROOT)$(includedir) \
+ -I$(ROOT)$(includedir)/logger \
+ -I$(ROOT)$(includedir)/vendor-ril \
+ -I$(ROOT)$(includedir)/glib-2.0 \
+ -I$(ROOT)$(libdir)/glib-2.0/include \
+ -I$(ROOT)$(includedir)/dbus-1.0 \
+ -I$(ROOT)$(libdir)/dbus-1.0/include \
+
+
+
+LOCAL_LIBS := \
+ -L. \
+ -ldl \
+ -lpthread \
+ -lssl \
+ -lglib-2.0 \
+ -lgobject-2.0 \
+ -lgio-2.0 \
+ -ldbus-1 \
+ -llog \
+
+SOURCES = $(wildcard *.c )
+
+EXECUTABLE = lynq-tester-service
+
+OBJECTS=$(SOURCES:.c=.o)
+all: $(EXECUTABLE)
+
+$(EXECUTABLE): $(OBJECTS)
+ $(CXX) $(OBJECTS) $(LOCAL_LIBS) $(LOCAL_CFLAGS) $(LOCAL_C_INCLUDES) -o $@
+
+%.o : %.c
+ $(CC) $(LOCAL_C_INCLUDES) $(LOCAL_CFLAGS) $(LOCAL_LIBS) -o $@ -c $<
+
+.PHONY: clean
+clean:
+ $(RM) $(OBJECTS) $(EXECUTABLE)