-
Notifications
You must be signed in to change notification settings - Fork 29
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
Enable installing static library for MRI 2.4 and 2.5 #43
base: build
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good to me :)
build.sh
Outdated
EXTRA_CONFIGURE_OPTS=",--enable-install-static-library" | ||
fi | ||
|
||
announce rvm install $RUBY $EXTRA_FLAGS --verify-downloads 1 $MOVABLE_FLAG --disable-install-doc -C --without-tcl,--without-tk,--without-gmp$EXTRA_CONFIGURE_OPTS;; |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
d394d65
to
4628c2f
Compare
I've implemented a slightly different solution from what you suggested. RVM docs say that custom configure options should be passed as a comma-separated list using
Also, I'm definitely not a shell scripting expert, so feel free to request for more changes :) |
The docs is just few options of many, the -- is easier for handling
multiple config options with arrays as in my example
…On Nov 30, 2017 17:04, "Dmitry Gritsay" ***@***.***> wrote:
@mpapis <https://github.com/mpapis>,
I've implemented a slightly different solution from what you suggested. RVM
docs <https://rvm.io/rvm/cli> say that custom configure options should be
passed as a comma-separated list using -C parameter:
-C - custom configure options, comma separated, double quote
args that need quoting, default: --enable-shared=true
Also, I'm definitely not a shell scripting expert, so feel free to request
for more changes :)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#43 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAC7titqR9vicO8n8QZth3i433WTvcABks5s7tHvgaJpZM4QvNyz>
.
|
4628c2f
to
992d99e
Compare
Got it! I changed to use plain arrays for |
- Install both static and dynamic libraries for MRI 2.4 and 2.5
992d99e
to
ebd0597
Compare
@mpapis, looks like there was some random failure related to GPG keys in the test env. I've restarted the build, all green now. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Slight change in new lines, otherwise it's good :)
eef89c1
to
7769d86
Compare
7769d86
to
b2b6922
Compare
Newlines fixed |
Sorry for overlooking this one. Does this apply to |
Enable installing static library for MRI 2.4 and 2.5
announce rvm install $RUBY $EXTRA_FLAGS --verify-downloads 1 $MOVABLE_FLAG --disable-install-doc -C --without-tcl,--without-tk,--without-gmp;; | ||
CONFIGURE_OPTS=( --without-tcl --without-tk --without-gmp ) | ||
case $RUBY in | ||
ruby-2.4*|ruby-2.5*) |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Hi! There was a breaking change introduced in Ruby 2.4 related to static and shared libraries.
Pre-2.4 behavior:
libruby-static.a
)--enable-shared
option, additionally install shared library (libruby.x.y.z.so
)2.4.x behavor:
--enable-shared
, install only dynamic library--enable-shared
and--enable-install-static-library
, install both shared and static libsBy default RVM uses
--enable-shared
flag. So it means that currently the pre-built rubies for 2.4.x have only shared libs. Some projects (like ruby-sys or ruru) explicitly test linking for both kinds of libraries. So their builds for 2.4.x fail, because those RVM images don't have static libs.This patch adds
--enable-install-static-library
toruby-2.4*
, so that their RVM images have both kind of libraries, like2.3.x
and prior versions.