build script reorganization for future release

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackware-id.org>
This commit is contained in:
Willy Sudiarto Raharjo 2014-03-05 21:15:38 +07:00
parent 8c4ff7bed8
commit 876cdf511c
4 changed files with 113 additions and 37 deletions

View file

@ -25,26 +25,29 @@ How to build and install the MATE packages using these scripts:
1. Clone the Git repo or download a tarball/zip of the repo.
2. Run the 'mate-build-base.sh' in the msb root directory which will build
and install all the base (required) packages, including necessary
dependencies in the /deps directory. There are a total of 24 packages and
they do not replace any stock Slackware packages. The SlackBuilds will use
2. Run the 'mate-build-deps.sh' in the msb root directory which will build
and install all the necessary dependencies in the /deps directory. There are
a total of 26 packages.
3. Run the 'mate-build-base.sh' in the msb root directory which will build
and install all the base (required) packages. There are a total of 17 packages
and they do not replace any stock Slackware packages. The SlackBuilds will use
wget to download the sources. Or, you can also manually download the
sources from: http://pub.mate-desktop.org/releases/1.8 and the download
locations for each dependency and put each source into the corresponding
directory within 'base' and 'deps'.
3. Optionally, build and install any of the extra packages in the /extra
4. Optionally, build and install any of the extra packages in the /extra
directory. If you want to build and install them all, then you can use the
'mate-build-extra.sh' script in the msb root directory. Otherwise, just go
into the directory of whatever package you want in /extra and run the
SlackBuild. As with 'base', each SlackBuild will download the source.
4. Once the base packages are built and installed, plus any from /extra,
5. Once the base packages are built and installed, plus any from /extra,
you can use 'xwmconfig' to select the mate session. Or, if you use KDM,
just log out and select MATE from the KDM session dialog.
5. Check the 'startup applications' because there might be some duplicate
6. Check the 'startup applications' because there might be some duplicate
or conflicting entries. For example, there will be an entry for
polkit-mate and polkit-gnome, the result of which might be duplicate
attempts at polkit actions when inserting a usb stick, for example. You
@ -52,13 +55,13 @@ may want to disable polkit-gnome and see if polkit-mate works by itself.
Also, if you use mate-power-manager from /extra then you might want to
disable the Xfce power manager if it is listed.
6. Users running Slackware{64} -current are advised to read CURRENT.TXT.
7. Users running Slackware{64} -current are advised to read CURRENT.TXT.
It should also be noted that the target system for MATE SlackBuilds is a
full install of the latest official Slackware release. It might run on a
less-than-full install and it might run on -current. Or, it might not.
Neither of those are our official target systems.
7. Enjoy and let us know of any issues. Email is:
8. Enjoy and let us know of any issues. Email is:
mateslackbuilds@gmail.com.
Thanks!

View file

@ -36,19 +36,14 @@ TMP=${TMP:-/tmp}
# This is the original directory where you started this script
MSBROOT=$(pwd)
# Loop for all packages
# Loop for all base packages
for dir in \
base/mate-common \
deps/rarian \
deps/yelp-xsl \
deps/yelp-tools \
base/libmatekbd \
base/libmateweather \
base/mate-icon-theme \
base/mate-dialogs \
base/mate-desktop \
deps/libunique \
deps/pangox-compat \
base/caja \
base/mate-notification-daemon \
base/mate-backgrounds \
@ -59,8 +54,6 @@ for dir in \
base/mate-control-center \
base/mate-panel \
base/mate-session-manager \
deps/gtk-engines \
deps/murrine \
base/mate-themes \
; do
# Get the package name

99
mate-build-deps.sh Normal file
View file

@ -0,0 +1,99 @@
#!/bin/sh
# Copyright 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Copyright 2014 Willy Sudiarto Raharjo <willysr@slackware-id.org>
# 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
# This is where all the compilation and final results will be placed
TMP=${TMP:-/tmp}
# This is the original directory where you started this script
MSBROOT=$(pwd)
# Loop for all dependency packages
for dir in \
deps/rarian \
deps/yelp-xsl \
deps/yelp-tools \
deps/libunique \
deps/pangox-compat \
deps/gtk-engines \
deps/murrine \
deps/pygobject3 \
deps/gtksourceview \
deps/pygtksourceview \
deps/libgtop \
deps/libgksu \
deps/gksu \
deps/gssdp \
deps/gupnp \
deps/libsigc++ \
deps/glibmm \
deps/cairomm \
deps/pangomm \
deps/atkmm \
deps/mm-common \
deps/gtkmm \
deps/perl-xml-twig \
deps/perl-net-dbus \
deps/system-tools-backends \
deps/liboobs \
; do
# Get the package name
package=$(echo $dir | cut -f2- -d /)
# Change to package directory
cd $MSBROOT/$dir || exit 1
# Get the version
version=$(cat ${package}.SlackBuild | grep "VERSION:" | cut -d "-" -f2 | rev | cut -c 2- | rev)
# Check for duplicate sources
sourcefile="$(ls -l $MSBROOT/$dir/${package}-*.tar.?z* | wc -l)"
if [ $sourcefile -gt 1 ]; then
echo "You have following duplicate sources:"
ls $MSBROOT/$dir/${package}-*.tar.?z* | cut -d " " -f1
echo "Please delete sources other than ${package}-$version to avoid problems"
exit 1
fi
# The real build starts here
sh ${package}.SlackBuild || exit 1
if [ "$INST" = "1" ]; then
PACKAGE="${package}-$version-*.txz"
if [ -f $TMP/$PACKAGE ]; then
upgradepkg --install-new --reinstall $TMP/$PACKAGE
else
echo "Error: package to upgrade "$PACKAGE" not found in $TMP"
exit 1
fi
fi
# back to original directory
cd $MSBROOT
done

View file

@ -36,27 +36,8 @@ TMP=${TMP:-/tmp}
# This is the original directory where you started this script
MSBROOT=$(pwd)
# Loop for all packages
# Loop for all extra packages
for dir in \
deps/pygobject3 \
deps/gtksourceview \
deps/pygtksourceview \
deps/libgtop \
deps/libgksu \
deps/gksu \
deps/gssdp \
deps/gupnp \
deps/libsigc++ \
deps/glibmm \
deps/cairomm \
deps/pangomm \
deps/atkmm \
deps/mm-common \
deps/gtkmm \
deps/perl-xml-twig \
deps/perl-net-dbus \
deps/system-tools-backends \
deps/liboobs \
extra/mate-calc \
extra/atril \
extra/engrampa \