On 26-12-17 17:23, Dirk Hohndel wrote:

On Dec 26, 2017, at 6:55 AM, Jan Mulder <jlmul...@xs4all.nl> wrote:

Since some days (do not know exactly what introduced this) I have a compile 
problem when building the Android apk on my local system. I'm building using 
the build.sh from packaging (already from a long time).

It's just after the apk is created (so it does not hinder testing of own build 
apks, and as side note/question, why is there any build processing going on 
after the apk is created?). After Dirk fixed the Android Travis build 
(sdkmanager does not understand yes), the Travis build are failing again 
(after, I think 2 successful runs). Remarkably, the Travis fail is also just 
after the apk is produced, so there might be a relation between my local fail 
and the Travis fail.

My first idea was, the recent upgrade (on my desktop) to cmake 3.10. But Travis 
is still building with 3.9.3 ... so, no direct relation to local fail and 
Travis fail ...

The local fail is:

[ 82%] Built target subsurface-mobile.apk
[ 82%] Built target documentationLink
loading initial cache file <path stripped>/src/subsurface/Documentation
CMake Error: Error processing file: <path stripped>src/subsurface/Documentation
CMake Error: The source directory "<path 
stripped>src/subsurface-mobile-build-arm/doc" does not exist.
make[2]: *** [CMakeFiles/documentation] Error 1
make[1]: *** [CMakeFiles/documentation.dir/all] Error 2
make: *** [all] Error 2

Notice the reference to the .../doc directory. Fully unclear to me where that is coming 
from. Our documentation directory is called "Documentation".

Anybody a useful idea on this subject? I realize that there are not much own 
apk builders ...

I'll admit that my initial reaction to the renewed Android fails on Travis was 
a curse word.

Yes, fully understand a curse word. I was so surprised by this failure that I restarted that failing build multiple times, to see if it was a stupid glitch somewhere, but no ...



I did do a local build and I don't get the error that you show.
I then gripped through all of the cmake created build files in my build directory for doc 
(not docs, documentation, etc, but "doc") and came up empty.
Next I removed my build directories and rebuilt from scratch; there I ran into 
an odd bug where cmake couldn't find the build program for Unix makefiles.
Adding a -DCMAKE_MAKE_PROGRAM=make fixed that (but I don't understand what's up 
with that).

I'm seeing that CMAKE_MAKE_PROGRAM thing, as well. Annoying, but easy to fix.

To add a new Android build thing ... when I build libgit2 with ndk-14d, I finally end up with one unresolved symbol (mmap64). So, I currently build libgit2 with ndk 10e. Lots of things to find on the internet on mmap64 stuff, but unclear to me, at this point, if it is a libgit2 problem or a NDK thing.


Looking through the logic what we do and the snippet you show up there... hmm. 
We end up building the docs even though we don't bundle them. And that does 
happen for me after the apk is built.
Can you take a look at 
subsurface-mobile-build-arm/CMakeFiles/documentationLink.dir/build.make and see if 
there's anything suspicious in there? For me there is no reference to just 
"doc" (nor is there in any of the other files in that directory)

That was the file I had been looking at earlier ... there is a lonely "doc" and the end of the following target (on my build):

CMakeFiles/documentation:
/usr/bin/cmake -C <path stripped>/src/subsurface/Documentation OUT=<path stripped>/src/subsurface-mobile-build-arm/Documentation/ doc

--jan
_______________________________________________
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface

Reply via email to