drivers/win32/Makefile.in
author Christian Taedcke <Christian.Taedcke@ica-traffic.de>
Fri, 19 Feb 2010 08:19:23 +0100
changeset 640 e9a4e4c308bb
parent 593 44702aa24113
child 658 7758d60e9260
permissions -rwxr-xr-x
ADDED: - LeaveMutex and EnterMutex to exported symbols
267
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
     1
#! gmake
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
     2
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
     3
#
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
     4
# Copyright (C) 2006 Laurent Bessard
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
     5
# 
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
     6
# This file is part of canfestival, a library implementing the canopen
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
     7
# stack
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
     8
# 
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
     9
# This library is free software; you can redistribute it and/or
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    10
# modify it under the terms of the GNU Lesser General Public
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    11
# License as published by the Free Software Foundation; either
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    12
# version 2.1 of the License, or (at your option) any later version.
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    13
# 
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    14
# This library is distributed in the hope that it will be useful,
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    15
# but WITHOUT ANY WARRANTY; without even the implied warranty of
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    16
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    17
# Lesser General Public License for more details.
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    18
# 
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    19
# You should have received a copy of the GNU Lesser General Public
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    20
# License along with this library; if not, write to the Free Software
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    21
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    22
# 
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    23
329
7717252e3ed9 Changes to compile for win32
greg
parents: 267
diff changeset
    24
CC = SUB_CC
7717252e3ed9 Changes to compile for win32
greg
parents: 267
diff changeset
    25
CXX = SUB_CXX
7717252e3ed9 Changes to compile for win32
greg
parents: 267
diff changeset
    26
LD = SUB_LD
267
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    27
OPT_CFLAGS = -O2
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    28
CFLAGS = SUB_OPT_CFLAGS
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    29
PROG_CFLAGS = SUB_PROG_CFLAGS
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    30
OS_NAME = SUB_OS_NAME
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    31
ARCH_NAME = SUB_ARCH_NAME
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    32
PREFIX = SUB_PREFIX
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    33
TARGET = SUB_TARGET
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    34
CAN_DRIVER = SUB_CAN_DRIVER
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    35
TIMERS_DRIVER = SUB_TIMERS_DRIVER
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    36
ENABLE_DLL_DRIVERS = SUB_ENABLE_DLL_DRIVERS
354
396ac66670ad Various configure and build enhancements:
etisserant
parents: 329
diff changeset
    37
BINUTILS_PREFIX = SUB_BINUTILS_PREFIX
267
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    38
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    39
INCLUDES = -I../../include -I../../include/$(TARGET) -I../../include/$(TIMERS_DRIVER)
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    40
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    41
OBJS = $(TARGET).o
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    42
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    43
# add timers driver if any
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    44
ifneq ($(TIMERS_DRIVER),timers_)
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    45
OBJS += ../$(TIMERS_DRIVER)/$(TIMERS_DRIVER).o
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    46
endif
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    47
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    48
SRC_HFILES = ../../include/$(TARGET)/applicfg.h ../../include/$(TARGET)/canfestival.h
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    49
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    50
TARGET_HFILES = $(PREFIX)/include/$(TARGET)/applicfg.h $(PREFIX)/include/$(TARGET)/canfestival.h
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    51
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    52
all: driver
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    53
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    54
driver: $(OBJS)
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    55
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    56
556
8296acd119a9 Rewrite win32 code (C only)
greg
parents: 354
diff changeset
    57
%o: %c
329
7717252e3ed9 Changes to compile for win32
greg
parents: 267
diff changeset
    58
	$(CXX) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
267
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    59
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    60
#../$(TIMERS_DRIVER)/$(TIMERS_DRIVER).o:
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    61
#	$(MAKE) -C ../$(TIMERS_DRIVER) driver
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    62
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    63
#../$(CAN_DRIVER)/$(CAN_DRIVER).o:
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    64
#	$(MAKE) -C ../$(CAN_DRIVER) driver
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    65
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    66
libcanfestival_$(TARGET).a: $(OBJS)
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    67
	@echo Building [libcanfestival_$(TARGET).a]
354
396ac66670ad Various configure and build enhancements:
etisserant
parents: 329
diff changeset
    68
	$(BINUTILS_PREFIX)ar rc $@ $(OBJS)
593
44702aa24113 add some symbols from libgcc.a into libcanfestival_win32.a to maintain compatibility between mingw and msvc compilers
greg
parents: 556
diff changeset
    69
	$(BINUTILS_PREFIX)ar x `$(BINUTILS_PREFIX)gcc -print-libgcc-file-name` _umoddi3.o _udivdi3.o
44702aa24113 add some symbols from libgcc.a into libcanfestival_win32.a to maintain compatibility between mingw and msvc compilers
greg
parents: 556
diff changeset
    70
	$(BINUTILS_PREFIX)ar r $@ _umoddi3.o _udivdi3.o
354
396ac66670ad Various configure and build enhancements:
etisserant
parents: 329
diff changeset
    71
	$(BINUTILS_PREFIX)ranlib $@
267
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    72
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    73
install: libcanfestival_$(TARGET).a
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    74
	mkdir -p $(PREFIX)/lib/
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    75
	mkdir -p $(PREFIX)/include/canfestival
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    76
	cp libcanfestival_$(TARGET).a $(PREFIX)/lib/
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    77
	cp $(SRC_HFILES) $(PREFIX)/include/canfestival
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    78
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    79
uninstall:
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    80
	rm -f $(PREFIX)/lib/libcanfestival_$(TARGET).a
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    81
	rm -f $(TARGET_HFILES)
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    82
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    83
clean:
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    84
	rm -f $(OBJS)
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    85
	rm -f libcanfestival_$(TARGET).a
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    86
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    87
mrproper: clean
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    88
96c688ebcde7 Add win32 target (--can=win32) to compile with msys and mingw32
greg
parents:
diff changeset
    89