aboutsummaryrefslogtreecommitdiff
path: root/libs_toolkit/gtk+3
diff options
context:
space:
mode:
Diffstat (limited to 'libs_toolkit/gtk+3')
-rw-r--r--libs_toolkit/gtk+3/gtk+-3.8.0-pkglibdir.patch.xzbin0 -> 412 bytes
-rw-r--r--libs_toolkit/gtk+3/gtk+-3.8.0-profile.patch.xzbin0 -> 300 bytes
-rwxr-xr-xlibs_toolkit/gtk+3/gtk+3.build152
3 files changed, 152 insertions, 0 deletions
diff --git a/libs_toolkit/gtk+3/gtk+-3.8.0-pkglibdir.patch.xz b/libs_toolkit/gtk+3/gtk+-3.8.0-pkglibdir.patch.xz
new file mode 100644
index 0000000..c41d8d3
--- /dev/null
+++ b/libs_toolkit/gtk+3/gtk+-3.8.0-pkglibdir.patch.xz
Binary files differ
diff --git a/libs_toolkit/gtk+3/gtk+-3.8.0-profile.patch.xz b/libs_toolkit/gtk+3/gtk+-3.8.0-profile.patch.xz
new file mode 100644
index 0000000..70f6437
--- /dev/null
+++ b/libs_toolkit/gtk+3/gtk+-3.8.0-profile.patch.xz
Binary files differ
diff --git a/libs_toolkit/gtk+3/gtk+3.build b/libs_toolkit/gtk+3/gtk+3.build
new file mode 100755
index 0000000..24c75df
--- /dev/null
+++ b/libs_toolkit/gtk+3/gtk+3.build
@@ -0,0 +1,152 @@
+#!/bin/bash
+#
+# Maintainer: Deposite Pirate <ofni.sknuplatem@etaripd>
+
+source /usr/src/ports/Build/build.sh
+
+NAME=gtk+
+MAJOR=3.8
+VERSION=${MAJOR}.0
+BUILD=1
+DEPENDS=('xorg_libs >= 7.7-4' 'gtk+ >= 2.24.17-1' 'gdk_pixbuf >= 2.28.0-1' 'cairo >= 1.12.12-1' 'atk >= 2.8.0-1' 'pango >= 1.34.0-1' 'at_spi >= 2.8.0-1')
+OPTIONS="symprepend"
+
+# Description
+
+cat > ${PKG}/install/slack-desc <<EOF
+# 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 ':'.
+
+$(padd)|-----handy-ruler------------------------------------------------------|
+${NAME}: GTK+ version 3
+${NAME}:
+${NAME}: This is GTK+, a toolkit for creating graphical user interfaces.
+${NAME}: Offering a complete set of widgets, GTK+ is suitable for projects
+${NAME}: ranging from small one-off projects to complete application suites.
+${NAME}:
+${NAME}: Homepage: http://www.gtk.org
+${NAME}:
+${NAME}:
+${NAME}:
+${NAME}:
+EOF
+
+cat >> ${PKG}/install/doinst.sh <<EOF
+#!/bin/sh
+
+config() {
+ NEW="\$1"
+ OLD="\$(dirname \$NEW)/\$(basename \$NEW .new)"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r \$OLD ]; then
+ mv \$NEW \$OLD
+ elif [ "\$(cat \$OLD | md5sum)" = "\$(cat \$NEW | md5sum)" ]; then
+ # toss the redundant copy
+ rm \$NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+
+# Do the module querying after installation...
+
+export GTK_IM_MODULE_FILE="${SYS_DIR[var]}/cache/gtk-3.0/immodules.cache"
+
+if [ -x ${SYS_DIR[bin]}/gtk-query-immodules-3.0 ]; then
+ ${SYS_DIR[bin]}/gtk-query-immodules-3.0 --update-cache
+fi
+
+# Compile settings data schemas
+
+if [ -x ${SYS_DIR[bin]}/glib-compile-schemas ]; then
+ ${SYS_DIR[bin]}/glib-compile-schemas ${SYS_DIR[share]}/glib-2.0/schemas
+fi
+
+config etc/gtk-3.0/im-multipress.conf.new
+EOF
+
+# Sources
+
+configure()
+{
+sed -i 's|$(libdir)/pkgconfig|$(datarootdir)/pkgconfig|g' Makefile.in
+CFLAGS="${FLAGS}" CXXFLAGS="${FLAGS}" \
+./configure \
+ --build="${ARCH}-slackware-linux" \
+ --disable-dependency-tracking \
+ --disable-silent-rules \
+ --enable-shared=yes \
+ --enable-static=no \
+ --prefix="${SYS_DIR[usr]}" \
+ --mandir="${SYS_DIR[man]}" \
+ --libdir="${SYS_DIR[lib]}" \
+ --localstatedir="${SYS_DIR[var]}" \
+ ${*}
+}
+
+SRCNAME[0]=${NAME}
+SRCVERS[0]=${VERSION}
+SRCPACK[0]=${URL[gnome]}/${SRCNAME[0]}/${MAJOR}/${SRCNAME[0]}-${SRCVERS[0]}.tar.xz
+SRCCOPY[0]="LGPL2"
+
+build0()
+{
+sed -i 's|$(libdir)/gtk-3.0|$(libdir)/plugins/gtk-3.0|g' $(find modules -name "Makefile.in")
+sed -i 's|$(libdir)/gtk-2.0|$(libdir)/plugins/gtk-2.0|g' $(find modules -name "Makefile.in")
+configure \
+ --enable-introspection=no \
+ --enable-debug=minimum \
+ --sysconfdir="${SYS_DIR[etc]}" \
+ --with-html-dir="${SYS_DIR[html]}" \
+ --enable-gtk2-dependency \
+ --enable-x11-backend
+make ${JOBS} V=1
+make install DESTDIR="${PKG}"
+doc AUTHORS
+changelog NEWS
+install.dir ${PKG}${SYS_DIR[etc]}/profile.d
+install.bin gtk+3.sh ${PKG}${SYS_DIR[etc]}/profile.d
+install.bin gtk+3.csh ${PKG}${SYS_DIR[etc]}/profile.d
+config ${PKG}${SYS_DIR[etc]}/gtk-3.0/im-multipress.conf
+install.dir ${PKG}${SYS_DIR[var]}/cache/gtk-3.0
+touch ${PKG}${SYS_DIR[var]}/cache/gtk-3.0/immodules.cache
+# We can include the demos while Gtk+ 3 is not deprecated
+# but ideally this should be in a subpackage
+#rm -rf \
+# ${PKG}/usr/share/gtk-3.0/demo \
+# ${PKG}/usr/bin/gtk3-demo* \
+# ${PKG}/usr/bin/gtk3-widget-factory
+# No development docs
+rm -rf ${PKG}${SYS_DIR[html]}
+}
+
+SRCNAME[1]=gnome-themes-standard
+SRCVERS[1]=${MAJOR}.0
+SRCPACK[1]=${URL[gnome]}/${SRCNAME[1]}/${MAJOR}/${SRCNAME[1]}-${SRCVERS[1]}.tar.xz
+SRCCOPY[1]="LGPL21"
+
+build1()
+{
+sed -i 's|$(libdir)/gtk-2.0|$(libdir)/plugins/gtk-2.0|g' $(find themes -name "Makefile.in")
+sed -i 's|$(libdir)/gtk-3.0|$(libdir)/plugins/gtk-3.0|g' $(find themes -name "Makefile.in")
+GLIB_FLAGS="$(pkg-config glib-2.0 --cflags)"
+PANGO_FLAGS="$(pkg-config pango --cflags)"
+ATK_FLAGS="$(pkg-config atk --cflags)"
+PIXBUF_FLAGS="$(pkg-config gdk-pixbuf-2.0 --cflags)"
+CAIRO_FLAGS="$(pkg-config cairo --cflags)"
+ALL_CFLAGS="${GLIB_FLAGS} ${PANGO_FLAGS} ${ATK_FLAGS} ${PIXBUF_FLAGS} ${CAIRO_FLAGS}"
+LDFLAGS="-L${PKG}${SYS_DIR[lib]}" \
+GTK3_ENGINE_CFLAGS="-I${PKG}${SYS_DIR[include]}/gtk-3.0 ${ALL_CFLAGS}" \
+HIGHCONTRAST_CFLAGS="-I${PKG}${SYS_DIR[include]}/gtk-3.0 ${ALL_CFLAGS}" \
+PKG_CONFIG_PATH="${PKG}${SYS_DIR[share]}/pkgconfig" \
+configure \
+ --sysconfdir="${SYS_DIR[etc]}/gtk-3.0"
+make ${JOBS} V=1
+make install DESTDIR="${PKG}"
+changelog NEWS
+# We'll add that to a subpackage some day
+rm -rf ${PKG}${SYS_DIR[share]}/gnome-background-properties
+}