Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 13 Dec 2020 22:24:13 +0000 (UTC)
From:      Christoph Moench-Tegeder <cmt@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r558063 - in head/cad/freecad: . files
Message-ID:  <202012132224.0BDMODVc051149@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: cmt
Date: Sun Dec 13 22:24:13 2020
New Revision: 558063
URL: https://svnweb.freebsd.org/changeset/ports/558063

Log:
  try to make FreeCAD compile with Python 3.9
  
  patch from upstream cannot be applied directly as dos2unix runs
  before patch.
  
  PR:		251145
  Submitted by:	 Oleg Sidorkin

Added:
  head/cad/freecad/files/ae641dc5278efaf.patch   (contents, props changed)
Modified:
  head/cad/freecad/Makefile
  head/cad/freecad/distinfo

Modified: head/cad/freecad/Makefile
==============================================================================
--- head/cad/freecad/Makefile	Sun Dec 13 22:23:08 2020	(r558062)
+++ head/cad/freecad/Makefile	Sun Dec 13 22:24:13 2020	(r558063)
@@ -2,7 +2,7 @@
 
 PORTNAME=	FreeCAD
 DISTVERSION=	0.18.5
-PORTREVISION=	1
+PORTREVISION=	2
 # use these for bugfixes/snapshots
 # DISTVERSION=	0.18-16093 # git rev-list --count
 # DISTVERSIONSUFFIX=	-g690774c0e

Modified: head/cad/freecad/distinfo
==============================================================================
--- head/cad/freecad/distinfo	Sun Dec 13 22:23:08 2020	(r558062)
+++ head/cad/freecad/distinfo	Sun Dec 13 22:24:13 2020	(r558063)
@@ -1,4 +1,4 @@
-TIMESTAMP = 1606511424
+TIMESTAMP = 1607894358
 SHA256 (FreeCAD-FreeCAD-0.18.5_GH0.tar.gz) = 592c552237effc7a658730718a7f5a94b3819cd7a2f1476a9858c2752a98540a
 SIZE (FreeCAD-FreeCAD-0.18.5_GH0.tar.gz) = 219762319
 SHA256 (6eacb17b3e03d20.patch) = 3d2570c143825acd01b8eeb645fc450566e9ac20d6333de9e17cbc10fb5a13e0

