Skip to content

Commit ce52a91

Browse files
authored
Merge pull request #147 from myriadrf/develop
Update 'stable' branch
2 parents cbcc0fd + 1a6171e commit ce52a91

230 files changed

Lines changed: 4506 additions & 2591 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.conda/build_config.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
local_build:
2+
- True

.conda/conda-forge.yml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# See https://conda-forge.org/docs/maintainer/conda_forge_yml.html for
2+
# documentation on possible keys and values.
3+
4+
# uncomment to enable cross-compiled builds
5+
#build_platform:
6+
# linux_aarch64: linux_64
7+
# linux_ppc64le: linux_64
8+
# osx_arm64: osx_64
9+
clone_depth: 0
10+
github_actions:
11+
cancel_in_progress: false
12+
store_build_artifacts: true
13+
os_version:
14+
linux_64: cos7
15+
provider:
16+
linux: github_actions
17+
osx: github_actions
18+
win: github_actions
19+
# uncomment to enable emulated builds for additional linux platforms
20+
#linux_aarch64: github_actions
21+
#linux_ppc64le: github_actions
22+
recipe_dir: .conda/recipe
23+
# skip unnecessary files since this is not a full-fledged conda-forge feedstock
24+
skip_render:
25+
- README.md
26+
- LICENSE.txt
27+
- .gitattributes
28+
- .gitignore
29+
- build-locally.py
30+
- LICENSE
31+
test: native_and_emulated
32+
# enable uploads to Anaconda Cloud from specified branches only
33+
upload_on_branch: main

.conda/recipe/bld.bat

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
setlocal EnableDelayedExpansion
2+
@echo on
3+
4+
:: Make a build folder and change to it
5+
cmake -E make_directory buildconda
6+
cd buildconda
7+
8+
:: configure
9+
cmake -G "Ninja" ^
10+
-DCMAKE_BUILD_TYPE=Release ^
11+
-DCMAKE_INSTALL_PREFIX="%LIBRARY_PREFIX%" ^
12+
-DCMAKE_PREFIX_PATH="%LIBRARY_PREFIX%" ^
13+
-DGR_PYTHON_DIR="%SP_DIR%" ^
14+
-DENABLE_DOXYGEN=OFF ^
15+
-DENABLE_TESTING=ON ^
16+
-DCMAKE_POLICY_VERSION_MINIMUM=3.15 ^
17+
-DINSTALL_DEVELOPMENT=ON ^
18+
-DBUILD_PLUGINS=OFF ^
19+
..
20+
if errorlevel 1 exit 1
21+
22+
:: build
23+
cmake --build . --config Release
24+
if errorlevel 1 exit 1
25+
26+
:: install
27+
cmake --install . --config Release
28+
if errorlevel 1 exit 1

.conda/recipe/build.sh

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
#!/usr/bin/env bash
2+
3+
set -ex
4+
5+
cmake -E make_directory buildconda
6+
cd buildconda
7+
8+
cmake_config_args=(
9+
-DCMAKE_BUILD_TYPE=Release
10+
-DCMAKE_INSTALL_PREFIX=$PREFIX
11+
-DCMAKE_PREFIX_PATH=$PREFIX
12+
-DGR_PYTHON_DIR=$SP_DIR
13+
-DLIB_SUFFIX=""
14+
-DENABLE_DOXYGEN=OFF
15+
-DENABLE_TESTING=ON
16+
-DCMAKE_POLICY_VERSION_MINIMUM=3.15
17+
-DINSTALL_DEVELOPMENT=ON
18+
-DBUILD_PLUGINS=OFF
19+
)
20+
21+
cmake ${CMAKE_ARGS} -G "Ninja" .. "${cmake_config_args[@]}"
22+
cmake --build . --config Release -- -j${CPU_COUNT}
23+
cmake --build . --config Release --target install
24+
25+
if [[ "${CONDA_BUILD_CROSS_COMPILATION:-}" != "1" || "${CROSSCOMPILING_EMULATOR}" != "" ]]; then
26+
ctest --build-config Release --output-on-failure --timeout 120 -j${CPU_COUNT}
27+
fi
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# this is the channel and label where packages will be uploaded to if enabled
2+
# (see ../README.md)
3+
channel_targets:
4+
- gnuradio main
5+
# override the conda-forge pin for gnuradio-core by uncommenting
6+
# and specifying a different version here
7+
#gnuradio_core:
8+
#- "3.10.1"
9+
gnuradio_extra_pin:
10+
# always leave one entry with the empty string
11+
- ""
12+
# add version strings here like to get builds for versions other than
13+
# the conda-forge-wide default or version specified above for gnuradio_core
14+
#- "3.9.5"

