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 CCOPTS += -DIPC_PLATFORM_VAYU -DARM_TARGET -DC60_TARGET
60 endif # ifeq ("$(IPC_PLATFORM)", "vayu")
62 #IPC Product root path
63 IPC_ROOT = $(PROJECT_ROOT)/../../../../..
64 IPC_BUILDOS = Qnx
66 #PUBLIC_INCVPATH = $(PROJECT_ROOT)/public
68 EXTRA_INCVPATH = $(IPC_ROOT) \
69 $(IPC_ROOT)/ti/syslink/inc \
70 $(IPC_ROOT)/ti/syslink/inc/ti/ipc \
71 $(IPC_ROOT)/ti/syslink/inc/knl \
72 $(IPC_ROOT)/ti/syslink/inc/$(IPC_BUILDOS) \
73 $(IPC_ROOT)/ti/syslink/inc/knl/$(IPC_BUILDOS) \
74 $(IPC_ROOT)/ti/syslink/ipc/hlos/knl/family/$(IPC_PLATFORM) \
75 $(IPC_PKGPATH) \
76 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/rprc \
77 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS) \
78 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/DLOAD_API \
79 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/DLOAD \
80 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/C60_DLOAD_DYN \
81 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/C60_DLOAD_REL \
82 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/TMS470_DLOAD_DYN \
83 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/TMS470_DLOAD_REL \
84 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/DLOAD_SYM \
85 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/dlw_client \
86 $(IPC_ROOT)/ti/syslink/rpmsg-resmgr/hlos/knl/$(IPC_BUILDOS)/family \
87 $(IPC_ROOT)/ti/syslink/resources \
88 $(IPC_ROOT)/ti/syslink/family/common \
89 $(IPC_REPO)/qnx/include \
90 $(IPC_REPO)/hlos_common/include \
91 $(IPC_REPO)/packages \
93 #devctl for ipc, procmgr, utils
94 EXTRA_SRCVPATH+=$(IPC_ROOT)/ti/syslink/procMgr/hlos/knl \
95 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/rprc \
96 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS) \
97 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/DLOAD \
98 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/TMS470_DLOAD_DYN \
99 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/TMS470_DLOAD_REL \
100 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/C60_DLOAD_REL \
101 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/C60_DLOAD_DYN \
102 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/DLOAD/DLOAD_SYM \
103 $(IPC_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(IPC_BUILDOS)/dlw_client \
104 $(IPC_ROOT)/ti/syslink/resources \
105 $(IPC_ROOT)/ti/syslink/ipc/hlos/knl/transports/virtio \
106 $(IPC_ROOT)/ti/syslink/ipc/hlos/knl \
107 $(IPC_ROOT)/ti/syslink/ipc/hlos/knl/arch \
108 $(IPC_ROOT)/ti/syslink/ipc/hlos/knl/arch/$(IPC_PLATFORM) \
109 $(IPC_ROOT)/ti/syslink/ipc/hlos/knl/$(IPC_BUILDOS) \
110 $(IPC_ROOT)/ti/syslink/utils/common \
111 $(IPC_ROOT)/ti/syslink/utils/hlos \
112 $(IPC_ROOT)/ti/syslink/utils/hlos/knl \
113 $(IPC_ROOT)/ti/syslink/utils/hlos/knl/$(IPC_BUILDOS) \
114 $(IPC_ROOT)/ti/syslink/utils/hlos/knl/osal/$(IPC_BUILDOS) \
115 $(IPC_ROOT)/ti/syslink/rpmsg-omx/hlos/knl/$(IPC_BUILDOS) \
116 $(IPC_ROOT)/ti/syslink/rpmsg-dce/hlos/knl/$(IPC_BUILDOS) \
117 $(IPC_ROOT)/ti/syslink/ti-ipc \
118 $(IPC_ROOT)/ti/syslink/rpmsg-rpc \
119 $(IPC_ROOT)/ti/syslink/rpmsg-resmgr/hlos/knl/$(IPC_BUILDOS)/family/$(IPC_PLATFORM) \
120 $(IPC_ROOT)/ti/syslink/rpmsg-resmgr/hlos/knl/$(IPC_BUILDOS) \
121 $(IPC_REPO)/qnx/src/cfg
123 ifeq ("$(IPC_PLATFORM)", "omap5430")
124 EXTRA_SRCVPATH+=$(IPC_ROOT)/ti/syslink/family/$(IPC_PLATFORM) \
125 $(IPC_ROOT)/ti/syslink/family/$(IPC_PLATFORM)/ipu \
126 $(IPC_REPO)/qnx/src/cfg/$(IPC_PLATFORM)
128 EXCLUDE_OBJS = GateMP_daemon.o gatemp_devctl.o
129 endif
131 ifeq ("$(IPC_PLATFORM)", "vayu")
132 EXTRA_SRCVPATH+=$(IPC_ROOT)/ti/syslink/family/common \
133 $(IPC_ROOT)/ti/syslink/family/common/$(IPC_PLATFORM)/$(IPC_PLATFORM)dsp \
134 $(IPC_ROOT)/ti/syslink/family/common/$(IPC_PLATFORM)/$(IPC_PLATFORM)ipu \
135 $(IPC_ROOT)/ti/syslink/family/common/$(IPC_PLATFORM)/$(IPC_PLATFORM)ipu/$(IPC_PLATFORM)core0 \
136 $(IPC_ROOT)/ti/syslink/family/$(IPC_PLATFORM) \
137 $(IPC_ROOT)/ti/syslink/family/$(IPC_PLATFORM)/$(IPC_PLATFORM)dsp \
138 $(IPC_ROOT)/ti/syslink/family/$(IPC_PLATFORM)/$(IPC_PLATFORM)ipu \
139 $(IPC_REPO)/qnx/src/api/gates \
140 $(IPC_REPO)/qnx/src/cfg/dra7xx
142 EXCLUDE_OBJS = GateMP.o GateHWSpinlock_client.o
143 endif
145 include $(MKFILES_ROOT)/qtargets.mk
147 LDFLAGS += -M
149 EXTRA_LIBVPATH += $(INSTALL_ROOT_nto)/usr/lib
151 ifeq ("$(IPC_DEBUG)", "1")
152 EXTRA_LIBVPATH += $(IPC_REPO)/qnx/src/utils/arm/a.g.le.v7
153 LIBS += utils_g
154 else
155 EXTRA_LIBVPATH += $(IPC_REPO)/qnx/src/utils/arm/a.le.v7
156 LIBS += utils
157 endif # ifeq ("$(IPC_DEBUG)", "1")
159 # Quiet the build output
160 include $(IPC_REPO)/qnx/quiet.mk