bsdl: extract parser into standalone libbsdl, pulled via FetchContent

The BSDL loader (seeded from the Viveris parser) now lives in its own
LGPL repo, electronics/libbsdl, consumed with CMake FetchContent.
Local development override: -DFETCHCONTENT_SOURCE_DIR_BSDL=<path>.
src/modules/bsdl_parser/ is removed; callers go through the libbsdl
API. Build verified against the libbsdl checkout.
This commit is contained in:
2026-06-13 00:10:02 +02:00
parent 43d291418b
commit 2752c3404b
19 changed files with 154 additions and 1897 deletions

View File

@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.10)
cmake_minimum_required(VERSION 3.14)
project(BoundaryScanExplorer)
@@ -6,6 +6,19 @@ project(BoundaryScanExplorer)
# build/src/bs/ where the source tree would otherwise mirror it.
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
# ---- libbsdl (BSDL parser, extracted from this repo and now standalone) ----
# Pulled via FetchContent from the canonical Gitea URL. For a local checkout,
# set -DFETCHCONTENT_SOURCE_DIR_BSDL=/path/to/libbsdl at configure time
# (built-in FetchContent override — no clone happens).
include(FetchContent)
set(BSDL_BUILD_CLI OFF CACHE BOOL "" FORCE)
set(BSDL_BUILD_TESTS OFF CACHE BOOL "" FORCE)
FetchContent_Declare(bsdl
GIT_REPOSITORY ssh://gitea@git.beafrancois.fr:8329/electronics/libbsdl.git
GIT_TAG main
)
FetchContent_MakeAvailable(bsdl)
# Digilent JTAG-SMT* backend. The driver dlopen's libdjtg/libdmgr at
# runtime and degrades to "no probe" if they're absent, so building it
# in costs nothing — default ON. Needs <dlfcn.h>, so UNIX only.