drivers/can_lincan/Makefile.in
changeset 145 e747d2e26af0
parent 40 ddeeb217ed71
child 158 b505f7116a1c
equal deleted inserted replaced
144:3ebf16150b2e 145:e747d2e26af0
    27 PROG_CFLAGS = SUB_PROG_CFLAGS
    27 PROG_CFLAGS = SUB_PROG_CFLAGS
    28 PREFIX = SUB_PREFIX
    28 PREFIX = SUB_PREFIX
    29 TARGET = SUB_TARGET
    29 TARGET = SUB_TARGET
    30 CAN_DRIVER = SUB_CAN_DRIVER
    30 CAN_DRIVER = SUB_CAN_DRIVER
    31 TIMERS_DRIVER = SUB_TIMERS_DRIVER
    31 TIMERS_DRIVER = SUB_TIMERS_DRIVER
       
    32 ENABLE_DLL_DRIVERS=SUB_ENABLE_DLL_DRIVERS
    32 
    33 
    33 INCLUDES = -I../../include -I../../include/$(TARGET) -I../../include/$(CAN_DRIVER) -I../../include/$(TIMERS_DRIVER)
    34 INCLUDES = -I../../include -I../../include/$(TARGET) -I../../include/$(CAN_DRIVER)
    34 
    35 
    35 OBJS = $(CAN_DRIVER).o
    36 OBJS = $(CAN_DRIVER).o
    36 
    37 
    37 SRC_HFILES = ../../include/$(CAN_DRIVER)/cancfg.h
    38 ifeq ($(ENABLE_DLL_DRIVERS),1)
       
    39 CFLAGS += -fPIC
       
    40 DRIVER = libcanfestival_$(CAN_DRIVER).so
       
    41 else
       
    42 DRIVER = $(OBJS)
       
    43 endif
    38 
    44 
    39 TARGET_HFILES = $(PREFIX)/include/canfestival/cancfg.h
    45 TARGET_SOFILES = $(PREFIX)/lib/$(DRIVER)
    40 
    46 
    41 all: driver
    47 all: driver
    42 
    48 
    43 driver: $(OBJS)
    49 driver: $(DRIVER)
    44 
    50 
    45 %o: %c
    51 %o: %c
    46 	$(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
    52 	$(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
    47 
    53 
    48 install:
    54 libcanfestival_$(CAN_DRIVER).so: $(OBJS)
    49 	mkdir -p $(PREFIX)/include/canfestival
    55 	gcc -shared -Wl,-soname,libcanfestival_$(CAN_DRIVER).so -o $@ $<
    50 	cp $(SRC_HFILES) $(PREFIX)/include/canfestival
       
    51 
    56 
       
    57 install: libcanfestival_$(CAN_DRIVER).so
       
    58 	mkdir -p $(PREFIX)/lib/
       
    59 	cp $@ $(PREFIX)/lib/
       
    60 	
    52 uninstall:
    61 uninstall:
    53 	rm -f $(TARGET_HFILES)
    62 	rm -f $(TARGET_HFILES)
    54 
    63 
    55 clean:
    64 clean:
    56 	rm -f $(OBJS)
    65 	rm -f $(OBJS)