academic/qtoctave: Updated for version 0.8.1

This commit is contained in:
Mauro Giachero 2010-05-11 22:21:36 +02:00 committed by David Somero
parent 036fbd62a2
commit 47d26f6fd3
7 changed files with 54 additions and 44 deletions

View File

@ -1,7 +1,4 @@
QtOctave is a graphical user interface for gnu octave, which is an QtOctave is a graphical user interface for gnu octave, which is an
open source program alternative to Matlab. open source program alternative to Matlab.
QtOctave requires Octave and Qt4, both available on SlackBuilds.org. QtOctave requires Octave and Qt4, both available on SlackBuilds.org.
If you build on a multicore system, add JOBS={#} to enable parallel
compilation, as in: JOBS=4 ./qtoctave.SlackBuild

View File

@ -0,0 +1,3 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

View File

@ -3,9 +3,10 @@
# Slackware build script for QtOctave # Slackware build script for QtOctave
# Written by Mauro Giachero (mauro dot giachero at gmail dot com) # Written by Mauro Giachero (mauro dot giachero at gmail dot com)
# Modified by Robby Workman <rworkman@slackbuilds.org>
PRGNAM=qtoctave PRGNAM=qtoctave
VERSION=${VERSION:-0.7.1} VERSION=${VERSION:-0.8.1}
ARCH=${ARCH:-i486} ARCH=${ARCH:-i486}
BUILD=${BUILD:-1} BUILD=${BUILD:-1}
TAG=${TAG:-_SBo} TAG=${TAG:-_SBo}
@ -15,12 +16,12 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp} OUTPUT=${OUTPUT:-/tmp}
JOBS=${JOBS:-3}
if [ "$ARCH" = "i486" ]; then if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686" SLKCFLAGS="-O2 -march=i486 -mtune=i686 -DNDEBUG"
elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686" SLKCFLAGS="-O2 -march=i686 -mtune=i686 -DNDEBUG"
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC -DNDEBUG"
fi fi
set -e # Exit on most errors set -e # Exit on most errors
@ -30,23 +31,46 @@ mkdir -p $TMP $PKG $OUTPUT
cd $TMP cd $TMP
rm -rf $PRGNAM-$VERSION rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION cd $PRGNAM-$VERSION/$PRGNAM
chown -R root:root . chown -R root:root .
find . \ find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
-exec chmod 755 {} \; -o \ -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \; -exec chmod 644 {} \;
chmod a+x configure
CFLAGS="$SLKCFLAGS" \ cmake \
CXXFLAGS="$SLKCFLAGS" \ -DCMAKE_C_FLAGS_RELEASE:STRING="$SLKCFLAGS" \
./configure \ -DCMAKE_CXX_FLAGS_RELEASE:STRING="$SLKCFLAGS" \
--prefix=/usr \ -DCMAKE_INSTALL_PREFIX:PATH=/usr \
--qtdir=/usr/lib/qt4 .
make
make -j$JOBS # The install target doesn't have a DESTDIR or INSTALL_ROOT or equivalent,
make install INSTALL_ROOT=$PKG # and setting the CMAKE_INSTALL_PREFIX to $PKG/usr results in a lot of
# '/tmp/SBo/package-qtoctave' strings embedded in the qtoctave binary.
# This *could* have security implications (for example, if that binary first
# looks in the temp directory for things). It's low risk, and would require
# someone on the system to have knowledge of how the package was built, so
# I'm being a bit "chicken little" here, but correct is always better, so I'm
# going to do this the hard way... --rworkman
#
# Be sure to check the src/cmake_install.cmake file in version updates to
# make sure we don't miss something
mkdir -p $PKG/usr/share/qtoctave $PKG/usr/bin \
$PKG/usr/share/applications $PKG/usr/share/icons/hicolor/64x64/apps
cp -a src/config_files/config.rc src/images src/lang src/menus \
src/config_files/octave.xml src/octave_doc src/qtoctave_doc \
src/scripts $PKG/usr/share/qtoctave
# QtOctave better fits in "Science & Math" (with Octave) than
# under "Edutainment" subcategories
# cp -a src/config_files/qtoctave.desktop $PKG/usr/share/applications/
cat src/config_files/qtoctave.desktop |sed "s/Education/Development/g" \
>$PKG/usr/share/applications/qtoctave.desktop
ln -s /usr/share/qtoctave/images/qtoctave.png $PKG/usr/share/icons/hicolor/64x64/apps/
cp -a src/qtoctave $PKG/usr/bin
find $PKG/usr/share -type f -exec chmod 0644 {} \;
find $PKG/usr/share -type d -exec chmod 0755 {} \;
( cd $PKG ( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@ -54,21 +78,17 @@ make install INSTALL_ROOT=$PKG
) )
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
# The "doc" folder contains developer-oriented documentation, while (qt)octave-doc contain cp -a leeme.txt news.txt LICENSE_GPL.txt readme.txt \
# user-oriented docs.
cp -a $PRGNAM/doc LEEME.txt NEWS.txt LICENSE_GPL.txt README.txt \
$PKG/usr/doc/$PRGNAM-$VERSION $PKG/usr/doc/$PRGNAM-$VERSION
ln -s /usr/share/$PRGNAM/qtoctave-doc $PKG/usr/doc/$PRGNAM-$VERSION/qtoctave-doc
ln -s /usr/share/$PRGNAM/octave-doc $PKG/usr/doc/$PRGNAM-$VERSION/octave-doc
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
( cd $PKG/usr/doc/$PRGNAM-$VERSION
# QtOctave doesn't have a nice icon for menus, so we use the Octave icon ln -s /usr/share/$PRGNAM/qtoctave-doc .
cp $CWD/octave-sombrero.png $PKG/usr/share/qtoctave/images ln -s /usr/share/$PRGNAM/octave-doc .
mkdir -p $PKG/usr/share/applications )
cp $CWD/qtoctave.desktop $PKG/usr/share/applications
mkdir -p $PKG/install mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG cd $PKG
/sbin/makepkg -l y -c n -p $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz /sbin/makepkg -l y -c n -p $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz

