Skip to content

[Req]: Building Guest Additions with NASM only (patch proposal) #520

Description

@alex-ter

Component

Guest Additions/Other

What problem are you facing?

I'm helping out with packaging Guest Additions for Fedora. There's a plan to get rid of YASM as it's unmaintained, and the Additions is one of the few packages using it right now. Straightforward build attempt with NASM instead of YASM fails due to the fact that not everything in the code is NASM-ready.

I have a patch proposal that builds and is tested to produce working Additions. I would appreciate your feedback on:

  1. Whether the approach I used makes sense from the technical standpoint, or if there are any better ones
  2. Whether you'd be interested in taking it upstream

How can we fix this?

Here is the main patch. Fundamentally, it simply wraps a few additional things for NASM vs. YASM, mostly replacing the verbatim wrt rip piece NASM doesn't support with an already-existing xWrtRIP define, appropriately adjusted for the NASM case (emptied out + default rel set instead).

It goes together with the RPM spec adjustment, setting appropriate options for kmk (DONT_USE_YASM=1 and TOOL_NASM_AS=nasm).

What alternatives or workarounds exist?

I can't think of anything else, and the changes are localized enough in my opinion, but I'd be grateful for any feedback on whether there's any better solution.

Anything else we should know?

As mentioned, I'm interested in your opinion on technical viability of this fix and whether any better options exist + your opinion on whether you'd be willing to accept this patch upstream.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions