zenorogue / hyperrogue

A SDL roguelike in a non-euclidean world
GNU General Public License v2.0
569 stars 72 forks source link

F-Droid build failed #286

Open linsui opened 3 years ago

linsui commented 3 years ago
> Task :app:externalNativeBuildRelease FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:externalNativeBuildRelease'.
> Build command failed.
  Error while executing process /opt/android-sdk/cmake/3.6.4111459/bin/cmake with arguments {--build /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/.externalNativeBuild/cmake/release/x86_64 --target hyper}
  [1/2] Building CXX object CMakeFiles/hyper.dir/src/main/jni/hyper.cpp.o
  FAILED: /opt/android-sdk/ndk/17.2.4988734/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++  --target=x86_64-none-linux-android --gcc-toolchain=/opt/android-sdk/ndk/17.2.4988734/toolchains/x86_64-4.9/prebuilt/linux-x86_64 --sysroot=/opt/android-sdk/ndk/17.2.4988734/sysroot  -Dhyper_EXPORTS -isystem /opt/android-sdk/ndk/17.2.4988734/sources/cxx-stl/llvm-libc++/include -isystem /opt/android-sdk/ndk/17.2.4988734/sources/android/support/include -isystem /opt/android-sdk/ndk/17.2.4988734/sources/cxx-stl/llvm-libc++abi/include -isystem /opt/android-sdk/ndk/17.2.4988734/sysroot/usr/include/x86_64-linux-android -D__ANDROID_API__=21 -g -DANDROID -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -Wa,--noexecstack -Wformat -Werror=format-security -std=c++11  -std=gnu++11 -O3 -O2 -DNDEBUG  -fPIC -MD -MT CMakeFiles/hyper.dir/src/main/jni/hyper.cpp.o -MF CMakeFiles/hyper.dir/src/main/jni/hyper.cpp.o.d -o CMakeFiles/hyper.dir/src/main/jni/hyper.cpp.o -c /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/hyper.cpp
  In file included from /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/hyper.cpp:60:
  In file included from /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../hyper.cpp:42:
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../rulegen.cpp:1563:11: error: use of undeclared identifier 'argis'
    else if(argis("-rulegen")) {
            ^
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../rulegen.cpp:1564:5: error: use of undeclared identifier 'PHASEFROM'
      PHASEFROM(3);
      ^
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../rulegen.cpp:1567:11: error: use of undeclared identifier 'argis'
    else if(argis("-rulegen-cleanup"))
            ^
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../rulegen.cpp:1569:11: error: use of undeclared identifier 'argis'
    else if(argis("-rulegen-play")) {
            ^
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../rulegen.cpp:1570:5: error: use of undeclared identifier 'PHASEFROM'
      PHASEFROM(3);
      ^
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../rulegen.cpp:1577:11: error: use of undeclared identifier 'argis'
    else if(argis("-d:rulegen")) {
            ^
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../rulegen.cpp:1578:5: error: use of undeclared identifier 'launch_dialog'
      launch_dialog(show);
      ^
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../rulegen.cpp:1585:13: error: use of undeclared identifier 'hooks_args'
      addHook(hooks_args, 100, args)
              ^
  In file included from /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/hyper.cpp:60:
  In file included from /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../hyper.cpp:49:
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../language.cpp:13:48: warning: comparison of unsigned enum expression >= 0 is always true [-Wtautological-unsigned-enum-zero-compare]
  EX const string dnameof(eMonster m) { return m >= 0 && m < motypes ? minf[m].name : format("[MONSTER %d]", m); }
                                               ~ ^  ~
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../language.cpp:14:45: warning: comparison of unsigned enum expression >= 0 is always true [-Wtautological-unsigned-enum-zero-compare]
  EX const string dnameof(eLand l) { return l >= 0 && l < landtypes ? linf[l].name : format("[LAND %d]", l); }
                                            ~ ^  ~
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../language.cpp:15:45: warning: comparison of unsigned enum expression >= 0 is always true [-Wtautological-unsigned-enum-zero-compare]
  EX const string dnameof(eWall w) { return w >= 0 && w < walltypes ? winf[w].name : format("[WALL %d]", w); }
                                            ~ ^  ~
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../language.cpp:16:45: warning: comparison of unsigned enum expression >= 0 is always true [-Wtautological-unsigned-enum-zero-compare]
  EX const string dnameof(eItem i) { return i >= 0 && i < ittypes ? iinf[i].name : format("[ITEM %d]", i); }
                                            ~ ^  ~
  In file included from /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/hyper.cpp:60:
  In file included from /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../hyper.cpp:57:
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../yendor.cpp:748:13: warning: comparison of unsigned enum expression >= 0 is always true [-Wtautological-unsigned-enum-zero-compare]
      if(land >=0 && land < landtypes) {
         ~~~~ ^ ~
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../yendor.cpp:763:13: warning: comparison of unsigned enum expression >= 0 is always true [-Wtautological-unsigned-enum-zero-compare]
      if(land >=0 && land < landtypes) {
         ~~~~ ^ ~
  In file included from /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/hyper.cpp:60:
  In file included from /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../hyper.cpp:23:
  In file included from /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../hyper.h:931:
  locations.cpp:137:41: warning: offset of on non-standard-layout type 'hr::heptagon' [-Winvalid-offsetof]
    T* full() { return (T*)((char*)this - offsetof(T, c)); }
                                          ^           ~
  /opt/android-sdk/ndk/17.2.4988734/toolchains/llvm/prebuilt/linux-x86_64/lib64/clang/6.0.2/include/stddef.h:120:24: note: expanded from macro 'offsetof'
  #define offsetof(t, d) __builtin_offsetof(t, d)
                         ^                     ~
  locations.cpp:149:35: note: in instantiation of member function 'hr::connection_table<hr::heptagon>::full' requested here
    int fix(int d) { return gmod(d, full()->degree()); }
                                    ^
  locations.cpp:357:57: note: in instantiation of member function 'hr::connection_table<hr::heptagon>::fix' requested here
    heptagon *cmodmove(int d) { return createStep(this, c.fix(d)); }
                                                          ^
  locations.cpp:137:41: warning: offset of on non-standard-layout type 'hr::cell' [-Winvalid-offsetof]
    T* full() { return (T*)((char*)this - offsetof(T, c)); }
                                          ^           ~
  /opt/android-sdk/ndk/17.2.4988734/toolchains/llvm/prebuilt/linux-x86_64/lib64/clang/6.0.2/include/stddef.h:120:24: note: expanded from macro 'offsetof'
  #define offsetof(t, d) __builtin_offsetof(t, d)
                         ^                     ~
  locations.cpp:149:35: note: in instantiation of member function 'hr::connection_table<hr::cell>::full' requested here
    int fix(int d) { return gmod(d, full()->degree()); }
                                    ^
  locations.cpp:378:52: note: in instantiation of member function 'hr::connection_table<hr::cell>::fix' requested here
    cell* cmodmove(int d) { return createMov(this, c.fix(d)); }
                                                     ^
  locations.cpp:183:11: warning: offset of on non-standard-layout type 'hr::heptagon' [-Winvalid-offsetof]
    int b = offsetof(T, c) + offsetof(connection_table<T>, move_table) + sizeof(T*) * degree + degree;
            ^           ~
  /opt/android-sdk/ndk/17.2.4988734/toolchains/llvm/prebuilt/linux-x86_64/lib64/clang/6.0.2/include/stddef.h:120:24: note: expanded from macro 'offsetof'
  #define offsetof(t, d) __builtin_offsetof(t, d)
                         ^                     ~
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../heptagon.cpp:81:17: note: in instantiation of function template specialization 'hr::tailored_alloc<hr::heptagon>' requested here
    heptagon *h = tailored_alloc<heptagon> (type);
                  ^
  In file included from /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/hyper.cpp:60:
  In file included from /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../hyper.cpp:23:
  In file included from /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../hyper.h:931:
  locations.cpp:183:11: warning: offset of on non-standard-layout type 'hr::cell' [-Winvalid-offsetof]
    int b = offsetof(T, c) + offsetof(connection_table<T>, move_table) + sizeof(T*) * degree + degree;
            ^           ~
  /opt/android-sdk/ndk/17.2.4988734/toolchains/llvm/prebuilt/linux-x86_64/lib64/clang/6.0.2/include/stddef.h:120:24: note: expanded from macro 'offsetof'
  #define offsetof(t, d) __builtin_offsetof(t, d)
                         ^                     ~
  /home/vagrant/build/com.roguetemple.hyperroid/hyperroid/app/src/main/jni/../../../../../cell.cpp:215:13: note: in instantiation of function template specialization 'hr::tailored_alloc<hr::cell>' requested here
    cell *c = tailored_alloc<cell> (type);
              ^
  10 warnings and 8 errors generated.
  ninja: build stopped: subcommand failed.

Cloud you please take a look? Thanks!

zenorogue commented 3 years ago

There are some warnings, I think the only serious error was the lack of CAP_COMMANDLINE guard in rulegen -- that should be fixed in the current commit. Thanks!

linsui commented 3 years ago

Thanks!

linsui commented 2 years ago

12.0f still failed for me. See https://gitlab.com/linsui/fdroiddata/-/jobs/2004349678#L1800. Could you please take a look? Thanks!

licaon-kter commented 1 year ago

12.0v fails too: https://gitlab.com/fdroid/fdroiddata/-/jobs/3037829066#L1842

/LE: https://gitlab.com/fdroid/fdroiddata/-/commit/9e846c9353e762743628b6621dfc6286384b349f

Voix11 commented 1 year ago

F-droid build still doesn't work

licaon-kter commented 1 year ago

@Voix11 was it fixed in code? Update tagged?

Voix11 commented 1 year ago

@licaon-kter I don't know. I mean that this game downloaded from f-droid doesn't work. It crashes after launch.

linsui commented 7 months ago

13.0a failed. https://gitlab.com/fdroid/fdroiddata/-/jobs/5925928666