examples/TestMasterSlave/Makefile.in
author etisserant
Mon, 02 Jul 2007 18:22:58 +0200
changeset 236 905677ed00f3
parent 158 b505f7116a1c
child 267 96c688ebcde7
permissions -rw-r--r--
Full preliminary implementation of TPDO transmit type:
- SYNC (N) (1-240)
- RTR only + SYNC (252)
- RTR only (253)
- EVENT, with timer and inhibit time (254 and 255)

User app have to call sendPDOevent(d) to eventually signal mapped data changes.
Callbacks added to 0x140N, TPDO comm parameters for on the fly timers values change.
TestMasterSlave updated.
0
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
     1
#! gmake
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
     2
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
     3
#
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
     4
# Copyright (C) 2006 Laurent Bessard
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
     5
# 
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
     6
# This file is part of canfestival, a library implementing the canopen
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
     7
# stack
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
     8
# 
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
     9
# This library is free software; you can redistribute it and/or
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    10
# modify it under the terms of the GNU Lesser General Public
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    11
# License as published by the Free Software Foundation; either
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    12
# version 2.1 of the License, or (at your option) any later version.
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    13
# 
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    14
# This library is distributed in the hope that it will be useful,
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    15
# but WITHOUT ANY WARRANTY; without even the implied warranty of
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    16
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    17
# Lesser General Public License for more details.
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    18
# 
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    19
# You should have received a copy of the GNU Lesser General Public
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    20
# License along with this library; if not, write to the Free Software
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    21
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    22
# 
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    23
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    24
CC = SUB_CC
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    25
OPT_CFLAGS = -O2
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    26
CFLAGS = SUB_OPT_CFLAGS
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    27
PROG_CFLAGS = SUB_PROG_CFLAGS
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    28
EXE_CFLAGS = SUB_EXE_CFLAGS
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    29
OS_NAME = SUB_OS_NAME
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    30
ARCH_NAME = SUB_ARCH_NAME
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    31
PREFIX = SUB_PREFIX
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    32
TARGET = SUB_TARGET
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    33
CAN_DRIVER = SUB_CAN_DRIVER
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    34
TIMERS_DRIVER = SUB_TIMERS_DRIVER
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    35
94
bdf4c86be6b2 Removed all non-supported and uncontrolled source code. Please refer to CVS version "Before_..." to see old code.
etisserant
parents: 91
diff changeset
    36
INCLUDES = -I../../include -I../../include/$(TARGET) -I../../include/$(CAN_DRIVER) -I../../include/$(TIMERS_DRIVER)
0
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    37
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    38
MASTER_OBJS = TestSlave.o TestMaster.o TestMasterSlave.o Slave.o Master.o
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    39
15
e930a0e817de Re-orginized led and nvram related code, for generic target.
etisserant
parents: 3
diff changeset
    40
OBJS = $(MASTER_OBJS) ../../src/libcanfestival.a ../../drivers/$(TARGET)/libcanfestival_$(TARGET).a
0
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    41
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    42
ifeq ($(TIMERS_DRIVER),timers_xeno)
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    43
	PROGDEFINES = -DUSE_XENO
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    44
endif
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    45
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    46
all: TestMasterSlave
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    47
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    48
../../drivers/$(TARGET)/libcanfestival_$(TARGET).a:
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    49
	$(MAKE) -C ../../drivers/$(TARGET) libcanfestival_$(TARGET).a
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    50
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    51
91
ed2612282988 - Better array initialization in data.h CANOPEN_NODE_DATA_INITIALIZER macro. Use a little hack with configure and config.h to create the "pure Ansi C" initializer.
etisserant
parents: 40
diff changeset
    52
