move dependencies into new /deps directory; modify mate-build-base.sh and mate-build-extra.sh scripts to reflect the new location of these dependencies; thanks to Willy Sudiarto Raharjo for the suggestion.

This commit is contained in:
Chess Griffin 2013-03-25 10:56:49 -04:00
parent cdff119d64
commit c2b8cb1687
No known key found for this signature in database
GPG key ID: BFF42AA34B3305BE
16 changed files with 1569 additions and 0 deletions

123
deps/dconf/dconf.SlackBuild vendored Normal file
View file

@ -0,0 +1,123 @@
#!/bin/sh
# Slackware build script for dconf
# Based on the dconf SlackBuild script at SlackBuilds.org
# Copyright 2013 Chess Griffin <chess.griffin@gmail.com> Raleigh, NC
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=dconf
VERSION=${VERSION:-0.12.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_msb}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i486 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
if [ ! -f $PRGNAM-$VERSION.tar.xz ]; then
wget http://ftp.gnome.org/pub/gnome/sources/dconf/0.12/dconf-0.12.1.tar.xz
fi
NUMJOBS=${NUMJOBS:-" -j8 "}
CWD=$(pwd)
TMP=${TMP:-/tmp/msb}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
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"
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.tar.xz
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 {} \;
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux
make $NUMJOBS || make
make install DESTDIR=$PKG
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
# Compress and link manpages
if [ -d $PKG/usr/man ]; then
( cd $PKG/usr/man
for manpagedir in $(find . -type d -name "man*") ; do
( cd $manpagedir
for eachpage in $( find . -type l -maxdepth 1) ; do
ln -s $( readlink $eachpage ).gz $eachpage.gz
rm $eachpage
done
gzip -9 *.?
)
done
)
fi
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
COPYING NEWS \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
find $PKG/usr/doc/$PRGNAM-$VERSION/ -type f -exec chmod 644 {} \;
chown -R root:root $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:-txz}

12
deps/dconf/slack-desc vendored Normal file
View file

@ -0,0 +1,12 @@
|-----handy-ruler------------------------------------------------------|
dconf: dconf (low-level configuration system)
dconf:
dconf: dconf is a low-level configuration system. Its main purpose is to
dconf: provide a backend to the GSettings API in GLib.
dconf:
dconf:
dconf:
dconf:
dconf:
dconf: Homepage: http://live.gnome.org/dconf
dconf:

View file

@ -0,0 +1,13 @@
Index: gtk-engines-2.20.2/engines/clearlooks/src/animation.c
===================================================================
--- gtk-engines-2.20.2.orig/engines/clearlooks/src/animation.c
+++ gtk-engines-2.20.2/engines/clearlooks/src/animation.c
@@ -28,7 +28,7 @@
#include "animation.h"
#ifdef HAVE_WORKING_ANIMATION
-#include <glib/gtimer.h>
+#include <glib.h>
struct _AnimationInfo {
GTimer *timer;

127
deps/gtk-engines/gtk-engines.SlackBuild vendored Normal file
View file

@ -0,0 +1,127 @@
#!/bin/sh
# Slackware build script for gtk-engines
# Based on the gtk-engines SlackBuild script at SlackBuilds.org
# Copyright 2013 Chess Griffin <chess.griffin@gmail.com> Raleigh, NC
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=gtk-engines
VERSION=${VERSION:-2.20.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_msb}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i486 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
if [ ! -f $PRGNAM-$VERSION.tar.gz ]; then
wget \
http://ftp.gnome.org/pub/gnome/sources/gtk-engines/2.20/gtk-engines-2.20.2.tar.gz
fi
NUMJOBS=${NUMJOBS:-" -j8 "}
CWD=$(pwd)
TMP=${TMP:-/tmp/msb}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
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"
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.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 -p1 -i $CWD/glib-single-include.patch
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./autogen.sh \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--enable-animation \
--build=$ARCH-slackware-linux
make $NUMJOBS || make
make install DESTDIR=$PKG
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
# Compress and link manpages
if [ -d $PKG/usr/man ]; then
( cd $PKG/usr/man
for manpagedir in $(find . -type d -name "man*") ; do
( cd $manpagedir
for eachpage in $( find . -type l -maxdepth 1) ; do
ln -s $( readlink $eachpage ).gz $eachpage.gz
rm $eachpage
done
gzip -9 *.?
)
done
)
fi
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
AUTHORS COPYING ChangeLog INSTALL NEWS README \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
find $PKG/usr/doc/$PRGNAM-$VERSION/ -type f -exec chmod 644 {} \;
chown -R root:root $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:-txz}

10
deps/gtk-engines/slack-desc vendored Normal file
View file

@ -0,0 +1,10 @@
|-----handy-ruler------------------------------------------------------|
gtk-engines: gtk-engines (Theme engines for GTK+2)
gtk-engines:
gtk-engines: gtk-engines is a collection of basic theme engines for GTK+2.
gtk-engines:
gtk-engines: This package contains Clearlooks, Crux, Glide, HC, Industrial,
gtk-engines: LUA, Mist, Redmond, and ThinIce themes.
gtk-engines:
gtk-engines: Homepage: http://ftp.gnome.org/pub/GNOME/sources/gtk-engines/
gtk-engines:

View file

