Prep, build and install
Vít Ondruch
vondruch at redhat.com
Thu Dec 22 13:30:10 UTC 2011
Dne 22.12.2011 14:17, Mo Morsi napsal(a):
> On 12/22/2011 04:44 AM, Vít Ondruch wrote:
>>
>>
>> And now we have the remaining 2% of gems, which have binary
>> extensions, which unfortunately don't build and needs to be patched.
>> This situation is not covered by the guidelines, but you are right
>> that we should work that out, because this is unfortunate situation
>> for both, package and reviewer. I have met already such situation and
>> I opened the support ticket for this scenario [1], however no
>> reasonable solution were provided.
>>
>
> Yes this is an interesting scenario, though I've never run into it
> myself (at least not as far as I recall).
>
> It could also be the case that the gem compiles fine but the source
> needs to be patched anyways to remove some offending code, such as
> something not licensed under an acceptable license or other.
>
>
>
>> I think we should do following steps for such case:
>>
>> %prep
>> a) Do regular "gem install" in prep section. It is obvious that the
>> gem installation fails, however the gem itself is unpacked in the
>> correct locations.
>
> We would need to run the 'gem install' command appending an "|| true"
> afterwards so as not to break the build process when gem install fails.
>
> Why not just run "gem unpack %{SOURCE0}" here.
Well, that is also option. However the "gem install" is standardized,
therefore no need to think about it, you just need to add:
"|| true"
or
"|| :"
or may be
"| grep 'some specific failure description'"
which has the advantage of checking that error is different from what
was expected (for example when gem is updated and bug fixed).
Also, I am not sure if unpack does not unpack something somehow differently.
BTW, I think that we should also introduce something like "gem_install"
macro which would be used in place of the wordy "gem install" with
parameters.
Vit
More information about the ruby-sig
mailing list