Page MenuHomeFreeBSD

New port: audio/carla: Audio LV2 plugin host for Jack and PulseAudio
ClosedPublic

Authored by yuri on Nov 20 2017, 9:03 PM.

Details

Summary

I would like to thank the Carla developer, Filipe Coelho (falkTX), for his great help in polishing this port and making it ready for the FreeBSD!

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes

Updated according to falkTX requests.

yuri added reviewers: tcberner, adamw.
audio/carla/Makefile
37 ↗(On Diff #35685)

Why +=?

yuri marked an inline comment as done.Nov 24 2017, 6:55 PM
yuri added inline comments.
audio/carla/Makefile
37 ↗(On Diff #35685)

It's nicer to group the audio backend options. OPTIONS_MULTI_BACKEND=JACK PULSEAUDIO is defined below the main options.

yuri marked 2 inline comments as done.Nov 24 2017, 6:55 PM
yuri edited the summary of this revision. (Show Details)

.

audio/carla/Makefile
18 ↗(On Diff #35707)

^ seems a bit on the long side here, maybe break around pkgconfig

21 ↗(On Diff #35707)

'^ I would group these by _run resp _build. So

USE_PYQT= core_run gui_run svg_run widgets_run \
          sip_build xml_build
45 ↗(On Diff #35707)

why not JACK_LIB_DEPENDS=libjack.so:audio/jack?

audio/carla/Makefile
33 ↗(On Diff #35707)

^ OPTIONS_MULTI= has spaces

35 ↗(On Diff #35707)

^OPTIONS_MULTI_BACKEND has spaces

yuri marked an inline comment as done.Nov 24 2017, 7:29 PM
yuri added inline comments.
audio/carla/Makefile
45 ↗(On Diff #35707)

It's a run dependency.

yuri marked an inline comment as done.

.

yuri marked an inline comment as done.

.

yuri marked 4 inline comments as done.Nov 24 2017, 7:33 PM

I think you lost some files in the last change [pkg-descr, distinfo]

This revision now requires changes to proceed.Nov 25 2017, 11:15 AM

It fails for me in the dependency audio/py-pyliblo.

It fails for me in the dependency audio/py-pyliblo.

audio/py-pyliblo: https://reviews.freebsd.org/D13189

right, you should commit that one then :)

right, you should commit that one then :)

I just did. Sorry, I was out for a while. :)

===>   Carla-1.9.7.b.279 depends on shared library: liblinuxsampler.so - not found
===========================================================================
====>> Checking for filesystem violations... done
====>> Error: Filesystem touched during build:
extra: usr/local/lib/python3.6/site-packages/PyQt5/__pycache__/pyrcc_main.cpython-36.pyc
===>   Carla-1.9.7.b.279 depends on shared library: liblinuxsampler.so - not found
===========================================================================
====>> Checking for filesystem violations... done
====>> Error: Filesystem touched during build:
extra: usr/local/lib/python3.6/site-packages/PyQt5/__pycache__/pyrcc_main.cpython-36.pyc

There's the line LINUXSAMPLER_LIB_DEPENDS=liblinuxsampler.so:audio/linuxsampler, and audio/linuxsampler is committed, so it should be found.
Are you sure you've updated your jail?

In D13172#276081, @yuri wrote:
===>   Carla-1.9.7.b.279 depends on shared library: liblinuxsampler.so - not found
===========================================================================
====>> Checking for filesystem violations... done
====>> Error: Filesystem touched during build:
extra: usr/local/lib/python3.6/site-packages/PyQt5/__pycache__/pyrcc_main.cpython-36.pyc

There's the line LINUXSAMPLER_LIB_DEPENDS=liblinuxsampler.so:audio/linuxsampler, and audio/linuxsampler is committed, so it should be found.
Are you sure you've updated your jail?

yes, the lib depends is there, -- the second time around it found it, but it failed stage-qa, which you still should look into :)

yes, the lib depends is there, -- the second time around it found it, but it failed stage-qa, which you still should look into :)

Hm, stage-qa succeeds here.

I've just rebuilt both, and they both succeed:

[00:05:24] [01] [00:05:16] Finished audio/linuxsampler | linuxsampler-2.0.0: Success
[00:05:24] [01] [00:00:00] Building audio/carla | Carla-1.9.7.b.279
[00:08:12] [01] [00:02:48] Finished audio/carla | Carla-1.9.7.b.279: Success

[00:02:04] ====>> Failed ports: audio/carla:build_fs_violation

freshly updated ports tree :)

[00:02:04] ====>> Failed ports: audio/carla:build_fs_violation

freshly updated ports tree :)

I also updated the ports tree, and it succeeded in both jails: 11.0-RELEASE-p2 amd64 and 10.3-RELEASE-p21 i386.
What system does it fail on, and what is the audio/carla:build_fs_violation file?

In D13172#276142, @yuri wrote:

[00:02:04] ====>> Failed ports: audio/carla:build_fs_violation

freshly updated ports tree :)

I also updated the ports tree, and it succeeded in both jails: 11.0-RELEASE-p2 amd64 and 10.3-RELEASE-p21 i386.
What system does it fail on, and what is the audio/carla:build_fs_violation file?

The fs-violation is the following error:

===========================================================================
====>> Checking for filesystem violations... done
====>> Error: Filesystem touched during build:
extra: usr/local/lib/python3.6/site-packages/PyQt5/__pycache__/pyrcc_main.cpython-36.pyc

The fs-violation is the following error:

===========================================================================
====>> Checking for filesystem violations... done
====>> Error: Filesystem touched during build:
extra: usr/local/lib/python3.6/site-packages/PyQt5/__pycache__/pyrcc_main.cpython-36.pyc

I can't reproduce it. :(
On its face it looks like a python bug, because __pycache__ is for python cache.
Should I create the bug report? But I can't reproduce it myself ...

audio/carla/Makefile
37 ↗(On Diff #35685)

Well, the variables are out of order anyway.

yuri marked an inline comment as done.Nov 27 2017, 6:05 PM

@tcberner Tobias, if the fs error is reproducible, it should be reported to the python team.
In the meantime, if the failure is only on 12 as I suspect it is (I don't see the failure on 10 and 11.1), it should probably be committed because there's nothing obviously wrong with it python-wise.

I have it on 10 and 12 :) -- I assume you are trying it with bulk -t?

But yeah, it probably should not block this .)

audio/carla/Makefile
24 ↗(On Diff #35882)

^ move USE_GNOME above USE_PYQT (so it's at least somewhat alphabetically sorted USE_GNOME, USE_PYQT, USE_QT)

I have it on 10 and 12 :) -- I assume you are trying it with bulk -t?

But yeah, it probably should not block this .)

I run the command:
poudriere bulk -j $J -p local -z workstation -t $*

yuri marked an inline comment as done.

order

My only real nitpick is the PKGBASE 'Carla' vs directory audio/carla.

This revision is now accepted and ready to land.Nov 29 2017, 9:42 PM

My only real nitpick is the PKGBASE 'Carla' vs directory audio/carla.

This is the case of standard capitalization, not like non-standard in the other case. IMO, it's more permissible to substitute standard capitalization with uncapitalized version vs. when nonstandard capitalization is specifically and consciously chosen by authors.

audio/carla/Makefile
24 ↗(On Diff #35882)

This app is primarily Qt. It uses Gtk in a "secondary" way, only for plugin containers.

This revision was automatically updated to reflect the committed changes.