From 7f76fdd333e49c7b10d4f94e5f3000d7545d2561 Mon Sep 17 00:00:00 2001 From: Markus Hovorka Date: Fri, 17 Mar 2017 23:10:59 +0100 Subject: [PATCH 1/6] Add gitignore --- .gitignore | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..eeaf99a --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +* +!.gitignore +!PKGBUILD +!.SRCINFO +!*.install +!ChangeLog +!*.diff +!*.patch From 111a934dbc1340c13824f5570dcdf7c3853ad69c Mon Sep 17 00:00:00 2001 From: Markus Hovorka Date: Sat, 18 Mar 2017 00:51:10 +0100 Subject: [PATCH 2/6] Use opencascade7 --- PKGBUILD | 23 +++++++++++++++-------- fix-occ-search.patch | 24 ++++++++++++++++++++++++ rpath.patch | 16 ++++++++++++++++ 3 files changed, 55 insertions(+), 8 deletions(-) create mode 100644 fix-occ-search.patch create mode 100644 rpath.patch diff --git a/PKGBUILD b/PKGBUILD index 4f3b2fa..6be987c 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -2,14 +2,14 @@ # Contributer: Christian Hesse pkgname=freecad-git -pkgver=0.17pre.r3401.g99fa203f3 -pkgrel=2 +pkgver=0.17pre.r3794.g4f165179e +pkgrel=1 epoch=1 pkgdesc='A general purpose 3D CAD modeler - git checkout' arch=('i686' 'x86_64') url='http://www.freecadweb.org/' license=('LGPL') -depends=('boost-libs' 'curl' 'hicolor-icon-theme' 'libspnav' 'opencascade' +depends=('boost-libs' 'curl' 'hicolor-icon-theme' 'libspnav' 'opencascade7' 'med' 'xerces-c' 'python2-pivy' 'python2-pyside' 'libtheora' 'shared-mime-info' 'vtk-qt4' 'jsoncpp') makedepends=('git' 'boost' 'cmake' 'coin' 'python2-pyside-tools' @@ -21,11 +21,13 @@ conflicts=('freecad') source=("$pkgname::git+https://github.com/FreeCAD/FreeCAD.git" "freecad.desktop" "freecad.xml" - "fem-rpath.patch") + "rpath.patch" + "fix-occ-search.patch") md5sums=('SKIP' '7e781d41e90a1c137930e47672996a52' 'c2f4154c8e4678825411de8e7fa54c6b' - '99a41687a9ba980eea86aee4345d9a1d') + 'b313a990287bce43dc698affae35d58d' + '5a7beefb78ef73241b0e421fec67f4db') pkgver() { cd "$pkgname" @@ -34,7 +36,8 @@ pkgver() { prepare() { cd "$srcdir/$pkgname" - patch -p1 -i "$srcdir/fem-rpath.patch" + patch -Np1 -i "$srcdir/rpath.patch" + patch -Np1 -i "$srcdir/fix-occ-search.patch" } build() { @@ -42,9 +45,13 @@ build() { cmake -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX:PATH="/opt/freecad" \ - -DOCC_INCLUDE_DIR:PATH=/opt/opencascade/inc \ - -DOCC_LIBRARY_DIR:PATH=/opt/opencascade/lib \ + -DOCC_INCLUDE_DIR:PATH=/opt/opencascade7/include/opencascade \ + -DOCC_LIBRARY_DIR:PATH=/opt/opencascade7/lib \ -DVTK_DIR:PATH=/opt/vtk-qt4/lib/cmake/vtk-7.0 \ + -DCMAKE_PREFIX_PATH=/opt/opencascade7 \ + -DCMAKE_INCLUDE_PATH:PATH=/opt/opencascade7/include/opencascade \ + -DCMAKE_LIBRARY_PATH:PATH=/opt/opencascade7/lib \ + -DCMAKE_INSTALL_RPATH=/opt/opencascade7/lib:/opt/vtk-qt4/lib \ -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python2 \ -DPYTHON_SUFFIX=-python2.7 \ -DPYTHON_BASENAME=-python2.7 \ diff --git a/fix-occ-search.patch b/fix-occ-search.patch new file mode 100644 index 0000000..6f77025 --- /dev/null +++ b/fix-occ-search.patch @@ -0,0 +1,24 @@ +diff --git a/cMake/FindOpenCasCade.cmake b/cMake/FindOpenCasCade.cmake +index 9944b8ade..2f60ba7dd 100644 +--- a/cMake/FindOpenCasCade.cmake ++++ b/cMake/FindOpenCasCade.cmake +@@ -56,17 +56,8 @@ else(OCE_FOUND) #look for OpenCASCADE + ) + endif(CYGWIN OR MINGW) + else(WIN32) +- FIND_PATH(OCC_INCLUDE_DIR Standard_Version.hxx +- /usr/include/opencascade +- /usr/local/include/opencascade +- /opt/opencascade/include +- /opt/opencascade/inc +- ) +- FIND_LIBRARY(OCC_LIBRARY TKernel +- /usr/lib +- /usr/local/lib +- /opt/opencascade/lib +- ) ++ FIND_PATH(OCC_INCLUDE_DIR Standard_Version.hxx) ++ FIND_LIBRARY(OCC_LIBRARY TKernel) + endif(WIN32) + if(OCC_LIBRARY) + GET_FILENAME_COMPONENT(OCC_LIBRARY_DIR ${OCC_LIBRARY} PATH) diff --git a/rpath.patch b/rpath.patch new file mode 100644 index 0000000..ceeaebd --- /dev/null +++ b/rpath.patch @@ -0,0 +1,16 @@ +diff --git a/cMake/FreeCadMacros.cmake b/cMake/FreeCadMacros.cmake +index 1faa610d8..18ccdeea6 100644 +--- a/cMake/FreeCadMacros.cmake ++++ b/cMake/FreeCadMacros.cmake +@@ -239,9 +239,9 @@ MACRO(SET_BIN_DIR ProjectName OutputName) + # FreeCADBase, SMDS, Driver, MEFISTO2 and area libs don't depend on parts from CMAKE_INSTALL_LIBDIR + if(NOT ${ProjectName} MATCHES "^(FreeCADBase|SMDS|Driver|MEFISTO2|area)$") + if(${ARGC} STREQUAL 4) +- set_target_properties(${ProjectName} PROPERTIES INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}${ARGV3}) ++ set_property(TARGET ${ProjectName} APPEND PROPERTY INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}${ARGV3}) + else(${ARGC} STREQUAL 4) +- set_target_properties(${ProjectName} PROPERTIES INSTALL_RPATH ${CMAKE_INSTALL_LIBDIR}) ++ set_property(TARGET ${ProjectName} APPEND PROPERTY INSTALL_RPATH ${CMAKE_INSTALL_LIBDIR}) + endif() + endif() + endif(WIN32) From f51d9ecb9609e672ee652f28719bc2ae69329bb8 Mon Sep 17 00:00:00 2001 From: Markus Hovorka Date: Sat, 18 Mar 2017 00:54:49 +0100 Subject: [PATCH 3/6] Delete old patch and update dependencies --- .SRCINFO | 14 ++++++++------ PKGBUILD | 4 ++-- fem-rpath.patch | 23 ----------------------- 3 files changed, 10 insertions(+), 31 deletions(-) delete mode 100644 fem-rpath.patch diff --git a/.SRCINFO b/.SRCINFO index 94446f2..ee15bcb 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,7 +1,7 @@ pkgbase = freecad-git pkgdesc = A general purpose 3D CAD modeler - git checkout - pkgver = 0.17pre.r3401.g99fa203f3 - pkgrel = 2 + pkgver = 0.17pre.r3794.g4f165179e + pkgrel = 1 epoch = 1 url = http://www.freecadweb.org/ arch = i686 @@ -16,16 +16,16 @@ pkgbase = freecad-git makedepends = eigen makedepends = gcc-fortran makedepends = swig - makedepends = patch depends = boost-libs depends = curl depends = hicolor-icon-theme depends = libspnav - depends = opencascade + depends = opencascade7 depends = med depends = xerces-c depends = python2-pivy depends = python2-pyside + depends = qtwebkit depends = libtheora depends = shared-mime-info depends = vtk-qt4 @@ -37,11 +37,13 @@ pkgbase = freecad-git source = freecad-git::git+https://github.com/FreeCAD/FreeCAD.git source = freecad.desktop source = freecad.xml - source = fem-rpath.patch + source = rpath.patch + source = fix-occ-search.patch md5sums = SKIP md5sums = 7e781d41e90a1c137930e47672996a52 md5sums = c2f4154c8e4678825411de8e7fa54c6b - md5sums = 99a41687a9ba980eea86aee4345d9a1d + md5sums = b313a990287bce43dc698affae35d58d + md5sums = 5a7beefb78ef73241b0e421fec67f4db pkgname = freecad-git diff --git a/PKGBUILD b/PKGBUILD index 6be987c..109c59d 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -10,10 +10,10 @@ arch=('i686' 'x86_64') url='http://www.freecadweb.org/' license=('LGPL') depends=('boost-libs' 'curl' 'hicolor-icon-theme' 'libspnav' 'opencascade7' - 'med' 'xerces-c' 'python2-pivy' 'python2-pyside' + 'med' 'xerces-c' 'python2-pivy' 'python2-pyside' 'qtwebkit' 'libtheora' 'shared-mime-info' 'vtk-qt4' 'jsoncpp') makedepends=('git' 'boost' 'cmake' 'coin' 'python2-pyside-tools' - 'desktop-file-utils' 'eigen' 'gcc-fortran' 'swig' 'patch') + 'desktop-file-utils' 'eigen' 'gcc-fortran' 'swig') optdepends=('python2-matplotlib' 'pycollada-git: Create, edit and load COLLADA documents.') provides=('freecad') diff --git a/fem-rpath.patch b/fem-rpath.patch deleted file mode 100644 index 69c6043..0000000 --- a/fem-rpath.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff --git a/src/Mod/Fem/App/CMakeLists.txt b/src/Mod/Fem/App/CMakeLists.txt -index fd57fa0..3c649d4 100755 ---- a/src/Mod/Fem/App/CMakeLists.txt -+++ b/src/Mod/Fem/App/CMakeLists.txt -@@ -263,5 +263,7 @@ fc_target_copy_resource(Fem - - SET_BIN_DIR(Fem Fem /Mod/Fem) - SET_PYTHON_PREFIX_SUFFIX(Fem) -+set_property(TARGET Fem APPEND PROPERTY INSTALL_RPATH "/opt/vtk-qt4/lib") -+ - - INSTALL(TARGETS Fem DESTINATION ${CMAKE_INSTALL_LIBDIR}) -diff --git a/src/Mod/Fem/Gui/CMakeLists.txt b/src/Mod/Fem/Gui/CMakeLists.txt -index cec8d78..b3a7c48 100755 ---- a/src/Mod/Fem/Gui/CMakeLists.txt -+++ b/src/Mod/Fem/Gui/CMakeLists.txt -@@ -344,5 +344,6 @@ INSTALL(FILES ${FemGuiIcon_SVG} DESTINATION "${CMAKE_INSTALL_DATADIR}/Mod/Fem/Re - - SET_BIN_DIR(FemGui FemGui /Mod/Fem) - SET_PYTHON_PREFIX_SUFFIX(FemGui) -+set_property(TARGET FemGui APPEND PROPERTY INSTALL_RPATH "/opt/vtk-qt4/lib") - - INSTALL(TARGETS FemGui DESTINATION ${CMAKE_INSTALL_LIBDIR}) From c47f71a271d99295eabea34c005392ffe1f49f73 Mon Sep 17 00:00:00 2001 From: Markus Hovorka Date: Tue, 28 Mar 2017 00:20:36 +0200 Subject: [PATCH 4/6] Add netgen support --- .SRCINFO | 3 ++- PKGBUILD | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.SRCINFO b/.SRCINFO index ee15bcb..9083ec7 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,6 +1,6 @@ pkgbase = freecad-git pkgdesc = A general purpose 3D CAD modeler - git checkout - pkgver = 0.17pre.r3794.g4f165179e + pkgver = 0.17pre.r3954.g7e9da5e95 pkgrel = 1 epoch = 1 url = http://www.freecadweb.org/ @@ -30,6 +30,7 @@ pkgbase = freecad-git depends = shared-mime-info depends = vtk-qt4 depends = jsoncpp + depends = netgen-nogui-occ7 optdepends = python2-matplotlib optdepends = pycollada-git: Create, edit and load COLLADA documents. provides = freecad diff --git a/PKGBUILD b/PKGBUILD index 109c59d..e2f0822 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -2,7 +2,7 @@ # Contributer: Christian Hesse pkgname=freecad-git -pkgver=0.17pre.r3794.g4f165179e +pkgver=0.17pre.r3954.g7e9da5e95 pkgrel=1 epoch=1 pkgdesc='A general purpose 3D CAD modeler - git checkout' @@ -11,7 +11,7 @@ url='http://www.freecadweb.org/' license=('LGPL') depends=('boost-libs' 'curl' 'hicolor-icon-theme' 'libspnav' 'opencascade7' 'med' 'xerces-c' 'python2-pivy' 'python2-pyside' 'qtwebkit' - 'libtheora' 'shared-mime-info' 'vtk-qt4' 'jsoncpp') + 'libtheora' 'shared-mime-info' 'vtk-qt4' 'jsoncpp' 'netgen-nogui-occ7') makedepends=('git' 'boost' 'cmake' 'coin' 'python2-pyside-tools' 'desktop-file-utils' 'eigen' 'gcc-fortran' 'swig') optdepends=('python2-matplotlib' @@ -55,7 +55,8 @@ build() { -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python2 \ -DPYTHON_SUFFIX=-python2.7 \ -DPYTHON_BASENAME=-python2.7 \ - -DPYSIDEUIC4BINARY:FILEPATH=/usr/bin/python2-pyside-uic + -DPYSIDEUIC4BINARY:FILEPATH=/usr/bin/python2-pyside-uic \ + -DBUILD_FEM_NETGEN=1 make } From a09136dbcf78eb7df68782164ed72a561879906c Mon Sep 17 00:00:00 2001 From: Markus Hovorka Date: Wed, 29 Mar 2017 14:32:08 +0200 Subject: [PATCH 5/6] Clean up code and formatting --- .SRCINFO | 2 +- PKGBUILD | 99 +++++++++++++++++++++++++++++--------------------------- 2 files changed, 52 insertions(+), 49 deletions(-) diff --git a/.SRCINFO b/.SRCINFO index 9083ec7..0400457 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,6 +1,6 @@ pkgbase = freecad-git pkgdesc = A general purpose 3D CAD modeler - git checkout - pkgver = 0.17pre.r3954.g7e9da5e95 + pkgver = 0.17pre.r3959.g0ca5ebe78 pkgrel = 1 epoch = 1 url = http://www.freecadweb.org/ diff --git a/PKGBUILD b/PKGBUILD index e2f0822..c0c319c 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -1,8 +1,9 @@ # Maintainer: Markus Hovorka # Contributer: Christian Hesse -pkgname=freecad-git -pkgver=0.17pre.r3954.g7e9da5e95 +_appname=freecad +pkgname="${_appname}-git" +pkgver=0.17pre.r3959.g0ca5ebe78 pkgrel=1 epoch=1 pkgdesc='A general purpose 3D CAD modeler - git checkout' @@ -11,7 +12,7 @@ url='http://www.freecadweb.org/' license=('LGPL') depends=('boost-libs' 'curl' 'hicolor-icon-theme' 'libspnav' 'opencascade7' 'med' 'xerces-c' 'python2-pivy' 'python2-pyside' 'qtwebkit' - 'libtheora' 'shared-mime-info' 'vtk-qt4' 'jsoncpp' 'netgen-nogui-occ7') + 'libtheora' 'shared-mime-info' 'vtk-qt4' 'jsoncpp' 'netgen-nogui-occ7') makedepends=('git' 'boost' 'cmake' 'coin' 'python2-pyside-tools' 'desktop-file-utils' 'eigen' 'gcc-fortran' 'swig') optdepends=('python2-matplotlib' @@ -20,9 +21,9 @@ provides=('freecad') conflicts=('freecad') source=("$pkgname::git+https://github.com/FreeCAD/FreeCAD.git" "freecad.desktop" - "freecad.xml" - "rpath.patch" - "fix-occ-search.patch") + "freecad.xml" + "rpath.patch" + "fix-occ-search.patch") md5sums=('SKIP' '7e781d41e90a1c137930e47672996a52' 'c2f4154c8e4678825411de8e7fa54c6b' @@ -30,62 +31,64 @@ md5sums=('SKIP' '5a7beefb78ef73241b0e421fec67f4db') pkgver() { - cd "$pkgname" - git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/_//' + cd "$pkgname" + git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/_//' } prepare() { - cd "$srcdir/$pkgname" - patch -Np1 -i "$srcdir/rpath.patch" - patch -Np1 -i "$srcdir/fix-occ-search.patch" + cd "$srcdir/$pkgname" + patch -Np1 -i "$srcdir/rpath.patch" + patch -Np1 -i "$srcdir/fix-occ-search.patch" } build() { - cd "$srcdir/$pkgname" + cd "$srcdir/$pkgname" - cmake -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX:PATH="/opt/freecad" \ - -DOCC_INCLUDE_DIR:PATH=/opt/opencascade7/include/opencascade \ - -DOCC_LIBRARY_DIR:PATH=/opt/opencascade7/lib \ - -DVTK_DIR:PATH=/opt/vtk-qt4/lib/cmake/vtk-7.0 \ - -DCMAKE_PREFIX_PATH=/opt/opencascade7 \ - -DCMAKE_INCLUDE_PATH:PATH=/opt/opencascade7/include/opencascade \ - -DCMAKE_LIBRARY_PATH:PATH=/opt/opencascade7/lib \ - -DCMAKE_INSTALL_RPATH=/opt/opencascade7/lib:/opt/vtk-qt4/lib \ - -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python2 \ - -DPYTHON_SUFFIX=-python2.7 \ - -DPYTHON_BASENAME=-python2.7 \ - -DPYSIDEUIC4BINARY:FILEPATH=/usr/bin/python2-pyside-uic \ - -DBUILD_FEM_NETGEN=1 + cmake -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX:PATH="/opt/${_appname}" \ + -DOCC_INCLUDE_DIR:PATH=/opt/opencascade7/include/opencascade \ + -DOCC_LIBRARY_DIR:PATH=/opt/opencascade7/lib \ + -DVTK_DIR:PATH=/opt/vtk-qt4/lib/cmake/vtk-7.0 \ + -DCMAKE_PREFIX_PATH=/opt/opencascade7 \ + -DCMAKE_INCLUDE_PATH:PATH=/opt/opencascade7/include/opencascade \ + -DCMAKE_LIBRARY_PATH:PATH=/opt/opencascade7/lib \ + -DCMAKE_INSTALL_RPATH=/opt/opencascade7/lib:/opt/vtk-qt4/lib \ + -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python2 \ + -DPYTHON_SUFFIX=-python2.7 \ + -DPYTHON_BASENAME=-python2.7 \ + -DPYSIDEUIC4BINARY:FILEPATH=/usr/bin/python2-pyside-uic \ + -DBUILD_FEM_NETGEN=1 - make + make } package() { - cd "$srcdir/$pkgname" + cd "$srcdir/$pkgname" + local bin="FreeCAD" + local bin_cmd="FreeCADCmd" - make DESTDIR="$pkgdir" install + make DESTDIR="$pkgdir" install - # Symlink binaries to /usr/bin. - mkdir -p "$pkgdir/usr/bin" - ln -s "/opt/freecad/bin/FreeCAD" "$pkgdir/usr/bin/FreeCAD" - ln -s "/opt/freecad/bin/FreeCADCmd" "$pkgdir/usr/bin/FreeCADCmd" + # Symlink binaries to /usr/bin. + mkdir -p "$pkgdir/usr/bin" + ln -s "/opt/${_appname}/bin/${bin}" "$pkgdir/usr/bin/${bin}" + ln -s "/opt/${_appname}/bin/${bin_cmd}" "$pkgdir/usr/bin/${bin_cmd}" - # Lowercase aliases like the official arch package. - ln -s "/opt/freecad/bin/FreeCAD" "$pkgdir/usr/bin/freecad" - ln -s "/opt/freecad/bin/FreeCADCmd" "$pkgdir/usr/bin/freecadcmd" + # Lowercase aliases like the official arch package. + ln -s "/opt/${_appname}/bin/${bin}" "$pkgdir/usr/bin/${bin,,}" + ln -s "/opt/${_appname}/bin/${bin_cmd}" "$pkgdir/usr/bin/${bin_cmd,,}" - # Install pixmaps and desktop shortcut. - for i in 16 32 48 64; do - install -Dm644 "src/Gui/Icons/freecad-icon-${i}.png" \ - "$pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/freecad.png" - done - install -Dm644 "src/Gui/Icons/freecad.svg" \ - "$pkgdir/usr/share/icons/hicolor/scalable/apps/freecad.svg" - desktop-file-install \ - --dir="$pkgdir/usr/share/applications" "$srcdir/freecad.desktop" + # Install pixmaps and desktop shortcut. + for i in 16 32 48 64; do + install -Dm644 "src/Gui/Icons/freecad-icon-${i}.png" \ + "$pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/${_appname}.png" + done + install -Dm644 "src/Gui/Icons/freecad.svg" \ + "$pkgdir/usr/share/icons/hicolor/scalable/apps/${_appname}.svg" + desktop-file-install \ + --dir="$pkgdir/usr/share/applications" "$srcdir/${_appname}.desktop" - # Install mime info. - install -D -m644 "$srcdir/freecad.xml" \ - "$pkgdir/usr/share/mime/packages/freecad.xml" + # Install mime info. + install -D -m644 "$srcdir/${_appname}.xml" \ + "$pkgdir/usr/share/mime/packages/${_appname}.xml" } From 69549d556f021e9f6313f6882e133f3ac7e47886 Mon Sep 17 00:00:00 2001 From: Markus Hovorka Date: Thu, 30 Mar 2017 22:21:50 +0200 Subject: [PATCH 6/6] Change symlinks and list arguments --- .SRCINFO | 2 +- PKGBUILD | 62 ++++++++++++++++++++++++++++---------------------------- 2 files changed, 32 insertions(+), 32 deletions(-) diff --git a/.SRCINFO b/.SRCINFO index 0400457..a53ed6a 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,6 +1,6 @@ pkgbase = freecad-git pkgdesc = A general purpose 3D CAD modeler - git checkout - pkgver = 0.17pre.r3959.g0ca5ebe78 + pkgver = 0.17pre.r3961.g3b6020cda pkgrel = 1 epoch = 1 url = http://www.freecadweb.org/ diff --git a/PKGBUILD b/PKGBUILD index c0c319c..16e378a 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -3,7 +3,7 @@ _appname=freecad pkgname="${_appname}-git" -pkgver=0.17pre.r3959.g0ca5ebe78 +pkgver=0.17pre.r3961.g3b6020cda pkgrel=1 epoch=1 pkgdesc='A general purpose 3D CAD modeler - git checkout' @@ -19,7 +19,7 @@ optdepends=('python2-matplotlib' 'pycollada-git: Create, edit and load COLLADA documents.') provides=('freecad') conflicts=('freecad') -source=("$pkgname::git+https://github.com/FreeCAD/FreeCAD.git" +source=("${pkgname}::git+https://github.com/FreeCAD/FreeCAD.git" "freecad.desktop" "freecad.xml" "rpath.patch" @@ -31,64 +31,64 @@ md5sums=('SKIP' '5a7beefb78ef73241b0e421fec67f4db') pkgver() { - cd "$pkgname" + cd "${srcdir}/${pkgname}" git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/_//' } prepare() { - cd "$srcdir/$pkgname" - patch -Np1 -i "$srcdir/rpath.patch" - patch -Np1 -i "$srcdir/fix-occ-search.patch" + cd "${srcdir}/${pkgname}" + patch -Np1 -i "${srcdir}/rpath.patch" + patch -Np1 -i "${srcdir}/fix-occ-search.patch" } build() { - cd "$srcdir/$pkgname" + cd "${srcdir}/${pkgname}" cmake -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX:PATH="/opt/${_appname}" \ - -DOCC_INCLUDE_DIR:PATH=/opt/opencascade7/include/opencascade \ - -DOCC_LIBRARY_DIR:PATH=/opt/opencascade7/lib \ - -DVTK_DIR:PATH=/opt/vtk-qt4/lib/cmake/vtk-7.0 \ - -DCMAKE_PREFIX_PATH=/opt/opencascade7 \ - -DCMAKE_INCLUDE_PATH:PATH=/opt/opencascade7/include/opencascade \ - -DCMAKE_LIBRARY_PATH:PATH=/opt/opencascade7/lib \ - -DCMAKE_INSTALL_RPATH=/opt/opencascade7/lib:/opt/vtk-qt4/lib \ - -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python2 \ - -DPYTHON_SUFFIX=-python2.7 \ - -DPYTHON_BASENAME=-python2.7 \ - -DPYSIDEUIC4BINARY:FILEPATH=/usr/bin/python2-pyside-uic \ + -DCMAKE_INSTALL_PREFIX="/opt/${_appname}" \ + -DOCC_INCLUDE_DIR="/opt/opencascade7/include/opencascade" \ + -DOCC_LIBRARY_DIR="/opt/opencascade7/lib" \ + -DVTK_DIR="/opt/vtk-qt4/lib/cmake/vtk-7.0" \ + -DCMAKE_PREFIX_PATH="/opt/opencascade7" \ + -DCMAKE_INCLUDE_PATH="/opt/opencascade7/include/opencascade" \ + -DCMAKE_LIBRARY_PATH="/opt/opencascade7/lib" \ + -DCMAKE_INSTALL_RPATH="/opt/opencascade7/lib;/opt/vtk-qt4/lib" \ + -DPYTHON_EXECUTABLE="/usr/bin/python2" \ + -DPYTHON_SUFFIX="-python2.7" \ + -DPYTHON_BASENAME="-python2.7" \ + -DPYSIDEUIC4BINARY="/usr/bin/python2-pyside-uic" \ -DBUILD_FEM_NETGEN=1 make } package() { - cd "$srcdir/$pkgname" + cd "${srcdir}/${pkgname}" local bin="FreeCAD" local bin_cmd="FreeCADCmd" - make DESTDIR="$pkgdir" install + make DESTDIR="${pkgdir}" install # Symlink binaries to /usr/bin. - mkdir -p "$pkgdir/usr/bin" - ln -s "/opt/${_appname}/bin/${bin}" "$pkgdir/usr/bin/${bin}" - ln -s "/opt/${_appname}/bin/${bin_cmd}" "$pkgdir/usr/bin/${bin_cmd}" + mkdir -p "${pkgdir}/usr/bin" + ln -s "/opt/${_appname}/bin/${bin}" "${pkgdir}/usr/bin/${bin}" + ln -s "/opt/${_appname}/bin/${bin_cmd}" "${pkgdir}/usr/bin/${bin_cmd}" # Lowercase aliases like the official arch package. - ln -s "/opt/${_appname}/bin/${bin}" "$pkgdir/usr/bin/${bin,,}" - ln -s "/opt/${_appname}/bin/${bin_cmd}" "$pkgdir/usr/bin/${bin_cmd,,}" + ln -s "/usr/bin/${bin}" "${pkgdir}/usr/bin/${bin,,}" + ln -s "/usr/bin/${bin_cmd}" "${pkgdir}/usr/bin/${bin_cmd,,}" # Install pixmaps and desktop shortcut. for i in 16 32 48 64; do install -Dm644 "src/Gui/Icons/freecad-icon-${i}.png" \ - "$pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/${_appname}.png" + "${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps/${_appname}.png" done install -Dm644 "src/Gui/Icons/freecad.svg" \ - "$pkgdir/usr/share/icons/hicolor/scalable/apps/${_appname}.svg" + "${pkgdir}/usr/share/icons/hicolor/scalable/apps/${_appname}.svg" desktop-file-install \ - --dir="$pkgdir/usr/share/applications" "$srcdir/${_appname}.desktop" + --dir="${pkgdir}/usr/share/applications" "${srcdir}/${_appname}.desktop" # Install mime info. - install -D -m644 "$srcdir/${_appname}.xml" \ - "$pkgdir/usr/share/mime/packages/${_appname}.xml" + install -D -m644 "${srcdir}/${_appname}.xml" \ + "${pkgdir}/usr/share/mime/packages/${_appname}.xml" }