* Added support for running applications from SD card (FAPs - Flipper Application Packages) * Added plugin_dist target for fbt to build FAPs * All apps of type FlipperAppType.EXTERNAL and FlipperAppType.PLUGIN are built as FAPs by default * Updated VSCode configuration for new fbt features - re-deploy stock configuration to use them * Added debugging support for FAPs with fbt debug & VSCode * Added public firmware API with automated versioning Co-authored-by: hedger <hedger@users.noreply.github.com> Co-authored-by: SG <who.just.the.doctor@gmail.com> Co-authored-by: あく <alleteam@gmail.com>
		
			
				
	
	
		
			73 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			73 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
Import("env")
 | 
						|
 | 
						|
env.Append(
 | 
						|
    CPPPATH=[
 | 
						|
        "#/lib/STM32CubeWB/Drivers/CMSIS/Device/ST/STM32WBxx/Include",
 | 
						|
        "#/lib/STM32CubeWB/Drivers/CMSIS/Include",
 | 
						|
        "#/lib/STM32CubeWB/Drivers/STM32WBxx_HAL_Driver/Inc",
 | 
						|
        "#/lib/STM32CubeWB/Middlewares/ST/STM32_WPAN",
 | 
						|
    ],
 | 
						|
    CPPDEFINES=[
 | 
						|
        "STM32WB",
 | 
						|
        "STM32WB55xx",
 | 
						|
        "USE_FULL_ASSERT",
 | 
						|
        "USE_FULL_LL_DRIVER",
 | 
						|
    ],
 | 
						|
    SDK_HEADERS=env.GlobRecursive(
 | 
						|
        "*_ll_*.h",
 | 
						|
        "#/lib/STM32CubeWB/Drivers/STM32WBxx_HAL_Driver/Inc/",
 | 
						|
        exclude="*usb.h",
 | 
						|
    ),
 | 
						|
)
 | 
						|
 | 
						|
if env["RAM_EXEC"]:
 | 
						|
    env.Append(
 | 
						|
        CPPDEFINES=[
 | 
						|
            "VECT_TAB_SRAM",
 | 
						|
        ],
 | 
						|
    )
 | 
						|
 | 
						|
 | 
						|
libenv = env.Clone(FW_LIB_NAME="stm32cubewb")
 | 
						|
libenv.Append(
 | 
						|
    CPPPATH=[
 | 
						|
        "#/lib/STM32CubeWB/Middlewares/ST/STM32_WPAN/ble",
 | 
						|
        "#/lib/STM32CubeWB/Middlewares/ST/STM32_WPAN/ble/core",
 | 
						|
        "#/lib/STM32CubeWB/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread",
 | 
						|
        "#/lib/STM32CubeWB/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/shci",
 | 
						|
        "#/lib/STM32CubeWB/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl",
 | 
						|
        "#/lib/STM32CubeWB/Middlewares/ST/STM32_WPAN/utilities",
 | 
						|
    ]
 | 
						|
)
 | 
						|
libenv.ApplyLibFlags()
 | 
						|
 | 
						|
sources = libenv.GlobRecursive(
 | 
						|
    "*_ll_*.c", "STM32CubeWB/Drivers/STM32WBxx_HAL_Driver/Src/", exclude="*usb.c"
 | 
						|
)
 | 
						|
sources += Glob(
 | 
						|
    "STM32CubeWB/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/shci/*.c",
 | 
						|
    source=True,
 | 
						|
)
 | 
						|
sources += Glob(
 | 
						|
    "STM32CubeWB/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl/*_tl*.c",
 | 
						|
    source=True,
 | 
						|
)
 | 
						|
sources += [
 | 
						|
    "STM32CubeWB/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl/tl_mbox.c",
 | 
						|
    "STM32CubeWB/Middlewares/ST/STM32_WPAN/ble/svc/Src/svc_ctl.c",
 | 
						|
    "STM32CubeWB/Middlewares/ST/STM32_WPAN/ble/core/auto/ble_gap_aci.c",
 | 
						|
    "STM32CubeWB/Middlewares/ST/STM32_WPAN/ble/core/auto/ble_gatt_aci.c",
 | 
						|
    "STM32CubeWB/Middlewares/ST/STM32_WPAN/ble/core/auto/ble_hal_aci.c",
 | 
						|
    "STM32CubeWB/Middlewares/ST/STM32_WPAN/ble/core/auto/ble_hci_le.c",
 | 
						|
    "STM32CubeWB/Middlewares/ST/STM32_WPAN/ble/core/auto/ble_l2cap_aci.c",
 | 
						|
    "STM32CubeWB/Middlewares/ST/STM32_WPAN/ble/core/template/osal.c",
 | 
						|
    "STM32CubeWB/Middlewares/ST/STM32_WPAN/utilities/dbg_trace.c",
 | 
						|
    "STM32CubeWB/Middlewares/ST/STM32_WPAN/utilities/otp.c",
 | 
						|
    "STM32CubeWB/Middlewares/ST/STM32_WPAN/utilities/stm_list.c",
 | 
						|
]
 | 
						|
 | 
						|
 | 
						|
lib = libenv.StaticLibrary("${FW_LIB_NAME}", sources)
 | 
						|
libenv.Install("${LIB_DIST_DIR}", lib)
 | 
						|
Return("lib")
 |