[systemd-devel] systemd v38 fails to build on big-endians

Lennart Poettering lennart at poettering.net
Fri Jan 20 18:50:48 PST 2012


On Thu, 19.01.12 12:42, Dan Horák (dan at danny.cz) wrote:

> Hi,
> 
> during the builds for Fedora/s390x I've found that systemd v38 fails to
> build on big-endian platforms.
>
> 
> ...
> make[2]: Entering directory `/root/systemd'
>   CC     src/journal/libsystemd_journal_la-sd-journal.lo
> src/journal/sd-journal.c: In function 'init_location':
> src/journal/sd-journal.c:69:22: error: incompatible types when
> initializing type 'long unsigned int' using type 'sd_id128_t'
> src/journal/sd-journal.c:69:20: error: incompatible types when assigning
> to type 'sd_id128_t' from type 'long unsigned int'
> make[2]: *** [src/journal/libsystemd_journal_la-sd-journal.lo] Error 1
> 
> I see the problem in using le64toh() on the 16 bytes boot_id structure
> in init_location()
> 
> Please see
> http://s390.koji.fedoraproject.org/koji/taskinfo?taskID=544375 for a
> full build log and attachment for a proposed fix.

Ouch, embarassing bug. Fix applied. Thanks!

Lennart

-- 
Lennart Poettering - Red Hat, Inc.


More information about the systemd-devel mailing list