[Bug 260831] lang/ruby26, lang/ruby27, lang/ruby3[01]: patch for making dtrace an optional feature
- Reply: bugzilla-noreply_a_freebsd.org: "maintainer-feedback requested: [Bug 260831] lang/ruby26, lang/ruby27, lang/ruby3[01]: patch for making dtrace an optional feature"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 260831] lang/ruby26, lang/ruby27, lang/ruby3[01]: Add DTRACE option"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 260831] lang/ruby26, lang/ruby27, lang/ruby3[01]: Add DTRACE option"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 260831] lang/ruby26, lang/ruby27, lang/ruby3[01]: Add DTRACE option"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 260831] lang/ruby26, lang/ruby27, lang/ruby3[01]: Add DTRACE option"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 260831] lang/ruby26, lang/ruby27, lang/ruby3[01]: Add DTRACE option"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 260831] lang/ruby3[01]: Add DTRACE option"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 260831] lang/ruby3[01]: Add DTRACE option"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 260831] lang/ruby3[01]: Add DTRACE option"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 260831] lang/ruby3[01]: Add DTRACE option"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 260831] lang/ruby3[01]: Add DTRACE option"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 31 Dec 2021 02:11:13 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=260831
Bug ID: 260831
Summary: lang/ruby26, lang/ruby27, lang/ruby3[01]: patch for
making dtrace an optional feature
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: Individual Port(s)
Assignee: ruby@FreeBSD.org
Reporter: lab+bsd@thinkum.space
Flags: maintainer-feedback?(ruby@FreeBSD.org)
Assignee: ruby@FreeBSD.org
Created attachment 230577
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=230577&action=edit
Patch for providing a dtrace option for lang/ruby* ports
The lang/ruby2[67] port builds will automatically enable dtrace support if
dtrace is installed.
The lang/ruby3[01] builds - extending of a changeset upstream - will not
provide any dtrace support for these Ruby versions, on FreeBSD.
Referring to the FreeBSD Wiki[2], DTrace support may be available for userspace
in FreeBSD, at least if the kernel is built with -fno-omit-frame-pointer in
CFLAGS then installed as unstripped bytecode. Otherwise, running dtrace on an
application may require superuser privileges.
The Ruby 2.6 and Ruby 2.7 builds presently will incorporate dtrace support, if
available.
The following patch (attached) makes DTrace a build option for Ruby, in all
versions on FreeBSD
This differs from previous port behaviors:
- For Ruby 2.6 and 2.7, ensures that dtrace probes will not be added if the
dtrace option is disabled, whether or not dtrace is installed
- For Ruby 3.0 and 3.1, this adds functionality that may not be available with
upstream Ruby builds on FreeBSD, in those recent Ruby releases. This changeset
includes an autoconf patch ensuring that dtrace will not be disabled on FreeBSD
under autoconf scripting, and will be enabled if requested for the build.
- If the dtrace option is enabled and dtrace is not installed, the port build
will fail under IGNORE semantics
Corresponding to existing support for dtrace probes with Ruby 2.6 and Ruby 2.7
on FreeBSD, the new dtrace option will be available for these Ruby language
platforms on FreeBSD amd64 and i386 architectures.
This patch has been tested with a rudimentary check using dtrace and a
dtrace-enabled Ruby 3.1 under a local build of FreeBSD 12.1-RELEASE-p1 amd64.
The test was performed with the following shell command, under sudo:
dtrace -l -m libruby31.so.31 -c 'ruby31 -v'
[1] https://github.com/chrisa/ruby-dtrace
[2] https://wiki.freebsd.org/DTrace/KernelSupport
--
You are receiving this mail because:
You are the assignee for the bug.