Index: head/devel/valgrind-devel/Makefile =================================================================== --- head/devel/valgrind-devel/Makefile (revision 409630) +++ head/devel/valgrind-devel/Makefile (revision 409631) @@ -1,88 +1,88 @@ # Created by: Simon Barner # $FreeBSD$ PORTNAME= valgrind PORTVERSION= 3.10.0.20150126 DISTVERSIONPREFIX= freebsd- -PORTREVISION= 1 +PORTREVISION= 2 PORTEPOCH= 1 CATEGORIES= devel MASTER_SITES= https://bitbucket.org/${BB_ACCOUNT}/${BB_PROJECT}/get/${BB_COMMIT}.tar.gz?dummy=/ \ http://mirror.shatow.net/freebsd/${PORTNAME}/ PKGNAMESUFFIX= -devel -MAINTAINER= ports@FreeBSD.org +MAINTAINER= bdrewery@FreeBSD.org COMMENT= Memory debugging and profiling tool BB_COMMIT= 963c4a777573 BB_ACCOUNT= stass BB_PROJECT= valgrind-freebsd LICENSE= GPLv2 CONFLICTS= valgrind-[0-9]* ONLY_FOR_ARCHS= i386 amd64 LIB32_PATH?= ${DESTDIR}/usr/lib32/libc.so BUILD_DEPENDS+= docbook-xsl>=0:${PORTSDIR}/textproc/docbook-xsl \ xsltproc:${PORTSDIR}/textproc/libxslt OPTIONS_DEFINE= MPI DOCS OPTIONS_DEFINE_amd64= 32BIT .if exists(${LIB32_PATH}) OPTIONS_DEFAULT_amd64= 32BIT .endif 32BIT_DESC= Enable debugging of 32-bit programs (requires lib32) MPI_DESC= Enable build of MPI wrappers MPI_LIB_DEPENDS= libmpich.so:${PORTSDIR}/net/mpich2 OPTIONS_SUB= yes USES= pathfix pkgconfig gmake perl5 shebangfix autoreconf PATHFIX_MAKEFILEIN= Makefile.am USE_PERL5= build GNU_CONFIGURE= yes USE_LDCONFIG= yes SHEBANG_FILES= callgrind/callgrind_annotate.in callgrind/callgrind_control.in PORTDOCS= html WRKSRC= ${WRKDIR}/${BB_ACCOUNT}-${BB_PROJECT}-${BB_COMMIT} CONFIGURE_ENV+= ac_cv_path_PERL=${PERL} USE_GCC= yes .include .if ${ARCH} == "amd64" PLIST_SUB+= AMD64="" ARCH=amd64 . if !${PORT_OPTIONS:M32BIT} CONFIGURE_ARGS+= --enable-only64bit PLIST_SUB+= X86="@comment " . else . if !exists(${LIB32_PATH}) IGNORE=The lib32 distribution was not found. Please install the lib32\ distribution or run 'make config' and uncheck 32BIT option . endif PLIST_SUB+= X86="" . endif .else PLIST_SUB+= X86="" ARCH=x86 PLIST_SUB+= AMD64="@comment " .endif .if !${PORT_OPTIONS:MDOCS} post-patch: @${RM} -rf ${WRKSRC}/docs/html .endif post-build: cd ${WRKSRC}/docs && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} man-pages .if ${PORT_OPTIONS:MDOCS} cd ${WRKSRC}/docs && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} html-docs .endif .include Index: head/devel/valgrind-devel/files/patch-coregrind-m_syswrap-syswrap-amd64-freebsd.c =================================================================== --- head/devel/valgrind-devel/files/patch-coregrind-m_syswrap-syswrap-amd64-freebsd.c (nonexistent) +++ head/devel/valgrind-devel/files/patch-coregrind-m_syswrap-syswrap-amd64-freebsd.c (revision 409631) @@ -0,0 +1,30 @@ +--- coregrind/m_syswrap/syswrap-amd64-freebsd.c.orig 2015-01-26 16:17:32.000000000 -0400 ++++ coregrind/m_syswrap/syswrap-amd64-freebsd.c 2015-08-31 09:51:17.506396000 -0300 +@@ -691,6 +691,27 @@ + SET_STATUS_Success2( tst->arch.vex.guest_FS_ZERO, tst->arch.vex.guest_RDX ); + POST_MEM_WRITE( ARG2, sizeof(void *) ); + break; ++ case VKI_AMD64_GET_XFPUSTATE: ++ { ++ UChar fpuState[160]; ++ struct vki_amd64_get_xfpustate *xfs = (struct vki_amd64_get_xfpustate *)ARG2; ++ int fpuSaveLen; ++ ++ PRINT("sys_amd64_get_xfpustate ( %#lx, %d )", (long unsigned int)xfs->addr, xfs->len); ++ tst = VG_(get_ThreadState)(tid); ++ ++ if (xfs->len <= sizeof(fpuState)) { ++ amd64g_dirtyhelper_FXSAVE_ALL_EXCEPT_XMM( ++ (VexGuestAMD64State *)&tst->arch.vex, ++ (HWord)fpuState); ++ VG_(memcpy)(xfs->addr, fpuState, xfs->len); ++ POST_MEM_WRITE( xfs->addr, xfs->len ); ++ SET_STATUS_Success ( 0 ); ++ } else { ++ SET_STATUS_Failure( VKI_EINVAL ); ++ } ++ } ++ break; + default: + VG_(message) (Vg_UserMsg, "unhandled sysarch cmd %ld", ARG1); + VG_(unimplemented) ("unhandled sysarch cmd"); Property changes on: head/devel/valgrind-devel/files/patch-coregrind-m_syswrap-syswrap-amd64-freebsd.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/devel/valgrind-devel/files/patch-include__vki__vki-freebsd.h =================================================================== --- head/devel/valgrind-devel/files/patch-include__vki__vki-freebsd.h (revision 409630) +++ head/devel/valgrind-devel/files/patch-include__vki__vki-freebsd.h (revision 409631) @@ -1,10 +1,34 @@ ---- ./include/vki/vki-freebsd.h.orig 2014-02-08 15:00:31.591069799 -0600 -+++ ./include/vki/vki-freebsd.h 2014-02-08 15:00:39.993068845 -0600 -@@ -681,6 +681,7 @@ +--- include/vki/vki-freebsd.h.orig 2015-01-26 16:17:32.000000000 -0400 ++++ include/vki/vki-freebsd.h 2015-08-31 04:55:29.139189000 -0300 +@@ -684,6 +684,7 @@ #define VKI_SOCK_STREAM 1 +#include #include #define VKI_TCP_NODELAY TCP_NODELAY +@@ -1888,11 +1889,23 @@ + #define VKI_I386_SET_FSBASE 8 + #define VKI_I386_GET_GSBASE 9 + #define VKI_I386_SET_GSBASE 10 ++#define VKI_I386_SET_XFPUSTATE 11 + + #define VKI_AMD64_GET_FSBASE 128 + #define VKI_AMD64_SET_FSBASE 129 + #define VKI_AMD64_GET_GSBASE 130 + #define VKI_AMD64_SET_GSBASE 131 ++#define VKI_AMD64_GET_XFPUSTATE 132 ++ ++typedef struct vki_i386_get_xfpustate { ++ unsigned int addr; ++ int len; ++}; ++ ++typedef struct vki_amd64_get_xfpustate { ++ void *addr; ++ int len; ++}; + + //---------------------------------------------------------------------- + // From sys/module.h