Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
21734b9
ADC: genalyzer: initial implementation
andrei47w Oct 1, 2025
80a6639
ADC: genalyzer: add GUI for analysis
andrei47w Oct 1, 2025
50875aa
ADC: genalyzer: fix memory leaks
andrei47w Oct 3, 2025
2f67be9
ADC: genalyzer: add mutex for multiple fft calls
andrei47w Oct 3, 2025
e25b11d
ADC: genalyzer: rework fft magnitude conversion and use genalyzer blocks
andrei47w Oct 3, 2025
5922164
ADC: genalyzer: implement appimage CI
andrei47w Oct 17, 2025
c8ea839
ADC: genalyzer: replace gnuradio averaging with genalyzer avg
andrei47w Oct 23, 2025
73827d2
ADC: genalyzer: fix windows and window correction
andrei47w Oct 28, 2025
443c30f
ADC: genalyzer: cleanup code
andrei47w Oct 29, 2025
d3377ce
ADC: genalyzer: arm32 appimage CI
andrei47w Oct 29, 2025
1d81a41
force arm CI
andrei47w Nov 4, 2025
57ffebe
force arm build
andrei47w Oct 30, 2025
15ddf80
ADC: genalyzer: windows CI
andrei47w Oct 30, 2025
15d4604
force build windows
andrei47w Oct 30, 2025
1c9fa56
ADC: genalyzer: flatpak CI
andrei47w Oct 31, 2025
d88b268
tmp flatpak branch change
andrei47w Nov 3, 2025
b8c522e
tmp force docker builds
andrei47w Nov 3, 2025
93bead0
ADC: genalyzer: macos CI
andrei47w Nov 3, 2025
96ad02a
ADC: genalyzer: fix license headers
andrei47w Oct 30, 2025
baeff3a
ADC: genalyzer: fix scrollbar
andrei47w Oct 30, 2025
7253847
ADC: genalyzer: optimize genalyzer config
andrei47w Oct 30, 2025
dc127cb
ADC: gr-util: cmake format
andrei47w Nov 3, 2025
38cde26
ADC: genalyzer: fix panel update on ch enable
andrei47w Nov 3, 2025
1b98496
ADC: fix fft complex mode time axis
andrei47w Nov 11, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions ci/arm/arm_build_config.sh
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ IIOEMU_BRANCH=main
KDDOCK_BRANCH=2.1
ECM_BRANCH=kf5
KARCHIVE_BRANCH=kf5
GENALYZER_BRANCH=v0.1.2

export APPIMAGE=1

Expand Down
35 changes: 20 additions & 15 deletions ci/arm/arm_build_process.sh
Original file line number Diff line number Diff line change
Expand Up @@ -111,21 +111,7 @@ clone() {
echo "#######CLONE#######"
mkdir -p $STAGING_AREA
pushd $STAGING_AREA
[ -d 'libserialport' ] || git clone --recursive https://github.com/sigrokproject/libserialport -b $LIBSERIALPORT_BRANCH libserialport
[ -d 'libiio' ] || git clone --recursive https://github.com/analogdevicesinc/libiio.git -b $LIBIIO_VERSION libiio
[ -d 'libad9361' ] || git clone --recursive https://github.com/analogdevicesinc/libad9361-iio.git -b $LIBAD9361_BRANCH libad9361
[ -d 'libm2k' ] || git clone --recursive https://github.com/analogdevicesinc/libm2k.git -b $LIBM2K_BRANCH libm2k
[ -d 'spdlog' ] || git clone --recursive https://github.com/gabime/spdlog.git -b $SPDLOG_BRANCH spdlog
[ -d 'gr-scopy' ] || git clone --recursive https://github.com/analogdevicesinc/gr-scopy.git -b $GRSCOPY_BRANCH gr-scopy
[ -d 'gr-m2k' ] || git clone --recursive https://github.com/analogdevicesinc/gr-m2k.git -b $GRM2K_BRANCH gr-m2k
[ -d 'volk' ] || git clone --recursive https://github.com/gnuradio/volk.git -b $VOLK_BRANCH volk
[ -d 'gnuradio' ] || git clone --recursive https://github.com/analogdevicesinc/gnuradio.git -b $GNURADIO_BRANCH gnuradio
[ -d 'qwt' ] || git clone --recursive https://github.com/cseci/qwt.git -b $QWT_BRANCH qwt
[ -d 'libsigrokdecode' ] || git clone --recursive https://github.com/sigrokproject/libsigrokdecode.git -b $LIBSIGROKDECODE_BRANCH libsigrokdecode
[ -d 'libtinyiiod' ] || git clone --recursive https://github.com/analogdevicesinc/libtinyiiod.git -b $LIBTINYIIOD_BRANCH libtinyiiod
[ -d 'KDDockWidgets' ] || git clone --recursive https://github.com/KDAB/KDDockWidgets.git -b $KDDOCK_BRANCH KDDockWidgets
[ -d 'extra-cmake-modules' ] || git clone --recursive https://github.com/KDE/extra-cmake-modules.git -b $ECM_BRANCH extra-cmake-modules
[ -d 'karchive' ] || git clone --recursive https://github.com/KDE/karchive.git -b $KARCHIVE_BRANCH karchive
[ -d 'genalyzer' ] || git clone --recursive https://github.com/analogdevicesinc/genalyzer.git -b $GENALYZER_BRANCH genalyzer
popd
}

