Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#12455 - ruby/3.1.0: expose more configuration options for native extension gems #12456

Closed
wants to merge 16 commits into from

Conversation

jmarrec
Copy link
Contributor

@jmarrec jmarrec commented Aug 22, 2022

Specify library name and version: ruby/3.1.0


  • I've read the guidelines for contributing.
  • I've followed the PEP8 style guides for Python code in the recipes.
  • I've used the latest Conan client version.
  • I've tried at least one configuration locally with the conan-center hook activated.

Comment on lines +35 to +54
#ifdef RUBY_STATIC_RUBY
rb_provide("bigdecimal");
rb_provide("bigdecimal.so");
#else
ruby_init_loadpath();
#endif

rb_eval_string(R"(
begin
(require 'bigdecimal')
puts "I can correctly load one of the extension gems - bigdecimal"
rescue Exception => e
puts
puts "Error: #{e.message}"
puts "Backtrace:\n\t" + e.backtrace.join("\n\t")
raise
end
)");

ruby_finalize();
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Extend testing to require one of the extension gems.

Comment on lines +48 to +53
"with_static_linked_ext": True,
"with_enable_load_relative": True,
"with_libyaml": True,
"with_libffi": True,
"with_readline": True,
'with_gmp': True,
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New options

Comment on lines +82 to +92
if self.options.with_libyaml:
self.requires("libyaml/0.2.5")

if self.options.with_libffi:
self.requires("libffi/3.4.2")

if self.options.with_readline:
self.requires("readline/8.1.2")

if self.options.with_gmp:
self.requires("gmp/6.2.1")
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Control dependencies

@@ -77,8 +103,12 @@ def validate(self):
def configure(self):
if self.options.shared:
del self.options.fPIC
del self.options.with_static_linked_ext
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This only makes sense in the case of a static build to begin with

Comment on lines 109 to 111
if self.settings.os == 'Windows':
# readline isn't supported on Windows
self.options.with_readline = False
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

readline caveat on windows.

Comment on lines +140 to +144
if not self.options.shared and self.options.with_static_linked_ext:
tc.configure_args.append('--with-static-linked-ext')

if self.options.with_enable_load_relative:
tc.configure_args.append('--enable-load-relative')
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pass these two to ruby configure.

Comment on lines 146 to 149
for name, dep_cpp_info in self.deps_cpp_info.dependencies:
if name in ['zlib', 'openssl', 'libffi', 'libyaml', 'readline', 'gmp']:
root_path = tools.unix_path(dep_cpp_info.rootpath)
tc.configure_args.append(f'--with-{name}-dir={root_path}')
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For dependencies, pass the --with-ext-dir flag to ensure ruby find the one from conan and not the system installed one.

Comment on lines 199 to 204
# install the enc/*.a / ext/*.a libraries
if not self.options.shared and self.options.with_static_linked_ext:
for dirname in ['ext', 'enc']:
dst = os.path.join('lib', dirname)
self.copy('*.a', dst=dst, src=dirname, keep_path=True)
self.copy('*.lib', dst=dst, src=dirname, keep_path=True)
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ship the potential static linked exts too.

Comment on lines 224 to 235
rubylib.requires.extend(["zlib::zlib"])
# TODO: if --with-static-linked-ext is passed, is this necessary?
if self.options.with_gmp:
rubylib.requires.append("gmp::gmp")
if self.options.with_openssl:
rubylib.requires.append("openssl::openssl")
if self.options.with_libyaml:
rubylib.requires.append("libyaml::libyaml")
if self.options.with_libffi:
rubylib.requires.append("libffi::libffi")
if self.options.with_readline:
rubylib.requires.append("readline::readline")
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

adjust the requires. I'm not sure about that TODO...

@ghost
Copy link

ghost commented Aug 22, 2022

I detected other pull requests that are modifying ruby/all recipe:

This message is automatically generated by https://github.com/ericLemanissier/conan-center-conflicting-prs so don't hesitate to report issues/improvements there.

@conan-center-bot

