aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPawel Standowicz <standek@gmail.com>2011-03-05 14:41:34 -0300
committerNiels Horn <niels.horn@slackbuilds.org>2011-03-05 14:41:34 -0300
commit549378e50fd40e8d9002d360385f981b9d76870d (patch)
tree4d772d6161a19b8d34e1352a6885ad3cf7e21eb8
parentf95563184b7aba07ef0ec3f5a4ad0d79c41e005b (diff)
libraries/SFML: Added (Simple and Fast Multimedia Library)
Signed-off-by: Niels Horn <niels.horn@slackbuilds.org>
-rw-r--r--libraries/SFML/README38
-rw-r--r--libraries/SFML/SFML.SlackBuild77
-rw-r--r--libraries/SFML/SFML.info10
-rw-r--r--libraries/SFML/slack-desc19
4 files changed, 144 insertions, 0 deletions
diff --git a/libraries/SFML/README b/libraries/SFML/README
new file mode 100644
index 0000000000000..33d1ce7240c04
--- /dev/null
+++ b/libraries/SFML/README
@@ -0,0 +1,38 @@
+SFML is a portable and easy to use multimedia API written in C++. You can
+see it as a modern, object-oriented alternative to SDL. SFML is composed
+of several packages to perfectly suit your needs. You can use SFML as a
+minimal windowing system to interface with OpenGL, or as a fully-featured
+multimedia library for building games or interactive programs.'
+
+Main features:
+* Portable
+ SFML compiles on standard platforms like Windows (98, 2000, XP, Vista)
+ and Unix systems (Linux, Mac OS X). As the library grows up, support
+ for more operating systems will be added.
+* Object-oriented
+ SFML is written in C++ and provides an efficient, object-oriented
+ design. It relies on standard patterns and idioms to provide a simple
+ and robust framework.
+* Easy to use
+ SFML aims at being easy to manipulate. Effort is put on internal code
+ to provide the simplest public interface.
+* Flexible
+ Instead of being one big API, SFML rather contains a lot of small
+ packages, that can be chosen and combined according to the intended
+ usage. You can use only the base package to get input and windowing,
+ as well as the full graphics package with sprites and post-effects.
+* Easily integrable
+ SFML can be used in one or more windows, and/or can be integrated in
+ existing interface components. Integration with existing graphical user
+ interface (GUI) libraries is easy, so that you can add SFML views into
+ complex interfaces built with Qt, wxWidgets, MFC or whatever.
+
+SFML is available in the following languages:
+* C++
+* C
+* .Net (C#, VB.Net, C++/CLI, ...)
+* Python
+* D
+* Ruby
+
+This requires OpenAL and libsndfile.
diff --git a/libraries/SFML/SFML.SlackBuild b/libraries/SFML/SFML.SlackBuild
new file mode 100644
index 0000000000000..29db2f7fd483b
--- /dev/null
+++ b/libraries/SFML/SFML.SlackBuild
@@ -0,0 +1,77 @@
+#!/bin/sh
+
+# Slackware build script for SFML (Simple and Fast Multimedia Library)
+
+# Written by Pawel Standowicz (standek@gmail.com)
+
+PRGNAM=SFML
+VERSION=${VERSION:-1.6}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i486 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+# Archive package name suffixes are different depending on system architecture.
+ARCHIVESUFFIX=${ARCHIVESUFFIX:-32} # Default for 32bit systems
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+ ARCHIVESUFFIX="64" # For 64bit systems
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION-sdk-linux-$ARCHIVESUFFIX.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Patch Makefile so that it respects CFLAGS
+sed -i "s/CFLAGS\ .*=/CFLAGS +=/" src/SFML/Makefile
+
+# Patch Makefile to put libs in correct place
+sed -i "s|(DESTDIR)/lib|(DESTDIR)/lib$LIBDIRSUFFIX|" src/SFML/Makefile
+
+CFLAGS="$SLKCFLAGS" \
+ make
+make install DESTDIR=$PKG/usr
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -ar \
+ doc/* \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/SFML/SFML.info b/libraries/SFML/SFML.info
new file mode 100644
index 0000000000000..44a917400118d
--- /dev/null
+++ b/libraries/SFML/SFML.info
@@ -0,0 +1,10 @@
+PRGNAM="SFML"
+VERSION="1.6"
+HOMEPAGE="http://www.sfml-dev.org"
+DOWNLOAD="http://downloads.sourceforge.net/sfml/SFML-1.6-sdk-linux-32.tar.gz"
+MD5SUM="acc678933c19558587aad8332ea6f459"
+DOWNLOAD_x86_64="http://downloads.sourceforge.net/sfml/SFML-1.6-sdk-linux-64.tar.gz"
+MD5SUM_x86_64="7a9b3a1ef6d14cd25090e440ccdbb3a8"
+MAINTAINER="Pawel Standowicz"
+EMAIL="standek@gmail.com"
+APPROVED="Niels Horn"
diff --git a/libraries/SFML/slack-desc b/libraries/SFML/slack-desc
new file mode 100644
index 0000000000000..cca65a0e57d02
--- /dev/null
+++ b/libraries/SFML/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+SFML: SFML (Simple and Fast Multimedia Library)
+SFML:
+SFML: SFML is a portable and easy to use multimedia API written in C++.
+SFML: You can see it as a modern, object-oriented alternative to SDL.
+SFML: SFML is composed of several packages to perfectly suit your needs.
+SFML: You can use SFML as a minimal windowing system to interface with
+SFML: OpenGL, or as a fully-featured multimedia library for building games
+SFML: or interactive programs.
+SFML:
+SFML: For more info visit: http://www.sfml-dev.org/
+SFML: