From 8564372d84813741911b0dacfa02666997e712e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?= Date: Sun, 22 Nov 2020 08:11:49 +0700 Subject: [PATCH 1/3] coin3: update to 4.0.0. --- common/shlibs | 2 +- srcpkgs/coin3/patches/0005-gcc-4.7.patch | 28 --------- .../coin3/patches/0010-GCC-4.8.0-fixes.patch | 40 ------------ .../0012-memhandler-initialization.patch | 22 ------- srcpkgs/coin3/patches/fix-missing-deref.patch | 20 ------ srcpkgs/coin3/template | 62 +++++++------------ 6 files changed, 22 insertions(+), 152 deletions(-) delete mode 100644 srcpkgs/coin3/patches/0005-gcc-4.7.patch delete mode 100644 srcpkgs/coin3/patches/0010-GCC-4.8.0-fixes.patch delete mode 100644 srcpkgs/coin3/patches/0012-memhandler-initialization.patch delete mode 100644 srcpkgs/coin3/patches/fix-missing-deref.patch diff --git a/common/shlibs b/common/shlibs index a1b2c7e1b9a..f31e5727321 100644 --- a/common/shlibs +++ b/common/shlibs @@ -2709,7 +2709,7 @@ libKF5DNSSD.so.5 kdnssd-5.26.0_1 libtwaindsm.so.2 twaindsm-2.3.0_1 libspnav.so.0 libspnav-0.2.3_1 libsimage.so.20 simage-1.7.0_1 -libCoin.so.60 coin3-3.1.3_1 +libCoin.so.80 coin3-4.0.0_1 libgl2ps.so.1 gl2ps-1.3.9_1 libFWOSPlugin.so.11 oce-0.18_1 libPTKernel.so.11 oce-0.18_1 diff --git a/srcpkgs/coin3/patches/0005-gcc-4.7.patch b/srcpkgs/coin3/patches/0005-gcc-4.7.patch deleted file mode 100644 index e2d16652445..00000000000 --- a/srcpkgs/coin3/patches/0005-gcc-4.7.patch +++ /dev/null @@ -1,28 +0,0 @@ -Source: http://pkgs.fedoraproject.org/cgit/rpms/Coin3.git/plain/0005-gcc-4.7.patch - -From a5bf6656215837a9bdf4d70cdce4be0fedd522e0 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ralf=20Cors=C3=A9pius?= -Date: Fri, 4 May 2012 13:30:20 +0200 -Subject: [PATCH 05/10] gcc-4.7. - ---- - include/Inventor/SbBasic.h | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/include/Inventor/SbBasic.h b/include/Inventor/SbBasic.h -index d038bb1..2ee6b70 100644 ---- a/include/Inventor/SbBasic.h -+++ b/include/Inventor/SbBasic.h -@@ -25,6 +25,9 @@ - \**************************************************************************/ - - #include -+#ifndef NDEBUG -+#include -+#endif // !NDEBUG - - /* ********************************************************************** */ - /* Trap people trying to use Inventor headers while compiling C source code. --- -1.8.1.4 - diff --git a/srcpkgs/coin3/patches/0010-GCC-4.8.0-fixes.patch b/srcpkgs/coin3/patches/0010-GCC-4.8.0-fixes.patch deleted file mode 100644 index bc5167e8f13..00000000000 --- a/srcpkgs/coin3/patches/0010-GCC-4.8.0-fixes.patch +++ /dev/null @@ -1,40 +0,0 @@ -Source: http://pkgs.fedoraproject.org/cgit/rpms/Coin3.git/plain/0010-GCC-4.8.0-fixes.patch - -From 9f5d96a2b9a71ab539237d2dab4c54fc46fc5c5b Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ralf=20Cors=C3=A9pius?= -Date: Thu, 18 Apr 2013 19:17:06 +0200 -Subject: [PATCH 10/10] GCC-4.8.0 fixes - ---- - src/fonts/freetype.cpp | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/fonts/freetype.cpp b/src/fonts/freetype.cpp -index 760b88b..e705d3a 100644 ---- a/src/fonts/freetype.cpp -+++ b/src/fonts/freetype.cpp -@@ -32,18 +32,18 @@ - - 20050613 mortene. */ - --#include "fonts/freetype.h" -- - #ifdef HAVE_CONFIG_H - #include "config.h" - #endif /* HAVE_CONFIG_H */ - --#include -+#include - #include - - #include "glue/freetype.h" - #include "glue/GLUWrapper.h" - -+#include "fonts/freetype.h" -+ - /* ************************************************************************* */ - - #ifdef __cplusplus --- -1.8.1.4 - diff --git a/srcpkgs/coin3/patches/0012-memhandler-initialization.patch b/srcpkgs/coin3/patches/0012-memhandler-initialization.patch deleted file mode 100644 index 7ad4dc68116..00000000000 --- a/srcpkgs/coin3/patches/0012-memhandler-initialization.patch +++ /dev/null @@ -1,22 +0,0 @@ -Source: http://pkgs.fedoraproject.org/cgit/rpms/Coin3.git/plain/0012-memhandler-initialization.patch -Additional information: https://bugzilla.redhat.com/show_bug.cgi?id=1323159 ---- Coin-3.1.3/src/misc/SbHash.h.init 2010-03-02 22:20:09.000000000 +0900 -+++ Coin-3.1.3/src/misc/SbHash.h 2016-04-22 16:52:39.888883757 +0900 -@@ -89,6 +89,8 @@ - cc_memalloc_deallocate(entry->memhandler, ptr); - } - SbHashEntry(const Key & key, const Type & obj) : key(key), obj(obj) {} -+ SbHashEntry(const Key & key, const Type & obj, cc_memalloc *memhandler) -+ : key(key), obj(obj), memhandler(memhandler) {} - - Key key; - Type obj; -@@ -218,7 +220,7 @@ - /* Key not already in the hash table; insert a new - * entry as the first element in the bucket - */ -- entry = new (this->memhandler) SbHashEntry(key, obj); -+ entry = new (this->memhandler) SbHashEntry(key, obj, this->memhandler); - entry->next = this->buckets[i]; - this->buckets[i] = entry; - diff --git a/srcpkgs/coin3/patches/fix-missing-deref.patch b/srcpkgs/coin3/patches/fix-missing-deref.patch deleted file mode 100644 index 8c50078b8b7..00000000000 --- a/srcpkgs/coin3/patches/fix-missing-deref.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- ./src/3ds/SoStream.cpp.orig 2018-01-16 11:18:58.965420684 +0100 -+++ ./src/3ds/SoStream.cpp 2018-01-16 11:18:23.140563596 +0100 -@@ -176,7 +176,7 @@ do { \ - if (!gotNum) { setBadBit(); return FALSE; } \ - \ - char *ce; \ -- s = '\0'; \ -+ *s = '\0'; \ - _convertType_ tempVal = _convertFunc_(buf, &ce, 0); \ - \ - if (ce != s) \ -@@ -273,7 +273,7 @@ do { \ - gotAll: \ - \ - char *ce; \ -- s = '\0'; \ -+ *s = '\0'; \ - double tempVal = _convertFunc_(buf, &ce); \ - \ - if (ce != s) \ diff --git a/srcpkgs/coin3/template b/srcpkgs/coin3/template index 4150c863e9f..82cea903795 100644 --- a/srcpkgs/coin3/template +++ b/srcpkgs/coin3/template @@ -1,55 +1,37 @@ # Template file for 'coin3' pkgname=coin3 -version=3.1.3 -revision=5 -wrksrc="Coin-${version}" -build_style=gnu-configure -configure_args="--includedir=/usr/include/Coin3 --disable-dependency-tracking - --disable-static --enable-threadsafe --enable-exceptions - --disable-dl-simage --disable-dl-glu --disable-dl-libbzip2 - --disable-dl-zlib --disable-dl-freetype --disable-dl-fontconfig - --enable-3ds-import --enable-html - sim_ac_simage_configcmd=$XBPS_CROSS_BASE/usr/bin/simage-config" -hostmakedepends="pkg-config doxygen perl" +version=4.0.0 +revision=1 +wrksrc=coin +build_style=cmake +build_helper=qemu +configure_args="-DCMAKE_BUILD_TYPE=None -DCOIN_BUILD_DOCUMENTATION=ON + -DCOIN_THREADSAFE=ON -DUSE_EXTERNAL_EXPAT=ON + -DFONTCONFIG_RUNTIME_LINKING=OFF -DFREETYPE_RUNTIME_LINKING=OFF + -DLIBBZIP2_RUNTIME_LINKING=OFF -DOPENAL_RUNTIME_LINKING=OFF + -DSIMAGE_RUNTIME_LINKING=OFF -DZLIB_RUNTIME_LINKING=OFF + -DGLU_RUNTIME_LINKING=OFF" +hostmakedepends="pkg-config doxygen perl graphviz" makedepends="freetype-devel glu-devel zlib-devel bzip2-devel fontconfig-devel boost-devel simage-devel" short_desc="High-level 3D graphics toolkit" maintainer="yopito " -# HomePage tells BSD 3-Clause license, but tarball is GPLv2 -license="GPL-2.0-only" -homepage="https://bitbucket.org/Coin3D/coin/wiki/Home" -distfiles="https://bitbucket.org/Coin3D/coin/downloads/Coin-${version}.tar.gz" -checksum=583478c581317862aa03a19f14c527c3888478a06284b9a46a0155fa5886d417 +license="BSD-3-Clause" +homepage="https://coin3d.github.io/" +distfiles="https://github.com/coin3d/coin/releases/download/Coin-$version/coin-$version-src.tar.gz" +checksum=e4f4bd57804b8ed0e017424ad2e45c112912a928b83f86c89963df9015251476 patch_args="-Np1" +CFLAGS=-D_POSIX_SOURCE=200809L +CXXFLAGS=-D_POSIX_SOURCE=200809L + post_extract() { # remove bundled boost headers rm -rf ${wrksrc}/include/boost } -do_configure() { - # only way to compute and point freetype2 stuff to configure - : ${configure_script:=./configure} - CPPFLAGS+="$(pkg-config --cflags freetype2)" ${configure_script} ${configure_args} -} - -post_configure() { - case "$XBPS_TARGET_MACHINE" in - *-musl) - # configure checks are awfull - sed -i -e 's,^#define SIM_TIMEVAL_TV_SEC_T { },#define SIM_TIMEVAL_TV_SEC_T time_t,' \ - -e 's,^#define SIM_TIMEVAL_TV_USEC_T { },#define SIM_TIMEVAL_TV_USEC_T suseconds_t,' \ - ${wrksrc}/src/config.h - ;; - esac -} - post_install() { - if [ "$CROSS_BUILD" ]; then - sed -i -e "s,$XBPS_CROSS_BASE,,g" \ - $DESTDIR/usr/share/Coin/conf/coin-default.cfg \ - $DESTDIR/usr/lib/pkgconfig/Coin.pc - fi + vlicense COPYING } coin3-devel_package() { @@ -59,15 +41,13 @@ coin3-devel_package() { vmove usr/include vmove usr/bin/coin-config vmove "usr/lib/*.so" + vmove usr/lib/cmake vmove usr/lib/pkgconfig - vmove usr/share/aclocal - vmove usr/share/man } } coin3-doc_package() { short_desc+=" - documentation" - archs=noarch pkg_install() { vmove usr/share/doc } From aab1f4bb8b9fe8d3c7ba419dcd7f8d79f375a593 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?= Date: Sun, 22 Nov 2020 07:30:24 +0700 Subject: [PATCH 2/3] python3-pivy: rebuild against coin3-4.0.0 --- srcpkgs/python3-pivy/template | 53 ++++++++++++++++++++++++++--------- 1 file changed, 39 insertions(+), 14 deletions(-) diff --git a/srcpkgs/python3-pivy/template b/srcpkgs/python3-pivy/template index 40570303769..acccf7e9871 100644 --- a/srcpkgs/python3-pivy/template +++ b/srcpkgs/python3-pivy/template @@ -1,10 +1,10 @@ # Template file for 'python3-pivy' pkgname=python3-pivy version=0.6.5 -revision=1 +revision=2 wrksrc="pivy-${version}" build_style=python3-module -hostmakedepends="python3-devel swig" +hostmakedepends="python3-devel swig cmake" makedepends="python3-devel coin3-devel qt5-devel" short_desc="Python3 bindings for the high-level 3D graphics library Coin" maintainer="yopito " @@ -22,18 +22,43 @@ if [ "$CROSS_BUILD" ]; then CFLAGS+=" -I$XBPS_CROSS_BASE/usr/include/Coin3" fi -post_extract() ( - # use setup_old.py until have Coin with cmake support - mv -f setup_old.py setup.py -) - -post_patch() { - if [ "$CROSS_BUILD" ]; then - vsed -i setup.py \ - -e '/if not self[.]check_cmd_exists.*coin-config/,+1d' \ - -e "s!coin-config!$XBPS_CROSS_BASE/usr/bin/coin-config!" \ - -e "/INCLUDE_DIR.*coin-config/s!=!= \"$XBPS_CROSS_BASE\" +!" - fi +pre_configure() { + [ -z "$CROSS_BUILD" ] && return 0 + case "$XBPS_TARGET_MACHINE" in + x86_64*) _CMAKE_SYSTEM_PROCESSOR=x86_64 ;; + i686*) _CMAKE_SYSTEM_PROCESSOR=x86 ;; + aarch64*) _CMAKE_SYSTEM_PROCESSOR=aarch64 ;; + arm*) _CMAKE_SYSTEM_PROCESSOR=arm ;; + mips*) _CMAKE_SYSTEM_PROCESSOR=mips ;; + ppc64le*) _CMAKE_SYSTEM_PROCESSOR=ppc64le ;; + ppc64*) _CMAKE_SYSTEM_PROCESSOR=ppc64 ;; + ppcle*) _CMAKE_SYSTEM_PROCESSOR=ppcle ;; + ppc*) _CMAKE_SYSTEM_PROCESSOR=ppc ;; + *) _CMAKE_SYSTEM_PROCESSOR=generic ;; + esac + cat >cross_${XBPS_CROSS_TRIPLET}.cmake <<_EOF +SET(CMAKE_SYSTEM_NAME Linux) +SET(CMAKE_SYSTEM_VERSION 1) + +SET(CMAKE_C_COMPILER ${CC}) +SET(CMAKE_CXX_COMPILER ${CXX}) +SET(CMAKE_CROSSCOMPILING TRUE) + +SET(CMAKE_SYSTEM_PROCESSOR ${_CMAKE_SYSTEM_PROCESSOR}) + +SET(CMAKE_FIND_ROOT_PATH "${XBPS_CROSS_BASE}/usr;${XBPS_CROSS_BASE}") + +SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) + +SET(wxWidgets_CONFIG_EXECUTABLE ${XBPS_WRAPPERDIR}/${wx_config:=wx-config}) +_EOF + cat >$XBPS_WRAPPERDIR/cmake <<_EOF +#!/bin/sh +/usr/bin/cmake -DCMAKE_TOOLCHAIN_FILE=$wrksrc/cross_${XBPS_CROSS_TRIPLET}.cmake "$@" +_EOF + chmod +x $XBPS_WRAPPERDIR/cmake } post_install() { From f806a3dffe12a6e66e091c946f6c90a399337c92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?= Date: Sun, 22 Nov 2020 07:30:24 +0700 Subject: [PATCH 3/3] freecad: rebuild against coin3-4.0.0 --- .../freecad/patches/151-python-warning.patch | 39 +++++++++++++++++++ srcpkgs/freecad/template | 2 +- 2 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 srcpkgs/freecad/patches/151-python-warning.patch diff --git a/srcpkgs/freecad/patches/151-python-warning.patch b/srcpkgs/freecad/patches/151-python-warning.patch new file mode 100644 index 00000000000..e76c8b1c654 --- /dev/null +++ b/srcpkgs/freecad/patches/151-python-warning.patch @@ -0,0 +1,39 @@ +diff --git src/Mod/Fem/feminout/importFenicsMesh.py src/Mod/Fem/feminout/importFenicsMesh.py +index 1bb40de..a0b5484 100644 +--- src/Mod/Fem/feminout/importFenicsMesh.py ++++ src/Mod/Fem/feminout/importFenicsMesh.py +@@ -154,7 +154,7 @@ def export(objectslist, fileString): + FreeCAD.Console.PrintWarning("Tri6 -> Tri3, Tet10 -> Tet4, etc.\n") + writeFenicsXML.write_fenics_mesh_xml(obj, fileString) + elif fileExtension.lower() == '.xdmf': +- if importToolsFem.get_FemMeshObjectMeshGroups(obj) is not (): ++ if importToolsFem.get_FemMeshObjectMeshGroups(obj): + # if there are groups found, make task panel available + panel = WriteXDMFTaskPanel(obj, fileString) + FreeCADGui.Control.showDialog(panel) +diff --git src/Mod/Fem/feminout/writeFenicsXDMF.py src/Mod/Fem/feminout/writeFenicsXDMF.py +index 9e7f01b..5a93823 100644 +--- src/Mod/Fem/feminout/writeFenicsXDMF.py ++++ src/Mod/Fem/feminout/writeFenicsXDMF.py +@@ -258,7 +258,7 @@ def write_fenics_mesh_xdmf(fem_mesh_obj, outputfile, group_values_dict={}, encod + fem_mesh = fem_mesh_obj.FemMesh + gmshgroups = get_FemMeshObjectMeshGroups(fem_mesh_obj) + +- if gmshgroups is not (): ++ if gmshgroups: + print('found mesh groups') + + for g in gmshgroups: +diff --git src/Mod/PartDesign/WizardShaft/Shaft.py src/Mod/PartDesign/WizardShaft/Shaft.py +index c519b97..8c20eb4 100644 +--- src/Mod/PartDesign/WizardShaft/Shaft.py ++++ src/Mod/PartDesign/WizardShaft/Shaft.py +@@ -88,7 +88,7 @@ class Shaft: + # We don't call equilibrium() here because the new segment has no constraints defined yet + # Fix face reference of fixed segment if it is the last one + for i in range(1, len(self.segments)): +- if self.segments[i].constraintType is not "Fixed": ++ if self.segments[i].constraintType != "Fixed": + continue + if i == len(self.segments) - 1: + self.segments[index].constraint.References = [( self.feature.feature, "Face%u" % (2 * (index+1) + 1) )] diff --git a/srcpkgs/freecad/template b/srcpkgs/freecad/template index 76d6df64724..2412a493275 100644 --- a/srcpkgs/freecad/template +++ b/srcpkgs/freecad/template @@ -1,7 +1,7 @@ # Template file for 'freecad' pkgname=freecad version=0.18.4 -revision=9 +revision=10 wrksrc="FreeCAD-${version}" build_style=cmake