Expand Down Expand Up @@ -325,6 +311,18 @@ build_karchive () {
popd
}

build_genalyzer() {
echo "### Building genalyzer - branch $GENALYZER_BRANCH"
pushd $STAGING_AREA/genalyzer
CURRENT_BUILD_CMAKE_OPTS="\
-DBUILD_TESTING=OFF \
-DBUILD_SHARED_LIBS=ON \
"
build_with_cmake
sudo make install
popd
}

build_iio-emu(){
echo "### Building iio-emu - branch $IIOEMU_BRANCH"
pushd $STAGING_AREA
Expand All @@ -338,6 +336,9 @@ build_iio-emu(){
}

build_scopy() {
clone
build_genalyzer

echo "### Building scopy"
[ -f /home/runner/build-status ] && cp /home/runner/build-status $SRC_DIR/build-status
pushd $SRC_DIR
Expand Down Expand Up @@ -391,6 +392,7 @@ create_appdir(){
cp -r $python_path $APP_DIR/usr/lib

cp -r $SYSROOT/share/libsigrokdecode/decoders $APP_DIR/usr/lib
cp $SYSROOT/lib/libgenalyzer.so* $APP_DIR/usr/lib

cp $QT_LOCATION/lib/libQt5XcbQpa.so* $APP_DIR/usr/lib
cp $QT_LOCATION/lib/libQt5EglFSDeviceIntegration.so* $APP_DIR/usr/lib
Expand Down Expand Up @@ -466,12 +468,15 @@ build_deps(){
build_kddock
build_ecm
build_karchive
build_genalyzer
}

run_workflow(){
install_packages
move_tools
move_sysroot
clone
build_genalyzer
build_iio-emu
build_scopy
create_appdir
Expand Down
17 changes: 17 additions & 0 deletions ci/flatpak/org.adi.Scopy.json.c
Original file line number Diff line number Diff line change
Expand Up @@ -530,6 +530,23 @@
}
]
},
{
"name": "genalyzer",
"builddir": true,
"buildsystem": "cmake",
"config-opts": [
"-DCMAKE_INSTALL_PREFIX:PATH=/app",
"-DBUILD_TESTING=OFF",
"-DBUILD_SHARED_LIBS=ON"
],
"sources": [
{
"type": "git",
"url": "https://github.com/andrei47w/genalyzer.git",
"branch": "main"
}
]
},
{
"name": "iio-emu",
"builddir": true,
Expand Down
18 changes: 17 additions & 1 deletion ci/macOS/install_macos_deps.sh
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,7 @@ clone() {
git clone --recursive https://github.com/KDAB/KDDockWidgets.git -b $KDDOCK_BRANCH KDDockWidgets
git clone --recursive https://github.com/KDE/extra-cmake-modules.git -b $ECM_BRANCH extra-cmake-modules
git clone --recursive https://github.com/KDE/karchive.git -b $KARCHIVE_BRANCH karchive
git clone --recursive https://github.com/andrei47w/genalyzer.git -b $GENALYZER_BRANCH genalyzer
popd
}

Expand Down Expand Up @@ -341,6 +342,20 @@ build_karchive () {
popd
}

build_genalyzer() {
echo "### Building genalyzer - branch $GENALYZER_BRANCH"
CURRENT_BUILD=genalyzer
pushd $STAGING_AREA/genalyzer
save_version_info
CURRENT_BUILD_CMAKE_OPTS="\
-DBUILD_TESTING=OFF \
-DBUILD_SHARED_LIBS=ON \
"
build_with_cmake
make install
popd
}

build_deps(){
build_libserialport
build_libiio
Expand All @@ -354,7 +369,8 @@ build_deps(){
build_libtinyiiod
build_kddock
build_ecm
build_karchive
build_karchive
build_genalyzer
}

install_packages
Expand Down
3 changes: 2 additions & 1 deletion ci/macOS/macos_config.sh
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,5 @@ LIBSIGROKDECODE_BRANCH=master
LIBTINYIIOD_BRANCH=master
KDDOCK_BRANCH=2.1
ECM_BRANCH=kf5
KARCHIVE_BRANCH=kf5
KARCHIVE_BRANCH=kf5
GENALYZER_BRANCH=main
13 changes: 11 additions & 2 deletions ci/macOS/package_darwin.sh
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,9 @@ SCOPYPLUGINS=$(find $BUILDDIR/Scopy.app/Contents/MacOS/packages -name "*.dylib"
SCOPYLIBS=$(find $BUILDDIR/Scopy.app/Contents/Frameworks -name "*.dylib" -type f)

echo "### Copy DLLs to Frameworks folder"
cp -R $STAGING_AREA_DEPS/lib/iio.framework Scopy.app/Contents/Frameworks/
cp -R $STAGING_AREA_DEPS/lib/ad9361.framework Scopy.app/Contents/Frameworks/
cp -avR $STAGING_AREA_DEPS/lib/iio.framework Scopy.app/Contents/Frameworks/
cp -avR $STAGING_AREA_DEPS/lib/ad9361.framework Scopy.app/Contents/Frameworks/
cp -avR $STAGING_AREA_DEPS/lib/genalyzer.framework Scopy.app/Contents/Frameworks/
mkdir -p $BUILDDIR/Scopy.app/Contents/MacOS/plugins/resources
cp -R $BUILDDIR/translations $BUILDDIR/Scopy.app/Contents/MacOS

Expand Down Expand Up @@ -68,6 +69,13 @@ do
--search-path $BUILDDIR/Scopy.app/Contents/Frameworks/
done

echo "### Fixing Genalyzer"
echo $STAGING_AREA_DEPS/lib | dylibbundler --no-codesign --overwrite-files --bundle-deps --create-dir \
--fix-file $BUILDDIR/Scopy.app/Contents/Frameworks/genalyzer.framework/genalyzer \
--dest-dir $BUILDDIR/Scopy.app/Contents/Frameworks/ \
--install-path @executable_path/../Frameworks/ \
--search-path $BUILDDIR/Scopy.app/Contents/Frameworks/


echo "### Fixing Scopy binary"
echo $STAGING_AREA_DEPS/lib | dylibbundler -ns -of -b \
Expand All @@ -76,6 +84,7 @@ echo $STAGING_AREA_DEPS/lib | dylibbundler -ns -of -b \
-p @executable_path/../Frameworks \
-s $BUILDDIR/Scopy.app/Contents/Frameworks


echo "### Fixing the frameworks dylibbundler failed to copy"
echo "=== Fixing iio.framework"
install_name_tool -id @executable_path/../Frameworks/${iioid} ./Scopy.app/Contents/Frameworks/iio.framework/iio
Expand Down
19 changes: 18 additions & 1 deletion ci/ubuntu/ubuntu_build_process.sh
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ IIOEMU_BRANCH=main
KDDOCK_BRANCH=2.1
ECM_BRANCH=kf5
KARCHIVE_BRANCH=kf5
GENALYZER_BRANCH=v0.1.2

QT=/opt/Qt/5.15.2/gcc_64
QMAKE_BIN=$QT/bin/qmake
Expand Down Expand Up @@ -54,7 +55,7 @@ if [ "$USE_STAGING" == "ON" ]
STAGING_AREA_DEPS=/usr/local
export LD_LIBRARY_PATH=$QT/lib:$LD_LIBRARY_PATH:
CMAKE_OPTS=(\
-DCMAKE_PREFIX_PATH=$QT \
-DCMAKE_PREFIX_PATH=$QT\;$STAGING_AREA_DEPS \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DCMAKE_INSTALL_PREFIX=$STAGING_AREA_DEPS \
Expand Down Expand Up @@ -87,6 +88,7 @@ clone() {
[ -d 'KDDockWidgets' ] || git clone --recursive https://github.com/KDAB/KDDockWidgets.git -b $KDDOCK_BRANCH KDDockWidgets
[ -d 'extra-cmake-modules' ] || git clone --recursive https://github.com/KDE/extra-cmake-modules.git -b $ECM_BRANCH extra-cmake-modules
[ -d 'karchive' ] || git clone --recursive https://github.com/KDE/karchive.git -b $KARCHIVE_BRANCH karchive
[ -d 'genalyzer' ] || git clone --recursive https://github.com/analogdevicesinc/genalyzer.git -b $GENALYZER_BRANCH genalyzer
popd
}

Expand Down Expand Up @@ -320,6 +322,17 @@ build_karchive () {
popd
}

build_genalyzer() {
echo "### Building genalyzer - branch $GENALYZER_BRANCH"
pushd $STAGING_AREA/genalyzer
CURRENT_BUILD_CMAKE_OPTS="\
-DBUILD_TESTING=OFF \
-DBUILD_SHARED_LIBS=ON \
"
build_with_cmake $1
popd
}

build_iio-emu() {
echo "### Building iio-emu - branch $IIOEMU_BRANCH"
pushd $STAGING_AREA/iio-emu
Expand Down Expand Up @@ -360,6 +373,7 @@ build_deps(){
build_kddock ON
build_ecm ON
build_karchive ON
build_genalyzer ON
build_iio-emu ON
}

Expand All @@ -369,6 +383,9 @@ configure_system(){
build_deps
}

clone
build_genalyzer

for arg in $@; do
$arg
done
10 changes: 10 additions & 0 deletions ci/windows/build_and_create_installer.sh
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,13 @@ deploy_app(){
cp -nv iio_*.exe $DEST_FOLDER/
popd

# Copy genalyzer DLL
if [ "$USE_STAGING" == "ON" ]; then
cp -v $STAGING_DIR/bin/libgenalyzer.dll $DEST_FOLDER/ || echo "Warning: genalyzer DLL not found in staging"
else
cp -v /$MINGW_VERSION/bin/libgenalyzer.dll $DEST_FOLDER/ || echo "Warning: genalyzer DLL not found in system"
fi

cp -r $PYTHON_FILES $DEST_FOLDER
cp $BUILD_FOLDER/windows/scopy-$ARCH_BIT.iss $DEST_FOLDER

Expand Down Expand Up @@ -187,13 +194,16 @@ move_tools(){

run_workflow(){
[ "$CI_SCRIPT" == "ON" ] && move_tools || download_tools
$SCRIPT_DIR/windows_build_process.sh

build_scopy
build_iio-emu
deploy_app
extract_debug_symbols
create_installer
}


for arg in $@; do
$arg
done
2 changes: 1 addition & 1 deletion ci/windows/mingw_dll_deps
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ DLL_DEPS=(
tinyiiod.dll
libm2k.dll
libvolk.dll
libfftw3f*.dll
libfftw3*.dll
Qt5Widgets.dll
libicudt*.dll
libffi-*.dll
Expand Down
3 changes: 2 additions & 1 deletion ci/windows/mingw_toolchain.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ LIBTINYIIOD_BRANCH=v0.1
KDDOCK_BRANCH=2.1
ECM_BRANCH=kf5
KARCHIVE_BRANCH=kf5
GENALYZER_BRANCH=main

STAGING_AREA=$WORKFOLDER/staging
MINGW_VERSION=mingw64
Expand Down Expand Up @@ -61,7 +62,7 @@ export CMAKE_OPTS=( \
-DCMAKE_MAKE_PROGRAM:FILEPATH=${MAKE_BIN}\
-DPKG_CONFIG_EXECUTABLE=${STAGING_DIR}/bin/pkg-config.exe \
-DCMAKE_MODULE_PATH=$STAGING_DIR \
-DCMAKE_PREFIX_PATH=$STAGING_DIR/lib/cmake \
-DCMAKE_PREFIX_PATH=$STAGING_DIR\;$STAGING_DIR/lib/cmake \
-DCMAKE_STAGING_PREFIX=$STAGING_DIR \
-DCMAKE_INSTALL_PREFIX=$STAGING_DIR \
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
Expand Down
15 changes: 14 additions & 1 deletion ci/windows/windows_build_process.sh
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,7 @@ clone() {
[ -d 'KDDockWidgets' ] || git clone --recursive https://github.com/KDAB/KDDockWidgets.git -b $KDDOCK_BRANCH KDDockWidgets
[ -d 'extra-cmake-modules' ] || git clone --recursive https://github.com/KDE/extra-cmake-modules.git -b $ECM_BRANCH extra-cmake-modules
[ -d 'karchive' ] || git clone --recursive https://github.com/KDE/karchive.git -b $KARCHIVE_BRANCH karchive
[ -d 'genalyzer' ] || git clone --recursive https://github.com/andrei47w/genalyzer.git -b $GENALYZER_BRANCH genalyzer
popd
}

Expand Down Expand Up @@ -383,6 +384,16 @@ build_karchive () {
build_with_cmake $1
}

build_genalyzer() {
echo "### Building genalyzer - branch $GENALYZER_BRANCH"
CURRENT_BUILD=genalyzer
CURRENT_BUILD_CMAKE_OPTS="\
-DBUILD_TESTING=OFF \
-DBUILD_SHARED_LIBS=ON \
"
build_with_cmake $1
}

#
# Helper functions
#
Expand All @@ -407,11 +418,13 @@ build_deps() {
build_kddock ON
build_ecm ON
build_karchive ON
build_genalyzer ON
}

clone
build_genalyzer

for arg in $@; do
$arg
done

build_deps
Loading
Loading