1 #
2 # Copyright (c) 2013-2015, Texas Instruments Incorporated
3 #
4 # Redistribution and use in source and binary forms, with or without
5 # modification, are permitted provided that the following conditions
6 # are met:
7 #
8 # * Redistributions of source code must retain the above copyright
9 # notice, this list of conditions and the following disclaimer.
10 #
11 # * Redistributions in binary form must reproduce the above copyright
12 # notice, this list of conditions and the following disclaimer in the
13 # documentation and/or other materials provided with the distribution.
14 #
15 # * Neither the name of Texas Instruments Incorporated nor the names of
16 # its contributors may be used to endorse or promote products derived
17 # from this software without specific prior written permission.
18 #
19 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20 # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
21 # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22 # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
23 # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
24 # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
25 # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
26 # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
27 # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
28 # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
29 # EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 #
32 ifndef QCONFIG
33 QCONFIG=qconfig.mk
34 endif
35 include $(QCONFIG)
37 INSTALLDIR=bin
39 define PINFO
40 PINFO DESCRIPTION=IPC Resource Manager
41 endef
42 NAME=ipc
44 CCOPTS += -DIPC_BUILDOS_QNX -DIPC_BUILD_DEBUG -DIPC_BUILD_HLOS $(QNX_CFLAGS)
46 ifeq ("$(IPC_DEBUG)", "1")
47 #enable debug build
48 CCOPTS += -g -O0
49 endif # ifeq ("$(IPC_DEBUG)", "1")
51 ifeq ("$(IPC_PLATFORM)", "omap5430")
52 ifeq ("$(SMP)", "1")
53 CCOPTS += -DIPC_SYSBIOS_SMP
54 endif # ifeq ("$(SMP)", "1")
55 CCOPTS += -DIPC_PLATFORM_OMAP5430 -DARM_TARGET -DC60_TARGET -DIPC_USE_IPU_PM
56 endif # ifeq ("$(IPC_PLATFORM)", "omap5430")
58 ifeq ("$(IPC_PLATFORM)", "vayu")
59 ifeq ("$(SMP)", "1")
60 CCOPTS += -DIPC_SYSBIOS_SMP
61 endif # ifeq ("$(SMP)", "1")
62 CCOPTS += -DIPC_PLATFORM_VAYU -DARM_TARGET -DC60_TARGET
63 endif # ifeq ("$(IPC_PLATFORM)", "vayu")
65 #IPC Product root path
66 IPC_ROOT = $(PROJECT_ROOT)/../../../../..
67 IPC_BUILDOS = Qnx
69 #PUBLIC_INCVPATH = $(PROJECT_ROOT)/public
71 EXTRA_INCVPATH = $(IPC_ROOT) \
72 $(IPC_ROOT)/ti/syslink/inc \
73 $(IPC_ROOT)/ti/syslink/inc/ti/ipc \
74 $(IPC_ROOT)/ti/syslink/inc/knl \
75 $(IPC_ROOT)/ti/syslink/inc/$(IPC_BUILDOS) \
76 $(IPC_ROOT)/ti/syslink/inc/knl/$(IPC_BUILDOS) \
77 $(IPC_ROOT)/ti/syslink/ipc/hlos/knl/family/$(IPC_PLATFORM) \
78 $(IPC_PKGPATH) \
79 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/rprc \
80 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS) \
81 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/DLOAD_API \
82 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/DLOAD \
83 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/C60_DLOAD_DYN \
84 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/C60_DLOAD_REL \
85 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/TMS470_DLOAD_DYN \
86 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/TMS470_DLOAD_REL \
87 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/DLOAD_SYM \
88 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/dlw_client \
89 $(IPC_ROOT)/ti/syslink/rpmsg-resmgr/hlos/knl/$(IPC_BUILDOS)/family \
90 $(IPC_ROOT)/ti/syslink/resources \
91 $(IPC_ROOT)/ti/syslink/family/common \
92 $(IPC_REPO)/qnx/include \
93 $(IPC_REPO)/hlos_common/include \
94 $(IPC_REPO)/packages \
96 #devctl for ipc, procmgr, utils
97 EXTRA_SRCVPATH+=$(IPC_ROOT)/ti/syslink/procMgr/hlos/knl \
98 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/rprc \
99 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS) \
100 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/DLOAD \
101 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/TMS470_DLOAD_DYN \
102 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/TMS470_DLOAD_REL \
103 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/C60_DLOAD_REL \
104 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/C60_DLOAD_DYN \
105 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/DLOAD_SYM \
106 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/dlw_client \
107 $(IPC_ROOT)/ti/syslink/resources \
108 $(IPC_ROOT)/ti/syslink/ipc/hlos/knl/transports/virtio \
109 $(IPC_ROOT)/ti/syslink/ipc/hlos/knl \
110 $(IPC_ROOT)/ti/syslink/ipc/hlos/knl/arch \
111 $(IPC_ROOT)/ti/syslink/ipc/hlos/knl/arch/$(IPC_PLATFORM) \
112 $(IPC_ROOT)/ti/syslink/ipc/hlos/knl/$(IPC_BUILDOS) \
113 $(IPC_ROOT)/ti/syslink/utils/common \
114 $(IPC_ROOT)/ti/syslink/utils/hlos \
115 $(IPC_ROOT)/ti/syslink/utils/hlos/knl \
116 $(IPC_ROOT)/ti/syslink/utils/hlos/knl/$(IPC_BUILDOS) \
117 $(IPC_ROOT)/ti/syslink/utils/hlos/knl/osal/$(IPC_BUILDOS) \
118 $(IPC_ROOT)/ti/syslink/rpmsg-omx/hlos/knl/$(IPC_BUILDOS) \
119 $(IPC_ROOT)/ti/syslink/rpmsg-dce/hlos/knl/$(IPC_BUILDOS) \
120 $(IPC_ROOT)/ti/syslink/ti-ipc \
121 $(IPC_ROOT)/ti/syslink/rpmsg-rpc \
122 $(IPC_ROOT)/ti/syslink/rpmsg-resmgr/hlos/knl/$(IPC_BUILDOS)/family/$(IPC_PLATFORM) \
123 $(IPC_ROOT)/ti/syslink/rpmsg-resmgr/hlos/knl/$(IPC_BUILDOS) \
124 $(IPC_REPO)/qnx/src/cfg
126 ifeq ("$(IPC_PLATFORM)", "omap5430")
127 EXTRA_SRCVPATH+=$(IPC_ROOT)/ti/syslink/family/$(IPC_PLATFORM) \
128 $(IPC_ROOT)/ti/syslink/family/$(IPC_PLATFORM)/ipu
130 EXCLUDE_OBJS = GateMP_daemon.o gatemp_devctl.o
131 endif
133 ifeq ("$(IPC_PLATFORM)", "vayu")
134 EXTRA_SRCVPATH+=$(IPC_ROOT)/ti/syslink/family/common \
135 $(IPC_ROOT)/ti/syslink/family/common/$(IPC_PLATFORM)/$(IPC_PLATFORM)dsp \
136 $(IPC_ROOT)/ti/syslink/family/common/$(IPC_PLATFORM)/$(IPC_PLATFORM)ipu \
137 $(IPC_ROOT)/ti/syslink/family/common/$(IPC_PLATFORM)/$(IPC_PLATFORM)ipu/$(IPC_PLATFORM)core0 \
138 $(IPC_ROOT)/ti/syslink/family/common/$(IPC_PLATFORM)/$(IPC_PLATFORM)ipu/$(IPC_PLATFORM)core1 \
139 $(IPC_ROOT)/ti/syslink/family/$(IPC_PLATFORM) \
140 $(IPC_ROOT)/ti/syslink/family/$(IPC_PLATFORM)/$(IPC_PLATFORM)dsp \
141 $(IPC_ROOT)/ti/syslink/family/$(IPC_PLATFORM)/$(IPC_PLATFORM)ipu \
142 $(IPC_ROOT)/ti/syslink/family/$(IPC_PLATFORM)/$(IPC_PLATFORM)ipu/$(IPC_PLATFORM)core1 \
143 $(IPC_REPO)/qnx/src/api/gates
145 EXCLUDE_OBJS = GateMP.o
146 endif
148 include $(MKFILES_ROOT)/qtargets.mk
150 LDFLAGS += -M
152 EXTRA_LIBVPATH += $(INSTALL_ROOT_nto)/usr/lib
154 ifeq ("$(IPC_DEBUG)", "1")
155 EXTRA_LIBVPATH += $(IPC_REPO)/qnx/src/utils/arm/a.g.le.v7
156 LIBS += utils_g
157 else
158 EXTRA_LIBVPATH += $(IPC_REPO)/qnx/src/utils/arm/a.le.v7
159 LIBS += utils
160 endif # ifeq ("$(IPC_DEBUG)", "1")
162 # Quiet the build output
163 include $(IPC_REPO)/qnx/quiet.mk