-rpp_lib_OS ?= 7.0.2_tms570
+# Copyright (C) 2013-2015 Czech Technical University in Prague
+#
+# Authors:
+# - Michal Sojka <sojkam1@fel.cvut.cz>
+#
+# This document contains proprietary information belonging to Czech
+# Technical University in Prague. Passing on and copying of this
+# document, and communication of its contents is not permitted
+# without prior written authorization.
+#
+# File : Makefile.var
+# Abstract:
+# Definitions of variables used by Makefile
+
+rpp_lib_OS ?= 8.2.2
rpp_lib_SOURCES = \
+ rpp/src/rpp/rpp.c \
os/$(rpp_lib_OS)/src/os/croutine.c \
os/$(rpp_lib_OS)/src/os/heap.c \
os/$(rpp_lib_OS)/src/os/list.c \
os/$(rpp_lib_OS)/src/os/port.c \
os/$(rpp_lib_OS)/src/os/queue.c \
os/$(rpp_lib_OS)/src/os/tasks.c \
- $(rpp_lib_SOURCES_$(rpp_lib_OS))
-rpp_lib_SOURCES_7.0.2_tms570 += \
+ifneq ($(TARGET),posix)
+rpp_lib_SOURCES += \
os/$(rpp_lib_OS)/src/os/portASM.asm \
os/$(rpp_lib_OS)/src/os/timers.c
-rpp_lib_SOURCES_6.0.4_posix += \
- os/$(rpp_lib_OS)/src/rpp/sci_posix.c
+# Usage: $(call target_or_common,dir/file)
+# Return dir/_$(TARGET)/file when it exists, dir/file otherwise.
+target_or_common = $(if $(wildcard ../../../$(dir $(1))/_$(TARGET)/$(notdir $(1))),$(dir $(1))/_$(TARGET)/$(notdir $(1)),$(1))
rpp_lib_SOURCES += \
rpp/src/rpp/adc.c \
rpp/src/rpp/can.c \
- rpp/src/rpp/dac.c \
- rpp/src/rpp/din.c \
- rpp/src/rpp/eth.c \
- rpp/src/rpp/fr.c \
- rpp/src/rpp/hbr.c \
- rpp/src/rpp/hout.c \
- rpp/src/rpp/irc.c \
- rpp/src/rpp/lin.c \
- rpp/src/rpp/lout.c \
- rpp/src/rpp/mout.c \
- rpp/src/rpp/rpp.c \
+ rpp/src/rpp/gio.c \
rpp/src/rpp/sci.c \
- rpp/src/rpp/sdc.c \
- rpp/src/rpp/sdr.c
-
-
-rpp_lib_SOURCES_7.0.2_tms570 += \
rpp/src/drv/adc.c \
- rpp/src/drv/dac.c \
- rpp/src/drv/din.c \
- rpp/src/drv/emac.c \
- rpp/src/drv/fr_tms570.c \
- rpp/src/drv/fray.c \
- rpp/src/drv/hbridge.c \
- rpp/src/drv/hout.c \
- rpp/src/drv/lout.c \
- rpp/src/drv/mout.c \
+ rpp/src/drv/_$(TARGET)/port_def.c \
+ rpp/src/drv/gio.c \
+ rpp/src/drv/gio_tab.c \
rpp/src/drv/sci.c \
- rpp/src/hal/gpio_tms570.c \
- rpp/src/hal/gpio_tms570_def.c \
- rpp/src/hal/port_def.c \
- rpp/src/hal/port_gpio.c \
- rpp/src/hal/port_spi.c \
- rpp/src/hal/spi.c \
- rpp/src/hal/spi_resp_transl.c \
- rpp/src/hal/spi_tms570.c \
rpp/src/sys/asm/dabort.asm \
rpp/src/sys/asm/sys_core.asm \
rpp/src/sys/asm/sys_intvecs.asm \
rpp/src/sys/asm/sys_mpu.asm \
rpp/src/sys/asm/sys_pmu.asm \
- rpp/src/sys/notification.c \
+ rpp/src/sys/_$(TARGET)/notification.c \
rpp/src/sys/phy_dp83848h.c \
rpp/src/sys/sys_phantom.c \
- rpp/src/sys/sys_pinmux.c \
+ $(call target_or_common,rpp/src/sys/sys_pinmux.c) \
rpp/src/sys/sys_selftest.c \
- rpp/src/sys/sys_startup.c \
+ rpp/src/sys/_$(TARGET)/sys_startup.c \
rpp/src/sys/system.c \
- rpp/src/sys/ti_drv_adc.c \
- rpp/src/sys/ti_drv_can.c \
+ rpp/src/sys/_$(TARGET)/ti_drv_adc.c \
rpp/src/sys/ti_drv_dma.c \
- rpp/src/sys/ti_drv_dmm.c \
rpp/src/sys/ti_drv_emac.c \
rpp/src/sys/ti_drv_emif.c \
rpp/src/sys/ti_drv_esm.c \
rpp/src/sys/ti_drv_het.c \
rpp/src/sys/ti_drv_het2.c \
rpp/src/sys/ti_drv_i2c.c \
- rpp/src/sys/ti_drv_lin.c \
rpp/src/sys/ti_drv_mdio.c \
rpp/src/sys/ti_drv_mibspi.c \
rpp/src/sys/ti_drv_sci.c
+endif
-
-rpp_lib_SOURCES_7.0.2_tms570 += \
+lwip_SOURCES = \
lwip/src/api/api_lib.c \
lwip/src/api/api_msg.c \
lwip/src/api/err.c \
lwip/src/netif/ppp/vj.c \
lwip/src/netif/slipif.c
+# Definition of target specific sources
+
+rpp_lib_SOURCES_y =
+rpp_lib_SOURCES_$(TARGET_HAS_DMM) += rpp/src/sys/ti_drv_dmm.c
+
+rpp_lib_SOURCES_$(TARGET_HAS_SPI) += \
+ rpp/src/drv/spi.c \
+ rpp/src/drv/spi_tms570.c \
+ rpp/src/drv/_$(TARGET)/spi_def.c \
+ rpp/src/rpp/spi.c \
+
+rpp_lib_SOURCES_posix = \
+ os/$(rpp_lib_OS)/src/rpp/sci_posix.c
+
+
+rpp_lib_SOURCES_tms570_rpp = \
+ $(lwip_SOURCES) \
+ rpp/src/drv/dac.c \
+ rpp/src/drv/din.c \
+ rpp/src/drv/emac.c \
+ rpp/src/drv/fr_tms570.c \
+ rpp/src/drv/fray.c \
+ rpp/src/drv/hbridge.c \
+ rpp/src/drv/hout.c \
+ rpp/src/drv/lout.c \
+ rpp/src/drv/mout.c \
+ rpp/src/rpp/dac.c \
+ rpp/src/rpp/din.c \
+ rpp/src/rpp/eth.c \
+ rpp/src/rpp/fr.c \
+ rpp/src/rpp/hbr.c \
+ rpp/src/rpp/hout.c \
+ rpp/src/rpp/irc.c \
+ rpp/src/rpp/lin.c \
+ rpp/src/rpp/lout.c \
+ rpp/src/rpp/mout.c \
+ rpp/src/rpp/sdc.c \
+ rpp/src/rpp/sdr.c \
+ rpp/src/sys/pom_vect_remap.c \
+ rpp/src/sys/ti_drv_lin.c
+
+# Add target specific and conditional sources to the list of sources
+
+rpp_lib_SOURCES += $(rpp_lib_SOURCES_$(TARGET))
+rpp_lib_SOURCES += $(rpp_lib_SOURCES_y)
+
rpp_lib_INCLUDES = \
+ lwip/src/include \
+ lwip/src/include/ipv4 \
+ lwip/src/include/ipv6 \
os/$(rpp_lib_OS)/include \
- rpp/include \
- lwip/src/include \
- lwip/src/include/ipv4 \
- lwip/src/include/ipv6
+ rpp/include