Project

General

Profile

Backport #6052

please add vendorarchdir and vendorlibdir to ruby.pc

Added by ellson (John Ellson) over 7 years ago. Updated about 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
[ruby-core:42766]

Description

(originally reported in: https://bugzilla.redhat.com/show_bug.cgi?id=789532
this issue separates the issue of vendorarchdir from the ruby-1.9.pc -> ruby.pc renaming issue).

[John Ellson]
The current ruby-1.9.pc doesn't provide a value for "vendorarchdir"
and so is insufficient for packages like graphviz to build ruby extensions
without still resorting to ruby's (ever changing) RbConfig (nee: Config)
mechanism.

[Bohuslav "Slavek" Kabrda]

  • Defining vendorarchdir and vendorlibdir is not a problem but how would it solve the problem with graphviz? And how would you propose to use these - passing them as additional Cflags?

[John Ellson]
No, not Cflags. The value is need for installation, not compilation.

Assuming ruby.pc contains a line like:
vendorarchdir=${libdir}/ruby/vendor_ruby

configure.ac would extract it by using something like:
PKG_CHECK_MODULES(RUBY, [ruby >= 1.9],[
RUBY_INSTALL_DIR=pkg-config --variable vendorarchdir ruby
AC_SUBST([RUBY_INSTALL_DIR])
],[
#deal with pre 1.9 ruby's
])


Related issues

Related to Backport193 - Backport #6051: Rename ruby-1.9.pc to ruby.pcClosed02/21/2012Actions

Associated revisions

Revision a5e49f99
Added by nobu (Nobuyoshi Nakada) over 7 years ago

  • template/ruby.pc.in: added rubylibprefix, {rubylib,vendor,site}dir and {ruby,vendor,site}archdir. [ruby-core:42766][Feature #6052]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e

Revision 34716
Added by nobu (Nobuyoshi Nakada) over 7 years ago

  • template/ruby.pc.in: added rubylibprefix, {rubylib,vendor,site}dir and {ruby,vendor,site}archdir. [ruby-core:42766][Feature #6052]

Revision 34716
Added by nobu (Nobuyoshi Nakada) over 7 years ago

  • template/ruby.pc.in: added rubylibprefix, {rubylib,vendor,site}dir and {ruby,vendor,site}archdir. [ruby-core:42766][Feature #6052]

Revision 34716
Added by nobu (Nobuyoshi Nakada) over 7 years ago

  • template/ruby.pc.in: added rubylibprefix, {rubylib,vendor,site}dir and {ruby,vendor,site}archdir. [ruby-core:42766][Feature #6052]

Revision 34716
Added by nobu (Nobuyoshi Nakada) over 7 years ago

  • template/ruby.pc.in: added rubylibprefix, {rubylib,vendor,site}dir and {ruby,vendor,site}archdir. [ruby-core:42766][Feature #6052]

Revision 34716
Added by nobu (Nobuyoshi Nakada) over 7 years ago

  • template/ruby.pc.in: added rubylibprefix, {rubylib,vendor,site}dir and {ruby,vendor,site}archdir. [ruby-core:42766][Feature #6052]

Revision 34716
Added by nobu (Nobuyoshi Nakada) over 7 years ago

  • template/ruby.pc.in: added rubylibprefix, {rubylib,vendor,site}dir and {ruby,vendor,site}archdir. [ruby-core:42766][Feature #6052]

Revision c5571692
Added by naruse (Yui NARUSE) about 7 years ago

merge revision(s) 34716:

    * template/ruby.pc.in: added rubylibprefix, {rubylib,vendor,site}dir
      and {ruby,vendor,site}archdir.  [ruby-core:42766][Feature #6052]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@36561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e

Revision 36561
Added by naruse (Yui NARUSE) about 7 years ago

merge revision(s) 34716:

* template/ruby.pc.in: added rubylibprefix, {rubylib,vendor,site}dir
  and {ruby,vendor,site}archdir.  [ruby-core:42766][Feature #6052]

History

#1

Updated by nobu (Nobuyoshi Nakada) over 7 years ago

  • Tracker changed from Bug to Feature
#2

Updated by nobu (Nobuyoshi Nakada) over 7 years ago

  • Status changed from Open to Closed
  • % Done changed from 0 to 100

This issue was solved with changeset r34716.
John, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


  • template/ruby.pc.in: added rubylibprefix, {rubylib,vendor,site}dir and {ruby,vendor,site}archdir. [ruby-core:42766][Feature #6052]

Updated by Anonymous over 7 years ago

Hi, I'm finding it really hard to follow some of the changes that you have done here. I'm not implying that anything is wrong, maybe I don't get something, so please take this rather as a question, but the settings you now provide in ruby.pc are not well for Fedora (I don't know about other platforms, but let me explain):

Current state:

rubylibprefix=@rubylibprefix@
rubylibdir=${rubylibprefix}/${ruby_version}
vendordir=${rubylibprefix}/vendor_ruby
sitedir=${rubylibprefix}/site_ruby
rubyarchdir=${rubylibdir}/${arch}
vendorarchdir=${vendordir}/${sitearch}
sitearchdir=${sitedir}/${sitearch}

The problem is that vendorarchdir gets translated to ${rubylibprefix}/vendor_ruby/${sitearch}, which then gets translated to /usr/share/ruby/vendor_ruby/${sitearch}, which seems wrong (platform specific files get under /usr/share) - it should be /usr/lib[64]/ruby/vendor_ruby, so something like %{libdir}/vendor_ruby, shouldn't it?

Am I missing something or is this really an issue? If so, would it be possible to backport it to 1.9.3 branch?

Thank you!

Updated by nobu (Nobuyoshi Nakada) over 7 years ago

rubylibprefix isn't under datarootdir by default, unless you change it by yourself.

Updated by Anonymous over 7 years ago

Yes, that is true. I however miss the point of having vendordir and vendorarchdir under the same directory, whatever it is.

Updated by Anonymous over 7 years ago

Yes, having something like the feature requested in #6111 would be the thing I'm looking for (the important part is, that vendorarchdir doesn't get under vendordir, as it is now).

Updated by vo.x (Vit Ondruch) about 7 years ago

Would you mind to backport this into 1.9.3? Thank you.

#9

Updated by kosaki (Motohiro KOSAKI) about 7 years ago

  • Tracker changed from Feature to Backport
  • Project changed from Ruby master to Backport193
  • Status changed from Closed to Open
#10

Updated by naruse (Yui NARUSE) about 7 years ago

  • Status changed from Open to Closed

This issue was solved with changeset r36561.
John, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


merge revision(s) 34716:

* template/ruby.pc.in: added rubylibprefix, {rubylib,vendor,site}dir
  and {ruby,vendor,site}archdir.  [ruby-core:42766][Feature #6052]

Also available in: Atom PDF