svn commit: r374838 - in head/devel/st: . files

Anton Berezin tobez at FreeBSD.org
Wed Dec 17 11:15:15 UTC 2014


Author: tobez
Date: Wed Dec 17 11:15:13 2014
New Revision: 374838
URL: https://svnweb.freebsd.org/changeset/ports/374838
QAT: https://qat.redports.org/buildarchive/r374838/

Log:
  1. Enable kqueue support (you still need to st_set_eventsys(ST_EVENTSYS_ALT)
  2. Add a patch to resolve stack issues with varargs users on AMD64
  3. Take over maintainerhip
  4. Bump PORTREVISION
  
  Approved by:	(3) lippe (previous maintainer)

Added:
  head/devel/st/files/patch-md.h   (contents, props changed)
Modified:
  head/devel/st/Makefile
  head/devel/st/files/Makefile.main

Modified: head/devel/st/Makefile
==============================================================================
--- head/devel/st/Makefile	Wed Dec 17 09:40:04 2014	(r374837)
+++ head/devel/st/Makefile	Wed Dec 17 11:15:13 2014	(r374838)
@@ -3,11 +3,11 @@
 
 PORTNAME=	st
 PORTVERSION=	1.9
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	devel
 MASTER_SITES=	SF/${PORTNAME}ate-threads/${PORTNAME}ate-threads/${PORTVERSION}
 
-MAINTAINER=	lippe at FreeBSD.org
+MAINTAINER=	tobez at FreeBSD.org
 COMMENT=	State Threads Library for Internet Applications
 
 USES=		uidfix

Modified: head/devel/st/files/Makefile.main
==============================================================================
--- head/devel/st/files/Makefile.main	Wed Dec 17 09:40:04 2014	(r374837)
+++ head/devel/st/files/Makefile.main	Wed Dec 17 11:15:13 2014	(r374838)
@@ -9,6 +9,6 @@ LIB=		st
 NO_PROFILE=	yes
 
 SRCS=		io.c key.c sched.c stk.c sync.c event.c
-CFLAGS+=	-DFREEBSD
+CFLAGS+=	-DFREEBSD -DMD_HAVE_KQUEUE
 
 .include <bsd.lib.mk>

Added: head/devel/st/files/patch-md.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/st/files/patch-md.h	Wed Dec 17 11:15:13 2014	(r374838)
@@ -0,0 +1,22 @@
+--- md.h	2009-10-01 20:46:43.000000000 +0200
++++ md.h	2014-12-16 22:52:34.000000000 +0100
+@@ -161,6 +161,19 @@
+ #define MD_JB_SP  34
+ #elif defined(__amd64__)
+ #define MD_JB_SP   2
++/*
++ * The following comment is taken from src/lib/libc/amd64/gen/makecontext.c
++ * It explains why we specifically break the alignment to 64 byte boundary
++ * that is unconditionally enforced by sched.c, by setting MD_STACK_PAD_SIZE
++ * to this funky value.
++ * Without this, anything using va_start() & friends fails unpredictably.
++ */
++        /*
++         * Account for arguments on stack and do the funky C entry alignment.
++         * This means that we need an 8-byte-odd alignment since the ABI expects
++         * the return address to be pushed, thus breaking the 16 byte alignment.
++         */
++#define MD_STACK_PAD_SIZE 8
+ #else
+ #error Unknown CPU architecture
+ #endif


More information about the svn-ports-head mailing list