@ -0,0 +1,143 @@
From 557b0e5045c9eadb556ce11e16965cf0d0787438 Mon Sep 17 00:00:00 2001
From: Stef Walter <stefw@collabora.co.uk>
Date: Tue, 14 Jun 2011 12:33:45 +0100
Subject: [PATCH] Remove G_CONST_RETURN usage, now that its gone in glib.
https://bugzilla.gnome.org/show_bug.cgi?id=652545
[Alexandre Rostovtsev <tetromino@gmail.com>: backported to unique-1.1]
---
unique/uniqueapp.c | 4 ++--
unique/uniquebackend.c | 4 ++--
unique/uniquebackend.h | 4 ++--
unique/uniqueinternals.h | 4 ++--
unique/uniquemessage.c | 4 ++--
unique/uniquemessage.h | 4 ++--
6 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/unique/uniqueapp.c b/unique/uniqueapp.c
index b40a86c..e8edc94 100644
--- a/unique/uniqueapp.c
+++ b/unique/uniqueapp.c
@@ -781,7 +781,7 @@ unique_app_watch_window (UniqueApp *app,
}
-G_CONST_RETURN gchar *
+const gchar *
unique_command_to_string (UniqueApp *app,
gint command)
{
@@ -863,7 +863,7 @@ unique_command_from_string (UniqueApp *app,
return retval;
}
-G_CONST_RETURN gchar *
+const gchar *
unique_response_to_string (UniqueResponse response)
{
GEnumClass *enum_class;
diff --git a/unique/uniquebackend.c b/unique/uniquebackend.c
index a76e42e..68e2735 100644
--- a/unique/uniquebackend.c
+++ b/unique/uniquebackend.c
@@ -111,7 +111,7 @@ unique_backend_set_name (UniqueBackend *backend,
*
* Return value: FIXME
*/
-G_CONST_RETURN gchar *
+const gchar *
unique_backend_get_name (UniqueBackend *backend)
{
g_return_val_if_fail (UNIQUE_IS_BACKEND (backend), NULL);
@@ -154,7 +154,7 @@ unique_backend_set_startup_id (UniqueBackend *backend,
*
* Return value: FIXME
*/
-G_CONST_RETURN gchar *
+const gchar *
unique_backend_get_startup_id (UniqueBackend *backend)
{
g_return_val_if_fail (UNIQUE_IS_BACKEND (backend), NULL);
diff --git a/unique/uniquebackend.h b/unique/uniquebackend.h
index a50ce4e..b19ad3e 100644
--- a/unique/uniquebackend.h
+++ b/unique/uniquebackend.h
@@ -94,10 +94,10 @@ GType unique_backend_get_type (void) G_GNUC_CONST;
UniqueBackend * unique_backend_create (void);
-G_CONST_RETURN gchar *unique_backend_get_name (UniqueBackend *backend);
+const gchar * unique_backend_get_name (UniqueBackend *backend);
void unique_backend_set_name (UniqueBackend *backend,
const gchar *name);
-G_CONST_RETURN gchar *unique_backend_get_startup_id (UniqueBackend *backend);
+const gchar * unique_backend_get_startup_id (UniqueBackend *backend);
void unique_backend_set_startup_id (UniqueBackend *backend,
const gchar *startup_id);
GdkScreen * unique_backend_get_screen (UniqueBackend *backend);
diff --git a/unique/uniqueinternals.h b/unique/uniqueinternals.h
index 3cec152..ccae0cd 100644
--- a/unique/uniqueinternals.h
+++ b/unique/uniqueinternals.h
@@ -44,11 +44,11 @@ UniqueResponse unique_app_emit_message_received (UniqueApp *app,
* and then back into an id
*/
UniqueResponse unique_response_from_string (const gchar *response);
-G_CONST_RETURN gchar *unique_response_to_string (UniqueResponse response);
+const gchar * unique_response_to_string (UniqueResponse response);
gint unique_command_from_string (UniqueApp *app,
const gchar *command);
-G_CONST_RETURN gchar *unique_command_to_string (UniqueApp *app,
+const gchar * unique_command_to_string (UniqueApp *app,
gint command);
G_END_DECLS
diff --git a/unique/uniquemessage.c b/unique/uniquemessage.c
index c74392d..2b2a9fc 100644
--- a/unique/uniquemessage.c
+++ b/unique/uniquemessage.c
@@ -185,7 +185,7 @@ unique_message_data_set (UniqueMessageData *message_data,
*
* Since: 1.0.2
*/
-G_CONST_RETURN guchar *
+const guchar *
unique_message_data_get (UniqueMessageData *message_data,
gsize *length)
{
@@ -525,7 +525,7 @@ unique_message_data_get_screen (UniqueMessageData *message_data)
* owned by the #UniqueMessageData structure and should not be
* modified or freed
*/
-G_CONST_RETURN gchar *
+const gchar *
unique_message_data_get_startup_id (UniqueMessageData *message_data)
{
g_return_val_if_fail (message_data != NULL, NULL);
diff --git a/unique/uniquemessage.h b/unique/uniquemessage.h
index d3e9c3c..93eee21 100644
--- a/unique/uniquemessage.h
+++ b/unique/uniquemessage.h
@@ -48,7 +48,7 @@ void unique_message_data_free (UniqueMessageData *me
void unique_message_data_set (UniqueMessageData *message_data,
const guchar *data,
gsize length);
-G_CONST_RETURN guchar *unique_message_data_get (UniqueMessageData *message_data,
+const guchar * unique_message_data_get (UniqueMessageData *message_data,
gsize *length);
gboolean unique_message_data_set_text (UniqueMessageData *message_data,
@@ -63,7 +63,7 @@ void unique_message_data_set_filename (UniqueMessageData *me
gchar * unique_message_data_get_filename (UniqueMessageData *message_data);
GdkScreen * unique_message_data_get_screen (UniqueMessageData *message_data);
-G_CONST_RETURN gchar * unique_message_data_get_startup_id (UniqueMessageData *message_data);
+const gchar * unique_message_data_get_startup_id (UniqueMessageData *message_data);
guint unique_message_data_get_workspace (UniqueMessageData *message_data);
G_END_DECLS
--
1.7.6

View file

@ -0,0 +1,50 @@
From 9df132a70d54b768a8e1d0335d24b85ac9b3fb76 Mon Sep 17 00:00:00 2001
From: Emmanuele Bassi <ebassi@linux.intel.com>
Date: Sun, 27 Mar 2011 08:42:22 +0000
Subject: Remove compiler warnings
(cherry picked from commit f791ed16b19dddc7fbaf90d8f797520e67883021)
Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
---
diff --git a/unique/dbus/uniquebackend-dbus.c b/unique/dbus/uniquebackend-dbus.c
index 3ae1bed..69faa00 100644
--- a/unique/dbus/uniquebackend-dbus.c
+++ b/unique/dbus/uniquebackend-dbus.c
@@ -84,7 +84,6 @@ unique_backend_dbus_register_proxy (UniqueBackendDBus *backend_dbus)
static gboolean
unique_backend_dbus_request_name (UniqueBackend *backend)
{
- UniqueBackendDBus *backend_dbus;
const gchar *name;
DBusGConnection *connection;
DBusGProxy *proxy;
@@ -97,8 +96,6 @@ unique_backend_dbus_request_name (UniqueBackend *backend)
if (!connection)
return FALSE;
- backend_dbus = UNIQUE_BACKEND_DBUS (backend);
-
retval = TRUE;
name = unique_backend_get_name (backend);
g_assert (name != NULL);
@@ -207,10 +204,14 @@ unique_backend_dbus_send_message (UniqueBackend *backend,
cmd, data, time_,
&resp,
&error);
- if (error)
+ if (!res)
{
- g_warning ("Error while sending message: %s", error->message);
- g_error_free (error);
+ if (error)
+ {
+ g_warning ("Error while sending message: %s", error->message);
+ g_error_free (error);
+ }
+
g_free (cmd);
return UNIQUE_RESPONSE_INVALID;
--
cgit v0.9

View file

@ -0,0 +1,529 @@
From 01066039529c0181f231325476bb4823c16a2aea Mon Sep 17 00:00:00 2001
From: Christian Persch <chpe@gnome.org>
Date: Sat, 15 May 2010 17:47:45 +0000
Subject: Add GDBus backend
Add backend using GDBus, the new D-BUS binding in GIO 2.25.
Bug #618723.
---
diff --git a/configure.ac b/configure.ac
index bc3163a..b6a4221 100644
--- a/configure.ac
+++ b/configure.ac
@@ -116,6 +116,19 @@ AS_IF([test "x$have_dbus" = "xyes"],
AM_CONDITIONAL([HAVE_DBUS], [test "x$have_dbus" = "xyes"])
+dnl GDBus backend
+dnl This is the default backend if GIO is recent enough
+m4_define([gdbus_gio_required],[2.25.7])
+PKG_CHECK_MODULES([GDBUS],[gio-2.0 >= gdbus_gio_required],[have_gdbus=yes],[have_gdbus=no])
+
+AS_IF([test "x$have_gdbus" = "xyes"],
+ [
+ AC_DEFINE([HAVE_GDBUS],[1],[Define if GDBus backend is enabled])
+ ]
+ )
+
+AM_CONDITIONAL([HAVE_GDBUS],[test "$have_gdbus" = "yes"])
+
dnl Bacon backend
dnl This is the fallback backend, so we *need* these headers and functions
dnl even if we end up using D-Bus
@@ -146,7 +159,13 @@ AM_CONDITIONAL([HAVE_BACON], [test "x$have_bacon" = "xyes"])
dnl Choose the default backend
AC_MSG_CHECKING([for default IPC mechanism])
-AS_IF([test "x$have_dbus" = "xyes"],
+AS_IF([test "x$have_gdbus" = "xyes"],
+ [
+ UNIQUE_DEFAULT_BACKEND=gdbus
+ AC_MSG_RESULT([GDBus])
+ ],
+
+ [test "x$have_dbus" = "xyes"],
[
UNIQUE_DEFAULT_BACKEND=dbus
AC_MSG_RESULT([D-Bus])
@@ -243,6 +262,7 @@ AC_CONFIG_FILES([
unique/uniqueversion.h
unique/bacon/Makefile
unique/dbus/Makefile
+ unique/gdbus/Makefile
tests/Makefile
po/Makefile.in
])
@@ -261,6 +281,7 @@ Configuration:
Backends:
Unix Domain Socket: $have_bacon
D-BUS: $have_dbus
+ GDBus: $have_gdbus
Default backend: $UNIQUE_DEFAULT_BACKEND
"
diff --git a/doc/reference/Makefile.am b/doc/reference/Makefile.am
index 3172588..2c1dbf4 100644
--- a/doc/reference/Makefile.am
+++ b/doc/reference/Makefile.am
@@ -50,7 +50,8 @@ IGNORE_HFILES = \
uniquemarshal.h \
stamp-uniquemarshal.h \
bacon \
- dbus
+ dbus \
+ gdbus
EXTRA_HFILES =
diff --git a/unique/Makefile.am b/unique/Makefile.am
index 6475a87..8f0b7ba 100644
--- a/unique/Makefile.am
+++ b/unique/Makefile.am
@@ -12,7 +12,11 @@ if HAVE_DBUS
SUBDIRS += dbus
endif
-DIST_SUBDIRS = bacon dbus
+if HAVE_GDBUS
+SUBDIRS += gdbus
+endif
+
+DIST_SUBDIRS = bacon dbus gdbus
INCLUDES = -I$(top_srcdir)
@@ -72,6 +76,10 @@ if HAVE_DBUS
unique_backend_libs += $(top_builddir)/unique/dbus/libunique-dbus.la
endif
+if HAVE_GDBUS
+unique_backend_libs += $(top_builddir)/unique/gdbus/libunique-gdbus.la
+endif
+
uniquedir = $(includedir)/unique-1.0/unique
unique_HEADERS = \
$(unique_sources_h) \
diff --git a/unique/gdbus/.gitignore b/unique/gdbus/.gitignore
new file mode 100644
index 0000000..c7e22c3
--- /dev/null
+++ b/unique/gdbus/.gitignore
@@ -0,0 +1,2 @@
+libunique_gdbus_la-uniquebackend-gdbus.lo
+libunique-gdbus.la
diff --git a/unique/gdbus/Makefile.am b/unique/gdbus/Makefile.am
new file mode 100644
index 0000000..e10637d
--- /dev/null
+++ b/unique/gdbus/Makefile.am
@@ -0,0 +1,24 @@
+include $(top_srcdir)/build/autotools/Makefile.am.silent
+
+noinst_LTLIBRARIES = libunique-gdbus.la
+
+libunique_gdbus_la_SOURCES = \
+ uniquebackend-gdbus.h \
+ uniquebackend-gdbus.c
+
+libunique_gdbus_la_PPCFLAGS = \
+ -DG_LOG_DOMAIN=\"Unique-GDBus\" \
+ -DG_DISABLE_SINGLE_INCLUDES \
+ -I$(top_srcdir) \
+ $(AM_CPPFLAGS)
+
+libunique_gdbus_la_CFLAGS = \
+ $(UNIQUE_CFLAGS) \
+ $(UNIQUE_DEBUG_CFLAGS) \
+ $(MAINTAINER_CFLAGS) \
+ $(GDBUS_CFLAGS) \
+ $(AM_CFLAGS)
+
+libunique_gdbus_la_LIBADD = \
+ $(UNIQUE_LIBS) \
+ $(GDBUS_LIBS)
diff --git a/unique/gdbus/uniquebackend-gdbus.c b/unique/gdbus/uniquebackend-gdbus.c
new file mode 100644
index 0000000..14d54a9
--- /dev/null
+++ b/unique/gdbus/uniquebackend-gdbus.c
@@ -0,0 +1,303 @@
+/* Unique - Single Instance application library
+ * uniquebackend-gdbus.c: GDBus implementation of UniqueBackend
+ *
+ * Copyright (C) 2007 Emmanuele Bassi <ebassi@o-hand.com>
+ * Copyright © 2010 Christian Persch
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <gio/gio.h>
+#include <gdk/gdk.h>
+
+#include "../uniqueinternals.h"
+#include "uniquebackend-gdbus.h"
+
+struct _UniqueBackendGDBus
+{
+ UniqueBackend parent_instance;
+
+ GDBusConnection *connection;
+ guint registration_id;
+ guint owner_id;
+ gboolean owns_name;
+ GMainLoop *loop;
+};
+
+struct _UniqueBackendGDBusClass
+{
+ UniqueBackendClass parent_class;
+ GDBusNodeInfo *introspection_data;
+};
+
+G_DEFINE_TYPE (UniqueBackendGDBus, unique_backend_gdbus, UNIQUE_TYPE_BACKEND);
+
+static const char introspection_xml[] =
+ "<node name='/'>"
+ "<interface name='org.gtk.UniqueApp'>"
+ "<method name='SendMessage'>"
+ "<arg name='command' type='s' direction='in'/>"
+ "<arg name='message' type='(suuus)' direction='in'/>"
+ "<arg name='time' type='u' direction='in'/>"
+ "<arg name='response' type='s' direction='out'/>"
+ "</method>"
+ "</interface>"
+ "</node>";
+
+static void
+method_call_cb (GDBusConnection *connection,
+ const gchar *sender,
+ const gchar *object_path,
+ const gchar *interface_name,
+ const gchar *method_name,
+ GVariant *parameters,
+ GDBusMethodInvocation *invocation,
+ gpointer user_data)
+{
+ if (g_strcmp0 (interface_name, "org.gtk.UniqueApp") != 0 ||
+ g_strcmp0 (object_path, "/Factory") != 0)
+ return;
+
+ if (g_strcmp0 (method_name, "SendMessage") == 0)
+ {
+ UniqueBackend *backend = UNIQUE_BACKEND (user_data);
+ const gchar *command_str, *data, *startup_id;
+ guint len, screen_num, workspace, time_;
+ UniqueMessageData message_data;
+ gint command;
+ UniqueResponse response;
+ GdkDisplay *display;
+
+ g_variant_get (parameters,
+ "(&s(&suuu&s)u)",
+ &command_str,
+ &data, &len, &screen_num, &workspace, &startup_id,
+ &time_);
+
+ command = unique_command_from_string (backend->parent, command_str);
+ if (command == 0)
+ {
+ g_dbus_method_invocation_return_error (invocation,
+ G_DBUS_ERROR,
+ G_DBUS_ERROR_INVALID_ARGS,
+ "Invalid command `%s' received",
+ command_str);
+ return;
+ }
+
+ display = gdk_display_get_default ();
+
+ message_data.data = len > 0 ? (guchar *) data : NULL;
+ message_data.length = (gint) len;
+ message_data.workspace = workspace;
+ message_data.startup_id = (char *) startup_id;
+ if (screen_num >= 0 && screen_num < gdk_display_get_n_screens (display))
+ message_data.screen = gdk_display_get_screen (display, screen_num);
+ else
+ message_data.screen = gdk_screen_get_default ();
+
+ response = unique_app_emit_message_received (backend->parent, command, &message_data, time_);
+
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(s)", unique_response_to_string (response)));
+ return;
+ }
+}
+
+static void
+name_acquired_cb (GDBusConnection *connection,
+ const gchar *name,
+ gpointer user_data)
+{
+ UniqueBackendGDBus *backend_gdbus = UNIQUE_BACKEND_GDBUS (user_data);
+
+ backend_gdbus->owns_name = TRUE;
+ if (backend_gdbus->loop && g_main_loop_is_running (backend_gdbus->loop))
+ g_main_loop_quit (backend_gdbus->loop);
+}
+
+static void
+name_lost_cb (GDBusConnection *connection,
+ const gchar *name,
+ gpointer user_data)
+{
+ UniqueBackendGDBus *backend_gdbus = UNIQUE_BACKEND_GDBUS (user_data);
+
+ backend_gdbus->owns_name = FALSE;
+ if (backend_gdbus->loop && g_main_loop_is_running (backend_gdbus->loop))
+ g_main_loop_quit (backend_gdbus->loop);
+}
+
+static const GDBusInterfaceVTable interface_vtable = {
+ method_call_cb,
+ NULL,
+ NULL
+};
+
+static gboolean
+unique_backend_gdbus_request_name (UniqueBackend *backend)
+{
+ UniqueBackendGDBus *backend_gdbus = UNIQUE_BACKEND_GDBUS (backend);
+ UniqueBackendGDBusClass *klass = UNIQUE_BACKEND_GDBUS_GET_CLASS (backend);
+ GError *error;
+
+ error = NULL;
+ backend_gdbus->connection = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &error);
+ if (!backend_gdbus->connection)
+ {
+ g_warning ("Unable to open a connection to the session bus: %s",
+ error->message);
+ g_error_free (error);
+
+ return FALSE;
+ }
+
+ backend_gdbus->registration_id =
+ g_dbus_connection_register_object (backend_gdbus->connection,
+ "/Factory",
+ klass->introspection_data->interfaces[0],
+ &interface_vtable,
+ backend, NULL,
+ &error);
+ if (backend_gdbus->registration_id == 0)
+ {
+ g_warning ("Unable to register object with the session bus: %s",
+ error->message);
+ g_error_free (error);
+
+ return FALSE;
+ }
+
+ backend_gdbus->owns_name = FALSE;
+
+ backend_gdbus->owner_id =
+ g_bus_own_name_on_connection (backend_gdbus->connection,
+ unique_backend_get_name (backend),
+ G_BUS_NAME_OWNER_FLAGS_NONE,
+ name_acquired_cb,
+ name_lost_cb,
+ backend, NULL);
+
+ backend_gdbus->loop = g_main_loop_new (NULL, FALSE);
+ g_main_loop_run (backend_gdbus->loop);
+ g_main_loop_unref (backend_gdbus->loop);
+ backend_gdbus->loop = NULL;
+
+ return backend_gdbus->owns_name;
+}
+
+static UniqueResponse
+unique_backend_gdbus_send_message (UniqueBackend *backend,
+ gint command,
+ UniqueMessageData *message_data,
+ guint time_)
+{
+ UniqueBackendGDBus *backend_gdbus = UNIQUE_BACKEND_GDBUS (backend);
+ GVariantBuilder builder;
+ GVariant *result;
+ const gchar *command_str, *resp;
+ UniqueResponse response;
+ GError *error;
+
+ command_str = unique_command_to_string (backend->parent, command);
+
+ g_variant_builder_init (&builder, G_VARIANT_TYPE ("(s(suuus)u)"));
+ g_variant_builder_add (&builder, "s", command_str ? command_str : "");
+ g_variant_builder_open (&builder, G_VARIANT_TYPE ("(suuus)"));
+ g_variant_builder_add (&builder, "s", message_data->data ? (char *) message_data->data : "");
+ g_variant_builder_add (&builder, "u", (guint) message_data->length);
+ g_variant_builder_add (&builder, "u", (guint) gdk_screen_get_number (message_data->screen));
+ g_variant_builder_add (&builder, "u", (guint) message_data->workspace);
+ g_variant_builder_add (&builder, "s", message_data->startup_id ? message_data->startup_id : "");
+ g_variant_builder_close (&builder);
+ g_variant_builder_add (&builder, "u", time_);
+
+ error = NULL;
+ result = g_dbus_connection_call_sync (backend_gdbus->connection,
+ unique_backend_get_name (backend),
+ "/Factory",
+ "org.gtk.UniqueApp",
+ "SendMessage",
+ g_variant_builder_end (&builder),
+ G_VARIANT_TYPE ("(s)"),
+ G_DBUS_CALL_FLAGS_NO_AUTO_START,
+ -1,
+ NULL,
+ &error);
+ if (error)
+ {
+ g_warning ("Error while sending message: %s", error->message);
+ g_error_free (error);
+
+ return UNIQUE_RESPONSE_INVALID;
+ }
+
+ g_variant_get (result, "(&s)", &resp);
+ response = unique_response_from_string (resp);
+ g_variant_unref (result);
+
+ return response;
+}
+
+static void
+unique_backend_gdbus_dispose (GObject *gobject)
+{
+ UniqueBackendGDBus *backend_gdbus = UNIQUE_BACKEND_GDBUS (gobject);
+
+ if (backend_gdbus->owner_id != 0)
+ {
+ g_bus_unown_name (backend_gdbus->owner_id);
+ backend_gdbus->owner_id = 0;
+ }
+ if (backend_gdbus->registration_id != 0)
+ {
+ g_assert (backend_gdbus->connection != NULL);
+ g_dbus_connection_unregister_object (backend_gdbus->connection,
+ backend_gdbus->registration_id);
+ backend_gdbus->registration_id = 0;
+ }
+ if (backend_gdbus->connection)
+ {
+ g_object_unref (backend_gdbus->connection);
+ backend_gdbus->connection = NULL;
+ }
+
+ G_OBJECT_CLASS (unique_backend_gdbus_parent_class)->dispose (gobject);
+}
+
+static void
+unique_backend_gdbus_class_init (UniqueBackendGDBusClass *klass)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+ UniqueBackendClass *backend_class = UNIQUE_BACKEND_CLASS (klass);
+
+ gobject_class->dispose = unique_backend_gdbus_dispose;
+
+ backend_class->request_name = unique_backend_gdbus_request_name;
+ backend_class->send_message = unique_backend_gdbus_send_message;
+
+ klass->introspection_data = g_dbus_node_info_new_for_xml (introspection_xml, NULL);
+ g_assert (klass->introspection_data != NULL);
+}
+
+static void
+unique_backend_gdbus_init (UniqueBackendGDBus *backend)
+{
+}
diff --git a/unique/gdbus/uniquebackend-gdbus.h b/unique/gdbus/uniquebackend-gdbus.h
new file mode 100644
index 0000000..41eb6e5
--- /dev/null
+++ b/unique/gdbus/uniquebackend-gdbus.h
@@ -0,0 +1,43 @@
+/* Unique - Single Instance application library
+ * uniquebackend-gdbus.c: GDBus implementation of UniqueBackend
+ *
+ * Copyright (C) 2007 Emmanuele Bassi <ebassi@o-hand.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA
+ */
+
+#ifndef __UNIQUE_BACKEND_GDBUS_H__
+#define __UNIQUE_BACKEND_GDBUS_H__
+
+#include <unique/uniquebackend.h>
+
+G_BEGIN_DECLS
+
+#define UNIQUE_TYPE_BACKEND_GDBUS (unique_backend_gdbus_get_type ())
+#define UNIQUE_BACKEND_GDBUS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), UNIQUE_TYPE_BACKEND_GDBUS, UniqueBackendGDBus))
+#define UNIQUE_IS_BACKEND_GDBUS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), UNIQUE_TYPE_BACKEND_GDBUS))
+#define UNIQUE_BACKEND_GDBUS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), UNIQUE_TYPE_BACKEND_GDBUS, UniqueBackendGDBusClass))
+#define UNIQUE_IS_BACKEND_GDBUS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), UNIQUE_TYPE_BACKEND_GDBUS))
+#define UNIQUE_BACKEND_GDBUS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), UNIQUE_TYPE_BACKEND_GDBUS, UniqueBackendGDBusClass))
+
+typedef struct _UniqueBackendGDBus UniqueBackendGDBus;
+typedef struct _UniqueBackendGDBusClass UniqueBackendGDBusClass;
+
+GType unique_backend_gdbus_get_type (void) G_GNUC_CONST;
+
+G_END_DECLS
+
+#endif /* __UNIQUE_BACKEND_GDBUS_H__ */
diff --git a/unique/uniquebackend.c b/unique/uniquebackend.c
index 18a0c45..a76e42e 100644
--- a/unique/uniquebackend.c
+++ b/unique/uniquebackend.c
@@ -298,6 +298,9 @@ unique_backend_send_message (UniqueBackend *backend,
#ifdef HAVE_DBUS
#include "dbus/uniquebackend-dbus.h"
#endif
+#ifdef HAVE_GDBUS
+#include "gdbus/uniquebackend-gdbus.h"
+#endif
/**
* unique_backend_create:
@@ -329,6 +332,10 @@ unique_backend_create (void)
if (strcmp (backend_name, "dbus") == 0)
backend_gtype = unique_backend_dbus_get_type ();
#endif /* HAVE_DBUS */
+#ifdef HAVE_GDBUS
+ if (strcmp (backend_name, "gdbus") == 0)
+ backend_gtype = unique_backend_gdbus_get_type ();
+#endif /* HAVE_GDBUS */
#if !defined(HAVE_BACON) && !defined(HAVE_DBUS)
#error Need either bacon or dbus
#endif
--
cgit v0.8.3.1

134
deps/libunique/libunique.SlackBuild vendored Normal file
View file

@ -0,0 +1,134 @@
#!/bin/sh
# Slackware build script for libunique
# Copyright 2013 Chess Griffin <chess.griffin@gmail.com> Raleigh, NC
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=libunique
VERSION=${VERSION:-1.1.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_msb}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i486 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
if [ ! -f $PRGNAM-$VERSION.tar.bz2 ]; then
wget http://ftp.gnome.org/pub/GNOME/sources/libunique/1.1/libunique-1.1.6.tar.bz2
fi
NUMJOBS=${NUMJOBS:-" -j8 "}
CWD=$(pwd)
TMP=${TMP:-/tmp/msb}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
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"
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.tar.bz2
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 -p1 < $CWD/libunique-1.1.6-compiler-warnings.patch
patch -p1 < $CWD/libunique-1.1.6-G_CONST_RETURN.patch
patch -p1 < $CWD/libunique-1.1.6-gdbus.patch
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--disable-static \
--enable-dbus=no \
--enable-gdbus=yes \
--enable-bacon=yes \
--enable-introspection=no \
--disable-dependency-tracking \
--with-x \
--enable-debug=no \
--build=$ARCH-slackware-linux
make $NUMJOBS || make
make install DESTDIR=$PKG
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
# Compress and link manpages
if [ -d $PKG/usr/man ]; then
( cd $PKG/usr/man
for manpagedir in $(find . -type d -name "man*") ; do
( cd $manpagedir
for eachpage in $( find . -type l -maxdepth 1) ; do
ln -s $( readlink $eachpage ).gz $eachpage.gz
rm $eachpage
done
gzip -9 *.?
)
done
)
fi
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
AUTHORS COPYING ChangeLog INSTALL NEWS README \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
find $PKG/usr/doc/$PRGNAM-$VERSION/ -type f -exec chmod 644 {} \;
chown -R root:root $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:-txz}

12
deps/libunique/slack-desc vendored Normal file
View file

@ -0,0 +1,12 @@
|-----handy-ruler------------------------------------------------------|
libunique: libunique (a library for writing single instance applications)
libunique:
libunique: Unique is a library for writing single instance applications. Unique
libunique: makes it easy to write this kind of applications, by providing a base
libunique: class, taking care of all the IPC machinery needed to send messages
libunique: to a running instance, and also handling the startup notification
libunique: side.
libunique:
libunique:
libunique: Homepage: http://live.gnome.org/LibUnique
libunique:

126
deps/murrine/murrine.SlackBuild vendored Normal file
View file

@ -0,0 +1,126 @@
#!/bin/sh
# Slackware build script for murrine
# Based on the murrine SlackBuild script at SlackBuilds.org
# Copyright 2013 Chess Griffin <chess.griffin@gmail.com> Raleigh, NC
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=murrine
VERSION=${VERSION:-0.98.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_msb}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i486 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
if [ ! -f $PRGNAM-$VERSION.tar.xz ]; then
wget \
http://ftp.acc.umu.se/pub/GNOME/sources/murrine/0.98/murrine-0.98.2.tar.xz
fi
NUMJOBS=${NUMJOBS:-" -j8 "}
CWD=$(pwd)
TMP=${TMP:-/tmp/msb}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
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"
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.tar.xz
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 {} \;
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--infodir=/usr/info \
--enable-animation \
--build=$ARCH-slackware-linux
make $NUMJOBS || make
make install DESTDIR=$PKG
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
# Compress and link manpages
if [ -d $PKG/usr/man ]; then
( cd $PKG/usr/man
for manpagedir in $(find . -type d -name "man*") ; do
( cd $manpagedir
for eachpage in $( find . -type l -maxdepth 1) ; do
ln -s $( readlink $eachpage ).gz $eachpage.gz
rm $eachpage
done
gzip -9 *.?
)
done
)
fi
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
AUTHORS COPYING* ChangeLog INSTALL NEWS README TODO \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
find $PKG/usr/doc/$PRGNAM-$VERSION/ -type f -exec chmod 644 {} \;
chown -R root:root $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:-txz}

12
deps/murrine/slack-desc vendored Normal file
View file

@ -0,0 +1,12 @@
|-----handy-ruler------------------------------------------------------|
murrine: murrine (Gtk2 Cairo Engine)
murrine:
murrine: Murrine is an Italian word meaning colored glass patterns made by
murrine: Venetian glass makers. Murrine is a gtk2 engine that will make
murrine: your desktop look like a beautiful Murrina(which is the italian
murrine: singular of Murrine).
murrine:
murrine:
murrine:
murrine: Homepage: http://www.cimitan.com/murrine
murrine:

126
deps/rarian/rarian.SlackBuild vendored Normal file
View file

@ -0,0 +1,126 @@
#!/bin/sh
# Slackware build script for rarian
# Based on the rarian SlackBuild script at SlackBuilds.org
# Copyright 2013 Chess Griffin <chess.griffin@gmail.com> Raleigh, NC
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=rarian
VERSION=${VERSION:-0.8.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_msb}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i486 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
if [ ! -f $PRGNAM-$VERSION.tar.bz2 ]; then
wget http://rarian.freedesktop.org/Releases/rarian-0.8.1.tar.bz2
fi
NUMJOBS=${NUMJOBS:-" -j8 "}
CWD=$(pwd)
TMP=${TMP:-/tmp/msb}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
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"
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.tar.bz2
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 {} \;
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux
make $NUMJOBS || make
make install DESTDIR=$PKG
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
# Compress and link manpages
if [ -d $PKG/usr/man ]; then
( cd $PKG/usr/man
for manpagedir in $(find . -type d -name "man*") ; do
( cd $manpagedir
for eachpage in $( find . -type l -maxdepth 1) ; do
ln -s $( readlink $eachpage ).gz $eachpage.gz
rm $eachpage
done
gzip -9 *.?
)
done
)
fi
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
MAINTAINERS TODO COPYING NEWS README INSTALL COPYING.UTILS COPYING.LIB ChangeLog \
$PKG/usr/doc/$PRGNAM-$VERSION
mv $PKG/usr/share/help $PKG/usr/doc/$PRGNAM-$VERSION/help
(ln -s /usr/share/librarian $PKG/usr/doc/$PRGNAM-$VERSION/librarian)
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
find $PKG/usr/doc/$PRGNAM-$VERSION/ -type f -exec chmod 644 {} \;
chown -R root:root $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:-txz}

12
deps/rarian/slack-desc vendored Normal file
View file

@ -0,0 +1,12 @@
|-----handy-ruler------------------------------------------------------|
rarian: rarian (documentation metadata library)
rarian:
rarian: Rarian is a documentation metadata library based on the proposed
rarian: freedesktop.org specification.
rarian:
rarian: Rarian is a replacement for ScrollKeeper.
rarian:
rarian:
rarian:
rarian: Homepage: http://rarian.freedesktop.org
rarian:

76
mate-build-base.sh Executable file
View file

@ -0,0 +1,76 @@
#!/bin/sh
# Copyright 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Copyright 2013 Chess Griffin <chess.griffin@gmail.com> Raleigh, NC
# All rights reserved.
#
# Based on the xfce-build-all.sh script by Patrick J. Volkerding
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# Set to 1 if you'd like to install/upgrade package as they are built.
# This is recommended.
INST=1
TMP=${TMP:-/tmp}
MSBROOT=$(pwd)
for dir in \
base/mate-common \
deps/rarian \
base/mate-doc-utils \
base/libmatenotify \
base/libmatekbd \
base/libmateweather \
base/mate-icon-theme \
base/mate-dialogs \
base/mate-desktop \
deps/libunique \
base/mate-file-manager \
base/libmatewnck \
base/mate-notification-daemon \
base/mate-backgrounds \
base/mate-menus \
base/mate-window-manager \
base/mate-polkit \
deps/dconf \
base/mate-settings-daemon \
base/mate-control-center \
base/mate-panel \
base/mate-session-manager \
deps/gtk-engines \
deps/murrine \
base/mate-themes \
; do
package=$(echo $dir | cut -f2- -d /)
cd $MSBROOT/$dir || exit 1
sh ${package}.SlackBuild || ( touch /tmp/${package}.failed ; exit 1 ) || exit 1
if [ "$INST" = "1" ]; then
PACKAGE="$(ls -t $TMP/$(ls ${package}-*.tar.?z* | rev | cut -f2- -d - | rev)-*txz | head -n 1)"
if [ -f $PACKAGE ]; then
upgradepkg --install-new --reinstall $PACKAGE
else
echo "Error: package to upgrade "$PACKAGE" not found in $TMP"
exit 1
fi
fi
cd $MSBROOT
done

64
mate-build-extra.sh Executable file
View file

@ -0,0 +1,64 @@
#!/bin/sh
# Copyright 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Copyright 2013 Chess Griffin <chess.griffin@gmail.com> Raleigh, NC
# All rights reserved.
#
# Based on the xfce-build-all.sh script by Patrick J. Volkerding
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# Set to 1 if you'd like to install/upgrade package as they are built.
# This is recommended.
INST=1
TMP=${TMP:-/tmp}
MSBROOT=$(pwd)
for dir in \
extra/libmatekeyring \
extra/mate-keyring \
extra/mate-applets \
extra/mate-calc \
extra/mate-character-map \
extra/mate-document-viewer \
extra/mate-file-archiver \
extra/mate-file-manager-open-terminal \
extra/mate-icon-theme-faenza \
extra/mate-media \
extra/mate-menu-editor \
extra/mate-power-manager \
extra/mate-terminal \
; do
package=$(echo $dir | cut -f2- -d /)
cd $MSBROOT/$dir || exit 1
sh ${package}.SlackBuild || ( touch /tmp/${package}.failed ; exit 1 ) || exit 1
if [ "$INST" = "1" ]; then
PACKAGE="$(ls -t $TMP/$(ls ${package}-*.tar.?z* | rev | cut -f2- -d - | rev)-*txz | head -n 1)"
if [ -f $PACKAGE ]; then
upgradepkg --install-new --reinstall $PACKAGE
else
echo "Error: package to upgrade "$PACKAGE" not found in $TMP"
exit 1
fi
fi
cd $MSBROOT
done