This comment has been minimized.

@github-actions
Copy link
Contributor

Hooks produced the following warnings for commit 5ba0022
ruby/3.1.0
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.

@conan-center-bot

This comment has been minimized.

@github-actions
Copy link
Contributor

Hooks produced the following warnings for commit fd3fcd8
ruby/3.1.0
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.

```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```
@jmarrec
Copy link
Contributor Author

jmarrec commented Aug 22, 2022

Fun, two builds are throwing a segfault on linux...

compiling parser.c
compiling parserstate.c
during GIMPLE pass: unswitch
parserstate.c: In function ‘parser_typevar_member’:
parserstate.c:73:6: internal compiler error: Segmentation fault
   73 | bool parser_typevar_member(parserstate *state, ID id) {
      |      ^~~~~~~~~~~~~~~~~~~~~
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-9/README.Bugs> for instructions.

@conan-center-bot

This comment has been minimized.

@uilianries
Copy link
Member

uilianries commented Aug 23, 2022

@jmarrec Thank you for your contribution, really good to see all these new options. Please, take a look on v2 Linter result. Some conans.tools are now deprecated and should move toward to Conan v2 approach: https://github.com/conan-io/conan-center-index/blob/master/docs/v2_linter.md#import-tools-from-conan

Tell us if you need some help.

@jmarrec
Copy link
Contributor Author

jmarrec commented Aug 23, 2022

@uilianries I had ported locally to v2 but then I saw Eric's bot point to #12208 which already does it so I didn't push it, assuming I should wait for that one to merge first?

@uilianries
Copy link
Member

@jmarrec If it works, please, go ahead, we can merge your PR first. I can adapt my PR later.

@stale stale bot added the stale label Dec 3, 2022
@stale
Copy link

stale bot commented Jan 2, 2023

This pull request has been automatically closed because it has not had recent activity. Thank you for your contributions.

@stale stale bot closed this Jan 2, 2023
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Jul 5, 2023
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Jul 5, 2023
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Jul 5, 2023
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Jul 5, 2023
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Jul 5, 2023
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Aug 28, 2023
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Dec 15, 2023
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Dec 18, 2023
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Dec 19, 2023
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Dec 19, 2023
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Dec 20, 2023
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Dec 21, 2023
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Dec 22, 2023
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Jan 11, 2024
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Jan 12, 2024
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Jan 19, 2024
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Jan 22, 2024
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Jan 23, 2024
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Jan 23, 2024
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Jan 24, 2024
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Feb 2, 2024
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
jmarrec added a commit to jmarrec/conan-center-index that referenced this pull request Feb 2, 2024
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
valgur pushed a commit to valgur/conan-center-index that referenced this pull request May 21, 2024
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
valgur pushed a commit to valgur/conan-center-index that referenced this pull request Nov 12, 2024
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
valgur pushed a commit to valgur/conan-center-index that referenced this pull request Nov 13, 2024
…ve extension gems. Reboots conan-io#12456 and conan-io#12208

* conan v2 support (work done by myself + a merge of @SpaceIm 's branch from PR conan-io#12208 to reconcile both)

* Extend testing to require one of the native extensions

* ```
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/ruby/3.1.0/x86_64-linux/pty.so' links to system library 'util' but it is not in cpp_info.system_libs.
```

* Use `--with-opt-dir` instead of `--with-xx-dir` that ruby isn't respecting.

conanio/gccXX (eg 10) removed the libxxx-dev (eg libgmp-dev) from the image. This made me realize that the conan deps weren't being picked up by the build. The openssl was, because --with-openssl-dir is explicitly used in ruby config.

So here, we rely on --with-opt-dir.

cf: https://bugs.ruby-lang.org/issues/19014#change-99241 (--with-gmp-dir was added on September 14, 2022, wrote this in Sep 22, 2022)

* Pass both --with-opt-dir and --with-xxx-dir

https://gist.github.com/mrkn/6647630
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[package] ruby/3.1.0: expose more configuration options for native extension gems
4 participants