aboutsummaryrefslogtreecommitdiff
path: root/libraries/xawplus
diff options
context:
space:
mode:
authorBojan Popovic <bocke@slacware-srbija.org>2012-12-29 16:40:18 -0500
committerdsomero <xgizzmo@slackbuilds.org>2012-12-29 22:25:36 -0500
commitd3284345f21f39209fcac1ffd3cb39b44c6460b2 (patch)
treebe7f6de0ad565351f436288571d7a960982b94b5 /libraries/xawplus
parentbc521f26d0b4ce79d73ce3a84be221e1d55ba7af (diff)
libraries/xawplus: Added (more modern clone of Xaw library)
Signed-off-by: dsomero <xgizzmo@slackbuilds.org>
Diffstat (limited to 'libraries/xawplus')
-rw-r--r--libraries/xawplus/README7
-rw-r--r--libraries/xawplus/locpixmap-fix.patch18
-rw-r--r--libraries/xawplus/makefile-fixes.patch304
-rw-r--r--libraries/xawplus/slack-desc19
-rw-r--r--libraries/xawplus/xawplus.SlackBuild100
-rw-r--r--libraries/xawplus/xawplus.info10
6 files changed, 458 insertions, 0 deletions
diff --git a/libraries/xawplus/README b/libraries/xawplus/README
new file mode 100644
index 0000000000000..ab85cb6383990
--- /dev/null
+++ b/libraries/xawplus/README
@@ -0,0 +1,7 @@
+XawPlus is a clone of the original Xaw library, providing a more
+up to date look and some extensions to the original Athena widget
+set. This library is as compatible as possible to the original.
+
+XawPlus makes it possible to use XPM pixmaps, tooltips, a truncate
+mechanism for too long label strings and UTF8 coded UNICODE labels
+without changing the code of your application.
diff --git a/libraries/xawplus/locpixmap-fix.patch b/libraries/xawplus/locpixmap-fix.patch
new file mode 100644
index 0000000000000..f46d98b9751c4
--- /dev/null
+++ b/libraries/xawplus/locpixmap-fix.patch
@@ -0,0 +1,18 @@
+--- XawPlus/LocPixmap.c.orig Wed May 30 21:14:07 2007
++++ XawPlus/LocPixmap.c Wed May 30 21:14:31 2007
+@@ -173,6 +173,7 @@
+ } /* if */
+ }
+
++static char **split_path_string();
+
+ /*
+ * XawLocatePixmapFile - read a pixmap file using the normal defaults
+@@ -195,7 +196,6 @@
+ char **file_paths = NULL;
+ char filename[MAXPATHLEN];
+ int i;
+- static char **split_path_string();
+ char *name;
+
+ XpmAttributes attributes;
diff --git a/libraries/xawplus/makefile-fixes.patch b/libraries/xawplus/makefile-fixes.patch
new file mode 100644
index 0000000000000..e106304df7bc4
--- /dev/null
+++ b/libraries/xawplus/makefile-fixes.patch
@@ -0,0 +1,304 @@
+--- XawPlus/Makefile.orig 2002-09-07 19:59:26.000000000 +0200
++++ XawPlus/Makefile 2012-11-05 15:18:47.967684825 +0100
+@@ -22,14 +22,14 @@
+ # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ #
+
+-LIB_PATH = -L/usr/X11/lib # Libraries for X
+-INC_PATH = -I. -I/usr/X11/include # Header files for X
+-INST_LIBS= /usr/X11/lib
++LIB_PATH ?= -L/usr/X11/lib # Libraries for X
++INC_PATH = -I. -I/usr/include/X11 # Header files for X
++INST_LIBS?= /usr/X11/lib
+
+ XAW= ./X11/XawPlus
+
+ CC = gcc
+-FLAGS = -fPIC -DHAS_WCHAR_H -O2 -mpentiumpro
++FLAGS += -DHAS_WCHAR_H
+
+ OBJS= XawInit.o Vendor.o XawI18n.o UTF8.o StrToPmap.o LocPixmap.o \
+ Box.o Paned.o Viewport.o Form.o Porthole.o \
+@@ -41,7 +41,9 @@
+ Tree.o DrawingArea.o StripChart.o Dialog.o
+
+ all: lib install
+-lib: libXawPlus.a libXawPlus.so.3.1 libXaw.so.6.6 libXaw.so.7.0
++lib: libXawPlus.so.3.1
++
++static: libXawPlus.a
+
+ clean:
+ rm -f *.o *.a *.so*
+@@ -49,94 +51,69 @@
+ # -- Build the libraries
+
+ libXawPlus.a: $(OBJS)
++ ar cr libXawPlus.a $(OBJS)
+ ranlib libXawPlus.a
+
+ libXawPlus.so.3.1: $(OBJS)
+ $(CC) -shared -Wl,-soname,libXawPlus.so.3 \
+ -o libXawPlus.so.3.1 $(OBJS)
+
+-libXaw.so.6.6: $(OBJS)
+- $(CC) -shared -Wl,-soname,libXaw.so.6 \
+- -o libXaw.so.6.6 $(OBJS)
+-
+-libXaw.so.7.0: $(OBJS)
+- $(CC) -shared -Wl,-soname,libXaw.so.7 \
+- -o libXaw.so.7.0 $(OBJS)
+-
+ # --- This only works as superuser root
+
+ install:
+- rm -rf /usr/X11/include/X11/XawPlus
+- mkdir -p /usr/X11/include/X11/XawPlus
+- cp ./X11/XawPlus/*.h /usr/X11/include/X11/XawPlus
+- cp libXawPlus.a $(INST_LIBS)
+- rm -f $(INST_LIBS)/libXawPlus.so.3 $(INST_LIBS)/libXawPlus.so
+- cp libXawPlus.so.3.1 $(INST_LIBS)
+- ldconfig
+- ln -s $(INST_LIBS)/libXawPlus.so.3.1 $(INST_LIBS)/libXawPlus.so
+-
+-installxaw:
+- rm -f $(INST_LIBS)/libXaw.so.6 \
+- $(INST_LIBS)/libXaw.so.7 \
+- $(INST_LIBS)/libXaw.so
+- cp libXaw.so.6.6 $(INST_LIBS)
+- cp libXaw.so.7.0 $(INST_LIBS)
+- ldconfig
+- ln -s $(INST_LIBS)/libXaw.so.6.6 $(INST_LIBS)/libXaw.so
++ install -m 755 -d $(DESTDIR)/usr/include/X11
++ install -m 755 -d $(DESTDIR)$(INST_LIBS)
++ install -m 644 ./X11/XawPlus/*.h $(DESTDIR)/usr/include/X11
++ install -m 644 libXawPlus.so.3.1 $(DESTDIR)$(INST_LIBS)
++
++install-static:
++ install -m 755 -d $(DESTDIR)/usr/include/X11
++ install -m 755 -d $(DESTDIR)$(INST_LIBS)
++ install -m 644 ./X11/XawPlus/*.h $(DESTDIR)/usr/include/X11
++ install -m 644 libXawPlus.a $(DESTDIR)$(INST_LIBS)
+
+ # --- Common
+
+ XawInit.o: XawInit.c $(XAW)/XawInit.h
+ $(CC) $(FLAGS) $(INC_PATH) -c XawInit.c
+- ar r libXawPlus.a XawInit.o
+
+ Vendor.o: Vendor.c $(XAW)/VendorEP.h $(XAW)/XawImP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Vendor.c
+- ar r libXawPlus.a Vendor.o
+
+ # --- Internationalization (I18n)
+
+ XawI18n.o: XawI18n.c XawI18n.h
+ $(CC) $(FLAGS) $(INC_PATH) -c XawI18n.c
+- ar r libXawPlus.a XawI18n.o
+
+ UTF8.o: UTF8.c UTF8.h
+ $(CC) $(FLAGS) $(INC_PATH) -c UTF8.c
+- ar r libXawPlus.a UTF8.o
+
+ # --- XPM support
+
+ LocPixmap.o: LocPixmap.c
+ $(CC) $(FLAGS) $(INC_PATH) -c LocPixmap.c
+- ar r libXawPlus.a LocPixmap.o
+
+ StrToPmap.o: StrToPmap.c
+ $(CC) $(FLAGS) $(INC_PATH) -c StrToPmap.c
+- ar r libXawPlus.a StrToPmap.o
+
+ # --- Manager widgets
+
+ Box.o: Box.c $(XAW)/XawInit.h $(XAW)/Box.h $(XAW)/BoxP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Box.c
+- ar r libXawPlus.a Box.o
+
+ Paned.o: Paned.c $(XAW)/XawInit.h $(XAW)/Grip.h \
+ $(XAW)/Paned.h $(XAW)/PanedP.h $(XAW)/XawImP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Paned.c
+- ar r libXawPlus.a Paned.o
+
+ Viewport.o: Viewport.c $(XAW)/XawInit.h $(XAW)/Scrollbar.h \
+ $(XAW)/Form.h $(XAW)/FormP.h $(XAW)/Viewport.h $(XAW)/ViewportP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Viewport.c
+- ar r libXawPlus.a Viewport.o
+
+ Form.o: Form.c $(XAW)/XawInit.h $(XAW)/Form.h $(XAW)/FormP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Form.c
+- ar r libXawPlus.a Form.o
+
+ Porthole.o: Porthole.c $(XAW)/XawInit.h $(XAW)/Porthole.h $(XAW)/PortholeP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Porthole.c
+- ar r libXawPlus.a Porthole.o
+
+ # --- Text widget
+
+@@ -144,32 +121,26 @@
+ $(XAW)/MultiSink.h $(XAW)/TextSinkP.h $(XAW)/TextSink.h \
+ $(XAW)/XawImP.h XawI18n.h
+ $(CC) $(FLAGS) $(INC_PATH) -c XawIm.c
+- ar r libXawPlus.a XawIm.o
+
+ TextSrc.o: TextSrc.c $(XAW)/XawInit.h $(XAW)/TextSrc.h $(XAW)/TextSrcP.h \
+ $(XAW)/TextP.h $(XAW)/Text.h XawI18n.h
+ $(CC) $(FLAGS) $(INC_PATH) -c TextSrc.c
+- ar r libXawPlus.a TextSrc.o
+
+ TextSink.o: TextSink.c $(XAW)/XawInit.h $(XAW)/TextP.h $(XAW)/Text.h \
+ $(XAW)/TextSink.h $(XAW)/TextSinkP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c TextSink.c
+- ar r libXawPlus.a TextSink.o
+
+ TextAction.o: TextAction.c $(XAW)/TextP.h $(XAW)/Text.h $(XAW)/MultiSrc.h \
+ $(XAW)/MultiSrcP.h $(XAW)/XawImP.h XawI18n.h
+ $(CC) $(FLAGS) $(INC_PATH) -c TextAction.c
+- ar r libXawPlus.a TextAction.o
+
+ TextTr.o: TextTr.c
+ $(CC) $(FLAGS) $(INC_PATH) -c TextTr.c
+- ar r libXawPlus.a TextTr.o
+
+ Text.o: Text.c $(XAW)/XawInit.h $(XAW)/Simple.h $(XAW)/SimpleP.h \
+ $(XAW)/Scrollbar.h $(XAW)/TextP.h $(XAW)/Text.h $(XAW)/MultiSink.h \
+ $(XAW)/MultiSinkP.h $(XAW)/XawImP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Text.c
+- ar r libXawPlus.a Text.o
+
+ # --- AsciiText widget
+
+@@ -177,132 +148,108 @@
+ $(XAW)/TextSrc.h $(XAW)/TextSrcP.h $(XAW)/AsciiSrc.h $(XAW)/AsciiSrcP.h \
+ $(XAW)/MultiSrc.h $(XAW)/MultiSrcP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c AsciiSrc.c
+- ar r libXawPlus.a AsciiSrc.o
+
+ AsciiSink.o: AsciiSink.c $(XAW)/XawInit.h $(XAW)/AsciiSrcP.h $(XAW)/AsciiSrc.h \
+ $(XAW)/TextP.h $(XAW)/Text.h $(XAW)/TextSink.h $(XAW)/TextSinkP.h \
+ $(XAW)/AsciiSink.h $(XAW)/AsciiSinkP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c AsciiSink.c
+- ar r libXawPlus.a AsciiSink.o
+
+ AsciiText.o: AsciiText.c $(XAW)/XawInit.h $(XAW)/XawImP.h \
+ $(XAW)/Simple.h $(XAW)/SimpleP.h $(XAW)/TextP.h $(XAW)/Text.h \
+ $(XAW)/AsciiSrc.h $(XAW)/AsciiSink.h $(XAW)/AsciiText.h $(XAW)/AsciiTextP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c AsciiText.c
+- ar r libXawPlus.a AsciiText.o
+
+ MultiSrc.o: MultiSrc.c $(XAW)/XawInit.h $(XAW)/MultiSrc.h $(XAW)/MultiSrcP.h \
+ $(XAW)/XawImP.h XawI18n.h
+ $(CC) $(FLAGS) $(INC_PATH) -c MultiSrc.c
+- ar r libXawPlus.a MultiSrc.o
+
+ MultiSink.o: MultiSink.c $(XAW)/XawInit.h $(XAW)/TextP.h $(XAW)/Text.h \
+ $(XAW)/MultiSrc.h $(XAW)/MultiSrcP.h \
+ $(XAW)/MultiSink.h $(XAW)/MultiSinkP.h XawI18n.h
+ $(CC) $(FLAGS) $(INC_PATH) -c MultiSink.c
+- ar r libXawPlus.a MultiSink.o
+
+ TextPop.o: TextPop.c $(XAW)/TextP.h $(XAW)/Text.h $(XAW)/AsciiText.h \
+ $(XAW)/Command.h $(XAW)/Form.h $(XAW)/Toggle.h XawI18n.h
+ $(CC) $(FLAGS) $(INC_PATH) -c TextPop.c
+- ar r libXawPlus.a TextPop.o
+
+ # --- Simple menue widget
+
+ Sme.o: Sme.c $(XAW)/XawInit.h $(XAW)/Sme.h $(XAW)/SmeP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Sme.c
+- ar r libXawPlus.a Sme.o
+
+ SmeBSB.o: SmeBSB.c $(XAW)/StrToPmap.h $(XAW)/XawInit.h $(XAW)/Cardinals.h $(XAW)/SimpleMenu.h \
+ $(XAW)/SmeBSB.h $(XAW)/SmeBSBP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c SmeBSB.c
+- ar r libXawPlus.a SmeBSB.o
+
+ SmeLine.o: SmeLine.c $(XAW)/XawInit.h $(XAW)/Sme.h $(XAW)/SmeP.h \
+ $(XAW)/SmeLine.h $(XAW)/SmeLineP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c SmeLine.c
+- ar r libXawPlus.a SmeLine.o
+
+ SimpleMenu.o: SimpleMenu.c $(XAW)/XawInit.h UTF8.h $(XAW)/SmeBSB.h \
+ $(XAW)/SimpleMenu.h $(XAW)/SimpleMenP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c SimpleMenu.c
+- ar r libXawPlus.a SimpleMenu.o
+
+ # --- Toggles, buttons, lists ...
+
+ Simple.o: Simple.c $(XAW)/XawInit.h \
+ $(XAW)/Simple.h $(XAW)/SimpleP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Simple.c
+- ar r libXawPlus.a Simple.o
+
+ Label.o: Label.c $(XAW)/StrToPmap.h $(XAW)/XawInit.h UTF8.h \
+ $(XAW)/Simple.h $(XAW)/SimpleP.h $(XAW)/Label.h $(XAW)/LabelP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Label.c
+- ar r libXawPlus.a Label.o
+
+ Command.o: Command.c $(XAW)/XawInit.h \
+ $(XAW)/Simple.h $(XAW)/SimpleP.h $(XAW)/Label.h $(XAW)/LabelP.h \
+ $(XAW)/Command.h $(XAW)/CommandP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Command.c
+- ar r libXawPlus.a Command.o
+
+ MenuButton.o: MenuButton.c $(XAW)/XawInit.h \
+ $(XAW)/Simple.h $(XAW)/SimpleP.h $(XAW)/Label.h $(XAW)/LabelP.h \
+ $(XAW)/Command.h $(XAW)/CommandP.h $(XAW)/MenuButton.h $(XAW)/MenuButtoP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c MenuButton.c
+- ar r libXawPlus.a MenuButton.o
+
+ Toggle.o: Toggle.c $(XAW)/XawInit.h \
+ $(XAW)/Simple.h $(XAW)/SimpleP.h $(XAW)/Label.h $(XAW)/LabelP.h \
+ $(XAW)/Command.h $(XAW)/CommandP.h $(XAW)/Toggle.h $(XAW)/ToggleP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Toggle.c
+- ar r libXawPlus.a Toggle.o
+
+ Repeater.o: Repeater.c $(XAW)/XawInit.h \
+ $(XAW)/Simple.h $(XAW)/SimpleP.h $(XAW)/Label.h $(XAW)/LabelP.h \
+ $(XAW)/Command.h $(XAW)/CommandP.h $(XAW)/Repeater.h $(XAW)/RepeaterP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Repeater.c
+- ar r libXawPlus.a Repeater.o
+
+ Panner.o: Panner.c $(XAW)/XawInit.h \
+ $(XAW)/Simple.h $(XAW)/SimpleP.h $(XAW)/Panner.h $(XAW)/PannerP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Panner.c
+- ar r libXawPlus.a Panner.o
+
+ Grip.o: Grip.c $(XAW)/XawInit.h \
+ $(XAW)/Simple.h $(XAW)/SimpleP.h $(XAW)/Grip.h $(XAW)/GripP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Grip.c
+- ar r libXawPlus.a Grip.o
+
+ Scrollbar.o: Scrollbar.c $(XAW)/XawInit.h \
+ $(XAW)/Simple.h $(XAW)/SimpleP.h $(XAW)/Scrollbar.h $(XAW)/ScrollbarP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Scrollbar.c
+- ar r libXawPlus.a Scrollbar.o
+
+ List.o: List.c $(XAW)/XawInit.h \
+ $(XAW)/Simple.h $(XAW)/SimpleP.h $(XAW)/List.h $(XAW)/ListP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c List.c
+- ar r libXawPlus.a List.o
+
+ # --- Miscelaneous
+
+ Tree.o: Tree.c $(XAW)/XawInit.h $(XAW)/Tree.h $(XAW)/TreeP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Tree.c
+- ar r libXawPlus.a Tree.o
+
+ DrawingArea.o: DrawingArea.c $(XAW)/XawInit.h \
+ $(XAW)/Simple.h $(XAW)/SimpleP.h $(XAW)/DrawingArea.h $(XAW)/DrawingAreaP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c DrawingArea.c
+- ar r libXawPlus.a DrawingArea.o
+
+ StripChart.o: StripChart.c $(XAW)/XawInit.h \
+ $(XAW)/Simple.h $(XAW)/SimpleP.h $(XAW)/StripChart.h $(XAW)/StripCharP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c StripChart.c
+- ar r libXawPlus.a StripChart.o
+
+ Dialog.o: Dialog.c $(XAW)/StrToPmap.h $(XAW)/XawInit.h \
+ $(XAW)/Form.h $(XAW)/FormP.h $(XAW)/AsciiText.h $(XAW)/Command.h $(XAW)/Label.h \
+ $(XAW)/Dialog.h $(XAW)/DialogP.h
+ $(CC) $(FLAGS) $(INC_PATH) -c Dialog.c
+- ar r libXawPlus.a Dialog.o
+
diff --git a/libraries/xawplus/slack-desc b/libraries/xawplus/slack-desc
new file mode 100644
index 0000000000000..e6da7e93b6177
--- /dev/null
+++ b/libraries/xawplus/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------------------------------------------------------|
+xawplus: XawPlus (a more modern clone of Xaw library)
+xawplus:
+xawplus: XawPlus is a clone of the original Xaw library, providing a more
+xawplus: up to date look and some extensions to the original Athena widget
+xawplus: set. This library is as compatible as possible to the original.
+xawplus:
+xawplus: XawPlus makes it possible to use XPM pixmaps, tooltips, a truncate
+xawplus: mechanism for too long label strings and UTF8 coded UNICODE labels
+xawplus: without changing the code of your application.
+xawplus:
+xawplus:
diff --git a/libraries/xawplus/xawplus.SlackBuild b/libraries/xawplus/xawplus.SlackBuild
new file mode 100644
index 0000000000000..bec607ae22050
--- /dev/null
+++ b/libraries/xawplus/xawplus.SlackBuild
@@ -0,0 +1,100 @@
+#!/bin/sh
+
+# Slackware build script for xawplus
+# Copyright 2012, Bojan Popović, Belgrade, Serbia, <bocke@slackware-srbija.org>
+# 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=xawplus
+VERSION=${VERSION:-3.1.0}
+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}
+
+DOCS="README GPL doc/*"
+
+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.tgz
+mv XawPlus $PRGNAM-$VERSION
+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 {} \;
+
+for PATCH in $CWD/*.patch ;do
+ cat $PATCH | patch -p1
+done
+
+export FLAGS=$SLKCFLAGS
+export LIBPATH=-L/usr/lib${LIBDIRSUFFIX}
+export INST_LIBS=/usr/lib${LIBDIRSUFFIX}
+
+make -j1 DESTDIR=$PKG
+
+cd $PKG/usr/lib${LIBDIRSUFFIX}
+ ln -sf libXawPlus.so.3.1 libXawPlus.so
+ ln -sf libXawPlus.so.3.1 libXawPlus.so.3
+cd $TMP/$PRGNAM-$VERSION
+
+find $PKG -print0 | xargs -0 file | grep -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+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/xawplus/xawplus.info b/libraries/xawplus/xawplus.info
new file mode 100644
index 0000000000000..3a78e53054ff8
--- /dev/null
+++ b/libraries/xawplus/xawplus.info
@@ -0,0 +1,10 @@
+PRGNAM="xawplus"
+VERSION="3.1.0"
+HOMEPAGE="http://people.freenet.de/kra/XawPlus"
+DOWNLOAD="ftp://ftp.freebsd.org/pub/FreeBSD/ports/distfiles/xawplus-3.1.0.tgz"
+MD5SUM="4a2ce98279bb3e2b9879bd04dd1136f9"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Bojan Popovic"
+EMAIL="bocke@slacware-srbija.org"