Added: head/cad/freecad/files/ae641dc5278efaf.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/freecad/files/ae641dc5278efaf.patch	Sun Dec 13 22:24:13 2020	(r558063)
@@ -0,0 +1,186 @@
+dos2unix fixed variant of https://github.com/FreeCAD/FreeCAD/commit/ae641dc5278efaf.patch
+From ae641dc5278efafa22b168fc196875558b92e436 Mon Sep 17 00:00:00 2001
+From: wmayer <wmayer@users.sourceforge.net>
+Date: Sun, 7 Jun 2020 12:53:47 +0200
+Subject: [PATCH] Python: [skip ci] tp_print slot has been replaced with
+ tp_vectorcall_offset in Py3.8
+
+---
+ src/Base/swigpyrun_1.3.25.h        |  8 ++++++++
+ src/Base/swigpyrun_1.3.33.h        |  8 ++++++++
+ src/Base/swigpyrun_1.3.36.h        |  9 +++++++++
+ src/Base/swigpyrun_1.3.38.h        |  8 ++++++++
+ src/Base/swigpyrun_1.3.40.h        | 12 ++++++++++--
+ src/CXX/Python3/cxx_extensions.cxx |  6 ++++++
+ 6 files changed, 49 insertions(+), 2 deletions(-)
+
+diff --git a/src/Base/swigpyrun_1.3.25.h b/src/Base/swigpyrun_1.3.25.h
+index 91717210b48..9ebadbc83a2 100644
+--- a/src/Base/swigpyrun_1.3.25.h
++++ b/src/Base/swigpyrun_1.3.25.h
+@@ -699,7 +699,11 @@ PySwigObject_type(void) {
+     0,					/*tp_itemsize*/
+     /* methods */
+     (destructor)PySwigObject_dealloc,	/*tp_dealloc*/
++#if PY_VERSION_HEX < 0x03080000
+     (printfunc)PySwigObject_print,	/*tp_print*/
++#else
++    0,          /*tp_vectorcall_offset*/
++#endif
+     (getattrfunc)0,			/*tp_getattr*/
+     (setattrfunc)0,			/*tp_setattr*/
+     (cmpfunc)PySwigObject_compare,	/*tp_compare*/
+@@ -859,7 +863,11 @@ PySwigPacked_type(void) {
+     0,					/*tp_itemsize*/
+     /* methods */
+     (destructor)PySwigPacked_dealloc,	/*tp_dealloc*/
++#if PY_VERSION_HEX < 0x03080000
+     (printfunc)PySwigPacked_print,	/*tp_print*/
++#else
++    0,          /*tp_vectorcall_offset*/
++#endif
+     (getattrfunc)0,			/*tp_getattr*/
+     (setattrfunc)0,			/*tp_setattr*/
+     (cmpfunc)PySwigPacked_compare,	/*tp_compare*/
+diff --git a/src/Base/swigpyrun_1.3.33.h b/src/Base/swigpyrun_1.3.33.h
+index f83ac1e89c3..afd5a8c504f 100644
+--- a/src/Base/swigpyrun_1.3.33.h
++++ b/src/Base/swigpyrun_1.3.33.h
+@@ -1620,7 +1620,11 @@ _PySwigObject_type(void) {
+ 	sizeof(PySwigObject),		    /* tp_basicsize */
+ 	0,			            /* tp_itemsize */
+ 	(destructor)PySwigObject_dealloc,   /* tp_dealloc */
++#if PY_VERSION_HEX < 0x03080000
+ 	(printfunc)PySwigObject_print,	    /* tp_print */
++#else
++	0, /*tp_vectorcall_offset*/
++#endif
+ #if PY_VERSION_HEX < 0x02020000
+ 	(getattrfunc)PySwigObject_getattr,  /* tp_getattr */ 
+ #else
+@@ -1790,7 +1794,11 @@ _PySwigPacked_type(void) {
+ 	sizeof(PySwigPacked),		    /* tp_basicsize */	
+ 	0,				    /* tp_itemsize */	
+ 	(destructor)PySwigPacked_dealloc,   /* tp_dealloc */	
++#if PY_VERSION_HEX < 0x03080000
+ 	(printfunc)PySwigPacked_print,	    /* tp_print */   	
++#else
++	0, /*tp_vectorcall_offset*/
++#endif
+ 	(getattrfunc)0,			    /* tp_getattr */ 	
+ 	(setattrfunc)0,			    /* tp_setattr */ 	
+ 	(cmpfunc)PySwigPacked_compare,	    /* tp_compare */ 	
+diff --git a/src/Base/swigpyrun_1.3.36.h b/src/Base/swigpyrun_1.3.36.h
+index 02c58ad8ab9..12ad41e12a8 100644
+--- a/src/Base/swigpyrun_1.3.36.h
++++ b/src/Base/swigpyrun_1.3.36.h
+@@ -1628,7 +1628,12 @@ _PySwigObject_type(void) {
+ 	sizeof(PySwigObject),		    /* tp_basicsize */
+ 	0,			            /* tp_itemsize */
+ 	(destructor)PySwigObject_dealloc,   /* tp_dealloc */
++#if PY_VERSION_HEX < 0x03080000
+ 	(printfunc)PySwigObject_print,	    /* tp_print */
++#else
++	0, /*tp_vectorcall_offset*/
++#endif
++
+ #if PY_VERSION_HEX < 0x02020000
+ 	(getattrfunc)PySwigObject_getattr,  /* tp_getattr */ 
+ #else
+@@ -1798,7 +1803,11 @@ _PySwigPacked_type(void) {
+ 	sizeof(PySwigPacked),		    /* tp_basicsize */	
+ 	0,				    /* tp_itemsize */	
+ 	(destructor)PySwigPacked_dealloc,   /* tp_dealloc */	
++#if PY_VERSION_HEX < 0x03080000
+ 	(printfunc)PySwigPacked_print,	    /* tp_print */   	
++#else
++	0, /*tp_vectorcall_offset*/
++#endif
+ 	(getattrfunc)0,			    /* tp_getattr */ 	
+ 	(setattrfunc)0,			    /* tp_setattr */ 	
+ 	(cmpfunc)PySwigPacked_compare,	    /* tp_compare */ 	
+diff --git a/src/Base/swigpyrun_1.3.38.h b/src/Base/swigpyrun_1.3.38.h
+index dae058c202f..7cacc157970 100644
+--- a/src/Base/swigpyrun_1.3.38.h
++++ b/src/Base/swigpyrun_1.3.38.h
+@@ -1741,7 +1741,11 @@ _PySwigObject_type(void) {
+ 	sizeof(SwigPyObject),		    /* tp_basicsize */
+ 	0,			            /* tp_itemsize */
+ 	(destructor)SwigPyObject_dealloc,   /* tp_dealloc */
++#if PY_VERSION_HEX < 0x03080000
+ 	(printfunc)SwigPyObject_print,	    /* tp_print */
++#else
++	0, /*tp_vectorcall_offset*/
++#endif
+ #if PY_VERSION_HEX < 0x02020000
+ 	(getattrfunc)SwigPyObject_getattr,  /* tp_getattr */ 
+ #else
+@@ -1919,7 +1923,11 @@ _PySwigPacked_type(void) {
+ 	sizeof(SwigPyPacked),		    /* tp_basicsize */	
+ 	0,				    /* tp_itemsize */	
+ 	(destructor)SwigPyPacked_dealloc,   /* tp_dealloc */	
++#if PY_VERSION_HEX < 0x03080000
+ 	(printfunc)SwigPyPacked_print,	    /* tp_print */   	
++#else
++	0, /*tp_vectorcall_offset*/
++#endif
+ 	(getattrfunc)0,			    /* tp_getattr */ 	
+ 	(setattrfunc)0,			    /* tp_setattr */ 	
+ 	(cmpfunc)SwigPyPacked_compare,	    /* tp_compare */ 	
+diff --git a/src/Base/swigpyrun_1.3.40.h b/src/Base/swigpyrun_1.3.40.h
+index 136ba809fb7..400db8b4784 100644
+--- a/src/Base/swigpyrun_1.3.40.h
++++ b/src/Base/swigpyrun_1.3.40.h
+@@ -1766,7 +1766,11 @@ _PySwigObject_type(void) {
+ 	sizeof(SwigPyObject),		    /* tp_basicsize */
+ 	0,			            /* tp_itemsize */
+ 	(destructor)SwigPyObject_dealloc,   /* tp_dealloc */
++#if PY_VERSION_HEX < 0x03080000
+ 	(printfunc)SwigPyObject_print,	    /* tp_print */
++#else
++	0, /*tp_vectorcall_offset*/
++#endif
+ #if PY_VERSION_HEX < 0x02020000
+ 	(getattrfunc)SwigPyObject_getattr,  /* tp_getattr */ 
+ #else
+@@ -1947,8 +1951,12 @@ _PySwigPacked_type(void) {
+ 	(char *)"SwigPyPacked",		    /* tp_name */	
+ 	sizeof(SwigPyPacked),		    /* tp_basicsize */	
+ 	0,				    /* tp_itemsize */	
+-	(destructor)SwigPyPacked_dealloc,   /* tp_dealloc */	
+-	(printfunc)SwigPyPacked_print,	    /* tp_print */   	
++	(destructor)SwigPyPacked_dealloc,   /* tp_dealloc */
++#if PY_VERSION_HEX < 0x03080000
++	(printfunc)SwigPyPacked_print,	    /* tp_print */
++#else
++	0, /*tp_vectorcall_offset*/
++#endif
+ 	(getattrfunc)0,			    /* tp_getattr */ 	
+ 	(setattrfunc)0,			    /* tp_setattr */ 	
+ #if PY_VERSION_HEX>=0x03000000
+diff --git a/src/CXX/Python3/cxx_extensions.cxx b/src/CXX/Python3/cxx_extensions.cxx
+index fb3da455f5b..9ff94612f07 100644
+--- a/src/CXX/Python3/cxx_extensions.cxx
++++ b/src/CXX/Python3/cxx_extensions.cxx
+@@ -381,7 +381,11 @@ PythonType::PythonType( size_t basic_size, int itemsize, const char *default_nam
+ 
+     // Methods to implement standard operations
+     table->tp_dealloc = (destructor)standard_dealloc;
++#if PY_VERSION_HEX < 0x03080000
+     table->tp_print = 0;
++#else
++    table->tp_vectorcall_offset = 0;
++#endif
+     table->tp_getattr = 0;
+     table->tp_setattr = 0;
+     table->tp_repr = 0;
+@@ -524,7 +528,9 @@ PythonType &PythonType::supportClass()
+ #ifdef PYCXX_PYTHON_2TO3
+ PythonType &PythonType::supportPrint()
+ {
++#if PY_VERSION_HEX < 0x03080000
+     table->tp_print = print_handler;
++#endif
+     return *this;
+ }
+ #endif



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202012132224.0BDMODVc051149>