4 # Copyright (C) 2006 Laurent Bessard
6 # This file is part of canfestival, a library implementing the canopen
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.
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.
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
26 CFLAGS = SUB_OPT_CFLAGS
27 PROG_CFLAGS = SUB_PROG_CFLAGS
30 CAN_DRIVER = SUB_CAN_DRIVER
31 TIMERS_DRIVER = SUB_TIMERS_DRIVER
32 ENABLE_DLL_DRIVERS=SUB_ENABLE_DLL_DRIVERS
33 CAN_DLL_CFLAGS=SUB_CAN_DLL_CFLAGS -L.
35 # define target specific environment
36 ifeq ($(TARGET),win32)
43 CAN_LINUX_DLL_FLAGS=-Wl,-soname,libcanfestival_$(CAN_DRIVER).so
46 INCLUDES = -I../../include -I../../include/$(TARGET) -I../../include/$(CAN_DRIVER)
48 OBJS = $(CAN_DRIVER).o
50 ifeq ($(ENABLE_DLL_DRIVERS),1)
52 DRIVER = libcanfestival_$(CAN_DRIVER).$(DLL_TYPE)
57 TARGET_SOFILES = $(PREFIX)/lib/$(DRIVER)
62 wget http://www.vscom.de/download/multiio/linux/driver/VSCAN_API_1_0.zip
63 @if which unzip &> /dev/null; then \
64 unzip VSCAN_API_1_0.zip; \
66 echo "No unzip found. Please decompress VSCAN_API_1_0.zip manually"; \
70 driver: vs_can_api.h $(DRIVER)
73 $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
75 libcanfestival_$(CAN_DRIVER).$(DLL_TYPE): $(OBJS)
76 $(CC) -shared $(CAN_LINUX_DLL_FLAGS) $(CAN_MINGW_DLL_FLAGS) -o $@ $< $(CAN_DLL_CFLAGS)
78 install: libcanfestival_$(CAN_DRIVER).so
79 mkdir -p $(PREFIX)/lib/
83 rm -f $(TARGET_SOFILES)