.conda/recipe/meta.yaml

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
package:
2+
name: limesuiteng
3+
version: 25.1.0
4+
5+
source:
6+
{% if local_build is defined %}
7+
path: ../..
8+
{% else %}
9+
git_url: {{ environ.get('FEEDSTOCK_ROOT', "../..") }}
10+
git_url: https://github.com/myriadrf/LimeSuiteNG.git
11+
{% endif %}
12+
13+
build:
14+
number: 0
15+
16+
requirements:
17+
build:
18+
- {{ compiler("c") }}
19+
- {{ compiler("cxx") }}
20+
- cmake
21+
- git
22+
- ninja
23+
- pkg-config
24+
- vs2022_win-64
25+
26+
test:
27+
commands:
28+
- if not exist %PREFIX%\\Library\\include\\lime\\LimeSuite.h exit 1
29+
- if not exist %PREFIX%\\Library\\include\\lime\\LMS7002M_parameters.h exit 1
30+
31+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\complex.h exit 1
32+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\config.h exit 1
33+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\CSRegister.h exit 1
34+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\DeviceHandle.h exit 1
35+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\DeviceRegistry.h exit 1
36+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\LimePlugin.h exit 1
37+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\limesuiteng.hpp exit 1
38+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\LMS7002M.h exit 1
39+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\LMS7002MCSR.h exit 1
40+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\Logger.h exit 1
41+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\OpStatus.h exit 1
42+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\Register.h exit 1
43+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\RFSOCDescriptor.h exit 1
44+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\RFStream.h exit 1
45+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\SDRConfig.h exit 1
46+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\SDRDescriptor.h exit 1
47+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\SDRDevice.h exit 1
48+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\StreamConfig.h exit 1
49+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\ToString.h exit 1
50+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\types.h exit 1
51+
- if not exist %PREFIX%\\Library\\include\\limesuiteng\\VersionInfo.h exit 1
52+
53+
- if not exist %PREFIX%\\Library\\bin\\limeConfig.exe exit 1
54+
- if not exist %PREFIX%\\Library\\bin\\limeDevice.exe exit 1
55+
- if not exist %PREFIX%\\Library\\bin\\limeFLASH.exe exit 1
56+
- if not exist %PREFIX%\\Library\\bin\\wxmsw32u_gl_vc14x_x64.dll exit 1
57+
- if not exist %PREFIX%\\Library\\bin\\wxmsw32u_core_vc14x_x64.dll exit 1
58+
- if not exist %PREFIX%\\Library\\bin\\wxbase32u_vc14x_x64.dll exit 1
59+
- if not exist %PREFIX%\\Library\\bin\\limeGUI.exe exit 1
60+
- if not exist %PREFIX%\\Library\\bin\\limeOEM.exe exit 1
61+
- if not exist %PREFIX%\\Library\\bin\\limeSPI.exe exit 1
62+
- if not exist %PREFIX%\\Library\\bin\\limeTRX.exe exit 1
63+
- if not exist %PREFIX%\\Library\\bin\\limesuiteng.dll exit 1
64+
65+
- if not exist %PREFIX%\\Library\\lib\\limesuiteng.lib exit 1
66+
- if not exist %PREFIX%\\Library\\lib\\limesuiteng-legacyapi.lib exit 1
67+
- if not exist %PREFIX%\\Library\\lib\\limesuiteng-legacyapi.dll exit 1
68+
- if not exist %PREFIX%\\Library\\lib\\pkgconfig\\limesuiteng.pc exit 1
69+
- if not exist %PREFIX%\\Library\\lib\\cmake\\limesuiteng\\limesuitengConfigVersion.cmake exit 1
70+
- if not exist %PREFIX%\\Library\\lib\\cmake\\limesuiteng\\limesuitengTargets.cmake exit 1
71+
- if not exist %PREFIX%\\Library\\lib\\cmake\\limesuiteng\\limesuitengTargets-release.cmake exit 1
72+
- if not exist %PREFIX%\\Library\\lib\\cmake\\limesuiteng\\limesuitengConfig.cmake exit 1
73+
74+
about:
75+
home: https://github.com/myriadrf/LimeSuiteNG
76+
license: Apache-2.0
77+
license_file: COPYING
78+
license_url: https://github.com/myriadrf/LimeSuiteNG?tab=Apache-2.0-1-ov-file#readme
79+
summary: Lime Suite NG is a new generation software suite designed for working with LimeSDR family devices.
80+
dev_url: https://github.com/myriadrf/LimeSuiteNG
81+
doc_url: https://limesuiteng.myriadrf.org/

