diff options
author | kientzle <kientzle@FreeBSD.org> | 2006-11-26 05:39:28 +0000 |
---|---|---|
committer | kientzle <kientzle@FreeBSD.org> | 2006-11-26 05:39:28 +0000 |
commit | 1ddaa49caf3c22f62512ddb806dc4578cb789cda (patch) | |
tree | 1fa339f21447c4450be24714778642b0719f5570 /lib/libarchive/Makefile | |
parent | d388f0af90346e7727e68e4952c4c96d4fd15ba3 (diff) | |
download | FreeBSD-src-1ddaa49caf3c22f62512ddb806dc4578cb789cda.zip FreeBSD-src-1ddaa49caf3c22f62512ddb806dc4578cb789cda.tar.gz |
Unbreak libarchive on arm. Two parts of libarchive relied on a
traditional shortcut of defining on-disk layouts using structures of
character arrays. Unfortunately, as recently discussed on cvs-all@,
this usage is not actually sanctioned by the standards and
specifically fails on GCC/arm (unless your data structures happen to
be "naturally aligned").
The new code defines offsets/sizes for data fields and accesses
them using explicit pointer arithmetic, instead of casting to
a structure and accessing structure fields. In particular,
the new code is now clean with WARNS=6 on arm.
MFC after: 14 days
Diffstat (limited to 'lib/libarchive/Makefile')
-rw-r--r-- | lib/libarchive/Makefile | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/lib/libarchive/Makefile b/lib/libarchive/Makefile index 9486247..a024f9a 100644 --- a/lib/libarchive/Makefile +++ b/lib/libarchive/Makefile @@ -21,12 +21,7 @@ CFLAGS+= -DPACKAGE_NAME=\"lib${LIB}\" CFLAGS+= -DPACKAGE_VERSION=\"${VERSION}\" CFLAGS+= -I${.OBJDIR} -# FreeBSD/arm has some limitations. -.if ${MACHINE_ARCH} == "arm" -WARNS?= 3 -.else WARNS?= 6 -.endif # Headers to be installed in /usr/include INCS= archive.h archive_entry.h |