-
Notifications
You must be signed in to change notification settings - Fork 502
bbmap: add 39.59; fixes/improvements #2775
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
Conversation
- Add BBMap 39.59 - `Bbmap` class now extends `MakefilePackage` - Constrain the compiler dependency to `gcc`. Per the [BBMap docs](https://github.com/bbushnell/BBTools/blob/master/jni/README.txt), and the contents of the makefile(s), gcc should be used. - Add a `gmake` dependency as `make` is needed to build BBMap's jni libraries - BBMap requires Java 8 or later, and it is also a run-time dependency. The `java` dependency has been updated accordingly. - The BBMap source comes with makefiles for Linux and macOS (OS/X). The `edit` function is overridden to rename, based on the spec's `platform`, the appropriate file to `Makefile`. - The `build` function has been overridden to first run `make clean`, as the BBMap distribution ships with a pre-compiled library that is only for x86_64.
Add a `usejni` variant to enable/disable the compilation of libbbtooljni. Some users may not need acceleration and may not want to added dependencies.
7855978 to
cbedbb2
Compare
becker33
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I haven't looked at the makefile, but we often see makefiles that hardcode GCC out of a lack of imagination (never considered the idea of another compiler) instead of because it fails with other compilers.
If it's worth pursuing, it's often as simple as having the edit phase use filter_file to replace the old settings with whatever compiler is being used.
Bbmapclass now extendsMakefilePackageusejnivariant that, when true, will cause the package to build libbbtoolsjni.so for acceleration.gcc. Per the BBMap docs, and the contents of the makefile(s), gcc should be used.javadependency has been updated accordingly.editfunction is overridden to rename, based on the spec'splatform, the appropriate file toMakefile.buildfunction has been overridden to first runmake clean, as the BBMap distribution ships with a pre-compiled library that is only for x86_64.