Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • D dynamorio
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1,467
    • Issues 1,467
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 44
    • Merge requests 44
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • DynamoRIO
  • dynamorio
  • Merge requests
  • !5280

i#5130: improve glibc import checks and make them optional

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged S.J.R. van Schaik requested to merge github/fork/StephanvanSchaik/i5130-glibc into master Jan 14, 2022
  • Overview 16
  • Commits 15
  • Pipelines 0
  • Changes 6

This addresses issue #5130 (closed) in the following ways:

  • Improve the glibc import checking code by using a regex to match all imports, and then for each import extract the version and use CMake's version comparison functionality to match the version. This allows us to write the desired glibc version as a string such as "2.4", instead of having to write a regular expression that matches everything greater than 2.4 or in general the desired version.
  • Introduce a BUILD_PACKAGE option that is ON by default, but can be turned off when invoking cmake as follows: cmake -DBUILD_PACKAGE=OFF ... This is important for rolling release distributions where glibc 2.32 is currently stable and these checks prevent drrun from building.
  • Bump the glibc version to 2.17. After checking multiple distributions with long support times (typically Debian and CentOS, and Ubuntu LTS being a close one), I found that the oldest versions that are still supported as of writing are Debian Stretch, CentOS 7, RHEL 7, and Ubuntu 16.04 LTS (Xenial). These ship glibc 2.24, glibc 2.17 glibc 2.17 and glibc 2.23 respectively. According to the release page of glibc the release date of glibc 2.17 is 2012-12-25.

In addition, I am keeping around the glibc version separation between AArch64 and non-AArch64, just in case they diverge again.

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: github/fork/StephanvanSchaik/i5130-glibc