.github/workflows/CondaPackage.yml

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
name: Conda package
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
branches: [ "develop" ]
7+
pull_request:
8+
9+
jobs:
10+
build:
11+
runs-on: windows-latest
12+
env:
13+
CENV: LimeSuiteNG-Pkg # Conda env name
14+
steps:
15+
- uses: actions/checkout@v4
16+
17+
- name: Set up and activate Conda environment
18+
uses: conda-incubator/setup-miniconda@v3
19+
with:
20+
activate-environment: ${{env.CENV}}
21+
channels: conda-forge
22+
python-version: 3.12
23+
24+
- name: Verify conda environment
25+
run: conda env list
26+
27+
- name: Install Conda build tools package
28+
run: |
29+
conda install conda-build conda-forge-pinning
30+
31+
- name: Detect VS path and set up VS C/C++ environment
32+
shell: cmd
33+
run: |
34+
for /f "delims=" %%i in ('vswhere -products * ^| findstr "installationPath: "') do set VS_INSTALL_DIR=%%i
35+
set "VS_INSTALL_DIR=%VS_INSTALL_DIR:installationPath: =%"
36+
call "%VS_INSTALL_DIR%\VC\Auxiliary\Build\vcvars64.bat"
37+
38+
- name: Building limesuiteng conda package
39+
run: |
40+
conda-build .conda\recipe\
41+
42+
- name: Detect full name of built limesuiteng package
43+
shell: cmd
44+
run: |
45+
set PKG_DIR="%CONDA%\envs\%CENV%\conda-bld\win-64"
46+
for /f "delims=" %%i in ('dir %PKG_DIR% ^| findstr "limesuiteng"') do set TMP_PKG_NAME=%%i
47+
set "TMP_PKG_NAME=%TMP_PKG_NAME:*limesuiteng=limesuiteng%"
48+
echo PKG_NAME=%TMP_PKG_NAME%>>"%GITHUB_ENV%"
49+
50+
- name: Install limesuiteng package localy
51+
run: |
52+
conda install ${{env.CONDA}}\envs\${{env.CENV}}\conda-bld\win-64\${{env.PKG_NAME}}
53+
54+
- name: Building gnuradio-limesuiteng conda package
55+
run: |
56+
cd plugins\gr-limesuiteng
57+
conda-build .conda\recipe\ -m %CONDA_PREFIX%\conda_build_config.yaml

.github/workflows/cmake.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
strategy:
2020
fail-fast: false
2121
matrix:
22-
os: [ubuntu-24.04, ubuntu-22.04, ubuntu-20.04]
22+
os: [ubuntu-24.04, ubuntu-22.04]
2323
compiler: [ {cpp: g++, c: gcc}, {cpp: clang++, c: clang} ]
2424

2525
steps:

.github/workflows/packaging.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,11 @@ name: Packaging
33
on:
44
workflow_dispatch:
55
pull_request:
6-
branches: [stable]
6+
branches: [stable, develop]
7+
push:
8+
paths:
9+
- 'debian/**'
10+
- '**.CMakeLists'
711

812
env:
913
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)

CMakeLists.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,9 @@ file(TO_CMAKE_PATH "${LIME_SUITE_ROOT}" LIME_SUITE_ROOT)
6161
set(CMAKE_CXX_STANDARD 17)
6262
set(CMAKE_CXX_STANDARD_REQUIRED ON)
6363

64+
# set(CMAKE_C_STANDARD 17)
65+
# set(CMAKE_C_STANDARD_REQUIRED ON)
66+
6467
#is this processor x86? set variable X86
6568
if(CMAKE_SYSTEM_PROCESSOR MATCHES "i686.*|i386.*|x86.*|amd64.*|AMD64.*")
6669
set(X86 TRUE)

0 commit comments

Comments
 (0)