Page MenuHomeSolus

Initial inclusion of gnuradio
ClosedPublic

Authored by VValterKing on Jun 30 2020, 5:10 PM.

Details

Summary

Resolves T5589, Depends on D10458

Test Plan

I created a functioning version of a gnuradio build file (package.yml), which builds most of its modules (2 are missing).

Diff Detail

Repository
R5165 gnuradio
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

VValterKing created this revision.Jun 30 2020, 5:10 PM
VValterKing requested review of this revision.Jun 30 2020, 5:10 PM
JoshStrobl retitled this revision from Building files for gnuradio T5589 to Initial inclusion of gnuradio.Jul 8 2020, 3:44 PM
JoshStrobl edited the summary of this revision. (Show Details)
JoshStrobl requested changes to this revision.Jul 8 2020, 3:47 PM
JoshStrobl added a subscriber: JoshStrobl.

This package does not appear to have been generated using our generating a package.yml script per this documentation, the spacing is completely off.

package.yml
12

Your builddeps need to be ordered by pkgconfigs first, followed by alphabetical static deps. Additionally you have some unnecessary builddeps listed, please check the reverse dependencies to make sure you're not listing stuff that will get pulled in by being a dependency.

38

Should be cleaned up, you're listing a bunch of deps that will get automatically pulled in or are being linked against.

55

You should be using our actionable macro for this.

This revision now requires changes to proceed.Jul 8 2020, 3:47 PM

updated package.yml

JoshStrobl requested changes to this revision.Jul 16 2020, 10:50 AM

I think it's a good start however there's still some cleanup, alphabetizing of explicit rundeps (making sure any that are in the abi_used_libs, which means are being linked and thus already picked up as dependencies) aren't listed, etc. Also, do we really need both Qt5 and GTK3 support or can it be one or the other?

This revision now requires changes to proceed.Jul 16 2020, 10:50 AM
VValterKing marked 3 inline comments as done.

Removed gtk dependencie, and some rundeps.

Removed gtk dependencie, and some rundeps. and forgot pspec befor, is it important?

Jacalz added a subscriber: Jacalz.Jul 20 2020, 5:54 PM
Jacalz added inline comments.
package.yml
50

I think you could possibly switch to %cmake_ninja and then drop the whole build dir thing that you are doing. It uses a separate build directory by default if I remember correctly πŸ™‚

changed make porcess to ninja

JoshStrobl requested changes to this revision.Aug 19 2020, 3:13 PM

You may want to re-evaluate your runtime dependencies and make sure the python ones you're listing are all actually needed. Also, does it actually need all those python dependencies as build deps (necessary only if it's checked for in configuration time, used for building or test suites) or are they just rundeps?

Good start though, package is in much better shape.

package.yml
41

Why is a document generator needing to be a runtime dependency?

45

Doesn't need to be a rundep. This links against qt5-base which depends on pango.

This revision now requires changes to proceed.Aug 19 2020, 3:13 PM
kyrios123 added inline comments.
package.yml
7

Most sources are GPL-3.0-or-later but some are still GPL-2.0-or-later. For sure nothing is licensed under GPL-3.0-only.
To be safe, I'd recommend using GPL-2.0-or-later.

https://github.com/gnuradio/gnuradio/search?q=gpl&unscoped_q=gpl

VValterKing marked an inline comment as done.

updated to latest gnuradio release.
all build deps are neccesarry, with run deps im not totally sure i made comments for u to understand what i did dont know if comments are good or bad
license of gnuradio is GPL3 so why not GPL3.0-or-later???

JoshStrobl requested changes to this revision.Jan 21 2021, 6:24 PM

Would like the builddeps to be evaluated further. Is something needed at build time, like those python deps, or are they solely needed during runtime and thus should only be specified in the rundeps.

The building / shipping of documentation found in /usr/share/doc should be disabled as well. We typically expect users to use online documentation. If there is no cmake flag for it, doing an rm -rf $installdir/usr/share/doc should be sufficient.

package.yml
12

Further clarification. The pkgconfigs should also be sorted as 0-9A-Za-z, e.g. Qt5Core would be first, then alsa.

The comments are not necessary and should be removed. If it wasn't necessary for building it shouldn't be included to begin with, so the builddeps are typically self-explaining.

29

It's a separate repo so should be packaged separately.

39

Uncommented rundeps should be removed to begin with.

42

How is a development package a requirement?

This revision now requires changes to proceed.Jan 21 2021, 6:24 PM
VValterKing marked 2 inline comments as done.
VValterKing edited the summary of this revision. (Show Details)

The python deps are needed at build time for cmake tests to pass, and therefore be able to compile.
the doc is not build anymore, due to removing of 2 deps.

I hope the sorting is done right :D, i have no idea.
Comments are removed
volk is now speate at https://dev.getsol.us/D10458
the devel package was stateted as requiered by the official docu, but seems obsolete

JoshStrobl requested changes to this revision.Feb 11 2021, 8:17 AM

Needs a MAINTAINERS.md file containing the following contents, replacing the relevant sections.

This file is used to indicate responsibility for the maintenance of this package. Individuals on this list should be the sole modifiers of the package, excluding cases where the Solus Team may need to perform necessary rebuilds, upgrades, or security fixes. This list should not be used for any direct contact usage. If you believe this package requires a package update, follow documentation from https://getsol.us/articles/packaging/request-a-package-update/en/. In the event this package no longer becomes sufficiently maintained, Core Team reserves the right to request a new maintainer or remove this package from the repository.

- REPLACEME FIRST NAME(S) LAST NAME(S)
  - IRC: REPLACEME
  - Email: REPLACEME
package.yml
12

pkgconfigs should be sorted 0-9A-Za-z

36

rundeps need to be alphabetically ordered. If you use gedit, there is a gedit plugin you can enable for a sort function.

This revision now requires changes to proceed.Feb 11 2021, 8:17 AM

Added Maintern.md
added Homepage, and hopefully done sorting right :D.
I genuinely dont know.

livingsilver94 added inline comments.
package.yml
47

-DCMAKE_BUILD_TYPE=Release

We generally don't override the build type unless there's a necessity to do so. Just Remove that flag to build with RelWithDebInfo.

Removed build type override

JoshStrobl accepted this revision.Mar 6 2021, 4:26 PM

It's close enough :D Thanks!

This revision is now accepted and ready to land.Mar 6 2021, 4:26 PM
This revision was automatically updated to reflect the committed changes.