]> rtime.felk.cvut.cz Git - CanFestival-3.git/blob - drivers/ecos_lpc2138_sja1000/Makefile.in
Updated configure and fixes in Makefiles.in for cygwin compiling.
[CanFestival-3.git] / drivers / ecos_lpc2138_sja1000 / Makefile.in
1 #! gmake
2
3 #
4 # Copyright (C) 2006 OREMEQ
5
6 # This file is part of canfestival, a library implementing the canopen
7 # stack
8
9 # This library is free software; you can redistribute it and/or
10 # modify it under the terms of the GNU Lesser General Public
11 # License as published by the Free Software Foundation; either
12 # version 2.1 of the License, or (at your option) any later version.
13
14 # This library is distributed in the hope that it will be useful,
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17 # Lesser General Public License for more details.
18
19 # You should have received a copy of the GNU Lesser General Public
20 # License along with this library; if not, write to the Free Software
21 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
22
23
24 CC = SUB_CC
25 OPT_CFLAGS = SUB_OPT_CFLAGS
26 CFLAGS = 
27 PROG_CFLAGS = SUB_PROG_CFLAGS
28 LIBS = -lm
29 SHAREDLIBOPT = -shared
30 OS_NAME = SUB_OS_NAME
31 ARCH_NAME = SUB_ARCH_NAME
32 PREFIX = SUB_PREFIX
33 TARGET = SUB_TARGET
34 INCLUDES = -I../../include -I../../examples/ecos_lpc2138_sja1000/include
35
36 ECOS_GLOBAL_CFLAGS=-mcpu=arm7tdmi -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Os -ffunction-sections -fdata-sections -fno-exceptions -finline-functions
37 ECOS_GLOBAL_LDFLAGS=-mcpu=arm7tdmi -Wl,--gc-sections -Wl,-static -nostdlib
38
39 export CAN_CONTROLER_CLOCK_SPEED := 24.000   # Crystal frequency of the SJA1000 clock input.
40 export CAN_CONTROLER_PHASE_SHIFT_TOLERANCE := 3  #Synchronization Jump Width (SJW) (in SJA1000==> 0..3)
41                                                           #To compensate for phase shifts between
42                                                           #clock oscillators of different bus
43                                                           # controllers, any bus controller must
44                                                           #re-synchronize on any relevant signal
45                                                           #edge of the current transmission.
46
47
48 OBJS = canOpenDriver.o lpc2138.o sja1000.o time_slicer.o
49 INCLUDE_H = applicfg.h baudrate_table.h canOpenDriver.h lpc2138.h lpc2138_defs.h \
50 lpc2138_pinout.h sja1000.h time_slicer.h
51
52 all: driver
53
54 driver: build_baudrate $(OBJS)
55
56 build_baudrate:
57         gcc -o build_baudrate build_baudrate.c
58         @echo "Generate The baudrate register structure in canControler.h regarding the"
59         @echo "SJA1000 clock speed defined in the Makefile, CAN_CONTROLER_CLOCK_SPEED"
60         ./build_baudrate $(CAN_CONTROLER_CLOCK_SPEED) $(CAN_CONTROLER_PHASE_SHIFT_TOLERANCE)
61
62
63 libcandriver.a: $(OBJS)
64         @echo " "
65         @echo "*********************************************"
66         @echo "**Building [libcandriver]"
67         @echo "*********************************************"
68         $(BINUTILS_PREFIX)ar rc $@ $(OBJS)
69         $(BINUTILS_PREFIX)ranlib $@
70
71 %o: %c
72         @echo " "
73         @echo "*********************************************"
74         @echo "**Compiling $< -> $@"
75         @echo "*********************************************"
76         $(CC) -g -c $(ECOS_GLOBAL_CFLAGS) $(INCLUDES) -I. -c -o $@ $<
77
78 %o: %s
79         @echo " "
80         @echo "*********************************************"
81         @echo "**Compiling $< -> $@"
82         @echo "*********************************************"
83         $(CC)  -c -x assembler-with-cpp $(ECOS_GLOBAL_CFLAGS) $(INCLUDES) -I. -o $@ $<
84
85 install:
86         mkdir -p $(PREFIX)/lib
87         ln -s ../../../drivers/ecos_lpc2138_sja1000 $(PREFIX)/lib/driver
88
89 uninstall:
90         rm -f ../../examples/ecos_lpc2138_sja1000/lib/driver
91
92 clean:
93         rm -f $(OBJS) build_baudrate baudrate_table.h 
94
95 mrproper: clean
96         rm -f ../../lib/ecos_lpc2138_sja1000/libcandriver.a 
97