TestMasterSlave: TestSlave.c TestMaster.c $(OBJS)
40
ddeeb217ed71 Updated configure and fixes in Makefiles.in for cygwin compiling.
etisserant
parents: 15
diff changeset
    53
	$(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ $(OBJS) $(EXE_CFLAGS)
91
ed2612282988 - Better array initialization in data.h CANOPEN_NODE_DATA_INITIALIZER macro. Use a little hack with configure and config.h to create the "pure Ansi C" initializer.
etisserant
parents: 40
diff changeset
    54
	
ed2612282988 - Better array initialization in data.h CANOPEN_NODE_DATA_INITIALIZER macro. Use a little hack with configure and config.h to create the "pure Ansi C" initializer.
etisserant
parents: 40
diff changeset
    55
TestSlave.c: TestSlave.od
ed2612282988 - Better array initialization in data.h CANOPEN_NODE_DATA_INITIALIZER macro. Use a little hack with configure and config.h to create the "pure Ansi C" initializer.
etisserant
parents: 40
diff changeset
    56
	$(MAKE) -C ../../objdictgen gnosis
ed2612282988 - Better array initialization in data.h CANOPEN_NODE_DATA_INITIALIZER macro. Use a little hack with configure and config.h to create the "pure Ansi C" initializer.
etisserant
parents: 40
diff changeset
    57
	python ../../objdictgen/objdictgen.py TestSlave.od TestSlave.c
ed2612282988 - Better array initialization in data.h CANOPEN_NODE_DATA_INITIALIZER macro. Use a little hack with configure and config.h to create the "pure Ansi C" initializer.
etisserant
parents: 40
diff changeset
    58
	
ed2612282988 - Better array initialization in data.h CANOPEN_NODE_DATA_INITIALIZER macro. Use a little hack with configure and config.h to create the "pure Ansi C" initializer.
etisserant
parents: 40
diff changeset
    59
TestMaster.c: TestMaster.od
ed2612282988 - Better array initialization in data.h CANOPEN_NODE_DATA_INITIALIZER macro. Use a little hack with configure and config.h to create the "pure Ansi C" initializer.
etisserant
parents: 40
diff changeset
    60
	$(MAKE) -C ../../objdictgen gnosis
ed2612282988 - Better array initialization in data.h CANOPEN_NODE_DATA_INITIALIZER macro. Use a little hack with configure and config.h to create the "pure Ansi C" initializer.
etisserant
parents: 40
diff changeset
    61
	python ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
0
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    62
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    63
%o: %c
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    64
	$(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    65
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    66
clean:
91
ed2612282988 - Better array initialization in data.h CANOPEN_NODE_DATA_INITIALIZER macro. Use a little hack with configure and config.h to create the "pure Ansi C" initializer.
etisserant
parents: 40
diff changeset
    67
	rm -f $(MASTER_OBJS)
ed2612282988 - Better array initialization in data.h CANOPEN_NODE_DATA_INITIALIZER macro. Use a little hack with configure and config.h to create the "pure Ansi C" initializer.
etisserant
parents: 40
diff changeset
    68
	rm -f TestMasterSlave
0
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    69
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    70
mrproper: clean
91
ed2612282988 - Better array initialization in data.h CANOPEN_NODE_DATA_INITIALIZER macro. Use a little hack with configure and config.h to create the "pure Ansi C" initializer.
etisserant
parents: 40
diff changeset
    71
	rm -f TestSlave.c
ed2612282988 - Better array initialization in data.h CANOPEN_NODE_DATA_INITIALIZER macro. Use a little hack with configure and config.h to create the "pure Ansi C" initializer.
etisserant
parents: 40
diff changeset
    72
	rm -f TestMaster.c
ed2612282988 - Better array initialization in data.h CANOPEN_NODE_DATA_INITIALIZER macro. Use a little hack with configure and config.h to create the "pure Ansi C" initializer.
etisserant
parents: 40
diff changeset
    73
	
158
b505f7116a1c Moved DS-301 PDF into objdictgen. Fixed installation on linux. Now TestMasterSlave is also installed in $PREFIX/bin.
etisserant
parents: 94
diff changeset
    74
install: TestMasterSlave
b505f7116a1c Moved DS-301 PDF into objdictgen. Fixed installation on linux. Now TestMasterSlave is also installed in $PREFIX/bin.
etisserant
parents: 94
diff changeset
    75
	mkdir -p $(PREFIX)/bin/
b505f7116a1c Moved DS-301 PDF into objdictgen. Fixed installation on linux. Now TestMasterSlave is also installed in $PREFIX/bin.
etisserant
parents: 94
diff changeset
    76
	cp $< $(PREFIX)/bin/
b505f7116a1c Moved DS-301 PDF into objdictgen. Fixed installation on linux. Now TestMasterSlave is also installed in $PREFIX/bin.
etisserant
parents: 94
diff changeset
    77
	
b505f7116a1c Moved DS-301 PDF into objdictgen. Fixed installation on linux. Now TestMasterSlave is also installed in $PREFIX/bin.
etisserant
parents: 94
diff changeset
    78
uninstall:
b505f7116a1c Moved DS-301 PDF into objdictgen. Fixed installation on linux. Now TestMasterSlave is also installed in $PREFIX/bin.
etisserant
parents: 94
diff changeset
    79
	rm -f $(PREFIX)/bin/TestMasterSlave
0
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    80
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    81
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    82