buildroot/package/python3/0008-Serial-ioctl-workaround.patch
Adam Duskett 6e7e733f3b python3: bump to 3.7.0
Other changes include:

 - Refreshing all necessary patches for 3.7.0

 - Add a hash for the license file.

 - Python no longer has it's own internal libffi, as such, host-libffi
   is now required to build host-python3, and is added as a
   dependency.

 - Drop PYTHON3_LIBTOOL_PATCH = NO, since there is no longer any
   internal libffi copy that was causing the libtool patching process
   to fail.

 - A new core module "uuid" is now is added in the Config.in file, and
   relies on util-linux's uuid library.

 - Also, a new patch: 0030-Fix-cross-compiling-the-uuid-module.patch
   is required to fix compiling the uuid module, because the include
   directory search path for uuid.h is hardcoded to /usr/include/uuid,
   which causes an "unsafe for cross-compilation" error during
   compiling if the host pc has uuid headers installed.

 - 0031-Add-an-option-to-disable-uuid-module.patch is added to allow
   disabling the Python3 UUID module, so that when
   BR2_PACKAGE_PYTHON3_UUID is disabled by the UUID library is
   present, the uuid Python module is not built, as expected.

 - 0032-fix-building-on-older-distributions.patch is added to change
   os.replace by os.rename in the update_file.py script to fix
   building on older Linux distributions that have older versions of
   python that don't include os.replace.

   os.rename acts in the same way as os.replace, but is cross-platform
   compatible. Because Buildroot is guaranteed to be built in a POSIX
   environment, it is safe to change replace to rename.

Tested on CentOS6 and Fedora28, All test results passed:
             br-arm-full [1/6]: OK
  br-arm-cortex-a9-glibc [2/6]: OK
   br-arm-cortex-m4-full [3/6]: SKIPPED
          br-x86-64-musl [4/6]: OK
      br-arm-full-static [5/6]: SKIPPED
armv5-ctng-linux-gnueabi [6/6]: OK
6 builds, 2 skipped, 0 build failed, 0 legal-info failed

Signed-off-by: Adam Duskett <aduskett@gmail.com>
[Thomas:
 - remove PYTHON3_LIBTOOL_PATCH = NO
 - improve the solution in patch 0030-Fix-cross-compiling-the-uuid-module
 - add patch 0031-Add-an-option-to-disable-uuid-module]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-08-18 11:17:07 +02:00

34 lines
981 B
Diff

From 20767cb868ff271f4501a6e023f367400882d75e Mon Sep 17 00:00:00 2001
From: Baruch Siach <baruch@tkos.co.il>
Date: Wed, 23 Dec 2015 11:44:02 +0100
Subject: [PATCH] Serial ioctl() workaround
The ioctls.h of some architectures (notably xtensa) references structs from
linux/serial.h. Make sure to include this header as well.
Also, undef TIOCTTYGSTRUCT that require reference to internal kernel tty_struct,
but isn't actually referenced in modern kernels.
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
---
Modules/termios.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Modules/termios.c b/Modules/termios.c
index b78d33e688..58b0444565 100644
--- a/Modules/termios.c
+++ b/Modules/termios.c
@@ -15,7 +15,9 @@
#endif
#include <termios.h>
+#include <linux/serial.h>
#include <sys/ioctl.h>
+#undef TIOCTTYGSTRUCT
/* HP-UX requires that this be included to pick up MDCD, MCTS, MDSR,
* MDTR, MRI, and MRTS (appearantly used internally by some things
--
2.13.5