bsloane1650 commented on a change in pull request #422:
URL: https://github.com/apache/incubator-daffodil/pull/422#discussion_r499688509



##########
File path: daffodil-runtime2/src/main/c/common_runtime.c
##########
@@ -0,0 +1,92 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more

Review comment:
       I'd rather not get in the bussiness of shipping precompiled static 
libraries.
   
   At the moment, Daffodil is mostly platform independent by virtue of running 
on the JVM. This goes away if we include compiled c code. Further, providing a 
shared library for multiple supported systems from a single build would involve 
setting up cross compilation, which is another headache.
   
   Since our output is c source code anyway, the user already needs to go 
through a c compile step regardless, so I do not think we are saving them much 
by pre compiling the common runtime.
   
   Further, a common usecase for runtime2 would likely be embedded systems, 
where space is at a premium. Users of such systems may prefer to compile 
everything at once with static linking in order to benifit from the size 
reductions of dead code elimination (as portions of the runtime may not be used 
by every format)
   
   If we do want to provide a shared library, I don't think including it in the 
jar makes sense. You need the .so at parser runtime; which (unlike with jni) 
does not occur under a jvm. If we provide a .so, I would think it should be 
distributed seperatly.




----------------------------------------------------------------
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]


Reply via email to