summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkwm <kwm@058c260c-8361-11dd-a0ac-aa2bafec7d09>2013-11-06 00:50:44 +0800
committerkwm <kwm@058c260c-8361-11dd-a0ac-aa2bafec7d09>2013-11-06 00:50:44 +0800
commitd944d9367ef1e98c3657b0eedaaed72b46888a7d (patch)
tree4376f5fd9b393ea68ebaff9ebcab534c4c08d243
parent70b9e905fcdd6c7b35c75940cf6b5edd714fc11f (diff)
downloadxorg-devel-ports-d944d9367ef1e98c3657b0eedaaed72b46888a7d.tar
xorg-devel-ports-d944d9367ef1e98c3657b0eedaaed72b46888a7d.tar.gz
xorg-devel-ports-d944d9367ef1e98c3657b0eedaaed72b46888a7d.tar.bz2
xorg-devel-ports-d944d9367ef1e98c3657b0eedaaed72b46888a7d.tar.lz
xorg-devel-ports-d944d9367ef1e98c3657b0eedaaed72b46888a7d.tar.xz
xorg-devel-ports-d944d9367ef1e98c3657b0eedaaed72b46888a7d.tar.zst
xorg-devel-ports-d944d9367ef1e98c3657b0eedaaed72b46888a7d.zip
Sync with ports, CVE.
Fix multiple devd backend fixes.whole bunch of PR's Stagify. Fix options in xorg-nestserver. See ports/184478 for details. git-svn-id: https://trillian.chruetertee.ch/svn/ports/trunk@1203 058c260c-8361-11dd-a0ac-aa2bafec7d09
-rw-r--r--x11-servers/xorg-dmx/Makefile3
-rw-r--r--x11-servers/xorg-dmx/pkg-plist4
-rw-r--r--x11-servers/xorg-nestserver/Makefile13
-rw-r--r--x11-servers/xorg-server/Makefile46
-rw-r--r--x11-servers/xorg-server/files/extra-config_devd.c39
-rw-r--r--x11-servers/xorg-server/files/extra-new-dix_dixfonts.c41
-rw-r--r--x11-servers/xorg-server/files/extra-old-dix_dixfonts.c42
-rw-r--r--x11-servers/xorg-server/pkg-plist14
-rw-r--r--x11-servers/xorg-vfbserver/Makefile9
9 files changed, 157 insertions, 54 deletions
diff --git a/x11-servers/xorg-dmx/Makefile b/x11-servers/xorg-dmx/Makefile
index 1dcd916..f1ef1e4 100644
--- a/x11-servers/xorg-dmx/Makefile
+++ b/x11-servers/xorg-dmx/Makefile
@@ -20,11 +20,8 @@ CONFIGURE_ARGS= --disable-xvfb --disable-xnest \
--without-xmlto --disable-docs --disable-devel-docs \
--enable-dmx --localstatedir=/var --without-dtrace
-MAN1= Xdmx.1 dmxtodmx.1 vdltodmx.1 xdmxconfig.1
-
SLAVE_PORT= yes
-NO_STAGE= yes
do-install:
cd ${WRKSRC}/hw/dmx; ${MAKE} install
diff --git a/x11-servers/xorg-dmx/pkg-plist b/x11-servers/xorg-dmx/pkg-plist
index c7fea5a..2fb0ebe 100644
--- a/x11-servers/xorg-dmx/pkg-plist
+++ b/x11-servers/xorg-dmx/pkg-plist
@@ -11,3 +11,7 @@ bin/dmxtodmx
bin/dmxwininfo
bin/vdltodmx
bin/xdmxconfig
+man/man1/Xdmx.1.gz
+man/man1/dmxtodmx.1.gz
+man/man1/vdltodmx.1.gz
+man/man1/xdmxconfig.1.gz
diff --git a/x11-servers/xorg-nestserver/Makefile b/x11-servers/xorg-nestserver/Makefile
index e8a4815..7dc1ab3 100644
--- a/x11-servers/xorg-nestserver/Makefile
+++ b/x11-servers/xorg-nestserver/Makefile
@@ -20,18 +20,15 @@ CONFIGURE_ARGS= --disable-dmx --disable-xvfb \
--localstatedir=/var --without-dtrace
SLAVE_PORT= yes
-PLIST_FILES= bin/Xnest
-MAN1= Xnest.1
-
-NO_STAGE= yes
-.include <bsd.port.options.mk>
+PLIST_FILES= bin/Xnest \
+ man/man1/Xnest.1.gz
do-install:
- ${INSTALL_PROGRAM} ${WRKSRC}/hw/xnest/Xnest ${PREFIX}/bin/
+ ${INSTALL_PROGRAM} ${WRKSRC}/hw/xnest/Xnest ${STAGEDIR}${PREFIX}/bin/
.if defined(WITH_NEW_XORG)
- ${INSTALL_MAN} ${WRKSRC}/hw/xnest/man/Xnest.1 ${PREFIX}/man/man1/
+ ${INSTALL_MAN} ${WRKSRC}/hw/xnest/man/Xnest.1 ${STAGEDIR}${PREFIX}/man/man1/
.else
- ${INSTALL_MAN} ${WRKSRC}/hw/xnest/Xnest.1 ${PREFIX}/man/man1/
+ ${INSTALL_MAN} ${WRKSRC}/hw/xnest/Xnest.1 ${STAGEDIR}${PREFIX}/man/man1/
.endif
.include "${MASTERDIR}/Makefile"
diff --git a/x11-servers/xorg-server/Makefile b/x11-servers/xorg-server/Makefile
index 5f59eac..9605431 100644
--- a/x11-servers/xorg-server/Makefile
+++ b/x11-servers/xorg-server/Makefile
@@ -13,7 +13,7 @@ DISTNAME= xorg-server-${PORTVERSION}
MAINTAINER= x11@FreeBSD.org
COMMENT?= X.Org X server and related programs
-LIB_DEPENDS= drm:${PORTSDIR}/graphics/libdrm
+LIB_DEPENDS= libdrm.so:${PORTSDIR}/graphics/libdrm
RUN_DEPENDS= xkeyboard-config>=2.5:${PORTSDIR}/x11/xkeyboard-config \
xkbcomp:${PORTSDIR}/x11/xkbcomp
@@ -26,7 +26,7 @@ OPTIONS_RADIO_CONF= HAL DEVD
AIGLX_DESC= Compile with Accelerated Indirect GLX support
SUID_DESC= Install the Xorg server with setuid bit set
HAL_DESC= Compile with HAL config support
-DEVD_DESC= Use devd for autoconfiguration of input devices
+DEVD_DESC= Use devd for autoconfiguration of input devices (experimental)
OPTIONS_DEFAULT=AIGLX SUID DEVD
OPTIONS_EXCLUDE_sparc64= HAL
@@ -35,20 +35,22 @@ OPTIONS_EXCLUDE_sparc64= HAL
.if defined(WITH_NEW_XORG)
XORG_VERSION= 1.12.4
-XORG_REVISION= 3
+XORG_REVISION= 4
PLIST_SUB+= OLD="@comment " NEW=""
EXTRA_PATCHES+= ${FILESDIR}/extra-clang \
- ${FILESDIR}/extra-configure
+ ${FILESDIR}/extra-configure \
+ ${FILESDIR}/extra-new-dix_dixfonts.c
.else
XORG_VERSION= 1.7.7
-XORG_REVISION= 10
+XORG_REVISION= 11
PLIST_SUB+= OLD="" NEW="@comment "
EXTRA_PATCHES+= ${FILESDIR}/extra-Xext-xace.c \
${FILESDIR}/extra-Xserver-os-xprintf.c \
${FILESDIR}/extra-include_eventstr.h \
${FILESDIR}/extra-os-utils.c \
${FILESDIR}/extra-dix_events.c \
- ${FILESDIR}/extra-Xserver-hw-xfree86-common-xf86Config.c
+ ${FILESDIR}/extra-Xserver-hw-xfree86-common-xf86Config.c \
+ ${FILESDIR}/extra-old-dix_dixfonts.c
.endif
USE_BZIP2= yes
@@ -72,24 +74,12 @@ CONFIGURE_ARGS?=--disable-dmx --disable-xvfb --disable-xnest \
.if ${SLAVE_PORT} == "no"
SUB_FILES= pkg-install pkg-deinstall
-MAN1= Xorg.1 \
- Xserver.1 \
- cvt.1 \
- gtf.1
-MAN4= exa.4 \
- fbdevhw.4
-MAN5= xorg.conf.5
-
-.if defined(WITH_NEW_XORG)
-MAN5+= xorg.conf.d.5
-.endif
.else
# for slave ports we need to overwrite PLIST, so it doesn't overwrite
# PLIST_FILES, with the masterport plist.
PLIST= ${.CURDIR}/pkg-plist
.endif
-NO_STAGE= yes
.include <bsd.port.pre.mk>
.if defined(WITH_OPENSSL_BASE)
@@ -100,7 +90,7 @@ CONFIGURE_ENV= SHA1_LIB="-L/usr/lib -lcrypto" SHA1_CFLAGS="-I/usr/include"
.endif
.if ${PORT_OPTIONS:MHAL}
-LIB_DEPENDS+= hal:${PORTSDIR}/sysutils/hal
+LIB_DEPENDS+= libhal.so:${PORTSDIR}/sysutils/hal
CONFIGURE_ARGS+= --enable-config-hal=yes
.else
CONFIGURE_ARGS+= --enable-config-hal=no
@@ -117,9 +107,12 @@ CONFIGURE_ARGS+= --enable-aiglx=no
.endif
.if ${PORT_OPTIONS:MSUID}
-CONFIGURE_ARGS+=--enable-install-setuid=yes
+CONFIGURE_ARGS+=--enable-install-setuid=no
+#CONFIGURE_ARGS+=--enable-install-setuid=yes
+PLIST_SUB+= SUID=""
.else
CONFIGURE_ARGS+=--enable-install-setuid=no
+PLIST_SUB+= SUID="@comment"
.endif
.if ${ARCH} == i386
@@ -197,18 +190,19 @@ post-configure:
.endif
.if ${SLAVE_PORT} == "no"
-pre-su-install:
+post-install:
# The .xorg dir because else the xorg-server might not load the correct
# libglx module.
- ${MKDIR} ${PREFIX}/lib/xorg/modules/extensions/.xorg
+ ${MKDIR} ${STAGEDIR}${PREFIX}/lib/xorg/modules/extensions/.xorg
${INSTALL_LIB} ${WRKSRC}/hw/xfree86/dixmods/.libs/libglx.so \
- ${PREFIX}/lib/xorg/modules/extensions/.xorg/
+ ${STAGEDIR}${PREFIX}/lib/xorg/modules/extensions/.xorg/
+ @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/xorg/modules/*.so
+ @${STRIP_CMD} ${STAGEDIR}${PREFIX}//lib/xorg/modules/extensions/*.so
+ @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/xorg/modules/multimedia/*.so
-post-install:
.if defined(WITH_NEW_XORG)
- @${MKDIR} ${PREFIX}/share/X11/xorg.conf.d
+ @${MKDIR} ${STAGEDIR}${PREFIX}/share/X11/xorg.conf.d
.endif
- @PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
.endif
.include <bsd.port.post.mk>
diff --git a/x11-servers/xorg-server/files/extra-config_devd.c b/x11-servers/xorg-server/files/extra-config_devd.c
index f6d66a3..f1deff2 100644
--- a/x11-servers/xorg-server/files/extra-config_devd.c
+++ b/x11-servers/xorg-server/files/extra-config_devd.c
@@ -1,6 +1,5 @@
---- /dev/null 2013-08-03 00:44:23.000000000 +0200
-+++ config/devd.c 2013-08-03 00:45:15.162836806 +0200
-@@ -0,0 +1,478 @@
+Index: config/devd.c
+@@ -0,0 +1,476 @@
+/*
+ * Copyright © 2012 Baptiste Daroussin
+ *
@@ -72,8 +71,8 @@
+};
+
+static struct hw_type hw_types[] = {
-+ { "ukbd", ATTR_KEYBOARD, "kdb" },
-+ { "atkbd", ATTR_KEYBOARD, "kdb" },
++ { "ukbd", ATTR_KEYBOARD, "kbd" },
++ { "atkbd", ATTR_KEYBOARD, "kbd" },
+ { "ums", ATTR_POINTER, "mouse" },
+ { "psm", ATTR_POINTER, "mouse" },
+ { "uhid", ATTR_POINTER, "mouse" },
@@ -268,12 +267,10 @@
+ attrs.usb_id = NULL;
+ options = input_option_new(options, "path", path);
+ options = input_option_new(options, "device", path);
++ options = input_option_new(options, "driver", hw_types[i].xdriver);
+#else
+ add_option(&options, "path", path);
+ add_option(&options, "device", path);
-+#endif
-+
-+#if XORG_VERSION_CURRENT < 10800000
+ add_option(&options, "driver", hw_types[i].xdriver);
+#endif
+
@@ -293,7 +290,7 @@
+#else
+ options = input_option_new(options, "config_info", config_info);
+#endif
-+ LogMessage(X_INFO, "config/devd: Adding input device %s (%s)\n",
++ LogMessage(X_INFO, "config/devd: adding input device %s (%s)\n",
+ product != NULL ? product : "(unnamed)", path);
+
+#if XORG_VERSION_CURRENT > 10800000
@@ -345,7 +342,7 @@
+ return;
+
+#if XORG_VERSION_CURRENT > 10800000
-+ remove_devices("dev", value);
++ remove_devices("devd", value);
+#else
+ for (dev = inputInfo.devices; dev; dev = next) {
+ next = dev->next;
@@ -415,10 +412,10 @@
+
+ switch(*line) {
+ case DEVD_EVENT_ADD:
-+ device_added(line++);
++ device_added(++line);
+ break;
+ case DEVD_EVENT_REMOVE:
-+ device_removed(line++);
++ device_removed(++line);
+ break;
+ default:
+ break;
@@ -479,3 +476,21 @@
+ RemoveBlockAndWakeupHandlers(block_handler, wakeup_handler, NULL);
+ close(sock_devd);
+}
+Index: config/config.c
+@@ -56,6 +56,8 @@
+ if (!config_wscons_init())
+ ErrorF("[config] failed to initialise wscons\n");
+ #endif
++ if (!config_devd_init())
++ ErrorF("[config] failed to initialise devd\n");
+ }
+
+ void
+@@ -74,6 +76,7 @@
+ #elif defined(CONFIG_WSCONS)
+ config_wscons_fini();
+ #endif
++ config_devd_fini();
+ }
+
+ static void
diff --git a/x11-servers/xorg-server/files/extra-new-dix_dixfonts.c b/x11-servers/xorg-server/files/extra-new-dix_dixfonts.c
new file mode 100644
index 0000000..d1f5674
--- /dev/null
+++ b/x11-servers/xorg-server/files/extra-new-dix_dixfonts.c
@@ -0,0 +1,41 @@
+--- dix/dixfonts.c.orig 2012-05-17 19:09:01.000000000 +0200
++++ dix/dixfonts.c 2013-10-09 10:49:38.158284440 +0200
+@@ -1414,6 +1414,7 @@
+ GC *pGC;
+ unsigned char *data;
+ ITclosurePtr new_closure;
++ ITclosurePtr old_closure;
+
+ /* We're putting the client to sleep. We need to
+ save some state. Similar problem to that handled
+@@ -1425,12 +1426,14 @@
+ err = BadAlloc;
+ goto bail;
+ }
++ old_closure = c;
+ *new_closure = *c;
+ c = new_closure;
+
+ data = malloc(c->nChars * itemSize);
+ if (!data) {
+ free(c);
++ c = old_closure;
+ err = BadAlloc;
+ goto bail;
+ }
+@@ -1441,6 +1444,7 @@
+ if (!pGC) {
+ free(c->data);
+ free(c);
++ c = old_closure;
+ err = BadAlloc;
+ goto bail;
+ }
+@@ -1453,6 +1457,7 @@
+ FreeScratchGC(pGC);
+ free(c->data);
+ free(c);
++ c = old_closure;
+ err = BadAlloc;
+ goto bail;
+ }
diff --git a/x11-servers/xorg-server/files/extra-old-dix_dixfonts.c b/x11-servers/xorg-server/files/extra-old-dix_dixfonts.c
new file mode 100644
index 0000000..163a4ef
--- /dev/null
+++ b/x11-servers/xorg-server/files/extra-old-dix_dixfonts.c
@@ -0,0 +1,42 @@
+--- dix/dixfonts.c.orig 2010-05-04 02:47:57.000000000 +0200
++++ dix/dixfonts.c 2013-10-09 10:54:40.488267646 +0200
+@@ -1508,6 +1508,7 @@
+ GC *pGC;
+ unsigned char *data;
+ ITclosurePtr new_closure;
++ ITclosurePtr old_closure;
+
+ /* We're putting the client to sleep. We need to
+ save some state. Similar problem to that handled
+@@ -1520,6 +1521,7 @@
+ err = BadAlloc;
+ goto bail;
+ }
++ old_closure = c;
+ *new_closure = *c;
+ c = new_closure;
+
+@@ -1527,6 +1529,7 @@
+ if (!data)
+ {
+ xfree(c);
++ c = old_closure;
+ err = BadAlloc;
+ goto bail;
+ }
+@@ -1538,6 +1541,7 @@
+ {
+ xfree(c->data);
+ xfree(c);
++ c = old_closure;
+ err = BadAlloc;
+ goto bail;
+ }
+@@ -1551,6 +1555,7 @@
+ FreeScratchGC(pGC);
+ xfree(c->data);
+ xfree(c);
++ c = old_closure;
+ err = BadAlloc;
+ goto bail;
+ }
diff --git a/x11-servers/xorg-server/pkg-plist b/x11-servers/xorg-server/pkg-plist
index bee307f..0cb6565 100644
--- a/x11-servers/xorg-server/pkg-plist
+++ b/x11-servers/xorg-server/pkg-plist
@@ -1,5 +1,11 @@
bin/X
+%%SUID%%@owner root
+%%SUID%%@group wheel
+%%SUID%%@mode 4555
bin/Xorg
+%%SUID%%@owner
+%%SUID%%@group
+%%SUID%%@mode
bin/cvt
bin/gtf
include/xorg/BT.h
@@ -226,6 +232,14 @@ lib/xorg/modules/multimedia/uda1380_drv.la
lib/xorg/modules/multimedia/uda1380_drv.so
lib/xorg/protocol.txt
libdata/pkgconfig/xorg-server.pc
+man/man1/Xorg.1.gz
+man/man1/Xserver.1.gz
+man/man1/cvt.1.gz
+man/man1/gtf.1.gz
+man/man4/exa.4.gz
+man/man4/fbdevhw.4.gz
+man/man5/xorg.conf.5.gz
+%%NEW%%man/man5/xorg.conf.d.5.gz
share/aclocal/xorg-server.m4
%%NEW%%@exec /bin/mkdir -p %D/share/X11/xorg.conf.d
@comment %%NEW%%@dirrm share/doc/xorg-server
diff --git a/x11-servers/xorg-vfbserver/Makefile b/x11-servers/xorg-vfbserver/Makefile
index 6f11ae9..70e0c32 100644
--- a/x11-servers/xorg-vfbserver/Makefile
+++ b/x11-servers/xorg-vfbserver/Makefile
@@ -16,15 +16,14 @@ USE_XORG= x11 xf86driproto glproto randrproto renderproto fixesproto \
xkbui xxf86misc xxf86vm xaw7 xmu xpm xext pixman xtrans
CONFIGURE_ARGS= --disable-dmx --disable-xnest \
- --without-xmlto --disable-docs --disable-devel1-docs \
+ --without-xmlto --disable-docs --disable-devel-docs \
--localstatedir=/var --without-dtrace
SLAVE_PORT= yes
-PLIST_FILES= bin/Xvfb
-MAN1= Xvfb.1
+PLIST_FILES= bin/Xvfb \
+ man/man1/Xvfb.1.gz
-NO_STAGE= yes
do-install:
- cd ${WRKSRC}/hw/vfb; ${MAKE} install
+ cd ${WRKSRC}/hw/vfb; DESTDIR=${STAGEDIR} ${MAKE} install
.include "${MASTERDIR}/Makefile"