Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Project organisation for variability of targets #1

Open
rhardih opened this issue Dec 14, 2017 · 3 comments
Open

Project organisation for variability of targets #1

rhardih opened this issue Dec 14, 2017 · 3 comments
Assignees

Comments

@rhardih
Copy link
Owner

rhardih commented Dec 14, 2017

How to solve the problem of having Dockerfiles for multiple versions of a library?

  • What about different architectures?
  • What about different variants? E.g. Tesseract with/without support for pango, cairo etc.
  • How to go about organizing without bleeding out the entire param interface of ./configure?
@rhardih rhardih self-assigned this Jan 15, 2018
@rhardih
Copy link
Owner Author

rhardih commented Jan 15, 2018

As of f2dff24, all current rules support versioning. E.g. building version 3.21.0 of sqlite3 can be achieved by postfixing /3.21.0:

make sqlite3/3.21.0

This only introduces support for indicating the version through make, but in no way guarantees compatibility. This opens up another question of how to determine/track valid version combinations of dependent libraries. E.g. leptonica 1.74 works with 4.0.9 of libtiff, but what about other versions of libtiff?

@rhardih
Copy link
Owner Author

rhardih commented Jan 27, 2018

As of b93896a, architecture specific rules are now included.

Example:

make sqlite-armv7-a/3.21.0

Default rule syntax omitting arch is still available, defaulting to building the armv7-a version.

@rhardih
Copy link
Owner Author

rhardih commented Aug 1, 2019

Here's a pickle:

By default e.g. tesseract depends on leptonica, which depends on tiff. That means by default, tesseract will now also depend on tiff being present at runtime, because it will be loaded through leptonica.

In this case, it would be nice, if there was a way to specify a version of leptonica, compiled without tiff as a dependency, as a dependency for tesseract. E.g. a variant of a different name, leptonica-no-tiff.

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

No branches or pull requests

1 participant