From voldern@ymist.gakkori.net  Tue May 29 19:00:58 2012
Return-Path: <voldern@ymist.gakkori.net>
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
	by hub.freebsd.org (Postfix) with ESMTP id 30138106566B
	for <freebsd-gnats-submit@freebsd.org>; Tue, 29 May 2012 19:00:58 +0000 (UTC)
	(envelope-from voldern@ymist.gakkori.net)
Received: from ymist.gakkori.net (ymist.gakkori.net [46.19.39.46])
	by mx1.freebsd.org (Postfix) with ESMTP id E4C568FC17
	for <freebsd-gnats-submit@freebsd.org>; Tue, 29 May 2012 19:00:57 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
	by ymist.gakkori.net (Postfix) with ESMTP id 9F08773E3E
	for <freebsd-gnats-submit@freebsd.org>; Tue, 29 May 2012 20:48:54 +0200 (CEST)
Received: from ymist.gakkori.net ([127.0.0.1])
 by localhost (ymist.gakkori.net [127.0.0.1]) (maiad, port 10024) with ESMTP
 id 61246-05 for <freebsd-gnats-submit@freebsd.org>;
 Tue, 29 May 2012 20:48:54 +0200 (CEST)
Received: by ymist.gakkori.net (Postfix, from userid 1001)
	id 5F6FA73E3D; Tue, 29 May 2012 20:48:54 +0200 (CEST)
Message-Id: <20120529184854.5F6FA73E3D@ymist.gakkori.net>
Date: Tue, 29 May 2012 20:48:54 +0200 (CEST)
From: Espen Volden <voldern@hoeggen.net>
Reply-To: Espen Volden <voldern@hoeggen.net>
To: FreeBSD-gnats-submit@freebsd.org
Cc:
Subject: [patch] devel/pecl-xhprof PHP 5.4 support		
X-Send-Pr-Version: 3.113
X-GNATS-Notify:

>Number:         168441
>Category:       ports
>Synopsis:       [patch] devel/pecl-xhprof PHP 5.4 support
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue May 29 19:10:00 UTC 2012
>Closed-Date:    Wed May 30 03:23:32 UTC 2012
>Last-Modified:  Wed May 30 03:30:06 UTC 2012
>Originator:     Espen Volden
>Release:        FreeBSD 9.0-RELEASE amd64
>Organization:
>Environment:
System: FreeBSD ymist.gakkori.net 9.0-RELEASE FreeBSD 9.0-RELEASE #0: Tue Jan 3 07:46:30 UTC 2012 root@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC amd64


	
>Description:
XHProf 0.9.2 does not compile against PHP 5.4 which is the current version of PHP available in ports.
The patch is taken from here: https://github.com/facebook/xhprof/commit/a6bae51236677d95cb329d5b20806465c0260394
  
>How-To-Repeat:
Install devel/pecl-xhprof from ports when PHP 5.4 is installed. 
>Fix:

	


>Release-Note:
>Audit-Trail:

