[arch-commits] Commit in freecad/repos (3 files)

Felix Yan felixonmars at archlinux.org
Sat Dec 12 15:57:03 UTC 2020


    Date: Saturday, December 12, 2020 @ 15:57:02
  Author: felixonmars
Revision: 773369

archrelease: copy trunk to community-staging-x86_64

Added:
  freecad/repos/community-staging-x86_64/
  freecad/repos/community-staging-x86_64/PKGBUILD
    (from rev 773368, freecad/trunk/PKGBUILD)
  freecad/repos/community-staging-x86_64/freecad.xml
    (from rev 773368, freecad/trunk/freecad.xml)

-------------+
 PKGBUILD    |  121 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 freecad.xml |    9 ++++
 2 files changed, 130 insertions(+)

Copied: freecad/repos/community-staging-x86_64/PKGBUILD (from rev 773368, freecad/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD	                        (rev 0)
+++ community-staging-x86_64/PKGBUILD	2020-12-12 15:57:02 UTC (rev 773369)
@@ -0,0 +1,121 @@
+# Maintainer: Alexander F. Rødseth <xyproto at archlinux.org>
+# Contributor: Gabriel Souza Franco <Z2FicmllbGZyYW5jb3NvdXphQGdtYWlsLmNvbQ==>
+# Contributor: Florian Pritz
+# Contributor: Jonas Heinrich <onny at project-insanity.org>
+# Contributor: Jordi De Groof <jordi.degroof at gmail.com>
+# Contributor: mickele
+# Contributor: manwithgrenade
+# Contributor: bricem13
+# Contributor: gborzi
+
+pkgname=freecad
+pkgver=0.18.5
+_commit=734202bc810bf61bd6f66bdc060e6951bd0d134d  # tag: 0.18.5
+pkgrel=5
+pkgdesc='General purpose 3D CAD modeler'
+arch=(x86_64)
+url='https://freecadweb.org/'
+license=(LGPL)
+depends=(boost-libs glew jsoncpp libspnav med netcdf opencascade74 openmpi
+         pyside2-tools python-matplotlib python-pivy python-pyside2 qt5-svg
+         qt5-tools qt5-webkit qt5-x11extras shared-mime-info xerces-c)
+makedepends=(boost cmake coin eigen gcc-fortran gendesk git ninja pyside2
+             python-shiboken2 shiboken2 swig)
+source=("git+https://github.com/FreeCAD/FreeCAD#commit=$_commit"
+        "$pkgname-qt-5.14.patch::https://github.com/FreeCAD/FreeCAD/commit/17ed2b196a58.patch"
+        "$pkgname-qt-5.14-version.patch::https://github.com/FreeCAD/FreeCAD/commit/1666b28836ba.patch"
+        "$pkgname-qt-5.15.patch::https://github.com/FreeCAD/FreeCAD/commit/b2882c699b14.patch"
+        "$pkgname-py38.patch::https://github.com/FreeCAD/FreeCAD/commit/6eacb17b3e03.patch"
+        "$pkgname-py39.patch::https://github.com/FreeCAD/FreeCAD/commit/ae641dc5278e.patch"
+        "$pkgname-boost-1.73.patch::https://github.com/FreeCAD/FreeCAD/commit/200c7c7e00d5.patch"
+        freecad.xml)
+sha256sums=('SKIP'
+            '9af1f0b85a58acad3035fd5abfaf60f57f6a5424101cb328f16468a9e4aebfa5'
+            'a74b2f0a48056f73d4b5adaf37bb71750b140bb05a4e417b8c7ed35f294facde'
+            '820d863794a0dbf0ca1dbe5a419d1823202b2459fee1cc8751a61af67a735bb6'
+            '3d2570c143825acd01b8eeb645fc450566e9ac20d6333de9e17cbc10fb5a13e0'
+            'de1d61c18d329e0903d5c1bc27b9c4e28c4911380bdd4b6c49da5b63740862f1'
+            '99a55f06e9d3be3385cb41d747b1a6c9515b010d867bdeeda000a45c0014a89e'
+            '4ee1daf47c8371a3e17173d85a0dd4a106dacd7899d783ccd97a6f3e0dd1a21f')
+
+prepare() {
+  cd FreeCAD
+
+  patch -Np1 -i ../$pkgname-qt-5.14.patch
+  patch -Np1 -i ../$pkgname-qt-5.14-version.patch
+  patch -Np1 -i ../$pkgname-qt-5.15.patch
+  patch -Np1 -i ../$pkgname-py38.patch
+  patch -Np1 -i ../$pkgname-py39.patch
+  patch -Np1 -i ../$pkgname-boost-1.73.patch
+
+  cd src
+
+  # Fix missing "std::" qualifiers, sledge hammer style
+  find . \
+    ! -wholename "*/Mod/Sketcher/*" \
+    ! -wholename "*/Mod/PartDesign/*" \
+    -name "*.cpp" -type f \
+    -exec sed -i '1i using namespace std;' {} \;
+
+  # Add missing include
+  sed -i '1i \#include <Inventor\/SbByteBuffer.h>' \
+    Gui/Quarter/QuarterWidget.cpp
+
+  # Create desktop shortcut
+  gendesk -f -n --pkgname "$pkgname" --pkgdesc "$pkgdesc" --name FreeCAD \
+    --mimetypes='application/x-extension-fcstd' --startupnotify=true
+}
+
+build() {
+  # OpenCascade requires that /bin comes before /usr/bin in $PATH
+  export PATH="/usr/bin:$PATH"
+
+  # Configure with CMake and build with Ninja
+  # C++14 mode required by Boost.Geometry 1.75
+  mkdir -p build
+  cd build
+  cmake ../FreeCAD \
+    -D BUILD_ENABLE_CXX_STD=C++14 \
+    -D BUILD_QT5=ON \
+    -D CMAKE_BUILD_TYPE=Release \
+    -D CMAKE_C_FLAGS="$CFLAGS -fPIC -w" \
+    -D CMAKE_CXX_FLAGS="$CXXFLAGS -fPIC -w" \
+    -D CMAKE_INSTALL_DATADIR="/usr/share/freecad" \
+    -D CMAKE_INSTALL_DOCDIR="/usr/share/freecad/doc" \
+    -D CMAKE_INSTALL_PREFIX="/usr/lib/freecad" \
+    -D FREECAD_USE_EXTERNAL_PIVY=ON \
+    -D FREECAD_USE_OCC_VARIANT="Official Version" \
+    -D FREECAD_USE_QT_FILEDIALOG=ON \
+    -D PYTHON_EXECUTABLE=/usr/bin/python \
+    -G Ninja
+  ninja
+}
+
+package() {
+  DESTDIR="$pkgdir" ninja -C build install
+
+  # Package desktop shortcut
+  install -Dm644 FreeCAD/src/freecad.desktop \
+    "$pkgdir/usr/share/applications/freecad.desktop"
+
+  # Package MIME info
+  install -Dm644 freecad.xml "$pkgdir/usr/share/mime/packages/freecad.xml"
+
+  cd FreeCAD/src/Gui/Icons
+
+  # Package icons
+  for i in 16 32 48 64; do
+    install -Dm644 "freecad-icon-$i.png" \
+      "$pkgdir/usr/share/icons/hicolor/${i}x$i/apps/freecad.png"
+  done
+  install -Dm644 freecad.svg \
+    "$pkgdir/usr/share/icons/hicolor/scalable/apps/freecad.svg"
+
+
+  # Package symlinks in /usr/bin
+  install -d "$pkgdir/usr/bin"
+  ln -sf /usr/lib/freecad/bin/FreeCAD "$pkgdir/usr/bin/freecad"
+  ln -sf /usr/lib/freecad/bin/FreeCAD "$pkgdir/usr/bin/FreeCAD"
+  ln -sf /usr/lib/freecad/bin/FreeCADCmd "$pkgdir/usr/bin/freecadcmd"
+  ln -sf /usr/lib/freecad/bin/FreeCADCmd "$pkgdir/usr/bin/FreeCADCmd"
+}

Copied: freecad/repos/community-staging-x86_64/freecad.xml (from rev 773368, freecad/trunk/freecad.xml)
===================================================================
--- community-staging-x86_64/freecad.xml	                        (rev 0)
+++ community-staging-x86_64/freecad.xml	2020-12-12 15:57:02 UTC (rev 773369)
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
+  <mime-type type="application/x-extension-fcstd">
+    <sub-class-of type="application/zip"/>
+    <comment>FreeCAD document</comment>
+    <glob pattern="*.fcstd"/>
+    <icon name="freecad"/>
+  </mime-type>
+</mime-info>



More information about the arch-commits mailing list