* nfc: st25tb: rework async poller * nfc: st25tb: introduce sync poller * nfc: st25tb: add write support * nfc: st25tb: rewrite poller to use better states * nfc: st25tb: move to mode request state after success * nfc: st25tb: minor bug fixes * type wasn't properly set on ready event * sending NfcCustomEventPollerFailure on St25tbPollerEventTypeFailure caused poller to being freed and ultimately resulted in a thread crash Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
		
			
				
	
	
		
			63 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			63 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
Import("env")
 | 
						|
 | 
						|
env.Append(
 | 
						|
    CPPPATH=[
 | 
						|
        "#/lib/nfc",
 | 
						|
    ],
 | 
						|
    LINT_SOURCES=[
 | 
						|
        Dir("."),
 | 
						|
    ],
 | 
						|
    SDK_HEADERS=[
 | 
						|
        # Main
 | 
						|
        File("nfc.h"),
 | 
						|
        File("nfc_device.h"),
 | 
						|
        File("nfc_listener.h"),
 | 
						|
        File("nfc_poller.h"),
 | 
						|
        File("nfc_scanner.h"),
 | 
						|
        # Protocols
 | 
						|
        File("protocols/iso14443_3a/iso14443_3a.h"),
 | 
						|
        File("protocols/iso14443_3b/iso14443_3b.h"),
 | 
						|
        File("protocols/iso14443_4a/iso14443_4a.h"),
 | 
						|
        File("protocols/iso14443_4b/iso14443_4b.h"),
 | 
						|
        File("protocols/mf_ultralight/mf_ultralight.h"),
 | 
						|
        File("protocols/mf_classic/mf_classic.h"),
 | 
						|
        File("protocols/mf_desfire/mf_desfire.h"),
 | 
						|
        File("protocols/slix/slix.h"),
 | 
						|
        File("protocols/st25tb/st25tb.h"),
 | 
						|
        # Pollers
 | 
						|
        File("protocols/iso14443_3a/iso14443_3a_poller.h"),
 | 
						|
        File("protocols/iso14443_3b/iso14443_3b_poller.h"),
 | 
						|
        File("protocols/iso14443_4a/iso14443_4a_poller.h"),
 | 
						|
        File("protocols/iso14443_4b/iso14443_4b_poller.h"),
 | 
						|
        File("protocols/mf_ultralight/mf_ultralight_poller.h"),
 | 
						|
        File("protocols/mf_classic/mf_classic_poller.h"),
 | 
						|
        File("protocols/mf_desfire/mf_desfire_poller.h"),
 | 
						|
        File("protocols/st25tb/st25tb_poller.h"),
 | 
						|
        # Listeners
 | 
						|
        File("protocols/iso14443_3a/iso14443_3a_listener.h"),
 | 
						|
        File("protocols/iso14443_4a/iso14443_4a_listener.h"),
 | 
						|
        File("protocols/mf_ultralight/mf_ultralight_listener.h"),
 | 
						|
        File("protocols/mf_classic/mf_classic_listener.h"),
 | 
						|
        # Sync API
 | 
						|
        File("protocols/iso14443_3a/iso14443_3a_poller_sync.h"),
 | 
						|
        File("protocols/mf_ultralight/mf_ultralight_poller_sync.h"),
 | 
						|
        File("protocols/mf_classic/mf_classic_poller_sync.h"),
 | 
						|
        File("protocols/st25tb/st25tb_poller_sync.h"),
 | 
						|
        # Misc
 | 
						|
        File("helpers/nfc_util.h"),
 | 
						|
        File("helpers/iso14443_crc.h"),
 | 
						|
        File("helpers/iso13239_crc.h"),
 | 
						|
        File("helpers/nfc_data_generator.h"),
 | 
						|
        File("helpers/nfc_dict.h"),
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
libenv = env.Clone(FW_LIB_NAME="nfc")
 | 
						|
libenv.ApplyLibFlags()
 | 
						|
 | 
						|
sources = libenv.GlobRecursive("*.c*")
 | 
						|
 | 
						|
lib = libenv.StaticLibrary("${FW_LIB_NAME}", sources)
 | 
						|
libenv.Install("${LIB_DIST_DIR}", lib)
 | 
						|
Return("lib")
 |