From: voldern@hoeggen.net
To: <freebsd-gnats-submit@freebsd.org>, <freebsd-ports-bugs@freebsd.org>
Cc:  
Subject: Re: ports/168441: [patch] devel/pecl-xhprof PHP 5.4 support
Date: Tue, 29 May 2012 21:12:45 +0200

 --=_e5d70e1966fdf8406752ab5da5434032
 Content-Transfer-Encoding: 7bit
 Content-Type: text/plain; charset=UTF-8;
  format=flowed
 
 For some reason the patch didn't get attached to the PR.
 The patch is attached to this message.
 --=_e5d70e1966fdf8406752ab5da5434032
 Content-Transfer-Encoding: base64
 Content-Type: text/x-diff;
  name=patch-extensions-xhprof.c
 Content-Disposition: attachment;
  filename=patch-extensions-xhprof.c
 
 LS0tIHhocHJvZi5jCisrKyB4aHByb2YuYwpAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1ZGUgInBo
 cF9pbmkuaCIKICNpbmNsdWRlICJleHQvc3RhbmRhcmQvaW5mby5oIgogI2luY2x1ZGUgInBocF94
 aHByb2YuaCIKKyNpbmNsdWRlICJaZW5kL3plbmRfZXh0ZW5zaW9ucy5oIgogI2luY2x1ZGUgPHN5
 cy90aW1lLmg+CiAjaW5jbHVkZSA8c3lzL3Jlc291cmNlLmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+
 CkBAIC04OTgsNyArODk5LDcgQEAgc3RhdGljIGNoYXIgKmhwX2dldF9iYXNlX2ZpbGVuYW1lKGNo
 YXIgKmZpbGVuYW1lKSB7CiBzdGF0aWMgY2hhciAqaHBfZ2V0X2Z1bmN0aW9uX25hbWUoemVuZF9v
 cF9hcnJheSAqb3BzIFRTUk1MU19EQykgewogICB6ZW5kX2V4ZWN1dGVfZGF0YSAqZGF0YTsKICAg
 Y2hhciAgICAgICAgICAgICAgKmZ1bmMgPSBOVUxMOwotICBjaGFyICAgICAgICAgICAgICAqY2xz
 ID0gTlVMTDsKKyAgY29uc3QgY2hhciAgICAgICAgKmNscyA9IE5VTEw7CiAgIGNoYXIgICAgICAg
 ICAgICAgICpyZXQgPSBOVUxMOwogICBpbnQgICAgICAgICAgICAgICAgbGVuOwogICB6ZW5kX2Z1
 bmN0aW9uICAgICAgKmN1cnJfZnVuYzsKQEAgLTk0Miw3ICs5NDMsMTIgQEAgc3RhdGljIGNoYXIg
 KmhwX2dldF9mdW5jdGlvbl9uYW1lKHplbmRfb3BfYXJyYXkgKm9wcyBUU1JNTFNfREMpIHsKICAg
 ICAgIC8qIHdlIGFyZSBkZWFsaW5nIHdpdGggYSBzcGVjaWFsIGRpcmVjdGl2ZS9mdW5jdGlvbiBs
 aWtlCiAgICAgICAgKiBpbmNsdWRlLCBldmFsLCBldGMuCiAgICAgICAgKi8KKyNpZiBaRU5EX0VY
 VEVOU0lPTl9BUElfTk8gPj0gMjIwMTAwNTI1CisgICAgICBjdXJyX29wID0gZGF0YS0+b3BsaW5l
 LT5leHRlbmRlZF92YWx1ZTsKKyNlbHNlCiAgICAgICBjdXJyX29wID0gZGF0YS0+b3BsaW5lLT5v
 cDIudS5jb25zdGFudC52YWx1ZS5sdmFsOworI2VuZGlmCisKICAgICAgIHN3aXRjaCAoY3Vycl9v
 cCkgewogICAgICAgICBjYXNlIFpFTkRfRVZBTDoKICAgICAgICAgICBmdW5jID0gImV2YWwiOwpA
 QCAtMTY2MCwxMyArMTY2NiwyMiBAQCBaRU5EX0RMRVhQT1JUIHZvaWQgaHBfZXhlY3V0ZV9pbnRl
 cm5hbCh6ZW5kX2V4ZWN1dGVfZGF0YSAqZXhlY3V0ZV9kYXRhLAogICBpZiAoIV96ZW5kX2V4ZWN1
 dGVfaW50ZXJuYWwpIHsKICAgICAvKiBubyBvbGQgb3ZlcnJpZGUgdG8gYmVnaW4gd2l0aC4gc28g
 aW52b2tlIHRoZSBidWlsdGluJ3MgaW1wbGVtZW50YXRpb24gICovCiAgICAgemVuZF9vcCAqb3Bs
 aW5lID0gRVgob3BsaW5lKTsKKyNpZiBaRU5EX0VYVEVOU0lPTl9BUElfTk8gPj0gMjIwMTAwNTI1
 CisgICAgdGVtcF92YXJpYWJsZSAqcmV0dmFyID0gJkVYX1Qob3BsaW5lLT5yZXN1bHQudmFyKTsK
 KyAgICAoKHplbmRfaW50ZXJuYWxfZnVuY3Rpb24gKikgRVgoZnVuY3Rpb25fc3RhdGUpLmZ1bmN0
 aW9uKS0+aGFuZGxlcigKKyAgICAgICAgICAgICAgICAgICAgICAgb3BsaW5lLT5leHRlbmRlZF92
 YWx1ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgcmV0dmFyLT52YXIucHRyLAorICAgICAgICAg
 ICAgICAgICAgICAgICAoRVgoZnVuY3Rpb25fc3RhdGUpLmZ1bmN0aW9uLT5jb21tb24uZm5fZmxh
 Z3MgJiBaRU5EX0FDQ19SRVRVUk5fUkVGRVJFTkNFKSA/CisgICAgICAgICAgICAgICAgICAgICAg
 ICZyZXR2YXItPnZhci5wdHI6TlVMTCwKKyAgICAgICAgICAgICAgICAgICAgICAgRVgob2JqZWN0
 KSwgcmV0IFRTUk1MU19DQyk7CisjZWxzZQogICAgICgoemVuZF9pbnRlcm5hbF9mdW5jdGlvbiAq
 KSBFWChmdW5jdGlvbl9zdGF0ZSkuZnVuY3Rpb24pLT5oYW5kbGVyKAogICAgICAgICAgICAgICAg
 ICAgICAgICBvcGxpbmUtPmV4dGVuZGVkX3ZhbHVlLAogICAgICAgICAgICAgICAgICAgICAgICBF
 WF9UKG9wbGluZS0+cmVzdWx0LnUudmFyKS52YXIucHRyLAogICAgICAgICAgICAgICAgICAgICAg
 ICBFWChmdW5jdGlvbl9zdGF0ZSkuZnVuY3Rpb24tPmNvbW1vbi5yZXR1cm5fcmVmZXJlbmNlID8K
 ICAgICAgICAgICAgICAgICAgICAgICAgJkVYX1Qob3BsaW5lLT5yZXN1bHQudS52YXIpLnZhci5w
 dHI6TlVMTCwKICAgICAgICAgICAgICAgICAgICAgICAgRVgob2JqZWN0KSwgcmV0IFRTUk1MU19D
 Qyk7Ci0KKyNlbmRpZgogICB9IGVsc2UgewogICAgIC8qIGNhbGwgdGhlIG9sZCBvdmVycmlkZSAq
 LwogICAgIF96ZW5kX2V4ZWN1dGVfaW50ZXJuYWwoZXhlY3V0ZV9kYXRhLCByZXQgVFNSTUxTX0ND
 KTsK
 --=_e5d70e1966fdf8406752ab5da5434032--
 

