1 #
2 # Copyright (c) 2013, 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=Syslink Resource Manager
41 endef
42 NAME=syslink
44 CCOPTS += -DSYSLINK_BUILDOS_QNX -DSYSLINK_BUILD_DEBUG -DSYSLINK_BUILD_HLOS
45 USE_MEMMGR=false
46 ifeq ("$(SYSLINK_DEBUG)", "1")
47 #enable debug build
48 CCOPTS += -g -O0
49 endif # ifeq ("$(SYSLINK_DEBUG)", "1")
51 ifeq ("$(SYSLINK_PLATFORM)", "")
52 #default value
53 SYSLINK_PLATFORM=omap4430
54 endif # ifeq ("$(SYSLINK_PLATFORM)", "")
56 ifeq ("$(SYSLINK_PLATFORM)", "omap4430")
57 CCOPTS += -DSYSLINK_PLATFORM_OMAP4430 -DARM_TARGET -DC60_TARGET -DSYSLINK_USE_IPU_PM -DUSE_MEMMGR
58 USE_MEMMGR=true
59 endif # ifeq ("$(SYSLINK_PLATFORM)", "omap4430")
61 ifeq ("$(SYSLINK_PLATFORM)", "omap5430")
62 ifeq ("$(VIRTIO)", "true")
63 CCOPTS += -DOMAP5430_VIRTIO
64 endif # ifeq ("$(VIRTIO)", "true")
65 ifeq ("$(SMP)", "1")
66 CCOPTS += -DSYSLINK_SYSBIOS_SMP
67 endif # ifeq ("$(SMP)", "1")
68 CCOPTS += -DSYSLINK_PLATFORM_OMAP5430 -DARM_TARGET -DC60_TARGET -DSYSLINK_USE_IPU_PM -DUSE_MEMMGR
69 USE_MEMMGR=true
70 endif # ifeq ("$(SYSLINK_PLATFORM)", "omap5430")
72 ifeq ("$(SYSLINK_PLATFORM)", "ti81xx")
73 CCOPTS += -DSYSLINK_PLATFORM_TI81XX -DARM_TARGET -DC60_TARGET
75 ifeq ("$(SYSLINK_VARIANT)", "TI814X")
76 CCOPTS += -DSYSLINK_VARIANT_TI814X
77 endif
79 ifeq ("$(SYSLINK_VARIANT)", "TI811X")
80 CCOPTS += -DSYSLINK_VARIANT_TI811X
81 endif
83 endif # ifeq ("$(SYSLINK_PLATFORM)", "ti81xx")
85 #SYSLINK Product root path
86 SYSLINK_ROOT = $(PROJECT_ROOT)/../../../../..
87 SYSLINK_BUILDOS = Qnx
89 #PUBLIC_INCVPATH = $(PROJECT_ROOT)/public
91 EXTRA_INCVPATH = $(SYSLINK_ROOT) \
92 $(SYSLINK_ROOT)/ti/syslink/inc \
93 $(SYSLINK_ROOT)/ti/syslink/inc/ti/ipc \
94 $(SYSLINK_ROOT)/ti/syslink/inc/knl \
95 $(SYSLINK_ROOT)/ti/syslink/inc/$(SYSLINK_BUILDOS) \
96 $(SYSLINK_ROOT)/ti/syslink/inc/knl/$(SYSLINK_BUILDOS) \
97 $(SYSLINK_ROOT)/ti/syslink/ipc/hlos/knl/family/$(SYSLINK_PLATFORM) \
98 $(SYSLINK_PKGPATH) \
99 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/rprc \
100 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS) \
101 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS)/DLOAD/DLOAD_API \
102 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS)/DLOAD/DLOAD \
103 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS)/DLOAD/C60_DLOAD_DYN \
104 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS)/DLOAD/C60_DLOAD_REL \
105 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS)/DLOAD/TMS470_DLOAD_DYN \
106 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS)/DLOAD/TMS470_DLOAD_REL \
107 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS)/DLOAD/DLOAD_SYM \
108 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS)/dlw_client \
109 $(SYSLINK_ROOT)/ti/syslink/rpmsg-resmgr/hlos/knl/$(SYSLINK_BUILDOS)/family \
110 $(SYSLINK_ROOT)/tiler/usr/memmgr/public \
111 $(SYSLINK_ROOT)/tiler/resmgr/tiler/public \
112 $(SYSLINK_ROOT)/ti/syslink/resources \
113 $(IPC_REPO)/qnx/include \
114 $(IPC_REPO)/packages \
116 #devctl for ipc, procmgr, utils
117 EXTRA_SRCVPATH+=$(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl \
118 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/rprc \
119 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS) \
120 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS)/DLOAD/DLOAD \
121 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS)/DLOAD/TMS470_DLOAD_DYN \
122 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS)/DLOAD/TMS470_DLOAD_REL \
123 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS)/DLOAD/C60_DLOAD_REL \
124 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS)/DLOAD/C60_DLOAD_DYN \
125 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS)/DLOAD/DLOAD_SYM \
126 $(SYSLINK_ROOT)/ti/syslink/procMgr/hlos/knl/loaders/Elf/$(SYSLINK_BUILDOS)/dlw_client \
127 $(SYSLINK_ROOT)/ti/syslink/resources \
128 $(SYSLINK_ROOT)/ti/syslink/ipc/hlos/knl/transports/virtio \
129 $(SYSLINK_ROOT)/ti/syslink/ipc/hlos/knl \
130 $(SYSLINK_ROOT)/ti/syslink/ipc/hlos/knl/arch \
131 $(SYSLINK_ROOT)/ti/syslink/ipc/hlos/knl/arch/$(SYSLINK_PLATFORM) \
132 $(SYSLINK_ROOT)/ti/syslink/ipc/hlos/knl/$(SYSLINK_BUILDOS) \
133 $(SYSLINK_ROOT)/ti/syslink/utils/common \
134 $(SYSLINK_ROOT)/ti/syslink/utils/hlos \
135 $(SYSLINK_ROOT)/ti/syslink/utils/hlos/knl \
136 $(SYSLINK_ROOT)/ti/syslink/utils/hlos/knl/$(SYSLINK_BUILDOS) \
137 $(SYSLINK_ROOT)/ti/syslink/utils/hlos/knl/osal/$(SYSLINK_BUILDOS) \
138 $(SYSLINK_ROOT)/ti/syslink/rpmsg-omx/hlos/knl/$(SYSLINK_BUILDOS) \
139 $(SYSLINK_ROOT)/ti/syslink/rpmsg-dce/hlos/knl/$(SYSLINK_BUILDOS) \
140 $(SYSLINK_ROOT)/ti/syslink/ti-ipc \
141 $(SYSLINK_ROOT)/ti/syslink/rpmsg-resmgr/hlos/knl/$(SYSLINK_BUILDOS)/family/$(SYSLINK_PLATFORM) \
142 $(SYSLINK_ROOT)/ti/syslink/rpmsg-resmgr/hlos/knl/$(SYSLINK_BUILDOS)
144 ifeq ("$(SYSLINK_PLATFORM)", "omap4430")
145 EXTRA_SRCVPATH+=$(SYSLINK_ROOT)/ti/syslink/family/$(SYSLINK_PLATFORM) \
146 $(SYSLINK_ROOT)/ti/syslink/family/$(SYSLINK_PLATFORM)/ipu
147 endif
149 ifeq ("$(SYSLINK_PLATFORM)", "omap5430")
150 EXTRA_SRCVPATH+=$(SYSLINK_ROOT)/ti/syslink/family/$(SYSLINK_PLATFORM) \
151 $(SYSLINK_ROOT)/ti/syslink/family/$(SYSLINK_PLATFORM)/ipu
152 endif
154 ifeq ("$(SYSLINK_PLATFORM)", "ti81xx")
155 EXTRA_SRCVPATH+=$(SYSLINK_ROOT)/ti/syslink/family/common \
156 $(SYSLINK_ROOT)/ti/syslink/family/common/$(SYSLINK_PLATFORM)/$(SYSLINK_PLATFORM)dsp \
157 $(SYSLINK_ROOT)/ti/syslink/family/common/$(SYSLINK_PLATFORM)/$(SYSLINK_PLATFORM)ducati \
158 $(SYSLINK_ROOT)/ti/syslink/family/common/$(SYSLINK_PLATFORM)/$(SYSLINK_PLATFORM)ducati/$(SYSLINK_PLATFORM)videom3 \
159 $(SYSLINK_ROOT)/ti/syslink/family/common/$(SYSLINK_PLATFORM)/$(SYSLINK_PLATFORM)ducati/$(SYSLINK_PLATFORM)vpssm3 \
160 $(SYSLINK_ROOT)/ti/syslink/family/hlos/knl/$(SYSLINK_PLATFORM) \
161 $(SYSLINK_ROOT)/ti/syslink/family/hlos/knl/$(SYSLINK_PLATFORM)/Qnx \
162 $(SYSLINK_ROOT)/ti/syslink/family/hlos/knl/$(SYSLINK_PLATFORM)/$(SYSLINK_PLATFORM)dsp \
163 $(SYSLINK_ROOT)/ti/syslink/family/hlos/knl/$(SYSLINK_PLATFORM)/$(SYSLINK_PLATFORM)ducati/$(SYSLINK_PLATFORM)videom3 \
164 $(SYSLINK_ROOT)/ti/syslink/family/hlos/knl/$(SYSLINK_PLATFORM)/$(SYSLINK_PLATFORM)ducati/$(SYSLINK_PLATFORM)vpssm3
165 endif
167 ifeq ("$(USE_MEMMGR)", "false")
168 EXCLUDE_OBJS = SysLinkMemUtils.o
169 endif
171 ifeq ("$(USE_MEMMGR)", "false")
172 EXCLUDE_OBJS = SysLinkMemUtils.o
173 endif
175 include $(MKFILES_ROOT)/qtargets.mk
177 LDFLAGS += -M
179 EXTRA_LIBVPATH += $(INSTALL_ROOT_nto)/usr/lib
181 EXTRA_LIBVPATH += $(SYSLINK_ROOT)/tiler/usr/memmgr/arm/so.le.v7
183 ifeq ("$(SYSLINK_DEBUG)", "1")
184 EXTRA_LIBVPATH += $(IPC_REPO)/qnx/src/utils/arm/a.g.le.v7
185 LIBS += utils_g
186 else
187 EXTRA_LIBVPATH += $(IPC_REPO)/qnx/src/utils/arm/a.le.v7
188 LIBS += utils
189 endif # ifeq ("$(SYSLINK_DEBUG)", "1")
191 ifeq ("$(SYSLINK_PLATFORM)", "omap4430")
192 LIBS += powman camdrv login slog2
193 endif
194 ifeq ("$(USE_MEMMGR)", "true")
195 LIBS += memmgr
196 endif