Commit b935789d authored by AlmAck's avatar AlmAck
Browse files

GCC 7.2.1, new ABI!

Introduced new ABI as descrived in #39
https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html
parent 222beb85
From 7a7431ddc2332ddc3753330a8dd815bb5f7193c0 Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hjl.tools@gmail.com>
Date: Tue, 26 Sep 2017 14:41:22 -0700
Subject: [PATCH] x86-64: Don't pass output_bfd to info->callbacks->minfo
Don't pass output_bfd to info->callbacks->minfo when dumping local IFUNC
functions in the map file.
PR ld/22199
* elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Don't pass
output_bfd to info->callbacks->minfo.
(cherry picked from commit ac69a0d75bf472a140e5405c8a90420d5f63a998)
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
index d9225ad..1f6dfb8 100644
--- a/bfd/elf64-x86-64.c
+++ b/bfd/elf64-x86-64.c
@@ -6133,7 +6133,6 @@ elf_x86_64_finish_dynamic_symbol (bfd *output_bfd,
if (SYMBOL_REFERENCES_LOCAL (info, h))
{
info->callbacks->minfo (_("Local IFUNC function `%s' in %B\n"),
- output_bfd,
h->root.root.string,
h->root.u.def.section->owner);
--
2.9.3
# maintainer: AlmAck <almack@chakralinux.org>
pkgname=binutils
pkgver=2.27
pkgrel=4
_commit=2870b1ba
pkgver=2.29.1
pkgrel=1
pkgdesc="A set of programs to assemble and manipulate binary and object files"
arch=('x86_64')
url="http://www.gnu.org/software/binutils/"
license=('GPL')
groups=('base-devel')
depends=('glibc>=2.25' 'zlib')
depends=('glibc>=2.26' 'zlib')
makedepends=('git')
checkdepends=('dejagnu' 'bc')
conflicts=('binutils-multilib')
replaces=('binutils-multilib')
options=('staticlibs' '!distcc' '!ccache')
source=(git+https://sourceware.org/git/binutils-gdb.git#commit=${_commit})
md5sums=('SKIP')
source=(https://ftp.gnu.org/gnu/binutils/binutils-$pkgver.tar.xz{,.sig}
0001-x86-64_Dont_pass_output_bfd_to_info-callbacks-minfo.patch)
validpgpkeys=(3A24BC1E8FB409FA9F14371813FCEF89DD9E3C4F)
md5sums=('acc9cd826edb9954ac7cecb81c727793'
'SKIP'
'e4be936139ef46122cb3841881c432b2')
prepare() {
cd binutils-gdb
cd binutils-$pkgver
# hack! - libiberty configure tests for header files using "$CPP $CPPFLAGS"
sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure
mkdir ${srcdir}/binutils-build
# https://bugs.archlinux.org/task/55741
git apply ../0001-x86-64_Dont_pass_output_bfd_to_info-callbacks-minfo.patch
mkdir -p ${srcdir}/binutils-build
}
build() {
cd binutils-build
../binutils-gdb/configure \
"$srcdir/binutils-$pkgver/configure" \
--prefix=/usr \
--with-lib-path=/usr/lib:/usr/local/lib \
--with-bugurl=http://chakralinux.org/bugtracker \
--with-bugurl=https://code.chakralinux.org/ \
--enable-threads \
--enable-shared \
--enable-ld=default \
--enable-gold \
--enable-plugins \
--enable-relro \
--enable-deterministic-archives \
--with-pic \
--disable-werror \
--disable-gdb # we have an extra gdb package, so we do not build gdb from binutils
--disable-gdb \
--with-system-zlib
# check the host environment and makes sure all the necessary tools are available
make configure-host
......
pkgname=binutils
pkgver=2.28
pkgrel=2
_commit=c44a536bebdf479b6f33d972f9abd123f1b13aba
pkgdesc="A set of programs to assemble and manipulate binary and object files"
arch=('x86_64')
url="http://www.gnu.org/software/binutils/"
license=('GPL')
groups=('base-devel')
depends=('glibc>=2.25' 'zlib')
makedepends=('git')
checkdepends=('dejagnu' 'bc')
conflicts=('binutils-multilib')
replaces=('binutils-multilib')
options=('staticlibs' '!distcc' '!ccache')
source=(git+https://sourceware.org/git/binutils-gdb.git#commit=${_commit})
md5sums=('SKIP')
prepare() {
cd binutils-gdb
# hack! - libiberty configure tests for header files using "$CPP $CPPFLAGS"
sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure
mkdir ${srcdir}/binutils-build
}
build() {
cd binutils-build
../binutils-gdb/configure \
--prefix=/usr \
--with-lib-path=/usr/lib:/usr/local/lib \
--with-bugurl=http://chakralinux.org/bugtracker \
--enable-threads \
--enable-shared \
--enable-ld=default \
--enable-gold \
--enable-plugins \
--enable-deterministic-archives \
--disable-werror \
--disable-gdb # we have an extra gdb package, so we do not build gdb from binutils
# check the host environment and makes sure all the necessary tools are available
make configure-host
make tooldir=/usr
}
check() {
cd binutils-build
# unset LDFLAGS as testsuite makes assumptions about which ones are active
# ignore failures in gold testsuite...
make -k LDFLAGS="" check || true
}
package() {
cd binutils-build
make prefix=${pkgdir}/usr tooldir=${pkgdir}/usr install
# Remove unwanted files
rm ${pkgdir}/usr/share/man/man1/{dlltool,nlmconv,windres,windmc}*
# No shared linking to these files outside binutils
rm ${pkgdir}/usr/lib/lib{bfd,opcodes}.so
echo "INPUT ( /usr/lib/libbfd.a -liberty -lz -ldl )" > "$pkgdir"/usr/lib/libbfd.so
echo "INPUT ( /usr/lib/libopcodes.a -lbfd )" > "$pkgdir"/usr/lib/libopcodes.so
}
infodir=usr/share/info
filelist=(as.info bfd.info binutils.info gprof.info ld.info)
post_upgrade() {
[ -x usr/bin/install-info ] || return 0
for file in ${filelist[@]}; do
install-info $infodir/$file.gz $infodir/dir 2> /dev/null
done
}
pre_remove() {
[ -x usr/bin/install-info ] || return 0
for file in ${filelist[@]}; do
install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
done
}
# maintainer: Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
# maintainer: AlmAck <almack@chakralinux.org>
# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
# NOTE: libtool requires rebuilt with each new gcc version
pkgname=('gcc' 'gcc-libs' 'lib32-gcc-libs' 'gcc-fortran' 'gcc-objc' 'gcc-ada' 'gcc-go')
pkgver=6.3.1
_pkgver=6
_islver=0.16.1
pkgrel=3
_commit=4fc407888a30c5d953816b05c8a8e98ec2ab3101
pkgver=7.2.1+20180117
_majorver=${pkgver:0:1}
_islver=0.18
pkgrel=1
_commit=d1abe720238b8d3316565e56d8dbbf163319b3bb
pkgdesc="The GNU Compiler Collection"
arch=('x86_64')
license=('GPL' 'LGPL' 'FDL' 'custom')
url="http://gcc.gnu.org"
makedepends=('binutils>=2.27' 'libmpc' 'gcc-ada' 'doxygen' 'git' 'lib32-gcc-libs')
makedepends=('binutils' 'libmpc' 'gcc-ada' 'doxygen' 'git' 'lib32-gcc-libs')
checkdepends=('dejagnu' 'inetutils')
options=('!emptydirs')
source=(git+https://gcc.gnu.org/git/gcc.git#commit=${_commit}
#source=(git+https://gcc.gnu.org/git/gcc.git#commit=${_commit}
source=(https://github.com/gcc-mirror/gcc/archive/${_commit}.tar.gz
http://isl.gforge.inria.fr/isl-${_islver}.tar.bz2)
md5sums=('SKIP'
'ac1f25a0677912952718a51f5bc20f32')
'11436d6b205e516635b666090b94ab32')
_libdir="usr/lib/gcc/$CHOST/$pkgver"
_libdir="usr/lib/gcc/$CHOST/${pkgver%%+*}"
prepare() {
cd ${srcdir}/gcc
ln -s gcc-${_commit} gcc
cd gcc
# link isl for in-tree build
ln -s ../isl-${_islver} isl
......@@ -29,29 +34,29 @@ prepare() {
# Do not run fixincludes
sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in
# Arch Linux installs x86_64 libraries /lib, so do we
# Chakra Linux installs x86_64 libraries /lib, so do we
sed -i '/m64=/s/lib64/lib/' gcc/config/i386/t-linux64
# hack! - some configure tests for header files using "$CPP $CPPFLAGS"
sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" {libiberty,gcc}/configure
mkdir ${srcdir}/gcc-build
mkdir -p "$srcdir/gcc-build"
}
build() {
cd ${srcdir}/gcc-build
cd gcc-build
# using -pipe causes spurious test-suite failures
# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48565
CFLAGS=${CFLAGS/-pipe/}
CXXFLAGS=${CXXFLAGS/-pipe/}
${srcdir}/gcc/configure --prefix=/usr \
"$srcdir/gcc/configure" --prefix=/usr \
--libdir=/usr/lib \
--libexecdir=/usr/lib \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--with-bugurl=https://chakraos.org/bugtracker \
--with-bugurl=https://code.chakralinux.org/ \
--enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ \
--enable-shared \
--enable-threads=posix \
......@@ -73,7 +78,8 @@ build() {
--enable-multilib \
--disable-werror \
--enable-checking=release \
--with-default-libstdcxx-abi=gcc4-compatible
--enable-default-pie \
--enable-default-ssp
make
......@@ -82,7 +88,7 @@ build() {
}
check() {
cd ${srcdir}/gcc-build
cd gcc-build
# increase stack size to prevent test failures
# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31827
......@@ -90,7 +96,7 @@ check() {
# do not abort on error as some are "expected"
make -k check || true
${srcdir}/gcc/contrib/test_summary
"$srcdir/gcc/contrib/test_summary"
}
......@@ -98,14 +104,13 @@ package_gcc-libs()
{
pkgdesc="Runtime libraries shipped by GCC"
groups=('base')
depends=('glibc>=2.25')
depends=('glibc>=2.26')
conflicts=('gcc-libs-multilib')
provides=('gcc-libs-multilib=${pkgver}')
replaces=('gcc-libs-multilib')
options=('!emptydirs' '!strip')
install=gcc-libs.install
cd ${srcdir}/gcc-build
cd gcc-build
make -C $CHOST/libgcc DESTDIR=${pkgdir} install-shared
rm ${pkgdir}/${_libdir}/libgcc_eh.a
......@@ -117,20 +122,16 @@ package_gcc-libs()
libgomp \
libitm \
libquadmath \
libsanitizer/{a,l,ub}san \
libsanitizer/{a,l,ub,t}san \
libstdc++-v3/src \
libvtv; do
make -C $CHOST/$lib DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES
done
make -C $CHOST/libsanitizer/tsan DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES
make -C $CHOST/libobjc DESTDIR=${pkgdir} install-libs
make -C $CHOST/libstdc++-v3/po DESTDIR=${pkgdir} install
make -C $CHOST/libmpx DESTDIR=${pkgdir} install
rm ${pkgdir}/usr/lib/libmpx.spec
rm -f "${pkgdir}/usr/lib/libmpx.spec"
for lib in libgomp \
libitm \
......@@ -138,7 +139,7 @@ package_gcc-libs()
make -C $CHOST/$lib DESTDIR=${pkgdir} install-info
done
# remove stuff in lib32-gcc-libs
# remove files provided by lib32-gcc-libs
rm -r ${pkgdir}/usr/lib32
# Install Runtime Library Exception
......@@ -146,54 +147,18 @@ package_gcc-libs()
${pkgdir}/usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION
}
package_lib32-gcc-libs()
{
pkgdesc="Runtime libraries shipped by GCC (32-bit)"
depends=('lib32-glibc>=2.22')
options=('!emptydirs' '!strip')
cd ${srcdir}/gcc-build
make -C $CHOST/32/libgcc DESTDIR=${pkgdir} install-shared
rm ${pkgdir}/${_libdir}/32/libgcc_eh.a
for lib in libatomic \
libcilkrts \
libgfortran \
libgo \
libgomp \
libitm \
libquadmath \
libsanitizer/{a,l,ub}san \
libstdc++-v3/src \
libvtv; do
make -C $CHOST/32/$lib DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES
done
make -C $CHOST/32/libobjc DESTDIR=${pkgdir} install-libs
# remove stuff in gcc-libs-multilib
rm -r ${pkgdir}/usr/lib
# Install Runtime Library Exception
install -Dm644 ${srcdir}/gcc/COPYING.RUNTIME \
${pkgdir}/usr/share/licenses/lib32-gcc-libs/RUNTIME.LIBRARY.EXCEPTION
}
package_gcc()
{
pkgdesc="The GNU Compiler Collection - C and C++ frontends"
depends=("gcc-libs=$pkgver-$pkgrel" 'binutils>=2.27' 'libmpc' 'isl')
depends=("gcc-libs=$pkgver-$pkgrel" 'binutils>=2.28' 'libmpc' 'isl')
optdepends=("lib32-gcc-libs: to compile with -m32")
conflicts=('gcc-multilib')
provides=('gcc-multilib=${pkgver}')
replaces=('gcc-multilib')
groups=('base-devel')
options=('staticlibs')
install=gcc.install
cd ${srcdir}/gcc-build
cd gcc-build
make -C gcc DESTDIR=${pkgdir} install-driver install-cpp install-gcc-ar \
c++.install-common install-headers install-plugin install-lto-wrapper
......@@ -203,7 +168,7 @@ package_gcc()
make -C $CHOST/libgcc DESTDIR=${pkgdir} install
make -C $CHOST/32/libgcc DESTDIR=${pkgdir} install
rm ${pkgdir}/usr/lib{,32}/libgcc_s.so*
rm -f ${pkgdir}/usr/lib{,32}/libgcc_s.so*
make -C $CHOST/libstdc++-v3/src DESTDIR=${pkgdir} install
make -C $CHOST/libstdc++-v3/include DESTDIR=${pkgdir} install
......@@ -244,7 +209,6 @@ package_gcc()
make -C $CHOST/32/libmpx DESTDIR=${pkgdir} install-nodist_toolexeclibHEADERS
make -C libiberty DESTDIR=${pkgdir} install
# install PIC version of libiberty
install -m644 ${srcdir}/gcc-build/libiberty/pic/libiberty.a ${pkgdir}/usr/lib
make -C gcc DESTDIR=${pkgdir} install-man install-info
......@@ -289,9 +253,13 @@ EOF
# install the libstdc++ man pages
make -C $CHOST/libstdc++-v3/doc DESTDIR=$pkgdir doc-install-man
# remove files provided by lib32-gcc-libs
rm -f "$pkgdir"/usr/lib32/lib{stdc++,gcc_s}.so
# Install Runtime Library Exception
install -d ${pkgdir}/usr/share/licenses/gcc/
ln -s ../gcc-libs/RUNTIME.LIBRARY.EXCEPTION ${pkgdir}/usr/share/licenses/gcc/
ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \
"${pkgdir}/usr/share/licenses/${pkgname}/"
}
package_gcc-fortran()
......@@ -302,9 +270,8 @@ package_gcc-fortran()
provides=('gcc-fortran-multilib=${pkgver}')
replaces=('gcc-fortran-multilib')
options=('staticlibs' '!emptydirs')
install=gcc-fortran.install
cd ${srcdir}/gcc-build
cd gcc-build
make -C $CHOST/libgfortran DESTDIR=$pkgdir install-cafexeclibLTLIBRARIES \
install-{toolexeclibDATA,nodist_fincludeHEADERS}
make -C $CHOST/32/libgfortran DESTDIR=$pkgdir install-cafexeclibLTLIBRARIES \
......@@ -317,7 +284,8 @@ package_gcc-fortran()
# Install Runtime Library Exception
install -d ${pkgdir}/usr/share/licenses/gcc-fortran/
ln -s ../gcc-libs/RUNTIME.LIBRARY.EXCEPTION ${pkgdir}/usr/share/licenses/gcc-fortran/
ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \
"${pkgdir}/usr/share/licenses/${pkgname}/"
}
package_gcc-objc()
......@@ -331,11 +299,12 @@ package_gcc-objc()
cd ${srcdir}/gcc-build
make DESTDIR=$pkgdir -C $CHOST/libobjc install-headers
install -dm755 $pkgdir/${_libdir}
install -m755 gcc/cc1obj{,plus} $pkgdir/${_libdir}/
install -m755 gcc/cc1obj{,plus} "$pkgdir/${_libdir}"/
# Install Runtime Library Exception
install -d ${pkgdir}/usr/share/licenses/gcc-objc/
ln -s ../gcc-libs/RUNTIME.LIBRARY.EXCEPTION ${pkgdir}/usr/share/licenses/gcc-objc/
ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \
"${pkgdir}/usr/share/licenses/${pkgname}/"
}
package_gcc-ada()
......@@ -346,33 +315,33 @@ package_gcc-ada()
provides=('gcc-ada-multilib=${pkgver}')
replaces=('gcc-ada-multilib')
options=('staticlibs' '!emptydirs')
install=gcc-ada.install
cd ${srcdir}/gcc-build/gcc
cd gcc-build/gcc
make DESTDIR=$pkgdir ada.install-{common,info}
install -m755 gnat1 $pkgdir/${_libdir}
cd ../$CHOST/32/libada
cd "${srcdir}"/gcc-build/$CHOST/32/libada
make DESTDIR=${pkgdir} INSTALL="install" \
INSTALL_DATA="install -m644" install-gnatlib
ln -s gcc ${pkgdir}/usr/bin/gnatgcc
# insist on dynamic linking, but keep static libraries because gnatmake complains
mv ${pkgdir}/${_libdir}/adalib/libgna{rl,t}-${_pkgver}.so ${pkgdir}/usr/lib
ln -s libgnarl-${_pkgver}.so ${pkgdir}/usr/lib/libgnarl.so
ln -s libgnat-${_pkgver}.so ${pkgdir}/usr/lib/libgnat.so
mv ${pkgdir}/${_libdir}/adalib/libgna{rl,t}-${_majorver}.so ${pkgdir}/usr/lib
ln -s libgnarl-${_majorver}.so ${pkgdir}/usr/lib/libgnarl.so
ln -s libgnat-${_majorver}.so ${pkgdir}/usr/lib/libgnat.so
rm ${pkgdir}/${_libdir}/adalib/libgna{rl,t}.so
install -d ${pkgdir}/usr/lib32/
mv ${pkgdir}/${_libdir}/32/adalib/libgna{rl,t}-${_pkgver}.so ${pkgdir}/usr/lib32
ln -s libgnarl-${_pkgver}.so ${pkgdir}/usr/lib32/libgnarl.so
ln -s libgnat-${_pkgver}.so ${pkgdir}/usr/lib32/libgnat.so
mv ${pkgdir}/${_libdir}/32/adalib/libgna{rl,t}-${_majorver}.so ${pkgdir}/usr/lib32
ln -s libgnarl-${_majorver}.so ${pkgdir}/usr/lib32/libgnarl.so
ln -s libgnat-${_majorver}.so ${pkgdir}/usr/lib32/libgnat.so
rm ${pkgdir}/${_libdir}/32/adalib/libgna{rl,t}.so
# Install Runtime Library Exception
install -d ${pkgdir}/usr/share/licenses/gcc-ada/
ln -s ../gcc-libs/RUNTIME.LIBRARY.EXCEPTION ${pkgdir}/usr/share/licenses/gcc-ada/
ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \
"${pkgdir}/usr/share/licenses/${pkgname}/"
}
package_gcc-go()
......@@ -383,17 +352,54 @@ package_gcc-go()
provides=('gcc-go-multilib=${pkgver}')
replaces=('gcc-go-multilib')
options=('!emptydirs')
install=gcc-go.install
cd ${srcdir}/gcc-build
cd gcc-build
make -C $CHOST/libgo DESTDIR=$pkgdir install-exec-am
make -C $CHOST/32/libgo DESTDIR=$pkgdir install-exec-am
make DESTDIR=${pkgdir} install-gotools
make -C gcc DESTDIR=$pkgdir go.install-{common,man,info}
rm -f "$pkgdir"/usr/lib{,32}/libgo.so*
install -Dm755 gcc/go1 $pkgdir/${_libdir}/go1
make DESTDIR=${pkgdir} install-gotools
# Install Runtime Library Exception
install -d ${pkgdir}/usr/share/licenses/gcc-go/
ln -s ../gcc-libs/RUNTIME.LIBRARY.EXCEPTION ${pkgdir}/usr/share/licenses/gcc-go/
ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \
"${pkgdir}/usr/share/licenses/${pkgname}/"
}
package_lib32-gcc-libs()
{
pkgdesc="Runtime libraries shipped by GCC (32-bit)"
depends=('lib32-glibc>=2.22')
options=('!emptydirs' '!strip')
cd gcc-build
make -C $CHOST/32/libgcc DESTDIR=${pkgdir} install-shared
rm ${pkgdir}/${_libdir}/32/libgcc_eh.a
for lib in libatomic \
libcilkrts \
libgfortran \
libgo \
libgomp \
libitm \
libquadmath \
libsanitizer/{a,l,ub,t}san \
libstdc++-v3/src \
libvtv; do
make -C $CHOST/32/$lib DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES
done
make -C $CHOST/32/libobjc DESTDIR=${pkgdir} install-libs
make -C $CHOST/32/libmpx DESTDIR="$pkgdir" install
rm -f "$pkgdir/usr/lib32/libmpx.spec"
# remove stuff provided by gcc-libs
rm -r ${pkgdir}/usr/lib
# Install Runtime Library Exception
install -Dm644 ${srcdir}/gcc/COPYING.RUNTIME \
${pkgdir}/usr/share/licenses/lib32-gcc-libs/RUNTIME.LIBRARY.EXCEPTION
}
From 495a56fdeb05d20a88304ff5da577d23a8e81ae1 Mon Sep 17 00:00:00 2001
From: Luke Shumaker <lukeshu@parabola.nu>
Date: Wed, 15 Nov 2017 20:28:40 +0100
Subject: [PATCH 1/6] manual: Update to mention ENODEV for ttyname and
ttyname_r
Commit 15e9a4f378c8607c2ae1aa465436af4321db0e23 introduced ENODEV as a possible
error condition for ttyname and ttyname_r. Update the manual to mention this GNU
extension.
Reviewed-by: Christian Brauner <christian.brauner@ubuntu.com>
---
ChangeLog | 5 +++++
manual/terminal.texi | 5 +++++
2 files changed, 10 insertions(+)
diff --git a/manual/terminal.texi b/manual/terminal.texi
index 4fef5045b8..4aace48b14 100644
--- a/manual/terminal.texi
+++ b/manual/terminal.texi
@@ -109,6 +109,11 @@ The @var{filedes} is not associated with a terminal.
@item ERANGE
The buffer length @var{len} is too small to store the string to be
returned.
+
+@item ENODEV
+The @var{filedes} is associated with a terminal device that is a slave
+pseudo-terminal, but the file name associated with that device could
+not be determined. This is a GNU extension.
@end table
@end deftypefun
--
2.14.1
From 9b5a87502d048905c383b65c51768f4a1db8c685 Mon Sep 17 00:00:00 2001
From: Luke Shumaker <lukeshu@parabola.nu>
Date: Wed, 15 Nov 2017 20:31:32 +0100
Subject: [PATCH 2/6] linux ttyname: Update a reference to kernel docs for
kernel 4.10
Linux 4.10 moved many of the documentation files around.
4.10 came out between the time the patch adding the comment (commit
15e9a4f378c8607c2ae1aa465436af4321db0e23) was submitted and the time
it was applied (in February, January, and March 2017; respectively).
Reviewed-by: Christian Brauner <christian.brauner@ubuntu.com>
---
ChangeLog | 2 ++
sysdeps/unix/sysv/linux/ttyname.h | 3 ++-
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/sysdeps/unix/sysv/linux/ttyname.h b/sysdeps/unix/sysv/linux/ttyname.h
index 2e415e4e9c..cbcdbab607 100644
--- a/sysdeps/unix/sysv/linux/ttyname.h
+++ b/sysdeps/unix/sysv/linux/ttyname.h