luhenry commented on a change in pull request #32253:
URL: https://github.com/apache/spark/pull/32253#discussion_r618494333



##########
File path: mllib-local/pom.xml
##########
@@ -75,48 +75,12 @@
       <type>test-jar</type>
       <scope>test</scope>
     </dependency>
+
+    <dependency>
+      <groupId>dev.ludovic.netlib</groupId>
+      <artifactId>blas</artifactId>
+    </dependency>
   </dependencies>
-  <profiles>
-    <profile>
-      <id>netlib-lgpl</id>

Review comment:
       > I believe we'll need the profile in both places - parent is more about 
"declaration" and child is more about actually using it.
   
   Ok, let me revert it to how it's in `master`.
   
   > The diff looks OK, but raises the question, what's in arpack, lapack, etc? 
does that build in native code? I'd have to go check but looks like LAPACK et 
al are BSD licensed, which is OK.
   
   These only rely on`com.github.fommil.netlib:core` just like `blas`. These do 
not include any native code, and only provide a wrapper for 
`com.github.fommil.netlib-java` for now. In the future, I want to provide the 
same native wrappers as for `blas` but, similarly, without including any actual 
native code, just the JNI-based wrappers.
   
   > But it looks like nothing references the all artifact from netlib, so not 
sure what would build in the native code to actually do acceleration, even with 
the profile? I'm probably missing something.
   
   I am not sure what you don't understand. What do you mean in "__what__ would 
build in the native code"?
   
   If I understand correctly your question, the native code is wrapped by 
`com.github.fommil.netlib`. For JDK16+, `dev.ludovic.netlib` does provide a 
wrapper using the Foreign Linker API, and falls back to using 
`com.github.fommil.netlib` if the Foreign Linker API is not enabled. In the 
future, I do want to add a JNI-based wrapper in `dev.ludovic.netlib` directly 
so that I don't have to rely on `com.github.fommil.netlib` itself.
   
   What I am not sure I understand in the licensing issue is what is licensed 
as GPL/LGPL? Looking at 
https://mvnrepository.com/artifact/com.github.fommil.netlib/all/1.1.2, it all 
seems to be licensed as BSD. So is it the Fortran/native code that's shipped 
with it which is licensed as GPL and which is an issue?
   
   Thank you again for helping me navigating this problem!




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to