Enforce ISO C conformance about empty files.
ISO C forbids empty source files. Instead of compiling possibly empty source files depending on the compiler parameters, only compile required files to build the library as requested at the ./configure stage. Windows users (and more precisely non-autotools users), you may have to update whatever you use to build the libnfc to fit your needs. The Makefile shipped in the windows directory compiles all drivers as it is written so you should not notice any difference, but if you don't use _that_ makefile, then you will have to do some adjustment. For now, keep the defines in CFLAGS just in case. Planned for removal in circa one week. While here, pet `./configure` output (--help format and summary).
This commit is contained in:
parent
bb06d45a05
commit
cd53efb038
9 changed files with 61 additions and 22 deletions
|
@ -132,3 +132,5 @@ AC_CONFIG_FILES([
|
|||
])
|
||||
|
||||
AC_OUTPUT
|
||||
|
||||
LIBNFC_DRIVERS_SUMMARY
|
||||
|
|
|
@ -3,16 +3,39 @@ INCLUDES= $(all_includes) $(LIBNFC_CFLAGS)
|
|||
|
||||
noinst_HEADERS = acr122.h arygon.h pn531_usb.h pn532_uart.h pn533_usb.h pn53x_usb.h
|
||||
noinst_LTLIBRARIES = libnfcdrivers.la
|
||||
libnfcdrivers_la_SOURCES = acr122.c arygon.c pn531_usb.c pn532_uart.c pn533_usb.c pn53x_usb.c
|
||||
|
||||
libnfcdrivers_la_SOURCES =
|
||||
libnfcdrivers_la_CFLAGS = @DRIVERS_CFLAGS@ -I$(top_srcdir)/libnfc -I$(top_srcdir)/libnfc/buses
|
||||
libnfcdrivers_la_LIBADD =
|
||||
|
||||
if DRIVER_ACR122_ENABLED
|
||||
libnfcdrivers_la_SOURCES += acr122.c
|
||||
endif
|
||||
|
||||
if DRIVER_ARYGON_ENABLED
|
||||
libnfcdrivers_la_SOURCES += arygon.c
|
||||
endif
|
||||
|
||||
if DRIVER_PN531_USB_ENABLED
|
||||
libnfcdrivers_la_SOURCES += pn531_usb.c
|
||||
endif
|
||||
|
||||
if DRIVER_PN533_USB_ENABLED
|
||||
libnfcdrivers_la_SOURCES += pn533_usb.c
|
||||
endif
|
||||
|
||||
|
||||
if DRIVER_PN532_UART_ENABLED
|
||||
libnfcdrivers_la_SOURCES += pn532_uart.c
|
||||
endif
|
||||
|
||||
if PCSC_ENABLED
|
||||
libnfcdrivers_la_CFLAGS += @libpcsclite_CFLAGS@
|
||||
libnfcdrivers_la_LIBADD += @libpcsclite_LIBS@
|
||||
endif
|
||||
|
||||
if LIBUSB_ENABLED
|
||||
libnfcdrivers_la_SOURCES += pn53x_usb.c
|
||||
libnfcdrivers_la_CFLAGS += @libusb_CFLAGS@
|
||||
libnfcdrivers_la_LIBADD += @libusb_LIBS@
|
||||
endif
|
||||
|
|
|
@ -22,8 +22,6 @@
|
|||
* @brief Driver for ACR122 devices (e.g. Tikitag, Touchatag, ACS ACR122)
|
||||
*/
|
||||
|
||||
#ifdef DRIVER_ACR122_ENABLED
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif // HAVE_CONFIG_H
|
||||
|
@ -360,5 +358,3 @@ bool acr122_led_red(const nfc_device_spec_t nds, bool bOn)
|
|||
}
|
||||
}
|
||||
|
||||
#endif // DRIVER_ACR122_ENABLED
|
||||
|
||||
|
|
|
@ -25,8 +25,6 @@
|
|||
* UART connection can be direct (host<->arygon_uc) or could be provided by internal USB to serial interface (e.g. host<->ftdi_chip<->arygon_uc)
|
||||
*/
|
||||
|
||||
#ifdef DRIVER_ARYGON_ENABLED
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif // HAVE_CONFIG_H
|
||||
|
@ -331,5 +329,3 @@ arygon_check_communication(const nfc_device_spec_t nds)
|
|||
return true;
|
||||
}
|
||||
|
||||
#endif // DRIVER_ARYGON_ENABLED
|
||||
|
||||
|
|
|
@ -26,8 +26,6 @@
|
|||
Thanks to d18c7db and Okko for example code
|
||||
*/
|
||||
|
||||
#ifdef DRIVER_PN531_USB_ENABLED
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif // HAVE_CONFIG_H
|
||||
|
@ -73,5 +71,3 @@ nfc_device_t* pn531_usb_connect(const nfc_device_desc_t* pndd)
|
|||
return pn53x_usb_connect(pndd, pndd->acDevice, NC_PN531);
|
||||
}
|
||||
|
||||
#endif // DRIVER_PN531_USB_ENABLED
|
||||
|
||||
|
|
|
@ -22,8 +22,6 @@
|
|||
* @brief PN532 driver using UART bus (UART, RS232, etc.)
|
||||
*/
|
||||
|
||||
#ifdef DRIVER_PN532_UART_ENABLED
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif // HAVE_CONFIG_H
|
||||
|
@ -339,5 +337,3 @@ pn532_uart_check_communication(const nfc_device_spec_t nds)
|
|||
return true;
|
||||
}
|
||||
|
||||
#endif // DRIVER_PN532_UART_ENABLED
|
||||
|
||||
|
|
|
@ -26,8 +26,6 @@
|
|||
Thanks to d18c7db and Okko for example code
|
||||
*/
|
||||
|
||||
#ifdef DRIVER_PN533_USB_ENABLED
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif // HAVE_CONFIG_H
|
||||
|
@ -71,5 +69,3 @@ nfc_device_t* pn533_usb_connect(const nfc_device_desc_t* pndd)
|
|||
return pn53x_usb_connect(pndd, pndd->acDevice, NC_PN533);
|
||||
}
|
||||
|
||||
#endif // DRIVER_PN533_USB_ENABLED
|
||||
|
||||
|
|
|
@ -282,6 +282,12 @@ bool pn53x_usb_transceive(const nfc_device_spec_t nds, const byte_t* pbtTx, cons
|
|||
PRINT_HEX("RX", abtRx,ret);
|
||||
#endif
|
||||
|
||||
uint8_t ack_frame[] = { 0x00, 0x00, 0xff, 0x00, 0xff, 0x00 };
|
||||
if ((ret != 6) || (memcmp (abtRx, ack_frame, 6))) {
|
||||
DBG ("%s", "===> No ACK!!!!!!");
|
||||
return false;
|
||||
}
|
||||
|
||||
if( ret == 6 )
|
||||
{
|
||||
ret = usb_bulk_read(pus->pudh, pus->uiEndPointIn, (char*)abtRx, BUFFER_LENGTH, USB_TIMEOUT);
|
||||
|
@ -296,6 +302,8 @@ bool pn53x_usb_transceive(const nfc_device_spec_t nds, const byte_t* pbtTx, cons
|
|||
#endif
|
||||
}
|
||||
|
||||
usb_bulk_write(pus->pudh, pus->uiEndPointOut, (char *)ack_frame, 6, USB_TIMEOUT);
|
||||
|
||||
// When the answer should be ignored, just return a succesful result
|
||||
if(pbtRx == NULL || pszRxLen == NULL) return true;
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@ AC_DEFUN([LIBNFC_ARG_WITH_DRIVERS],
|
|||
[
|
||||
AC_MSG_CHECKING(which drivers to build)
|
||||
AC_ARG_WITH(drivers,
|
||||
AC_HELP_STRING([[[[--with-drivers=driver@<:@,driver...@:>@]]]], [Only use specific drivers (default set)]),
|
||||
AC_HELP_STRING([[[--with-drivers=driver@<:@,driver...@:>@]]], [Only use specific drivers (default set)]),
|
||||
[ case "${withval}" in
|
||||
yes | no)
|
||||
dnl ignore calls without any arguments
|
||||
|
@ -34,25 +34,36 @@ AC_DEFUN([LIBNFC_ARG_WITH_DRIVERS],
|
|||
|
||||
DRIVERS_CFLAGS=""
|
||||
|
||||
driver_acr122_enabled="no"
|
||||
driver_pn531_usb_enabled="no"
|
||||
driver_pn533_usb_enabled="no"
|
||||
driver_arygon_enabled="no"
|
||||
driver_pn532_uart_enabled="no"
|
||||
|
||||
for driver in ${DRIVER_BUILD_LIST}
|
||||
do
|
||||
case "${driver}" in
|
||||
acr122)
|
||||
pcsc_required="yes"
|
||||
driver_acr122_enabled="yes"
|
||||
DRIVERS_CFLAGS="$DRIVERS_CFLAGS -DDRIVER_ACR122_ENABLED"
|
||||
;;
|
||||
pn531_usb)
|
||||
libusb_required="yes"
|
||||
driver_pn531_usb_enabled="yes"
|
||||
DRIVERS_CFLAGS="$DRIVERS_CFLAGS -DDRIVER_PN531_USB_ENABLED"
|
||||
;;
|
||||
pn533_usb)
|
||||
libusb_required="yes"
|
||||
driver_pn533_usb_enabled="yes"
|
||||
DRIVERS_CFLAGS="$DRIVERS_CFLAGS -DDRIVER_PN533_USB_ENABLED"
|
||||
;;
|
||||
arygon)
|
||||
driver_arygon_enabled="yes"
|
||||
DRIVERS_CFLAGS="$DRIVERS_CFLAGS -DDRIVER_ARYGON_ENABLED"
|
||||
;;
|
||||
pn532_uart)
|
||||
driver_pn532_uart_enabled="yes"
|
||||
DRIVERS_CFLAGS="$DRIVERS_CFLAGS -DDRIVER_PN532_UART_ENABLED"
|
||||
;;
|
||||
*)
|
||||
|
@ -61,4 +72,19 @@ AC_DEFUN([LIBNFC_ARG_WITH_DRIVERS],
|
|||
esac
|
||||
done
|
||||
AC_SUBST(DRIVERS_CFLAGS)
|
||||
AM_CONDITIONAL(DRIVER_ACR122_ENABLED, [test x"$driver_acr122_enabled" = xyes])
|
||||
AM_CONDITIONAL(DRIVER_PN531_USB_ENABLED, [test x"$driver_pn531_usb_enabled" = xyes])
|
||||
AM_CONDITIONAL(DRIVER_PN533_USB_ENABLED, [test x"$driver_pn533_usb_enabled" = xyes])
|
||||
AM_CONDITIONAL(DRIVER_ARYGON_ENABLED, [test x"$driver_arygon_enabled" = xyes])
|
||||
AM_CONDITIONAL(DRIVER_PN532_UART_ENABLED, [test x"$driver_pn532_uart_enabled" = xyes])
|
||||
])
|
||||
|
||||
AC_DEFUN([LIBNFC_DRIVERS_SUMMARY],[
|
||||
echo
|
||||
echo "Selected drivers:"
|
||||
echo " acr122........... $driver_acr122_enabled"
|
||||
echo " arygon........... $driver_arygon_enabled"
|
||||
echo " pn531_usb........ $driver_pn531_usb_enabled"
|
||||
echo " pn532_uart....... $driver_pn532_uart_enabled"
|
||||
echo " pn533_usb........ $driver_pn533_usb_enabled"
|
||||
])
|
||||
|
|
Loading…
Reference in a new issue