RUBY-FAKEGEM.ECLASS

节:eclass-manpages (5)
更新时间:2024 年 11 月
索引 返回主目录

名称

ruby-fakegem.eclass - 用于将 Ruby 软件包安装为 RubyGems 的 eclass。

描述

此 eclass 允许安装任意 Ruby 库(包括 Gems),即使对于“常规”软件包,也能提供与 RubyGems 系统的集成。

支持的 EAPIS

7 8

传递提供的 ECLASSES

ruby-ng

函数

ruby_fakegem_gemsdir
此函数返回当前 Ruby 实现的 gems 数据目录。

返回值:返回 gem 数据目录

ruby_fakegem_doins <file> [file...]
将指定文件安装到 gems 目录。
ruby_fakegem_newins <file> <newname>
使用提供的文件名将指定文件安装到 gems 目录。
ruby_fakegem_install_gemspec
为此软件包安装 .gemspec 文件。要么使用 RUBY_FAKEGEM_GEMSPEC 变量指示的文件,要么使用 ruby_fakegem_genspec 生成一个。
ruby_fakegem_gemspec_gemspec <gemspec-input> <gemspec-output>
生成 RUBY_FAKEGEM_GEMSPEC 指定的规范的可安装版本。此文件被评估以生成最终规范,其方式类似于打包 gemspec 文件。
ruby_fakegem_metadata_gemspec <gemspec-metadata> <gemspec-output>
生成由 gem 本身分发的元数据指定的规范的可安装版本。这类似于 rubygems 如何从 .gem 文件创建安装。
ruby_fakegem_genspec <output-gemspec>
为软件包生成 gemspec 并将其放置到 RubyGems 的“规范”目录中。如果存在与 gem 一起分发的元数据,则将其用于生成 gemspec 文件。

作为后备方案,我们可以生成我们自己的版本。在 gemspec 中,设置以下值:名称、版本、摘要、主页和 require_paths=["lib"]。有关设置名称和版本的详细信息,请参阅 RUBY_FAKEGEM_NAME 和 RUBY_FAKEGEM_VERSION。有关设置额外 require 路径的详细信息,请参阅 RUBY_FAKEGEM_REQUIRE_PATHS。

ruby_fakegem_binwrapper <command> [path] [content]
为 RubyGem 安装的命令创建新的二进制包装器。path 默认值为 /usr/bin/$command,content 为可选参数,可用于将额外的 ruby 代码注入包装器。这可能对例如使用 gem 命令强制使用特定版本很有用。
each_fakegem_configure
配置 RUBY_FAKEGEM_EXTENSIONS 中定义的扩展(如果有)。
each_ruby_configure
对每个 ruby 目标运行 each_fakegem_configure
all_fakegem_compile
如果 doc USE 标志指示,并且存在文档任务,则为软件包构建文档。
each_fakegem_compile
编译 RUBY_FAKEGEM_EXTENSIONS 中定义的扩展(如果有)。
each_ruby_compile
对每个 ruby 目标运行 each_fakegem_compile
all_ruby_unpack
解压缩源存档,包括支持解压缩 gems。
all_ruby_compile
编译软件包。
each_fakegem_test
如果定义了测试任务,则对每个 ruby 目标运行软件包的测试。
each_ruby_test
运行此软件包的测试。
ruby_fakegem_extensions_installed
安装指示扩展已安装的标记。这通常在扩展安装期间完成,但在手动处理扩展时可能有用。
ruby_fakegem_extensionsdir
rubygems 为此软件包版本预期扩展所在的目录。
each_fakegem_install
为每个 ruby 目标安装软件包。
each_ruby_install
为每个目标安装软件包。
all_fakegem_install
安装所有 ruby 目标共有的文件。
all_ruby_install
安装所有 ruby 目标共有的文件。

ECLASS 变量

