drivers/can_vscom/Makefile.in
author ct@78566C00-6F59-1014-AAEE-A77C3B9AAB40
Thu, 12 May 2011 12:23:20 +0000
changeset 680 9a2474509269
parent 678 c1b9455929e6
child 790 1936110171a2
permissions -rwxr-xr-x
Win32-Timer:
CHANGED: - Timer implementation for win32 from absolute time (_ftime) to GetTickCount().
This fixes the following bug: When the system time was changed, a heartbeat timeout occurred.
FIXED: - Timeout seems only work properly if EnterMutex() is called before call of GetTickCount() (Patch from Roland Marquis)
455
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
     1
#! gmake
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
     2
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
     3
#
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
     4
# Copyright (C) 2006 Laurent Bessard
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
     5
# 
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
     6
# This file is part of canfestival, a library implementing the canopen
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
     7
# stack
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
     8
# 
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
     9
# This library is free software; you can redistribute it and/or
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    10
# modify it under the terms of the GNU Lesser General Public
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    11
# License as published by the Free Software Foundation; either
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    12
# version 2.1 of the License, or (at your option) any later version.
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    13
# 
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    14
# This library is distributed in the hope that it will be useful,
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    15
# but WITHOUT ANY WARRANTY; without even the implied warranty of
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    16
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    17
# Lesser General Public License for more details.
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    18
# 
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    19
# You should have received a copy of the GNU Lesser General Public
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    20
# License along with this library; if not, write to the Free Software
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    21
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    22
# 
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    23
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    24
CC = SUB_CC
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    25
OPT_CFLAGS = -O2
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    26
CFLAGS = SUB_OPT_CFLAGS
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    27
PROG_CFLAGS = SUB_PROG_CFLAGS
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    28
PREFIX = SUB_PREFIX
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    29
TARGET = SUB_TARGET
461
51cf26e3f352 add -mno-cygwin when linking with the vscom api dll
greg
parents: 460
diff changeset
    30
OS = SUB_OS_NAME
455
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    31
CAN_DRIVER = SUB_CAN_DRIVER
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    32
TIMERS_DRIVER = SUB_TIMERS_DRIVER
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    33
ENABLE_DLL_DRIVERS=SUB_ENABLE_DLL_DRIVERS
678
c1b9455929e6 FIXED: - adapted paths for current vscom driver
Christian Taedcke <hacking@taedcke.com>
parents: 658
diff changeset
    34
CAN_DLL_CFLAGS=SUB_CAN_DLL_CFLAGS
634
15e8d1ec0e61 get always the latest version of VSCAN API
edouard
parents: 464
diff changeset
    35
VSCAN_API_FILENAME=VSCAN_API_latest.zip
455
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    36
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    37
# define target specific environment
460
48cd190df6f7 clean Makefile.in
greg
parents: 455
diff changeset
    38
ifeq ($(OS),CYGWIN)
455
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    39
DLL_TYPE=dll
460
48cd190df6f7 clean Makefile.in
greg
parents: 455
diff changeset
    40
CAN_VSCOM_DLL_FLAGS=-Wl,--export-all-symbols -Wl,--exclude-libs,ALL
464
7d3637f763be update Doxyfile , manual.tex
greg
parents: 461
diff changeset
    41
endif
7d3637f763be update Doxyfile , manual.tex
greg
parents: 461
diff changeset
    42
7d3637f763be update Doxyfile , manual.tex
greg
parents: 461
diff changeset
    43
ifeq ($(OS),MINGW32)
7d3637f763be update Doxyfile , manual.tex
greg
parents: 461
diff changeset
    44
DLL_TYPE=dll
7d3637f763be update Doxyfile , manual.tex
greg
parents: 461
diff changeset
    45
CAN_VSCOM_DLL_FLAGS=-Wl,--export-all-symbols -Wl,--exclude-libs,ALL
7d3637f763be update Doxyfile , manual.tex
greg
parents: 461
diff changeset
    46
endif
7d3637f763be update Doxyfile , manual.tex
greg
parents: 461
diff changeset
    47
7d3637f763be update Doxyfile , manual.tex
greg
parents: 461
diff changeset
    48
ifeq ($(OS),Linux)
455
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    49
DLL_TYPE=so
460
48cd190df6f7 clean Makefile.in
greg
parents: 455
diff changeset
    50
CAN_VSCOM_DLL_FLAGS=-Wl,-soname,libcanfestival_$(CAN_DRIVER).so
455
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    51
endif
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    52
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    53
INCLUDES = -I../../include -I../../include/$(TARGET) -I../../include/$(CAN_DRIVER)
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    54
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    55
OBJS = $(CAN_DRIVER).o
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    56
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    57
ifeq ($(ENABLE_DLL_DRIVERS),1)
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    58
CFLAGS += -fPIC
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    59
DRIVER = libcanfestival_$(CAN_DRIVER).$(DLL_TYPE)
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    60
else
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    61
DRIVER = $(OBJS)
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    62
endif
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    63
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    64
TARGET_SOFILES = $(PREFIX)/lib/$(DRIVER)
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    65
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    66
all: driver
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    67
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    68
vs_can_api.h:
634
15e8d1ec0e61 get always the latest version of VSCAN API
edouard
parents: 464
diff changeset
    69
	wget http://www.vscom.de/download/multiio/linux/driver/${VSCAN_API_FILENAME}
455
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    70
	@if which unzip &> /dev/null; then \
678
c1b9455929e6 FIXED: - adapted paths for current vscom driver
Christian Taedcke <hacking@taedcke.com>
parents: 658
diff changeset
    71
	unzip -o ${VSCAN_API_FILENAME}; \
455
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    72
	else \
634
15e8d1ec0e61 get always the latest version of VSCAN API
edouard
parents: 464
diff changeset
    73
	echo "No unzip found. Please decompress ${VSCAN_API_FILENAME} manually"; \
455
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    74
	exit 1; \
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    75
	fi;
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    76
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    77
driver: vs_can_api.h $(DRIVER)
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    78
658
7758d60e9260 FIXED: - changed make targets from "%o: %c" to "%.o: %.c" (Patch from irc <oleg_osov>)
Christian Taedcke
parents: 634
diff changeset
    79
%.o: %.c
455
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    80
	$(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    81
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    82
libcanfestival_$(CAN_DRIVER).$(DLL_TYPE): $(OBJS)
461
51cf26e3f352 add -mno-cygwin when linking with the vscom api dll
greg
parents: 460
diff changeset
    83
	$(CC) $(PROG_CFLAGS) -shared $(CAN_VSCOM_DLL_FLAGS) -o $@ $< $(CAN_DLL_CFLAGS)
455
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    84
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    85
install: libcanfestival_$(CAN_DRIVER).so
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    86
	mkdir -p $(PREFIX)/lib/
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    87
	cp $< $(PREFIX)/lib/
678
c1b9455929e6 FIXED: - adapted paths for current vscom driver
Christian Taedcke <hacking@taedcke.com>
parents: 658
diff changeset
    88
455
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    89
uninstall:
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    90
	rm -f $(TARGET_SOFILES)
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    91
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    92
clean:
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    93
	rm -f $(OBJS)
634
15e8d1ec0e61 get always the latest version of VSCAN API
edouard
parents: 464
diff changeset
    94
	rm -f *.zip *.a *.so *.dll *.h *.lib
15e8d1ec0e61 get always the latest version of VSCAN API
edouard
parents: 464
diff changeset
    95
	rm -f CHANGES.TXT
455
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    96
26f762d4116d Add support for USB-CAN devices from VScom
greg
parents:
diff changeset
    97
mrproper: clean