View File

@ -1,10 +0,0 @@
[Desktop Entry]
Encoding=UTF-8
Name=QtOctave
Comment=Scientific Computing using GNU Octave
Exec=/usr/bin/qtoctave
Icon=/usr/share/qtoctave/images/octave-sombrero.png
Terminal=false
Type=Application
Categories=Development;Math;Science;
StartupNotify=true

View File

@ -1,8 +1,8 @@
PRGNAM="qtoctave" PRGNAM="qtoctave"
VERSION="0.7.1" VERSION="0.8.1"
HOMEPAGE="http://qtoctave.wordpress.com/" HOMEPAGE="http://qtoctave.wordpress.com/"
DOWNLOAD="https://forja.rediris.es/frs/download.php/490/qtoctave-0.7.1.tar.gz" DOWNLOAD="http://forja.rediris.es/frs/download.php/877/qtoctave-0.8.1.tar.gz"
MD5SUM="c6dd28bd08d13803636c1eb08eb35930" MD5SUM="b4e237b578f9c2624bb0fab2cb7ea691"
MAINTAINER="Mauro Giachero" MAINTAINER="Mauro Giachero"
EMAIL="mauro.giachero@gmail.com" EMAIL="mauro_dot_giachero_at_gmail_dot_com"
APPROVED="rworkman" APPROVED="David Somero"

View File

@ -5,7 +5,7 @@
# exactly 11 lines for the formatting to be correct. It's also customary to # exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'. # leave one space after the ':'.
|-----handy-ruler------------------------------------------------------| |-----handy-ruler----------------------------------------------------|
qtoctave: QtOctave (a qt-based gui for Octave) qtoctave: QtOctave (a qt-based gui for Octave)
qtoctave: qtoctave:
qtoctave: QtOctave is a graphical user interface for gnu octave, which is an qtoctave: QtOctave is a graphical user interface for gnu octave, which is an