RUBY_FAKEGEM_NAME = "${RUBY_FAKEGEM_NAME:-${PN}}" (在 INHERIT 之前设置)
设置生成的伪 gemspec 的 Gem 名称。此变量必须在继承 eclass 之前设置。
RUBY_FAKEGEM_VERSION = "${RUBY_FAKEGEM_VERSION:-${PV/_pre/.pre}}" (在 INHERIT 之前设置)
设置生成的伪 gemspec 的 Gem 版本。此变量必须在继承 eclass 之前设置。
RUBY_FAKEGEM_TASK_DOC = "${RUBY_FAKEGEM_TASK_DOC-rdoc}"
指定要运行以生成文档的 rake(1) 任务。
RUBY_FAKEGEM_RECIPE_TEST = "${RUBY_FAKEGEM_RECIPE_TEST-rake}"
为 ruby-fakegem 指定一个默认测试函数
 - rake (默认; 另请参阅 RUBY_FAKEGEM_TASK_TEST)
 - rspec (调用 ruby-ng_rspec, 将 dev-ruby/rspec:2 添加到 依赖项)
 - rspec3 (调用 ruby-ng_rspec, 将 dev-ruby/rspec:3 添加到 依赖项)
 - cucumber (调用 ruby-ng_cucumber, 将 dev-util/cucumber 添加到
   依赖项)
 - sus (调用 ruby-ng_sus, 将 dev-ruby/sus 添加到 依赖项)
 - none
RUBY_FAKEGEM_TASK_TEST = "${RUBY_FAKEGEM_TASK_TEST-test}"
指定用于执行测试的 rake(1) 任务。仅在 RUBY_FAKEGEM_RECIPE_TEST 设置为“rake”(默认值)时有效。
RUBY_FAKEGEM_RECIPE_DOC = rdoc}"
为 ruby-fakegem 指定一个默认 API 文档构建函数
 - rake (默认; 另请参阅 RUBY_FAKEGEM_TASK_DOC)
 - rdoc (调用 `rdoc-2`, 将 dev-ruby/rdoc 添加到 依赖项);
 - yard (调用 `yard`, 将 dev-ruby/yard 添加到 依赖项);
 - none
RUBY_FAKEGEM_DOCDIR
指定构建文档的目录;如果为空,则不会自动安装任何文档。注意:如果 RUBY_FAKEGEM_RECIPE_DOC 设置为 `rdoc`,则此变量被硬编码为 `doc`。
RUBY_FAKEGEM_EXTRADOC
要安装的额外文档(自述文件、变更日志等)。
RUBY_FAKEGEM_DOC_SOURCES = "${RUBY_FAKEGEM_DOC_SOURCES-lib}"
允许设置定义的源以扫描文档。这仅适用于 RUBY_FAKEGEM_DOC_TASK 设置为 `rdoc` 的情况。
RUBY_FAKEGEM_BINWRAP = "${RUBY_FAKEGEM_BINWRAP-*}"
要包装的二进制文件(相对于 RUBY_FAKEGEM_BINDIR 目录)
RUBY_FAKEGEM_BINDIR = "${RUBY_FAKEGEM_BINDIR-bin}"
包含要 binwrap 的二进制文件的路径。等效于 gemspec bindir 选项。
RUBY_FAKEGEM_REQUIRE_PATHS
添加到规范的额外 require 路径(除了 lib)。
RUBY_FAKEGEM_GEMSPEC
.gemspec 文件的名称,用于安装而不是生成通用的文件。
RUBY_FAKEGEM_EXTRAINSTALL
相对于顶层目录的要安装的文件和目录的列表。一些 gems 提供额外文件,例如版本信息、Rails 生成器或需要安装的数据。
RUBY_FAKEGEM_EXTENSIONS
此 gem 支持的扩展列表。每个扩展都列为需要运行以生成扩展的配置脚本。
RUBY_FAKEGEM_EXTENSION_OPTIONS
在配置扩展时传递的额外选项。一些扩展使用它来定位路径或打开或关闭扩展的特定部分。
RUBY_FAKEGEM_EXTENSION_LIBDIR = "${RUBY_FAKEGEM_EXTENSION_LIBDIR-lib}"
扩展直接复制到其中的 lib 目录。这需要在代码上运行测试,并且是长期以来安装扩展的传统方式。

作者

作者:Diego E. Pettenò <[email protected]>
作者:Alex Legler <[email protected]>
作者:Hans de Graaff <[email protected]>

维护者

Ruby 团队 <[email protected]>

报告错误

请通过 https://bugs.gentoo.org/ 报告错误。

文件

ruby-fakegem.eclass

另请参阅

ebuild(5)
https://gitweb.gentoo.org/repo/gentoo.git/log/eclass/ruby-fakegem.eclass


索引

名称
描述
支持的 EAPIS
传递提供的 ECLASSES
函数
ECLASS 变量
作者
维护者
报告错误
文件
另请参阅

此文档由 man2html 使用手册页创建。
时间:2024 年 11 月 12 日,格林威治标准时间 03:27:01