summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatteo Bernardini <ponce@slackbuilds.org>2013-11-27 15:51:33 +0100
committerRobby Workman <rworkman@slackbuilds.org>2013-11-28 00:13:12 -0600
commit1eb1a4df80681423d1c310b2974149316c11deea (patch)
treea10cf0982cbd2c58f2a3edd9e8073b4d435a4501
parentc208cfd1469a906c97434320f98efa1701805bfb (diff)
downloadslackbuilds-1eb1a4df80681423d1c310b2974149316c11deea.tar.gz
graphics/FreeCAD: Install the qt plugin.
eigen3 is an hard dependency, install mime info Signed-off-by: Matteo Bernardini <ponce@slackbuilds.org>
-rw-r--r--graphics/FreeCAD/FreeCAD.SlackBuild27
-rw-r--r--graphics/FreeCAD/FreeCAD.info2
-rw-r--r--graphics/FreeCAD/README2
-rw-r--r--graphics/FreeCAD/doinst.sh3
-rw-r--r--graphics/FreeCAD/files/FreeCAD.desktop (renamed from graphics/FreeCAD/FreeCAD.desktop)0
-rw-r--r--graphics/FreeCAD/files/FreeCAD.xml8
-rw-r--r--graphics/FreeCAD/files/freecad-0.13.diff (renamed from graphics/FreeCAD/freecad-0.13.diff)0
-rw-r--r--graphics/FreeCAD/files/no_coin3d_docs.patch (renamed from graphics/FreeCAD/no_coin3d_docs.patch)0
8 files changed, 32 insertions, 10 deletions
diff --git a/graphics/FreeCAD/FreeCAD.SlackBuild b/graphics/FreeCAD/FreeCAD.SlackBuild
index 786d067371..3d860cf4dd 100644
--- a/graphics/FreeCAD/FreeCAD.SlackBuild
+++ b/graphics/FreeCAD/FreeCAD.SlackBuild
@@ -22,11 +22,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# revision date: 2012/01/04
+# revision date: 2013/11/27
PRGNAM=FreeCAD
VERSION=${VERSION:-0.13.1830}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
SRCNAM=freecad
@@ -74,7 +74,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# no downloads allowed during the build
-patch -p1 < $CWD/no_coin3d_docs.patch
+patch -p1 < $CWD/files/no_coin3d_docs.patch
# thanks to archlinux for these fixes
# compatibility issues with OCC-6.6
@@ -85,7 +85,7 @@ done
# these patch contain some code taken from upstream
# thanks to cbuehler
-patch -p1 -i $CWD/freecad-0.13.diff
+patch -p1 -i $CWD/files/freecad-0.13.diff
mkdir build
cd build
@@ -106,13 +106,26 @@ cd build
make install DESTDIR=$PKG
cd ..
+# build the qt plugin
+( cd src/Tools/plugins/widget
+ qmake plugin.pro
+ make
+ install -m 0755 -D libFreeCAD_widgets.so \
+ $PKG/usr/lib$LIBDIRSUFFIX/qt4/plugins/designer/libFreeCAD_widgets.so )
+
+# create links in /usr/bin
+mkdir -p $PKG/usr/bin
+ln -s /opt/FreeCAD/bin/FreeCADCmd $PKG/usr/bin/FreeCADCmd
+ln -s /opt/FreeCAD/bin/FreeCAD $PKG/usr/bin/FreeCAD
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-# Copy icon & desktop file
-mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
+# Copy icon, desktop file and mime info
+mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps $PKG/usr/share/mime/packages
cp $PKG/opt/$PRGNAM/data/freecad.xpm $PKG/usr/share/pixmaps/
-cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+cat $CWD/files/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+cat $CWD/files/$PRGNAM.xml > $PKG/usr/share/mime/packages/$PRGNAM.xml
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
diff --git a/graphics/FreeCAD/FreeCAD.info b/graphics/FreeCAD/FreeCAD.info
index 80a8b190c6..6d934fa774 100644
--- a/graphics/FreeCAD/FreeCAD.info
+++ b/graphics/FreeCAD/FreeCAD.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://downloads.sourceforge.net/free-cad/freecad-0.13.1830.tar.gz"
MD5SUM="13b8fddef12f5f8419dcf4adbab596eb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenCASCADE Pivy xerces-c"
+REQUIRES="OpenCASCADE Pivy eigen3 xerces-c"
MAINTAINER="Niels Horn"
EMAIL="niels.horn@gmail.com"
diff --git a/graphics/FreeCAD/README b/graphics/FreeCAD/README
index 57287bcaa1..61f9828320 100644
--- a/graphics/FreeCAD/README
+++ b/graphics/FreeCAD/README
@@ -1,5 +1,3 @@
FreeCAD is a general purpose 3D CAD modeler, aimed at mechanical
engineering and product design, but also fits in a wider range of uses
around engineering, such as architecture or other engineering specialties.
-
-eigen3 is an optional dependency.
diff --git a/graphics/FreeCAD/doinst.sh b/graphics/FreeCAD/doinst.sh
index 4e8ba7071d..9a8ded3c60 100644
--- a/graphics/FreeCAD/doinst.sh
+++ b/graphics/FreeCAD/doinst.sh
@@ -2,3 +2,6 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -x /usr/bin/update-mime-database ]; then
+ /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
+fi
diff --git a/graphics/FreeCAD/FreeCAD.desktop b/graphics/FreeCAD/files/FreeCAD.desktop
index 07d2a8c7fd..07d2a8c7fd 100644
--- a/graphics/FreeCAD/FreeCAD.desktop
+++ b/graphics/FreeCAD/files/FreeCAD.desktop
diff --git a/graphics/FreeCAD/files/FreeCAD.xml b/graphics/FreeCAD/files/FreeCAD.xml
new file mode 100644
index 0000000000..9a27f098b7
--- /dev/null
+++ b/graphics/FreeCAD/files/FreeCAD.xml
@@ -0,0 +1,8 @@
+<?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"/>
+ </mime-type>
+</mime-info>
diff --git a/graphics/FreeCAD/freecad-0.13.diff b/graphics/FreeCAD/files/freecad-0.13.diff
index a2f8859bcd..a2f8859bcd 100644
--- a/graphics/FreeCAD/freecad-0.13.diff
+++ b/graphics/FreeCAD/files/freecad-0.13.diff
diff --git a/graphics/FreeCAD/no_coin3d_docs.patch b/graphics/FreeCAD/files/no_coin3d_docs.patch
index bf6db9d20b..bf6db9d20b 100644
--- a/graphics/FreeCAD/no_coin3d_docs.patch
+++ b/graphics/FreeCAD/files/no_coin3d_docs.patch