Sitelet https://github.com/taiki-e/install-action/issues/998
Skip to content

Detect and record glibc version per binary #998

Description

@jayvdb

https://github.com/taiki-e/install-action/blob/469c5e2/tools/ci/tool-list.sh#L10-L49 manually defines a list of tools which have varied glibc requirements.

It is only used in CI, and only the latest version of each tool's binary 's undergoes this check.

However the glibc requirement changes over time, which breaks CI occasionally, and it is possible to dynamically detect this using rust crate https://github.com/m4b/goblin or underlying https://github.com/gimli-rs/object . https://github.com/ex0dus-0x/binsec/blob/e2003fad60661c9d507b419fa0ac9583dac7aaa3/src/check/elf.rs provides some example Rust code for this.

As it is CI only, I am thinking we might want a separate lib does the detection, and manage this data in a separate JSON file that describes the glibc version of each tool's latest binary, which can then by used by tool-list.sh. Then, when a tool changes it's minimum glib version, at least it is easy to update the JSON file.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions