]> rtime.felk.cvut.cz Git - CanFestival-3.git/blob - drivers/can_vscom/Makefile.in
fixed : deprecation warning with the module "sets" when using python 2.6
[CanFestival-3.git] / drivers / can_vscom / Makefile.in
1 #! gmake
2
3 #
4 # Copyright (C) 2006 Laurent Bessard
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 = -O2
26 CFLAGS = SUB_OPT_CFLAGS
27 PROG_CFLAGS = SUB_PROG_CFLAGS
28 PREFIX = SUB_PREFIX
29 TARGET = SUB_TARGET
30 OS = SUB_OS_NAME
31 CAN_DRIVER = SUB_CAN_DRIVER
32 TIMERS_DRIVER = SUB_TIMERS_DRIVER
33 ENABLE_DLL_DRIVERS=SUB_ENABLE_DLL_DRIVERS
34 CAN_DLL_CFLAGS=SUB_CAN_DLL_CFLAGS -L.
35
36 # define target specific environment
37 ifeq ($(OS),CYGWIN)
38 DLL_TYPE=dll
39 CAN_VSCOM_DLL_FLAGS=-Wl,--export-all-symbols -Wl,--exclude-libs,ALL
40 endif
41
42 ifeq ($(OS),MINGW32)
43 DLL_TYPE=dll
44 CAN_VSCOM_DLL_FLAGS=-Wl,--export-all-symbols -Wl,--exclude-libs,ALL
45 endif
46
47 ifeq ($(OS),Linux)
48 DLL_TYPE=so
49 CAN_VSCOM_DLL_FLAGS=-Wl,-soname,libcanfestival_$(CAN_DRIVER).so
50 endif
51
52 INCLUDES = -I../../include -I../../include/$(TARGET) -I../../include/$(CAN_DRIVER)
53
54 OBJS = $(CAN_DRIVER).o
55
56 ifeq ($(ENABLE_DLL_DRIVERS),1)
57 CFLAGS += -fPIC
58 DRIVER = libcanfestival_$(CAN_DRIVER).$(DLL_TYPE)
59 else
60 DRIVER = $(OBJS)
61 endif
62
63 TARGET_SOFILES = $(PREFIX)/lib/$(DRIVER)
64
65 all: driver
66
67 vs_can_api.h:
68         wget http://www.vscom.de/download/multiio/linux/driver/VSCAN_API_1_0.zip
69         @if which unzip &> /dev/null; then \
70         unzip VSCAN_API_1_0.zip; \
71         chmod +x vs_can_api.dll; \
72         else \
73         echo "No unzip found. Please decompress VSCAN_API_1_0.zip manually"; \
74         exit 1; \
75         fi;
76
77 driver: vs_can_api.h $(DRIVER)
78
79 %o: %c
80         $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
81
82 libcanfestival_$(CAN_DRIVER).$(DLL_TYPE): $(OBJS)
83         $(CC) $(PROG_CFLAGS) -shared $(CAN_VSCOM_DLL_FLAGS) -o $@ $< $(CAN_DLL_CFLAGS)
84
85 install: libcanfestival_$(CAN_DRIVER).so
86         mkdir -p $(PREFIX)/lib/
87         cp $< $(PREFIX)/lib/
88                 
89 uninstall:
90         rm -f $(TARGET_SOFILES)
91
92 clean:
93         rm -f $(OBJS)
94         rm -f *.zip
95         rm -f libvs_can_api*
96         rm -f vs_can_api*
97
98 mrproper: clean