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

✨ Add Saxon-HE #27833

Open
wants to merge 9 commits into
base: main
Choose a base branch
from
Open

Conversation

munechika-koyo
Copy link
Contributor

@munechika-koyo munechika-koyo commented Oct 10, 2024

This commit adds the build scripts and recipe for Saxon-HE, an open-source SAXON XSLT processor developed by Saxonica Limited. The build scripts include a build.bat file for Windows and a build.sh file for Unix-based systems. The recipe.yaml file specifies the version, source URL, and dependencies for the package. Additionally, the commit includes activation and deactivation scripts for the package.

Checklist

  • Title of this PR is meaningful: e.g. "Adding my_nifty_package", not "updated meta.yaml".
  • License file is packaged (see here for an example).
  • Source is from official source.
  • Package does not vendor other packages. (If a package uses the source of another package, they should be separate packages or the licenses of all packages need to be packaged).
  • If static libraries are linked in, the license of the static library is packaged.
  • Package does not ship static libraries. If static libraries are needed, follow CFEP-18.
  • Build number is 0.
  • A tarball (url) rather than a repo (e.g. git_url) is used in your recipe (see here for more details).
  • GitHub users listed in the maintainer section have posted a comment confirming they are willing to be listed there.
  • When in trouble, please check our knowledge base documentation before pinging a team.

This commit adds the build scripts and recipe for Saxon-HE, an open-source SAXON XSLT processor developed by Saxonica Limited. The build scripts include a `build.bat` file for Windows and a `build.sh` file for Unix-based systems. The recipe.yaml file specifies the version, source URL, and dependencies for the package. Additionally, the commit includes activation and deactivation scripts for the package.
Copy link

Hi! This is the staged-recipes linter and your PR looks excellent! 🚀

@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipes/saxon-he/recipe.yaml) and found some lint.

Here's what I've got...

For recipes/saxon-he/recipe.yaml:

  • license_file entry is missing, but is required.

@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipes/saxon-he/recipe.yaml) and found it was in an excellent condition.

@munechika-koyo
Copy link
Contributor Author

munechika-koyo commented Oct 22, 2024

I would like @conda-forge/staged-recipes, @conda-forge/help-java to review this PR.

Copy link

To help direct your pull request to the best reviewers, please mention a topic-specifc team if your recipe matches any of the following: conda-forge/help-c-cpp, conda-forge/help-cdts, conda-forge/help-go, conda-forge/help-java, conda-forge/help-julia, conda-forge/help-nodejs, conda-forge/help-perl, conda-forge/help-python, conda-forge/help-python-c, conda-forge/help-r, conda-forge/help-ruby,or conda-forge/help-rust. Thanks!

@munechika-koyo
Copy link
Contributor Author

@conda-forge/core Please review and push this PR.

@munechika-koyo
Copy link
Contributor Author

@conda-forge/help-java

@github-actions github-actions bot added the java label Nov 19, 2024
@ocefpaf
Copy link
Member

ocefpaf commented Nov 19, 2024

The java team is only @xhochy and @mariusvniekerk. We need more help here with java recipes!

@munechika-koyo
Copy link
Contributor Author

@ocefpaf Thank you for your response.
This recipe does not contain building a Java program but relocating built distribution into the conda-prefix directory.
Even though it is, we need more volunteers to deal with stacked PR recipes anyway...

@xhochy
Copy link
Member

xhochy commented Nov 21, 2024

Things that seem off here:

  1. We don't build from source here. We should do so to get a list of third-party libraries.
  2. We don't install into normal directory structures but put everything into a "SaxonHE/" subtree.
  3. The activation scripts add to LD_LIBRARY_PATH. They should not be doing that but rather place the libs into the right folder, but I don't see any native libs at all here.

@munechika-koyo
Copy link
Contributor Author

  1. We don't build from source here. We should do so to get a list of third-party libraries.

Built distribution is easy to package, so I used it as a source. But I also think it is preferable to build from a source.
I will have to learn about how to do it.

  1. We don't install into normal directory structures but put everything into a "SaxonHE/" subtree.

I use this configuration referencing the openjdk conda package, where everything is put into a /lib/jvm/ directory.
If you have any other solution, I'd be glad to hear them.

  1. The activation scripts add to LD_LIBRARY_PATH. They should not be doing that but rather place the libs into the right folder, but I don't see any native libs at all here.

Actually, at SaxonHE/lib/, there is no shared library, only .jar files.
I understand in order for Java to find the Java library, CLASSPATH has to be set.
However, I don't know if LD_LIBRARY_PATH should be configured.
Should we set JAVA_LD_LIBRARY_PATH like openjdk's activation scripts?

@xhochy
Copy link
Member

xhochy commented Nov 22, 2024

Should we set JAVA_LD_LIBRARY_PATH like openjdk's activation scripts?

I don't think anything should be set here.

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

Successfully merging this pull request may close these issues.

4 participants