a26b6c839db248d0bf8bbf8c74da954383c94b07
[staging/basesystem.git] / service / system / task_manager / client / libtskmcfg / Makefile
1 #
2 # @copyright Copyright (c) 2016-2020 TOYOTA MOTOR CORPORATION.
3 #
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
7 #
8 #      http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15 #
16
17 WAKESHUTCONF_DIR=./conf
18
19 VPATH = ./src ./include/$(COMPONENT_NAME)
20
21 INST_SHLIBS = libtskmcfg
22 INST_HEADERS = tskm_xml_data.h  tskm_svcid.h task_manager_libtskmcfg.h
23 libtskmcfg_SRCS = tskm_xml_data.cpp
24
25
26 CPPFLAGS = -I./ -I./include -I./../../include-share -I./../../server/include 
27 LDFLAGS += -Wl,--no-as-needed
28 LDLIBS += -Wl,-Bdynamic -lNS_FrameworkUnified
29
30
31 #============ XML PARSE ============
32 XMLOUTFILE= tskm_auto_build.h
33
34 CLEAN_FILES+=$(XMLOUTFILE) $(PARSEXMLCMD) $(CONFIG_FILES) top.xml
35
36 #TOOLS
37 HOST_CPP=cpp
38 XMLCHECKER=xmllint
39 XMLCHECKEROPT=--noout --valid
40 PARSEXMLCMD=parsexml
41 HOSTCC=gcc
42 XMLFILETOP=tskm_cfg.xml
43
44 install:install-pre install-pre-header
45 build-lib:install-pre install-pre-header
46 install-lib:install-pre install-pre-header
47 install-pre:
48         install -d -m 775  $(DESTDIR)/etc/basesystem/BS/ss/task_manager/rodata;\
49         install -m 644 -t  $(DESTDIR)/etc/basesystem/BS/ss/task_manager/rodata $(WAKESHUTCONF_DIR)/tskm_launch.xml;\
50
51 CONFIG_FILES:=tskm_wakeup.xml tskm_shutdown.xml tskm_wakeup_vup.xml tskm_shutdown_vup.xml tskm_launch.xml tskm_svcid.h agl_thread_tm.h
52
53 #install-header:$(XMLOUTFILE) 
54 install-pre-header:$(XMLOUTFILE) 
55
56 #TOPFILE
57 top.xml:$(XMLFILETOP)
58         ln -fs $< $@
59
60 #CONFIG RULES
61 tskm_wakeup.xml:$(WAKESHUTCONF_DIR)/tskm_wakeup.xml
62         ln -fs $< $@
63
64 tskm_shutdown.xml:$(WAKESHUTCONF_DIR)/tskm_shutdown.xml
65         ln -fs $< $@
66
67 tskm_wakeup_vup.xml:$(WAKESHUTCONF_DIR)/tskm_wakeup_vup.xml
68         ln -fs $< $@
69
70 tskm_shutdown_vup.xml:$(WAKESHUTCONF_DIR)/tskm_shutdown_vup.xml
71         ln -fs $< $@
72
73 #tskm_svcid.h:$(SVCONF_DIR)/tskm_svcid.h
74 #       ln -fs $< $@
75
76 agl_thread_tm.h:$(WAKESHUTCONF_DIR)/agl_thread_tm.h
77         ln -fs $< $@
78
79
80 tskm_launch.xml:$(WAKESHUTCONF_DIR)/tskm_launch.xml agl_thread_tm.h
81         $(HOST_CPP) -P -include agl_thread_tm.h $< > $@
82
83 $(XMLOUTFILE):top.xml $(PARSEXMLCMD) $(CONFIG_FILES) 
84         $(XMLCHECKER) $(XMLCHECKEROPT) $<
85         ./$(PARSEXMLCMD) $<
86
87 $(PARSEXMLCMD):$(PARSEXMLCMD).c
88         $(HOSTCC) -o $@ $< -lexpat
89
90 include ../../../system_service.mk
91