Test results for D on Android/ARM
Joakim via digitalmars-d-ldc
digitalmars-d-ldc at puremagic.com
Mon Nov 2 08:27:56 PST 2015
On Monday, 2 November 2015 at 13:58:11 UTC, Nick Sabalausky wrote:
> Ran the full test suite, not all passed.
>
> Android: v4.1.2
> Device: SCH-I535 (Samsung Galaxy S3 Verizon)
> Chipset: Snapdragon S4 Plus
>
> It is rooted, FWIW.
> ****** FAIL std.mmfile
> std.file.FileException@/home/bert/ldc/runtime/phobos/std/file.d(1802): cannot get cwd: Invalid argument
> ****** FAIL std.path
> std.file.FileException@/home/bert/ldc/runtime/phobos/std/file.d(1802): cannot get cwd: Invalid argument
> ****** FAIL std.process
> std.file.FileException@/home/bert/ldc/runtime/phobos/std/file.d(1802): cannot get cwd: Invalid argument
> 15.633s PASS std.datetime
Hmm, looks like core.sys.posix.unistd.getcwd on your device
doesn't accept arguments of null and 0. Since your Android 4.1,
ie API level 16, device is the oldest tested so far, perhaps
getcwd was implemented differently back then. I'll look at the
source for getcwd in bionic from that time and try putting in a
workaround.
On Monday, 2 November 2015 at 14:35:18 UTC, Vladimir Panteleev
wrote:
> On Sunday, 1 November 2015 at 05:44:04 UTC, Joakim wrote:
>> For example, the Samsung Galaxy S6 uses the Exynos 7420:
>>
>> http://www.gsmarena.com/samsung_galaxy_s6-6849.php
>
> Note that some devices (e.g. the Samsung Galaxy Note series)
> can use different chipsets depending on the exact model, even
> though they are marketed under the same product name.
Yeah, I'm aware. I wanted to see if chipsets make a difference,
but so far there doesn't appear to be any effect from hardware or
manufacturer, only the Android version. I just read that google
strongly recommends that manufacturers simply use AOSP for the
native APIs, so perhaps only the Android API level matters most
of the time.
> All tests pass except std.datetime, both APK and CLI.
>
> Seems to be failing on these lines:
>
> assert(to!string(ourTimeInfo.tm_zone) ==
>
> to!string(osTimeInfo.tm_zone));
Yeah, it appears that that time zone string is being set wrongly
only on your device. I'm not that familiar with std.datetime:
once I wrote some code to extract timezone data from the two
different versions of Android's concatenated timezone file,
everything just worked. If you don't mind, I'll send you a small
binary that'll produce log output that'll help track this issue
down.
More information about the digitalmars-d-ldc
mailing list