examples/TestMasterSlave/Makefile.in
author etisserant
Fri, 21 Sep 2007 08:04:00 +0200
changeset 278 9d41c53dadac
parent 267 96c688ebcde7
child 329 7717252e3ed9
permissions -rw-r--r--
Typo in configure
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
267
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents: 158
diff changeset
    35
TESTMASTERSLAVE = "TestMasterSlave"
0
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    36
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
    37
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
    38
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    39
MASTER_OBJS = TestSlave.o TestMaster.o TestMasterSlave.o Slave.o Master.o
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    40
15
e930a0e817de Re-orginized led and nvram related code, for generic target.
etisserant
parents: 3
diff changeset
    41
OBJS = $(MASTER_OBJS) ../../src/libcanfestival.a ../../drivers/$(TARGET)/libcanfestival_$(TARGET).a
0
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    42
267
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents: 158
diff changeset
    43
ifeq ($(TARGET),win32)
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents: 158
diff changeset
    44
	TESTMASTERSLAVE = "TestMasterSlave.exe"
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents: 158
diff changeset
    45
endif
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents: 158
diff changeset
    46
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents: 158
diff changeset
    47
ifeq ($(TIMERS_DRIVER),timers_win32)
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents: 158
diff changeset
    48
	EXE_CFLAGS =
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents: 158
diff changeset
    49
endif
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents: 158
diff changeset
    50
0
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    51
ifeq ($(TIMERS_DRIVER),timers_xeno)
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    52
	PROGDEFINES = -DUSE_XENO
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    53
endif
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    54
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    55
all: TestMasterSlave
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    56
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    57
../../drivers/$(TARGET)/libcanfestival_$(TARGET).a:
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    58
	$(MAKE) -C ../../drivers/$(TARGET) libcanfestival_$(TARGET).a
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    59
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    60
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
    61
TestMasterSlave: TestSlave.c TestMaster.c $(OBJS)
267
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents: 158
diff changeset
    62
	g++ $(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
    63
	
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
    64
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
    65
	$(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
    66
	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
    67
	
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
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
    69
	$(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
    70
	python ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
0
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    71
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    72
%o: %c
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    73
	$(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    74
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    75
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
    76
	rm -f $(MASTER_OBJS)
267
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents: 158
diff changeset
    77
	rm -f $(TESTMASTERSLAVE)
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents: 158
diff changeset
    78
		
0
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    79
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
    80
	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
    81
	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
    82
	
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
    83
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
    84
	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
    85
	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
    86
	
b505f7116a1c Moved DS-301 PDF into objdictgen. Fixed installation on linux. Now TestMasterSlave is also installed in $PREFIX/bin.
etisserant
parents: 94
diff changeset
    87
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
    88
	rm -f $(PREFIX)/bin/TestMasterSlave
0
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    89
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    90
4472ee7c6c3e Commit a new cvs repo.
etisserant
parents:
diff changeset
    91