Skip to content

Add z3-solver build script - #8473

Open
Daniel-Schenker wants to merge 8 commits into
ppc64le:masterfrom
Daniel-Schenker:z3-build-script
Open

Add z3-solver build script#8473
Daniel-Schenker wants to merge 8 commits into
ppc64le:masterfrom
Daniel-Schenker:z3-build-script

Conversation

@Daniel-Schenker

Copy link
Copy Markdown

Checklist

  • Have you checked and followed all the points mention in the CONTRIBUTING.MD
  • Have you validated script on UBI 9 container (Validated on UBI 10 container)
  • Did you run the script(s) on fresh container with set -e option enabled and observe success ?
  • Did you have Legal approvals for patch files ?

This PR introduces a build script to build the z3-solver package on ppc64le. It was tested and successful in a base UBI10 container image. There is one patch that the script applies at build time. Please do let me know if there are any changes needed to the script (ie final location for wheel file etc...). The script can be run with ./build-z3-ppc64le-ubi10.sh, no arguments are required but can be passed to edit locations and versions as needed.

@janani66
janani66 requested a review from cdeepali July 28, 2026 12:57
@janani66

Copy link
Copy Markdown

@cdeepali -- Please review this PR.

@cdeepali

cdeepali commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

Please add build-info.json file. Refer to template - and example .

As of now, the team is working on enabling UBI10 in CI. Therefore, this PR will need to wait until UBI10 support has been added to the CI pipeline.

@Daniel-Schenker

Copy link
Copy Markdown
Author

@cdeepali I have added build_info.json. Let me know if any changes are needed. Thanks.

Comment thread z/z3-solver/build_info.json Outdated
Comment thread z/z3-solver/build_info.json Outdated
Comment thread z/z3-solver/build_info.json Outdated
Comment thread z/z3-solver/build_info.json Outdated
@cdeepali

Copy link
Copy Markdown
Contributor

Thanks @Daniel-Schenker. I have added suggestion to change the the True/False values in build-info.json to all lower case.
Also I observed that currently "use_non_root_user": "true" is not working, so I have suggested to change it to false.

Also the build script requires changes. Please refer to the template at https://ibm.ent.box.com/file/2211466225461?s=klya622gmi0ghvx2os8k0br8861qqwpi for the build script.

I had created a PR for z3-solver package #8486 where I have modified the build-script and the build-info.json. The build is passing. Please let me know if the same PR can be merged.

Additonally want to mention that although the pipeline changes for UBI10 are still in progress, team has added a work around to enable build on UBI10 for new packages.

@cdeepali cdeepali mentioned this pull request Jul 29, 2026
4 tasks
Daniel-Schenker and others added 5 commits July 29, 2026 09:04
Co-authored-by: Deepali <70963368+cdeepali@users.noreply.github.com>
Co-authored-by: Deepali <70963368+cdeepali@users.noreply.github.com>
Co-authored-by: Deepali <70963368+cdeepali@users.noreply.github.com>
Co-authored-by: Deepali <70963368+cdeepali@users.noreply.github.com>
@Daniel-Schenker

Copy link
Copy Markdown
Author

Hi @cdeepali, I have addressed the changes to the build_info.json. However, the PR that your opened (#8486) uses python 3.12 it seems. We have a requirement for 3.13.

@Daniel-Schenker

Copy link
Copy Markdown
Author

Additionally, this other PR that was opened (#8490) also uses python 3.12.

@cdeepali

cdeepali commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

@Daniel-Schenker Although the PR #8486 uses python 3.12 in the build script, but the artifacts are produced for Python 3.12, Python 3.13 and Python 3.14 when it is built via CI.
The wrapper script handles updates the python used in script to that of the environment in which the build happens. Sharing screenshot of the build pipeline
image

The wheel files generated is:
z3_solver-4.15.4.0+ppc64le1-py3-none-manylinux2014_ppc64le.manylinux_2_39_ppc64le.whl

Please note: z3-solver a universal Python 3 wheel.

I have verified a wheel that I had built locally on Python 3.14 env on UBI10 container.

# python
Python 3.14.5 (main, Jul 10 2026, 00:00:00) [GCC 14.3.1 20251022 (Red Hat 14.3.1-4)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import z3
>>> print(z3.get_version_string())
4.15.4

@cdeepali

Copy link
Copy Markdown
Contributor

I should have mentioned earlier, that the build-info.json also requires a block like:

 "*": {
    "build_script": "z3-solver_4.15.4_ubi_10.sh"
   }

as in https://github.com/ppc64le/build-scripts/pull/8486/changes.

@Daniel-Schenker

Copy link
Copy Markdown
Author

@cdeepali I see. In that case, I am okay to proceed with your PR for this package.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants