Hi, I want to rebuild one of the RiscV JeOS images, but I need to downgrade some packages (mesa etc) to vendor supplied version so I've been looking at the best way to achieve this, but I'm hitting a bit of a wall. Looking over the Wiki etc, I understand that a Project Link is probably the best approach, but due to the number of packages involved, linking to openSUSE:Factory:RISCV on build.opensuse.org puts me "over quota" which is understandable. I've proceeded to setup my own install of OBS, setup an interconnect to api.opensuse.org, and I can successfully build images locally with my own kernel sources etc. All good so far. Now I've created a new package for my vendor mesa, (basically copied a spec file from a OpenSUSE:Factory version of mesa that matched the version the vendor supplied) and it also builds successfully, but the dependencies of Mesa are not getting rebuilt, and thus, fail in the final image. When I attempt to add a project link and specify the repositories as linkedbuild=localdep, it wants to rebuild all 15,000 packages in openSUSE:Factory:RISCV Is there a bit of a step-by-step instruction on how to get this working correctly? I would have thought that it would rebuild mesa, and any dependants on mesa only, and not things like glibc/gcc etc etc etc
Why do you need to link the whole project? If you want to build some modified packages, just branch them into your project. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different."
I could be on a very wrong track here: I need to downgrade a package - Mesa from the current 24.1.2 to 22.3.5 and apply a large set of vendor patches. So, any package dependant upon Mesa would also need to be rebuilt due to ABI/API differences correct? My understanding was Project Linking was the only way in this case?
You did it correctly. The problem is that too many packages in Factory depend on Mesa (2639), so you exceed the quota. You can link the X11:XOrg devel project instead, and then manually branch in your project, where Mesa resides, any specific additional package that you want to rebuild with your patched Mesa. I cannot think of another way. On 03/07/2024 12:58, Justin Hammond wrote:
I could be on a very wrong track here:
I need to downgrade a package - Mesa from the current 24.1.2 to 22.3.5 and apply a large set of vendor patches.
So, any package dependant upon Mesa would also need to be rebuilt due to ABI/API differences correct? My understanding was Project Linking was the only way in this case?
-- Enrico Belleri
participants (3)
-
Andreas Schwab
-
Enrico Belleri
-
Justin Hammond