diff options
author | Dan HorĂ¡k <dan@danny.cz> | 2012-01-19 12:42:53 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2012-01-21 03:48:26 +0100 |
commit | ce3fd7e72a1b101002617bd410031e65d290f56f (patch) | |
tree | 139630c73096829d750993e1c66f02903e0f4ab9 /src/journal | |
parent | d1f262fa46a1ae9450d3a9aa1f103a16120de350 (diff) |
journal: systemd v38 fails to build on big-endians
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.
With regards
Dan
Diffstat (limited to 'src/journal')
-rw-r--r-- | src/journal/sd-journal.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/journal/sd-journal.c b/src/journal/sd-journal.c index 5e1fd4773e..baf51db1a8 100644 --- a/src/journal/sd-journal.c +++ b/src/journal/sd-journal.c @@ -66,7 +66,7 @@ static void init_location(Location *l, JournalFile *f, Object *o) { l->seqnum_id = f->header->seqnum_id; l->realtime = le64toh(o->entry.realtime); l->monotonic = le64toh(o->entry.monotonic); - l->boot_id = le64toh(o->entry.boot_id); + l->boot_id = o->entry.boot_id; l->xor_hash = le64toh(o->entry.xor_hash); l->seqnum_set = l->realtime_set = l->monotonic_set = l->xor_hash_set = true; |