From: Espen Volden <espen@responsreklame.no>
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/168441: [patch] devel/pecl-xhprof PHP 5.4 support
Date: Tue, 29 May 2012 21:29:12 +0200

 This is a multi-part message in MIME format.
 --------------060307030907010106000704
 Content-Type: text/plain; charset=ISO-8859-1; format=flowed
 Content-Transfer-Encoding: 7bit
 
 For some reason the patch didn't get attached to the PR.
 The patch is attached to this message.
 
 --------------060307030907010106000704
 Content-Type: text/x-csrc;
  name="patch-extensions-xhprof.c"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment;
  filename="patch-extensions-xhprof.c"
 
 --- xhprof.c
 +++ xhprof.c
 @@ -28,6 +28,7 @@
  #include "php_ini.h"
  #include "ext/standard/info.h"
  #include "php_xhprof.h"
 +#include "Zend/zend_extensions.h"
  #include <sys/time.h>
  #include <sys/resource.h>
  #include <stdlib.h>
 @@ -898,7 +899,7 @@ static char *hp_get_base_filename(char *filename) {
  static char *hp_get_function_name(zend_op_array *ops TSRMLS_DC) {
    zend_execute_data *data;
    char              *func = NULL;
 -  char              *cls = NULL;
 +  const char        *cls = NULL;
    char              *ret = NULL;
    int                len;
    zend_function      *curr_func;
 @@ -942,7 +943,12 @@ static char *hp_get_function_name(zend_op_array *ops TSRMLS_DC) {
        /* we are dealing with a special directive/function like
         * include, eval, etc.
         */
 +#if ZEND_EXTENSION_API_NO >= 220100525
 +      curr_op = data->opline->extended_value;
 +#else
        curr_op = data->opline->op2.u.constant.value.lval;
 +#endif
 +
        switch (curr_op) {
          case ZEND_EVAL:
            func = "eval";
 @@ -1660,13 +1666,22 @@ ZEND_DLEXPORT void hp_execute_internal(zend_execute_data *execute_data,
    if (!_zend_execute_internal) {
      /* no old override to begin with. so invoke the builtin's implementation  */
      zend_op *opline = EX(opline);
 +#if ZEND_EXTENSION_API_NO >= 220100525
 +    temp_variable *retvar = &EX_T(opline->result.var);
 +    ((zend_internal_function *) EX(function_state).function)->handler(
 +                       opline->extended_value,
 +                       retvar->var.ptr,
 +                       (EX(function_state).function->common.fn_flags & ZEND_ACC_RETURN_REFERENCE) ?
 +                       &retvar->var.ptr:NULL,
 +                       EX(object), ret TSRMLS_CC);
 +#else
      ((zend_internal_function *) EX(function_state).function)->handler(
                         opline->extended_value,
                         EX_T(opline->result.u.var).var.ptr,
                         EX(function_state).function->common.return_reference ?
                         &EX_T(opline->result.u.var).var.ptr:NULL,
                         EX(object), ret TSRMLS_CC);
 -
 +#endif
    } else {
      /* call the old override */
      _zend_execute_internal(execute_data, ret TSRMLS_CC);
 
 --------------060307030907010106000704--
State-Changed-From-To: open->closed 
State-Changed-By: miwi 
State-Changed-When: Wed May 30 03:23:31 UTC 2012 
State-Changed-Why:  
Committed. Thanks! 

http://www.freebsd.org/cgi/query-pr.cgi?pr=168441 

From: dfilter@FreeBSD.ORG (dfilter service)
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/168441: commit references a PR
Date: Wed, 30 May 2012 03:23:37 +0000 (UTC)

 miwi        2012-05-30 03:23:24 UTC
 
   FreeBSD ports repository
 
   Modified files:
     devel/pecl-xhprof    Makefile 
   Added files:
     devel/pecl-xhprof/files patch-xhprof.c 
   Log:
   - Add support for PHP 5.4
   - While here drop 6.X gruft
   
   PR:             168441
   Submitted by:   Espen Volden <voldern@hoeggen.net> (maintainer)
   
   Revision  Changes    Path
   1.5       +2 -8      ports/devel/pecl-xhprof/Makefile
   1.1       +56 -0     ports/devel/pecl-xhprof/files/patch-xhprof.c (new)
 _______________________________________________
 cvs-all@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/cvs-all
 To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
 
>Unformatted:
