diff --git a/tools/xz/patches/100-freebsd-compat.patch b/tools/xz/patches/100-freebsd-compat.patch
new file mode 100644
index 0000000000000000000000000000000000000000..480a65293a7e327797f008ff82100a3cbc0052b1
--- /dev/null
+++ b/tools/xz/patches/100-freebsd-compat.patch
@@ -0,0 +1,11 @@
+--- a/src/common/tuklib_integer.h
++++ b/src/common/tuklib_integer.h
+@@ -48,7 +48,7 @@
+ // Operating system specific features //
+ ////////////////////////////////////////
+ 
+-#if defined(HAVE_BYTESWAP_H)
++#if defined(HAVE_BYTESWAP_H) && !defined(__FreeBSD__)
+ 	// glibc, uClibc, dietlibc
+ #	include <byteswap.h>
+ #	ifdef HAVE_BSWAP_16