Skip to content

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

@alex-ter

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

No one assigned

    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