Skip to content

Step 1 of deps parsing of optional operator and version, and cleanup of envars#151

Merged
IgorTodorovskiIBM merged 6 commits intomainfrom
parse_deps
Feb 3, 2023
Merged

Step 1 of deps parsing of optional operator and version, and cleanup of envars#151
IgorTodorovskiIBM merged 6 commits intomainfrom
parse_deps

Conversation

@IgorTodorovskiIBM
Copy link
Copy Markdown
Member

@IgorTodorovskiIBM IgorTodorovskiIBM commented Feb 1, 2023

This is step of parsing the dependencies which can have a comparison and version. I am not currently using it in any way yet, that logic will come in a later commit.

I will likely move it to common.inc in step 2 because zopen download will need it for runtime dependencies.

I have also added cleanup_envars, which will cleanup dupes in our envars.

If you have any comments on the code so far, please let me know.

@IgorTodorovskiIBM IgorTodorovskiIBM marked this pull request as draft February 1, 2023 04:37
Copy link
Copy Markdown
Collaborator

@MikeFultonDev MikeFultonDev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a comment on the dubxtion

Comment thread bin/lib/zopen-build Outdated
export _BPXK_AUTOCVT=ON
export _CEE_RUNOPTS="\$_CEE_RUNOPTS FILETAG(AUTOCVT,AUTOTAG) POSIX(ON)"

cleanup_envars()
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does cleanup_envars delete duplicate entries? Is there a better name?

@IgorTodorovskiIBM IgorTodorovskiIBM marked this pull request as ready for review February 2, 2023 19:38
@IgorTodorovskiIBM
Copy link
Copy Markdown
Member Author

@MikeFultonDev, some more details on this PR:

  • You can now check for version requirements to the deps:
export ZOPEN_TARBALL_DEPS="make>=4.4.0.90"

This now checks in the dependency directory for a .version file. The .version file is product via a zopen_get_version function which needs to be defined in the buildenv. Right now it will print a warning if it's not defined.

It also introduces a new envar:

export ZOPEN_RUNTIME_DEPS="bash>=5.2.0"

This info is then copied into a $ZOPEN_INSTALL_DIR/.deps file.

Step 2 will be to modify Jenkins so that the .version and .deps files are processed and metadata is placed into the github releases. Then zopen download will be modified to extract the version and runtime deps metadata, which will be used for runtime dependency processing.

I tested this PR with a few ports to ensure no regressions.

We'll need to go through and add ZOPEN_RUNTIME_DEPS and zopen_get_version to all of the ports.

Copy link
Copy Markdown
Collaborator

@MikeFultonDev MikeFultonDev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice. Should the tool to generate a new port be updated to include templates for this new function

@IgorTodorovskiIBM
Copy link
Copy Markdown
Member Author

Nice. Should the tool to generate a new port be updated to include templates for this new function

Oh yes, I forgot to do that!

@IgorTodorovskiIBM
Copy link
Copy Markdown
Member Author

Added the templates to zopen generate

@IgorTodorovskiIBM IgorTodorovskiIBM merged commit 539e738 into main Feb 3, 2023
@MikeFultonDev MikeFultonDev deleted the parse_deps branch March 19, 2023 03:16
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.

2 participants