Merge pull request #94701 from NixOS/u/kmscon

kmscon: 8 -> unstable-2018-09-07
This commit is contained in:
Peter Hoeg 2020-08-10 22:24:15 +08:00 committed by GitHub
commit 02d8704c03
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 33 additions and 96 deletions

View file

@ -1,37 +0,0 @@
From 4e7b7b1124bfbccb43820997164b00720bf5ca31 Mon Sep 17 00:00:00 2001
From: Florian Gilcher <florian.gilcher@asquera.de>
Date: Sun, 23 Mar 2014 23:05:44 +0100
Subject: [PATCH] Remove GCC specific flags
---
Makefile.am | 10 ++--------
1 file changed, 2 insertions(+), 8 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index f1e872b..c011f02 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -69,11 +69,7 @@ AM_CFLAGS = \
AM_CPPFLAGS = \
-include $(top_builddir)/config.h \
-I $(srcdir)/src
-AM_LDFLAGS = \
- -Wl,--as-needed \
- -Wl,--gc-sections \
- -Wl,-z,relro \
- -Wl,-z,now
+AM_LDFLAGS =
if BUILD_ENABLE_DEBUG
AM_CFLAGS += -g
@@ -134,9 +130,7 @@ libtsm_la_CPPFLAGS = $(AM_CPPFLAGS)
libtsm_la_LIBADD = libshl.la
EXTRA_libtsm_la_DEPENDENCIES = $(top_srcdir)/docs/libtsm.sym
libtsm_la_LDFLAGS = \
- $(AM_LDFLAGS) \
- -version-info $(LIBTSM_CURRENT):$(LIBTSM_REVISION):$(LIBTSM_AGE) \
- -Wl,--version-script="$(top_srcdir)/docs/libtsm.sym"
+ $(AM_LDFLAGS)
if BUILD_HAVE_XKBCOMMON
libtsm_la_CPPFLAGS += $(XKBCOMMON_CFLAGS)

View file

@ -1,23 +1,21 @@
{ stdenv, lib, fetchurl, libxkbcommon, pkgconfig, autoreconfHook }:
{ stdenv, fetchFromGitHub, libxkbcommon, pkgconfig, cmake }:
stdenv.mkDerivation rec {
name = "libtsm-3";
pname = "libtsm";
version = "4.0.1";
src = fetchurl {
url = "https://freedesktop.org/software/kmscon/releases/${name}.tar.xz";
sha256 = "01ygwrsxfii0pngfikgqsb4fxp8n1bbs47l7hck81h9b9bc1ah8i";
src = fetchFromGitHub {
owner = "Aetf";
repo = "libtsm";
rev = "v${version}";
sha256 = "0mwn91i5h5d518i1s05y7hzv6bc13vzcvxszpfh77473iwg4wprx";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ libxkbcommon ] ++ lib.optionals stdenv.isDarwin [
autoreconfHook
];
buildInputs = [ libxkbcommon ];
configureFlags = [ "--disable-debug" ];
nativeBuildInputs = [ cmake pkgconfig ];
patches = lib.optional stdenv.isDarwin ./darwin.patch;
meta = with lib; {
meta = with stdenv.lib; {
description = "Terminal-emulator State Machine";
homepage = "http://www.freedesktop.org/wiki/Software/kmscon/libtsm/";
license = licenses.mit;

View file

@ -1,5 +1,6 @@
{ stdenv
, fetchurl
, fetchFromGitHub
, autoreconfHook
, libtsm
, systemd
, libxkbcommon
@ -13,32 +14,32 @@
}:
stdenv.mkDerivation rec {
name = "kmscon-8";
pname = "kmscon";
version = "unstable-2018-09-07";
src = fetchurl {
url = "https://www.freedesktop.org/software/kmscon/releases/${name}.tar.xz";
sha256 = "0axfwrp3c8f4gb67ap2sqnkn75idpiw09s35wwn6kgagvhf1rc0a";
src = fetchFromGitHub {
owner = "Aetf";
repo = "kmscon";
rev = "01dd0a231e2125a40ceba5f59fd945ff29bf2cdc";
sha256 = "0q62kjsvy2iwy8adfiygx2bfwlh83rphgxbis95ycspqidg9py87";
};
buildInputs = [
libtsm
systemd
libxkbcommon
libdrm
libGLU libGL
libdrm
libtsm
libxkbcommon
libxslt
pango
pixman
pkgconfig
docbook_xsl
libxslt
systemd
];
patches = [ ./kmscon-8-glibc-2.26.patch ];
# FIXME: Remove as soon as kmscon > 8 comes along.
postPatch = ''
sed -i -e 's/libsystemd-daemon libsystemd-login/libsystemd/g' configure
'';
nativeBuildInputs = [
autoreconfHook
docbook_xsl
pkgconfig
];
configureFlags = [
"--enable-multi-seat"
@ -49,10 +50,10 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
meta = {
meta = with stdenv.lib; {
description = "KMS/DRM based System Console";
homepage = "http://www.freedesktop.org/wiki/Software/kmscon/";
license = stdenv.lib.licenses.mit;
platforms = stdenv.lib.platforms.linux;
license = licenses.mit;
platforms = platforms.linux;
};
}

View file

@ -1,25 +0,0 @@
diff --git a/src/pty.c b/src/pty.c
index 3494104..1443f4a 100644
--- a/src/pty.c
+++ b/src/pty.c
@@ -299,7 +299,7 @@ static void setup_child(int master, struct winsize *ws)
if (ret)
log_warn("cannot reset blocked signals: %m");
- for (i = 1; i < SIGUNUSED; ++i)
+ for (i = 1; i < SIGSYS; ++i)
signal(i, SIG_DFL);
ret = grantpt(master);
diff --git a/src/uterm_vt.c b/src/uterm_vt.c
index af377f5..fbe9e76 100644
--- a/src/uterm_vt.c
+++ b/src/uterm_vt.c
@@ -40,6 +40,7 @@
#include <sys/ioctl.h>
#include <sys/signalfd.h>
#include <sys/stat.h>
+#include <sys/sysmacros.h>
#include <termios.h>
#include <time.h>
#include <unistd.h>