diff options
author | Eric Hameleers <alien@slackware.com> | 2017-05-01 20:31:27 +0000 |
---|---|---|
committer | Eric Hameleers <alien@slackware.com> | 2017-05-01 20:31:27 +0000 |
commit | cd0691d32c06ed3c7726bbb59b527d8af67f2a81 (patch) | |
tree | 4c4190a041d358106d6bc84d5cdfa5d9564b5fe7 | |
parent | 943972ba2de37405b58c374d5490d5c579cef989 (diff) | |
download | asb-cd0691d32c06ed3c7726bbb59b527d8af67f2a81.tar.gz asb-cd0691d32c06ed3c7726bbb59b527d8af67f2a81.tar.xz |
Initial revision
-rwxr-xr-x | oxygen-gtk2/build/oxygen-gtk2.SlackBuild | 127 | ||||
-rw-r--r-- | oxygen-gtk2/build/patches/oxygen-gtk2_KDEBUG_341181.patch | 115 | ||||
-rw-r--r-- | oxygen-gtk2/build/slack-desc | 19 |
3 files changed, 261 insertions, 0 deletions
diff --git a/oxygen-gtk2/build/oxygen-gtk2.SlackBuild b/oxygen-gtk2/build/oxygen-gtk2.SlackBuild new file mode 100755 index 00000000..1ba9e1a5 --- /dev/null +++ b/oxygen-gtk2/build/oxygen-gtk2.SlackBuild @@ -0,0 +1,127 @@ +#!/bin/sh + +# Copyright 2017 Eric Hameleers, Eindhoven, NL +# Copyright 2017 Patrick J. Volkerding, Sebeka, MN, USA +# All rights reserved. +# +# Permission to use, copy, modify, and distribute this software for +# any purpose with or without fee is hereby granted, provided that +# the above copyright notice and this permission notice appear in all +# copies. +# +# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 AUTHORS AND COPYRIGHT HOLDERS AND THEIR +# CONTRIBUTORS 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. +# ----------------------------------------------------------------------------- + + +PKGNAM=oxygen-gtk2 +SRCVER=${SRCVER:-1.4.6} +VERSION=${SRCVER}.1 +BUILD=${BUILD:-1} +TAG=${TAG:-alien} + +CWD=$(pwd) +TMP=${TMP:-/tmp} +PKG=$TMP/package-$PKGNAM + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$(uname -m)" in + i?86) ARCH=i486 ;; + arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) ARCH=$(uname -m) ;; + esac + export ARCH +fi + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + SLKLDFLAGS="" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + SLKLDFLAGS="-L/usr/lib64" + LIBDIRSUFFIX="64" +elif [ "$ARCH" = "armv7hl" ]; then + SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16" + SLKLDFLAGS="" + LIBDIRSUFFIX="" +else + SLKCFLAGS="-O2" + SLKLDFLAGS="" + LIBDIRSUFFIX="" +fi + +case "$ARCH" in + arm*) TARGET=$ARCH-slackware-linux-gnueabi ;; + *) TARGET=$ARCH-slackware-linux ;; +esac + +rm -rf $PKG +mkdir -p $TMP $PKG +cd $TMP +rm -rf $PKGNAM-$SRCVER +tar xvf $CWD/$PKGNAM-$SRCVER.tar.?z* || exit 1 +cd $PKGNAM-$SRCVER || exit 1 + +# Apply patch to identify more Mozilla derived browsers (such as Pale Moon); +# This fixes browser crashes: +cat $CWD/patches/oxygen-gtk2_KDEBUG_341181.patch | patch -p1 --verbose || exit 1 + +# Fix bogus permissions: +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 {} \; + +# Configure and compile: +mkdir -p build +cd build + cmake \ + -DKDE4_BUILD_TESTS=OFF \ + -DKDE_PLATFORM_FEATURE_DISABLE_DEPRECATED=TRUE \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_C_FLAGS_RELEASE:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS_RELEASE:STRING="$SLKCFLAGS" \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DMAN_INSTALL_DIR=/usr/man \ + -DSYSCONF_INSTALL_DIR=/etc/kde \ + -DLIB_SUFFIX=${LIBDIRSUFFIX} \ + .. + make + make install DESTDIR=$PKG +cd .. + +# Add documentation: +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION +cp -a \ + AUTHORS COPYING INSTALL README TODO \ + $PKG/usr/doc/$PKGNAM-$VERSION + +# Strip binaries: +find $PKG | xargs file | grep -e "executable" -e "shared object" \ + | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + +# Add a package description: +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +# Build the package: +cd $PKG +/sbin/makepkg -l y -c n $TMP/${PKGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.txz + diff --git a/oxygen-gtk2/build/patches/oxygen-gtk2_KDEBUG_341181.patch b/oxygen-gtk2/build/patches/oxygen-gtk2_KDEBUG_341181.patch new file mode 100644 index 00000000..b6a1e557 --- /dev/null +++ b/oxygen-gtk2/build/patches/oxygen-gtk2_KDEBUG_341181.patch @@ -0,0 +1,115 @@ +From b1ee5fb80c44c6c8a625333af1cfdc997d408805 Mon Sep 17 00:00:00 2001 +From: Hugo Pereira Da Costa <hugo.pereira@free.fr> +Date: Sat, 18 Jul 2015 20:09:28 +0200 +Subject: moved xul application names to dedicated header file, added a number + of xul applications to prevent crash for these CCBUG: 341181 + +--- + src/oxygenapplicationname.cpp | 18 ++----------- + src/oxygenxulapplicationnames.h | 56 +++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 58 insertions(+), 16 deletions(-) + create mode 100644 src/oxygenxulapplicationnames.h + +diff --git a/src/oxygenapplicationname.cpp b/src/oxygenapplicationname.cpp +index feb5a23..17c8a1a 100644 +--- a/src/oxygenapplicationname.cpp ++++ b/src/oxygenapplicationname.cpp +@@ -25,6 +25,7 @@ + + #include "oxygenapplicationname.h" + #include "oxygengtkutils.h" ++#include "oxygenxulapplicationnames.h" + #include "config.h" + + #include <cstdlib> +@@ -79,23 +80,8 @@ namespace Oxygen + gtkAppName == "chromium" || + gtkAppName == "chromium-browser" || + gtkAppName == "google-chrome" ) _name = GoogleChrome; +- else { + +- // tag all mozilla-like applications (XUL) +- static const std::string XulAppNames[] = +- { +- "firefox", +- "thunderbird", +- "seamonkey", +- "iceweasel", +- "icecat", +- "icedove", +- "xulrunner", +- "komodo", +- "aurora", +- "zotero", +- "" +- }; ++ else { + + for( unsigned int index = 0; !XulAppNames[index].empty(); ++index ) + { +diff --git a/src/oxygenxulapplicationnames.h b/src/oxygenxulapplicationnames.h +new file mode 100644 +index 0000000..252a1fc +--- /dev/null ++++ b/src/oxygenxulapplicationnames.h +@@ -0,0 +1,56 @@ ++#ifndef oxygenxulapplicationname_h ++#define oxygenxulapplicationname_h ++/* ++* this file is part of the oxygen gtk engine ++* Copyright (c) 2010 Hugo Pereira Da Costa <hugo.pereira@free.fr> ++* ++* inspired notably from kdelibs/kdeui/color/kcolorutils.h ++* Copyright (C) 2007 Matthew Woehlke <mw_triad@users.sourceforge.net> ++* Copyright (C) 2007 Thomas Zander <zander@kde.org> ++* Copyright (C) 2007 Zack Rusin <zack@kde.org> ++* ++* 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 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 St, Fifth Floor, Boston, ++* MA 02110-1301, USA. ++*/ ++ ++#include <string> ++ ++namespace Oxygen ++{ ++ ++ // tag all mozilla-like applications (XUL) ++ static const std::string XulAppNames[] = ++ { ++ "aurora", ++ "earlybird", ++ "icecat", ++ "icedove", ++ "iceweasel", ++ "instantbird", ++ "firefox", ++ "fossamail", ++ "komodo", ++ "newmoon", ++ "palemoon", ++ "seamonkey", ++ "thunderbird", ++ "xulrunner", ++ "zotero", ++ "" ++ }; ++ ++} ++ ++#endif +-- +cgit v0.11.2 + + diff --git a/oxygen-gtk2/build/slack-desc b/oxygen-gtk2/build/slack-desc new file mode 100644 index 00000000..9398d8d4 --- /dev/null +++ b/oxygen-gtk2/build/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 ':'. + + |-----handy-ruler------------------------------------------------------| +oxygen-gtk2: oxygen-gtk2 (Oxygen GTK+ engine) +oxygen-gtk2: +oxygen-gtk2: Oxygen-Gtk2 is a port of the KDE widget theme Oxygen, to GTK+. +oxygen-gtk2: It's primary goal is to ensure visual consistency between GTK+ and +oxygen-gtk2: qt-based applications running under kde. A secondary objective is +oxygen-gtk2: to also have a stand-alone nice looking GTK+ theme that would behave +oxygen-gtk2: well on other Desktop Environments. +oxygen-gtk2: Unlike other attempts made to port the kde oxygen theme to GTK+, this +oxygen-gtk2: attempt does not depend on Qt. +oxygen-gtk2: +oxygen-gtk2: See: http://projects.kde.org/projects/playground/artwork/oxygen-gtk |