Okay, that looks interesting.
We aren't CI-ing on 32-bit PowerPC upstream, currently. I likely have enough resources spare on my POWER8 server to set up a VM (I'm told I can get KVM acceleration for big-endian on a little-endian OS?) but I have no idea how long that will take me to set up. Almost all our PowerPC maintenance is community-provided, largely by one guy. I don't know how much real 32-bit PPC testing he's doing. On 11/01/2019 10:22, Mathieu Malaterre wrote: > On Fri, Jan 11, 2019 at 4:11 PM Jo Shields <direct...@apebox.org> wrote: >> Hi Mathieu, >> >> >> Are you in a position to test a patch? In theory >> https://github.com/mono/boringssl/commit/59b78d07a483450a5d2a1c06b83f04a1e64ba68a >> is sufficient to make it work. I don't want to throw another build at >> the buildd until this gets through into testing. > Starring at it it should work. I was about to submit: > > @@ -85,6 +85,8 @@ extern "C" { > #define OPENSSL_ARM > #elif defined(__PPC64__) || defined(__powerpc64__) > #define OPENSSL_64_BIT > +#elif defined(__PPC__) && !defined(__PPC64__) > +#define OPENSSL_32_BIT > #elif defined(__mips__) && !defined(__LP64__) > #define OPENSSL_32_BIT > #define OPENSSL_MIPS > > Since: > > $ powerpc-linux-gnu-gcc -m32 -dM -E - < /dev/null | grep PPC > #define _ARCH_PPC 1 > #define __PPC__ 1 > #define __PPC 1 > #define PPC 1 > mathieu@macbookpro $ powerpc-linux-gnu-gcc -m64 -dM -E - < /dev/null | grep > PPC > #define _ARCH_PPCGR 1 > #define __PPC64__ 1 > #define _ARCH_PPC 1 > #define __PPC__ 1 > #define _ARCH_PPC64 1 > > Stick to upstream this looks just fine. > > However the build failed for me later on, reporting a failure to find > 'mcs' (*). My G4 is rather slow so let me try again to check there are > no other build failure later on. Mark do you have a faster ppc machine > ? > > (*)if test -w /home/mathieu/tmp/debian/mono-5.16.0.220+dfsg3/mcs; then > :; else chmod -R +w > /home/mathieu/tmp/debian/mono-5.16.0.220+dfsg3/mcs; fi > cd /home/mathieu/tmp/debian/mono-5.16.0.220+dfsg3/mcs && make > --no-print-directory -s NO_DIR_CHECK=1 > PROFILES='binary_reference_assemblies net_4_x xbuild_12 xbuild_14 > ' CC='gcc' all-profiles > mkdir -p -- build/deps > make[7]: mcs: Command not found > make[7]: *** [build/profiles/basic.make:118: > build/deps/basic-profile-check.exe] Error 127 > *** The runtime 'mono' doesn't appear to be usable. > *** Trying the 'monolite-linux/1051600014' directory. > > Unhandled Exception: > System.NullReferenceException: Object reference not set to an instance > of an object > at Mono.CSharp.Binary.CreatePointerOperatorsTable > (Mono.CSharp.BuiltinTypes types) [0x0006b] in > <9d70195405974ada92fc07fda5c6d57c>:0 > [ERROR] FATAL UNHANDLED EXCEPTION: System.NullReferenceException: > Object reference not set to an instance of an object > at Mono.CSharp.Binary.CreatePointerOperatorsTable > (Mono.CSharp.BuiltinTypes types) [0x0006b] in > <9d70195405974ada92fc07fda5c6d57c>:0 > make[9]: *** [build/profiles/basic.make:118: > build/deps/basic-profile-check.exe] Error 1 > *** The contents of your 'monolite-linux/1051600014' directory may be > out-of-date > *** You may want to try 'make get-monolite-latest'