Max, We thought that the Android build did pick up the changes if you modify source in any layer C, C++, JNI, or Java. So there are currently no known issues. That does not mean there are no issues.
About a quarter of the build time for the Android builder is not under the control of scons (it uses Gradle part of the time) which has caused synchronization problems. We have added multiple manual Depends, and Clean calls to the scons scripts to cause the two build systems to know about the changes of the other but it is tricky to get it completely right. I thought we had all the dependencies figured out. If you find you are editing a file and something is not being caught please note the file you changed and the file that was not updated so we can fix any missed dependencies. Best action would be to file a Jira ticket with the information. If you select Android it will automatically be assigned to Rick Bell who will assign it to me or Larry to look into fixing. As far as a work around: Doing the following should work: $ scons {your specific build options} -c #some code is not placed in the out folder and this should get most of it $ rm -fr out #delete the out folder $ rm .sconsign.dblight #delete scons’ dependency calculations forcing it to make the calculations again. $ scons {your specific build options} Sorry I can’t give you a better work around. George Nash From: iotivity-dev-boun...@lists.iotivity.org [mailto:iotivity-dev-boun...@lists.iotivity.org] On Behalf Of Max Kholmyansky Sent: Wednesday, February 7, 2018 4:03 AM To: iotivity <iotivity-dev@lists.iotivity.org> Subject: [dev] IoTivity Android build robustness Hi Developers, Recently I was working on some issues with IoTivity 1.3.1 on Android, and I had to modify the source code. Unfortunately, while 'scons' build works well on a "clean" source tree, it does nor help much to apply code modifications. My expectation is that once I modify a source code at any layer (C, C++, JNI, Java) and run the script - the build will update the relevant targets, up to the final AAR library. Unfortunately, that's not the case. Sometimes, the modified source files aren't even re-compiled. In other cases, the compilation is triggered, but the target updates gets broken somewhere along the chain, I faced cases when the static libraries (lib*.a) were updated, but not the shared libraries (lib*.so). I wasn't even able to find a quick workaround, like deletion of 'out' folder. Is it a known issue? Are there any tips on how to handle those issues productively? Thanks for any insight, Max
_______________________________________________ iotivity-dev mailing list iotivity-dev@lists.iotivity.org https://lists.iotivity.org/mailman/listinfo/iotivity-dev