Gentoo: Files moved to a separate git repository.

Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
pull/30/head
Slávek Banko 6 years ago
parent 652dadf08b
commit c725dd1dd6
No known key found for this signature in database
GPG Key ID: 608F5293A04BE668

3
.gitmodules vendored

@ -0,0 +1,3 @@
[submodule "gentoo"]
path = gentoo
url = https://scm.trinitydesktop.org/scm/git/tde-packaging-gentoo

@ -0,0 +1 @@
Subproject commit 644110a847c5911c2eb04eb53c93031740561efc

@ -1,17 +0,0 @@
This is a trinity Gentoo overlay.
Please don't report bugs to Gentoo bugzilla.
If you want to report a bug feel free to email me at fatzer2@gmail.com. I'm able to read and write in Russian and English.
Overlay will be filled with ebuilds of ported to cmake programs from the Trinity Project.
If you are interested in ebuilds for some packages that are not in the overlay, you can email me too.
Live ebuilds aren't tested at all, but you still can try to build them on your own risk.
In order to properly use this overlay, you have to unmask the qt3 USE flag and packages.
To do so, execute the following commands as root:
# mkdir -p /etc/portage/profile
# echo -qt3 >> /etc/portage/profile/use.mask
# mkdir -p /etc/portage/packages.keywords/
# cp /var/lib/layman/trinity /etc/portage/packages.keywords/
NOTE: hal compilation is now broken. If you know how to fix it, write me an email.

@ -1,27 +0,0 @@
Need some workarounds on the LDPATH variable. [don't remember what's wrong there, seems it's obsolete]
arts: test
kdm: test/fix SAK in kdm.
tdebase-starttde: test the script more heavyly
sys-apps/hal: fix use description
trinity-base/ksysguard[dell-laptop] test if it requires i8k kernel module
trinity-base/kdegraphics-kfile-plugins: add a dependencies for pdf USE (poppler?)
trinity-base/kdegraphics-kfile-plugins: check for other additional depedencies.
trinity-base/kpdf: check for it should depend on kdegraphics-kfile-plugins[pdf]
trinity-base/kpdf: check for other additional depedencies.
trinity-base/kghostview: check for it should depend on kdegraphics-kfile-plugins[pdf]
trinity-base/kghostview: check for other additional depedencies.
trinity-base/kmrml: add dependencies, see what is it.
trinity-base/kviewshell: test if it depends on kde-base/kdebase-kioslaves
trinity-base/kgpg: check dependencies
trinity-base/kgpg: if it's possible add app-crypt/pinentry[qt3] to overlay
trinity-base/kopete: review
trinity-base/tdebase-starttde: add gentoo-specific lines like those in kdebase-starttde
trinity-base/tde-i18n: the ebuild is crappy and need to be rewriten.
trinity-base/ksmserver-9999: FTBFS with hal. TODO: fill the bug
trinity-base/noatun-plugins: masked due to missing dependency: noatun;
trinity-base/noatun-plugins: unmask than packaging trinity-base/noatun

@ -1,9 +0,0 @@
trinity-base/kdeartwork-emoticons
trinity-base/kdeartwork-icon-themes
trinity-base/kdeartwork-icewm-themes
trinity-base/kdeartwork-kscreensaver
trinity-base/kdeartwork-kwin-styles
trinity-base/kdeartwork-kworldclock
trinity-base/kdeartwork-sounds
trinity-base/kdeartwork-styles
trinity-base/kdeartwork-wallpapers

@ -1,42 +0,0 @@
trinity-base/kdebase-starttde
trinity-base/drkonqi
trinity-base/kappfinder
trinity-base/kate
trinity-base/kcheckpass
trinity-base/kcminit
trinity-base/kcontrol
trinity-base/kdcop
trinity-base/kdebugdialog
trinity-base/kdepasswd
trinity-base/kdeprint
trinity-base/kdesktop
trinity-base/kdesu
trinity-base/kdialog
trinity-base/kdm
trinity-base/kfind
trinity-base/khelpcenter
trinity-base/khotkeys
trinity-base/kicker
trinity-base/kdebase-kioslaves
trinity-base/klipper
trinity-base/kmenuedit
trinity-base/konqueror
trinity-base/konsole
trinity-base/kpager
trinity-base/kpersonalizer
trinity-base/kreadconfig
trinity-base/kscreensaver
trinity-base/ksmserver
trinity-base/ksplashml
trinity-base/kstart
trinity-base/ksysguard
trinity-base/ksystraycmd
trinity-base/ktip
trinity-base/kwin
trinity-base/kxkb
trinity-base/libkonq
trinity-base/nsplugins
trinity-base/knetattach
trinity-base/kdebase-data
trinity-base/krootbacking
trinity-base/tqt3integration

@ -1,42 +0,0 @@
trinity-base/kdebase-starttde
trinity-base/drkonqi
trinity-base/kappfinder
trinity-base/kate
trinity-base/kcheckpass
trinity-base/kcminit
trinity-base/kcontrol
trinity-base/kdcop
trinity-base/kdebugdialog
trinity-base/kdepasswd
trinity-base/kdeprint
trinity-base/kdesktop
trinity-base/kdesu
trinity-base/kdialog
trinity-base/kdm
trinity-base/kfind
trinity-base/khelpcenter
trinity-base/khotkeys
trinity-base/kicker
trinity-base/kdebase-kioslaves
trinity-base/klipper
trinity-base/kmenuedit
trinity-base/konqueror
trinity-base/konsole
trinity-base/kpager
trinity-base/kpersonalizer
trinity-base/kreadconfig
trinity-base/kscreensaver
trinity-base/ksmserver
trinity-base/ksplashml
trinity-base/kstart
trinity-base/ksysguard
trinity-base/ksystraycmd
trinity-base/ktip
trinity-base/kwin
trinity-base/kxkb
trinity-base/libkonq
trinity-base/nsplugins
trinity-base/knetattach
trinity-base/kdebase-data
trinity-base/krootbacking
trinity-base/tqt3integration

@ -1,21 +0,0 @@
trinity-base/kamera
trinity-base/kcoloredit
#! trinity-base/kdvi
#! trinity-base/kfax
trinity-base/kdegraphics-doc
trinity-base/kdegraphics-kfile-plugins
trinity-base/kgamma
trinity-base/kghostview
trinity-base/kiconedit
trinity-base/kmrml
trinity-base/kolourpaint
trinity-base/kooka
trinity-base/kpdf
trinity-base/kpovmodeler
trinity-base/kruler
trinity-base/ksnapshot
trinity-base/ksvg
trinity-base/kuickshow
trinity-base/kview
trinity-base/kviewshell
trinity-base/libkscan

@ -1,16 +0,0 @@
#? trinity-base/akode
#? trinity-base/apps-artsplugins
#? trinity-base/juk
#? trinity-base/kaboodle
#? trinity-base/kaudiocreator
#? trinity-base/kdemultimedia-arts
#? trinity-base/kdemultimedia-kappfinder-data
#? trinity-base/kdemultimedia-kfile-plugins
#? trinity-base/kdemultimedia-kioslaves
#? trinity-base/kmid
trinity-base/kmix
#? trinity-base/krec
#? trinity-base/kscd
#? trinity-base/libkcddb
#? trinity-base/mpeglib
#? trinity-base/noatun

@ -1,18 +0,0 @@
trinity-base/dcoprss
trinity-base/kdict
trinity-base/kdnssd
trinity-base/kget
trinity-base/knewsticker
trinity-base/kopete
trinity-base/kpf
trinity-base/kppp
trinity-base/krdc
trinity-base/krfb
trinity-base/ksirc
trinity-base/ktalkd
trinity-base/kwifimanager
trinity-base/librss
trinity-base/lisa
trinity-base/kdenetwork-doc
trinity-base/kdenetwork-filesharing
trinity-base/kdenetwork-kfile-plugins

@ -1,37 +0,0 @@
trinity-base/akregator
#? trinity-base/certmanager
#? trinity-base/kdepim-doc
#? trinity-base/indexlib
#? trinity-base/kabc
#? trinity-base/kaddressbook
#? trinity-base/kalarm
#? trinity-base/kandy
#? trinity-base/karm
#? trinity-base/kfile-plugins
#? trinity-base/kgantt
#? trinity-base/kdepim-kioslaves
#? trinity-base/kitchensync
#? trinity-base/kmail
#? trinity-base/kmailcvt
#? trinity-base/kmobile
#? trinity-base/knode
#? trinity-base/knotes
#? trinity-base/kode
#? trinity-base/konsolekalendar
#? trinity-base/kontact
#? trinity-base/korganizer
#? trinity-base/korn
#? trinity-base/kdepim-kresources
trinity-base/ktnef
#? trinity-base/libemailfunctions
trinity-base/libkcal
#? trinity-base/libkholidays
trinity-base/libkmime
#? trinity-base/libkpgp
#? trinity-base/libkpimexchange
#? trinity-base/libkpimidentities
#? trinity-base/libksieve
#? trinity-base/libkdenetwork
trinity-base/libkdepim
#? trinity-base/mimelib
#? trinity-base/kdepim-wizards

@ -1,37 +0,0 @@
trinity-base/akregator
trinity-base/certmanager
#? trinity-base/kdepim-doc
#? trinity-base/indexlib
#? trinity-base/kabc
trinity-base/kaddressbook
#? trinity-base/kalarm
#? trinity-base/kandy
#? trinity-base/karm
#? trinity-base/kfile-plugins
trinity-base/kgantt
#? trinity-base/kdepim-kioslaves
#? trinity-base/kitchensync
#? trinity-base/kmail
#? trinity-base/kmailcvt
#? trinity-base/kmobile
#? trinity-base/knode
trinity-base/knotes
#? trinity-base/kode
#? trinity-base/konsolekalendar
trinity-base/kontact
trinity-base/korganizer
#? trinity-base/korn
#? trinity-base/kdepim-kresources
trinity-base/ktnef
#? trinity-base/libemailfunctions
trinity-base/libkcal
trinity-base/libkholidays
trinity-base/libkmime
#? trinity-base/libkpgp
trinity-base/libkpimexchange
trinity-base/libkpimidentities
#? trinity-base/libksieve
trinity-base/libkdenetwork
trinity-base/libkdepim
#? trinity-base/mimelib
#? trinity-base/kdepim-wizards

@ -1,10 +0,0 @@
trinity-base/amor
trinity-base/eyesapplet
trinity-base/fifteenapplet
trinity-base/kdetoys-doc
trinity-base/kmoon
trinity-base/kodo
trinity-base/kteatime
trinity-base/ktux
trinity-base/kweather
trinity-base/kworldclock

@ -1,10 +0,0 @@
trinity-base/amor
trinity-base/eyesapplet
trinity-base/fifteenapplet
trinity-base/kdetoys-doc
trinity-base/kmoon
trinity-base/kodo
trinity-base/kteatime
trinity-base/ktux
trinity-base/kweather
trinity-base/kworldclock

@ -1,18 +0,0 @@
trinity-base/ark
trinity-base/kdeutils-doc
trinity-base/kcalc
trinity-base/kcharselect
trinity-base/kdelirc
trinity-base/kdf
trinity-base/kedit
trinity-base/kfloppy
trinity-base/kgpg
trinity-base/khexedit
trinity-base/kjots
trinity-base/klaptopdaemon
trinity-base/kmilo
trinity-base/kregexpeditor
trinity-base/ksim
trinity-base/ktimer
trinity-base/kwallet
trinity-base/superkaramba

@ -1,18 +0,0 @@
trinity-base/ark
trinity-base/kdeutils-doc
trinity-base/kcalc
trinity-base/kcharselect
trinity-base/kdelirc
trinity-base/kdf
trinity-base/kedit
trinity-base/kfloppy
trinity-base/kgpg
trinity-base/khexedit
trinity-base/kjots
trinity-base/klaptopdaemon
trinity-base/kmilo
trinity-base/kregexpeditor
trinity-base/ksim
trinity-base/ktimer
trinity-base/kwallet
trinity-base/superkaramba

@ -1,11 +0,0 @@
trinity-apps/atlantikdesigner
trinity-base/tdeaddons-doc
trinity-base/kaddressbook-plugins
trinity-base/kate-plugins
trinity-base/kicker-applets
trinity-base/knewsticker-scripts
trinity-base/konq-plugins
trinity-base/ksig
# trinity-base/noatun-plugins
trinity-base/renamedlg-plugins
trinity-base/tdeaddons-tdefile-plugins

@ -1,9 +0,0 @@
trinity-base/tdeartwork-emoticons
trinity-base/tdeartwork-icon-themes
trinity-base/tdeartwork-icewm-themes
trinity-base/tdeartwork-tdescreensaver
trinity-base/tdeartwork-twin-styles
trinity-base/tdeartwork-kworldclock
trinity-base/tdeartwork-sounds
trinity-base/tdeartwork-styles
trinity-base/tdeartwork-wallpapers

@ -1,43 +0,0 @@
trinity-base/tdebase-starttde
trinity-base/drkonqi
trinity-base/kappfinder
trinity-base/kate
trinity-base/kcheckpass
trinity-base/kcminit
trinity-base/kcontrol
trinity-base/kdcop
trinity-base/tdedebugdialog
trinity-base/tdepasswd
trinity-base/tdeprint
trinity-base/kdesktop
trinity-base/tdesu
trinity-base/kdialog
trinity-base/tdm
trinity-base/kfind
trinity-base/khelpcenter
trinity-base/khotkeys
trinity-base/kicker
trinity-base/tdebase-tdeioslaves
trinity-base/klipper
trinity-base/kmenuedit
trinity-base/konqueror
trinity-base/konsole
trinity-base/kpager
trinity-base/kpersonalizer
trinity-base/kreadconfig
trinity-base/tdescreensaver
trinity-base/ksmserver
trinity-base/ksplashml
trinity-base/kstart
trinity-base/ksysguard
trinity-base/ksystraycmd
trinity-base/ktip
trinity-base/twin
trinity-base/kxkb
trinity-base/libkonq
trinity-base/nsplugins
trinity-base/knetattach
trinity-base/tdebase-data
trinity-base/krootbacking
trinity-base/tqt3integration
trinity-base/tdeinit

@ -1,34 +0,0 @@
trinity-apps/atlantik
trinity-base/tdegames-doc
trinity-apps/kasteroids
trinity-apps/katomic
trinity-apps/kbackgammon
trinity-apps/kbattleship
trinity-apps/kblackbox
trinity-apps/kbounce
trinity-apps/kenolaba
trinity-apps/kfouleggs
trinity-apps/kgoldrunner
trinity-apps/kjumpingcube
trinity-apps/klickety
trinity-apps/klines
trinity-apps/kmahjongg
trinity-apps/kmines
trinity-apps/knetwalk
trinity-apps/kolf
trinity-apps/konquest
trinity-apps/kpat
trinity-apps/kpoker
trinity-apps/kreversi
trinity-apps/ksame
trinity-apps/kshisen
trinity-apps/ksirtet
trinity-apps/ksmiletris
trinity-apps/ksnake
trinity-apps/ksokoban
trinity-apps/kspaceduel
trinity-apps/ktron
trinity-apps/ktuberling
trinity-base/libtdegames
trinity-apps/lskat
trinity-apps/twin4

@ -1,21 +0,0 @@
trinity-base/kamera
trinity-base/kcoloredit
trinity-base/kdvi
trinity-base/kfax
trinity-base/tdegraphics-doc
trinity-base/tdegraphics-tdefile-plugins
trinity-base/kgamma
trinity-base/kghostview
trinity-base/kiconedit
trinity-base/kmrml
trinity-base/kolourpaint
trinity-base/kooka
trinity-base/kpdf
trinity-base/kpovmodeler
trinity-base/kruler
trinity-base/ksnapshot
trinity-base/ksvg
trinity-base/kuickshow
trinity-base/kview
trinity-base/kviewshell
trinity-base/libkscan

@ -1,16 +0,0 @@
#? trinity-base/akode
#? trinity-base/apps-artsplugins
#? trinity-base/juk
#? trinity-base/kaboodle
#? trinity-base/kaudiocreator
#? trinity-base/kdemultimedia-arts
#? trinity-base/kdemultimedia-kappfinder-data
#? trinity-base/kdemultimedia-kfile-plugins
#? trinity-base/kdemultimedia-kioslaves
#? trinity-base/kmid
trinity-base/kmix
#? trinity-base/krec
#? trinity-base/kscd
#? trinity-base/libkcddb
#? trinity-base/mpeglib
#? trinity-base/noatun

@ -1,18 +0,0 @@
trinity-base/dcoprss
trinity-base/kdict
trinity-base/kget
trinity-base/knewsticker
trinity-base/kopete
trinity-base/kpf
trinity-base/kppp
trinity-base/krdc
trinity-base/krfb
trinity-base/ksirc
trinity-base/ktalkd
trinity-base/kwifimanager
trinity-base/librss
trinity-base/lisa
trinity-base/tdednssd
trinity-base/tdenetwork-doc
trinity-base/tdenetwork-filesharing
trinity-base/tdenetwork-tdefile-plugins

@ -1,37 +0,0 @@
trinity-base/akregator
trinity-base/certmanager
#? trinity-base/kdepim-doc
#? trinity-base/indexlib
#? trinity-base/kabc
trinity-base/kaddressbook
#? trinity-base/kalarm
#? trinity-base/kandy
#? trinity-base/karm
#? trinity-base/kfile-plugins
trinity-base/kgantt
#? trinity-base/tdepim-kioslaves
#? trinity-base/kitchensync
#? trinity-base/kmail
#? trinity-base/kmailcvt
#? trinity-base/kmobile
#? trinity-base/knode
trinity-base/knotes
#? trinity-base/kode
#? trinity-base/konsolekalendar
trinity-base/kontact
#? trinity-base/korganizer
#? trinity-base/korn
#? trinity-base/tdepim-kresources
trinity-base/ktnef
#? trinity-base/libemailfunctions
trinity-base/libkcal
trinity-base/libkholidays
trinity-base/libkmime
#? trinity-base/libkpgp
trinity-base/libkpimexchange
trinity-base/libkpimidentities
#? trinity-base/libksieve
trinity-base/libtdenetwork
trinity-base/libtdepim
#? trinity-base/mimelib
#? trinity-base/tdepim-wizards

@ -1,10 +0,0 @@
trinity-base/amor
trinity-base/eyesapplet
trinity-base/fifteenapplet
trinity-base/tdetoys-doc
trinity-base/kmoon
trinity-base/kodo
trinity-base/kteatime
trinity-base/ktux
trinity-base/kweather
trinity-base/kworldclock

@ -1,18 +0,0 @@
trinity-base/ark
trinity-base/tdeutils-doc
trinity-base/kcalc
trinity-base/kcharselect
trinity-base/kdf
trinity-base/kedit
trinity-base/kfloppy
trinity-base/kgpg
trinity-base/khexedit
trinity-base/kjots
trinity-base/klaptopdaemon
trinity-base/kmilo
trinity-base/kregexpeditor
trinity-base/ksim
trinity-base/ktimer
trinity-base/superkaramba
trinity-base/tdelirc
trinity-base/tdewallet

@ -1,85 +0,0 @@
#!/bin/bash
# !!!WARNING!!! use with caution
#
# This script suppose the kdelibs to be installed
# how to use :
# dependecies_test_compilation <package![use[,use]...] [...]
die() {
echo '!!! $@'
exit -100500
}
RESULT_DIR="/tmp/test-build-$(date +%Y-%m-%d_%H-%M)"
SUCCESS_LIST="${RESULT_DIR}/success_list"
FAIL_LIST="${RESULT_DIR}/fail_list"
LOGS_DIR="${RESULT_DIR}/logs/"
CONFIG_BAK="${RESULT_DIR}/portage_bak.tar.gz"
PORTAGE_CONFIG="/etc/portage"
EMERGE_AUTOUNMASK_OPTS="--autounmask y --autounmask-keep-masks y --autounmask-write y"
mkdir -p "${RESULT_DIR}" "${LOGS_DIR}";
for pkguse in "$@"; do
done
# backup config
tar -cf "${CONFIG_BAK}" -C / "${PORTAGE_CONFIG#/}" || die "backup config failed"
# initial cleanup
( emerge -NuD world &&
emerge --depclean &&
emerge -NuD world &&
revdep-rebuild &&
rm -rf /var/tmp/portage ) || die "initial cleaning failed"
for pkguse in "$@"; do
pkg="${pkguse%!*}"
use="${pkguse#*!}"
use="${use/,// }"
pkg_use_file="${PORTAGE_CONFIG}/package.use"
[ -d ${pkg_use_file} ] && pkg_use_file="${pkg_use_file}/test.use"
echo "$pkg $use" >>"$pkg_use_file"
pkg_failed=no
# check for it can be emerged due to depenencies uses
emerge -p "$pkg"
if [ "$?" != 0 ]; then
#try unmask uses
CONFIG_PROTECT_MASK="/etc/portage" emerge ${EMERGE_AUTOUNMASK_OPTS} "$pkg"
emerge -p "$pkg"
if [ "$?" != 0 ]; then
# we can't emerge the package
mkdir -p "${LOGS_DIR}/${pkg}"
emerge -p "$pkg" >"${LOGS_DIR}/${pkg}/emerge_failed" 2>&1
pkg_failed=yes
fi
fi
if [ "$pkg_failed" == no ]; then
emerge -1 "$pkg"
if [ "$?" != 0 ]; then
mkdir -p "${LOGS_DIR}/${pkg}"
for f_pkg in $(cd /var/tmp/portage/ && ls -d */*); do
cp "/var/tmp/portage/${f_pkg}/temp/build.log" "${LOGS_DIR}/${pkg}/${f_pkg/\//_}.build"
done
pkg_failed=yes
fi
fi
if [ "$pkg_failed" == no ]; then
echo "$pkg" >>"${SUCCESS_LIST}"
else
echo "$pkg" >>"${FAIL_LIST}"
fi
# restoring config
rm -rf ${PORTAGE_CONFIG}
tar -xf "${CONFIG_BAK}" -C /
# let's clean system
( emerge -NuD world &&
emerge --depclean &&
emerge -NuD world &&
revdep-rebuild &&
rm -rf /var/tmp/portage ) || die "cleaning failed"
done

@ -1,32 +0,0 @@
#!/bin/bash
DOC="Documentation"
KEYWORDS_LIVE="$DOC/trinity.live.keywords"
KEYWORDS_3_5_13_2="$DOC/trinity.3.5.13.2.keywords"
resort() {
cp "${1}" "${1}.bak"
cat "${1}.bak" | sort -u >"$1" && rm "${1}.bak"
}
find trinity-base/ trinity-apps/ -iname '*9999.ebuild' | while read eb; do
PN="$(basename $(dirname ${eb}))"
C="$(basename $(dirname $(dirname ${eb})))"
P="$(basename ${eb%%.ebuild})"
if ! grep "^~$C/$P " "${KEYWORDS_LIVE}" >/dev/null 2>&1; then
echo "~$C/$P **" | tee -a "${KEYWORDS_LIVE}"
fi
done
resort "${KEYWORDS_LIVE}"
find trinity-base/ trinity-apps -iname '*3.5.13.2.ebuild' | while read eb; do
PN="$(basename $(dirname ${eb}))"
C="$(basename $(dirname $(dirname ${eb})))"
P="$(basename ${eb%%.ebuild})"
if ! grep "^~$C/$P" "${KEYWORDS_3_5_13_2}" >/dev/null 2>&1; then
echo "~$C/$P" | tee -a "${KEYWORDS_3_5_13_2}"
fi
done
resort "${KEYWORDS_3_5_13_2}"

@ -1,15 +0,0 @@
# Per ebuild check and commit
for I in <packages> ; do cp kate/metadata.xml $I; ebuild $I/$I-3.9999.ebuild digest; git add $I; git commit -m $I; done
for I in kstart ksystraycmd ksysguard nsplugin kate kxkb ; do cp kate/metadata.xml $I; ebuild $I/$I-3.9999.ebuild digest; git add $I; git commit -m $I; done
# update trinity live lists
find trinity-base/ -iname '*9999.ebuild' | while read eb; do PN="$(basename $(dirname ${eb}))"; C="$(basename $(dirname $(dirname ${eb})))"; P="$(basename ${eb%%.ebuild})"; echo "~$C/$P"' **'; done | tee Documentation/trinity.live.keywords
# update all manifests
find . -iname *.ebuild | while read eb; do ebuild $eb digest; done
# run ./test_separate_compilation.sh
cat Documentation/derived-lists/<LIST> | sed 's/#.*//;s/^\s*//;s/\s*$//;/^\s*$/d' |xargs bash ./test_separate_compilation.sh
# update manifests which older thatn ebuilds
find . -iname *.ebuild | while read eb; do ma="$(dirname $eb)/Manifest"; find $(dirname $eb) -type f | while read f; do [ $f -nt $ma ] && ebuild $eb digest && touch $ma; done; done

@ -1,60 +0,0 @@
#!/bin/bash
# Usage ; write-ebuild.sh <TRINITY_MODULE_NAME> [<CATEGORY/]><PN> [DESCRIPTION]
export LC_ALL=C
EAPI="5"
TRINITY_MODULE_NAME=$1
PN=$(basename ${2})
CATEGORY=$(dirname ${2})
CATEGORY=${CATEGORY:-trinity-base}
DESCRIPTION="$3"
PV=${PV:=9999}
KEYWORDS="amd64 x86"
case "${PV}" in
*3.5.13.2) KEYWORDS="~amd64 ~x86" ;;
*9999*) KEYWORDS="" ;;
esac
if [ -z "$DESCRIPTION" ]; then
DESCRIPTION_SOURCES=( ${CATEGORY/trinity/kde}/${PN} ${CATEGORY/trinity/kde}/${PN/k/t} kde-base/${PN} kde-base/${PN/k/t} )
for descsrc in ${DESCRIPTION_SOURCES[@]}; do
DESCRIPTION="$(eix -C $(dirname ${descsrc}) -s $(basename "${descsrc}") | sed -n '/^\s*Description:\s*/{s///;s/\(\<KDE\|\kde\)\>/Trinity/g;p}')"
[ -n "$DESCRIPTION" ] && break
done
fi
echo "==> Creating ebuild for ${PN}-${PV}"
mkdir -p "${CATEGORY}/$PN"
cat <<EOF >${CATEGORY}/$PN/$PN-${PV}.ebuild
# Copyright 1999-$(date +%Y) Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# \$Id\$
EAPI="$EAPI"
TRINITY_MODULE_NAME="$TRINITY_MODULE_NAME"
inherit trinity-meta
DESCRIPTION="$DESCRIPTION"
KEYWORDS="$KEYWORDS"
IUSE+=""
EOF
cat <<EOF >"${CATEGORY}/$PN"/metadata.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>fatzer2@gmail.com</email>
<name>Alexander Golubev</name>
</maintainer>
</pkgmetadata>
EOF
if [ -d eclass/trinity-shared-files/${TRINITY_MODULE_NAME}-${PV} ]; then
mkdir -p "${CATEGORY}/$PN/files/"
ln -s "../../../eclass/trinity-shared-files/" "trinity-base/$PN/files/shared"
fi

@ -1,90 +0,0 @@
~trinity-base/akregator-3.5.13.2
~trinity-base/amor-3.5.13.2
~trinity-base/ark-3.5.13.2
~trinity-base/arts-3.5.13.2
~trinity-base/certmanager-3.5.13.2
~trinity-base/drkonqi-3.5.13.2
~trinity-base/eyesapplet-3.5.13.2
~trinity-base/fifteenapplet-3.5.13.2
~trinity-base/kaddressbook-3.5.13.2
~trinity-base/kappfinder-3.5.13.2
~trinity-base/kate-3.5.13.2
~trinity-base/kcalc-3.5.13.2
~trinity-base/kcharselect-3.5.13.2
~trinity-base/kcheckpass-3.5.13.2
~trinity-base/kcminit-3.5.13.2
~trinity-base/kcontrol-3.5.13.2
~trinity-base/kdcop-3.5.13.2
~trinity-base/kdebase-data-3.5.13.2
~trinity-base/kdebase-kioslaves-3.5.13.2
~trinity-base/kdebase-meta-3.5.13.2
~trinity-base/kdebase-starttde-3.5.13.2
~trinity-base/kdebugdialog-3.5.13.2
~trinity-base/kdeeject-3.5.13.2
~trinity-base/kdelibs-3.5.13.2
~trinity-base/kdelirc-3.5.13.2
~trinity-base/kdepasswd-3.5.13.2
~trinity-base/kdeprint-3.5.13.2
~trinity-base/kdesktop-3.5.13.2
~trinity-base/kdesu-3.5.13.2
~trinity-base/kdetoys-doc-3.5.13.2
~trinity-base/kdeutils-doc-3.5.13.2
~trinity-base/kdeutils-meta-3.5.13.2
~trinity-base/kdf-3.5.13.2
~trinity-base/kdialog-3.5.13.2
~trinity-base/kdm-3.5.13.2
~trinity-base/kedit-3.5.13.2
~trinity-base/kfind-3.5.13.2
~trinity-base/kfloppy-3.5.13.2
~trinity-base/kgantt-3.5.13.2
~trinity-base/kgpg-3.5.13.2
~trinity-base/khelpcenter-3.5.13.2
~trinity-base/khexedit-3.5.13.2
~trinity-base/khotkeys-3.5.13.2
~trinity-base/kicker-3.5.13.2
~trinity-base/kjots-3.5.13.2
~trinity-base/klaptopdaemon-3.5.13.2
~trinity-base/klipper-3.5.13.2
~trinity-base/kmenuedit-3.5.13.2
~trinity-base/kmilo-3.5.13.2
~trinity-base/kmoon-3.5.13.2
~trinity-base/knetattach-3.5.13.2
~trinity-base/knotes-3.5.13.2
~trinity-base/kodo-3.5.13.2
~trinity-base/konqueror-3.5.13.2
~trinity-base/konsole-3.5.13.2
~trinity-base/kontact-3.5.13.2
~trinity-base/korganizer-3.5.13.2
~trinity-base/kpager-3.5.13.2
~trinity-base/kpersonalizer-3.5.13.2
~trinity-base/kreadconfig-3.5.13.2
~trinity-base/kregexpeditor-3.5.13.2
~trinity-base/krootbacking-3.5.13.2
~trinity-base/kscreensaver-3.5.13.2
~trinity-base/ksim-3.5.13.2
~trinity-base/ksmserver-3.5.13.2
~trinity-base/ksplashml-3.5.13.2
~trinity-base/kstart-3.5.13.2
~trinity-base/ksysguard-3.5.13.2
~trinity-base/ksystraycmd-3.5.13.2
~trinity-base/kteatime-3.5.13.2
~trinity-base/ktimer-3.5.13.2
~trinity-base/ktip-3.5.13.2
~trinity-base/ktnef-3.5.13.2
~trinity-base/ktux-3.5.13.2
~trinity-base/kwallet-3.5.13.2
~trinity-base/kweather-3.5.13.2
~trinity-base/kwin-3.5.13.2
~trinity-base/kworldclock-3.5.13.2
~trinity-base/kxkb-3.5.13.2
~trinity-base/libkcal-3.5.13.2
~trinity-base/libkdenetwork-3.5.13.2
~trinity-base/libkdepim-3.5.13.2
~trinity-base/libkholidays-3.5.13.2
~trinity-base/libkmime-3.5.13.2
~trinity-base/libkonq-3.5.13.2
~trinity-base/libkpimexchange-3.5.13.2
~trinity-base/libkpimidentities-3.5.13.2
~trinity-base/nsplugins-3.5.13.2
~trinity-base/superkaramba-3.5.13.2
~trinity-base/tqt3integration-3.5.13.2

@ -1,200 +0,0 @@
~dev-libs/dbus-1-tqt-9999 **
~dev-libs/dbus-tqt-9999 **
~dev-qt/tqt-3.9999 **
~dev-qt/tqtinterface-9999 **
~net-irc/konversation-1.1.9999 **
~trinity-apps/atlantik-9999 **
~trinity-apps/atlantikdesigner-9999 **
~trinity-apps/filelight-9999 **
~trinity-apps/kasteroids-9999 **
~trinity-apps/katomic-9999 **
~trinity-apps/kbackgammon-9999 **
~trinity-apps/kbattleship-9999 **
~trinity-apps/kblackbox-9999 **
~trinity-apps/kbounce-9999 **
~trinity-apps/kenolaba-9999 **
~trinity-apps/kfouleggs-9999 **
~trinity-apps/kgoldrunner-9999 **
~trinity-apps/kjumpingcube-9999 **
~trinity-apps/klickety-9999 **
~trinity-apps/klines-9999 **
~trinity-apps/kmahjongg-9999 **
~trinity-apps/kmines-9999 **
~trinity-apps/knetwalk-9999 **
~trinity-apps/kolf-9999 **
~trinity-apps/konquest-9999 **
~trinity-apps/kpat-9999 **
~trinity-apps/kpoker-9999 **
~trinity-apps/kreversi-9999 **
~trinity-apps/ksame-9999 **
~trinity-apps/kshisen-9999 **
~trinity-apps/ksirtet-9999 **
~trinity-apps/ksmiletris-9999 **
~trinity-apps/ksnake-9999 **
~trinity-apps/ksokoban-9999 **
~trinity-apps/kspaceduel-9999 **
~trinity-apps/ktron-9999 **
~trinity-apps/ktuberling-9999 **
~trinity-apps/lskat-9999 **
~trinity-apps/twin4-9999 **
~trinity-base/akregator-9999 **
~trinity-base/amor-9999 **
~trinity-base/ark-9999 **
~trinity-base/arts-9999 **
~trinity-base/certmanager-9999 **
~trinity-base/dcoprss-9999 **
~trinity-base/drkonqi-9999 **
~trinity-base/eyesapplet-9999 **
~trinity-base/fifteenapplet-9999 **
~trinity-base/kaddressbook-9999 **
~trinity-base/kaddressbook-plugins-9999 **
~trinity-base/kamera-9999 **
~trinity-base/kappfinder-9999 **
~trinity-base/kate-9999 **
~trinity-base/kate-plugins-9999 **
~trinity-base/kcalc-9999 **
~trinity-base/kcharselect-9999 **
~trinity-base/kcheckpass-9999 **
~trinity-base/kcminit-9999 **
~trinity-base/kcoloredit-9999 **
~trinity-base/kcontrol-9999 **
~trinity-base/kdcop-9999 **
~trinity-base/kdesktop-9999 **
~trinity-base/kdetoys-doc-9999 **
~trinity-base/kdf-9999 **
~trinity-base/kdialog-9999 **
~trinity-base/kdict-9999 **
~trinity-base/kdvi-9999 **
~trinity-base/kedit-9999 **
~trinity-base/kfax-9999 **
~trinity-base/kfind-9999 **
~trinity-base/kfloppy-9999 **
~trinity-base/kgamma-9999 **
~trinity-base/kgantt-9999 **
~trinity-base/kget-9999 **
~trinity-base/kghostview-9999 **
~trinity-base/kgpg-9999 **
~trinity-base/khelpcenter-9999 **
~trinity-base/khexedit-9999 **
~trinity-base/khotkeys-9999 **
~trinity-base/kicker-9999 **
~trinity-base/kicker-applets-9999 **
~trinity-base/kiconedit-9999 **
~trinity-base/kjots-9999 **
~trinity-base/klaptopdaemon-9999 **
~trinity-base/klipper-9999 **
~trinity-base/kmenuedit-9999 **
~trinity-base/kmilo-9999 **
~trinity-base/kmix-9999 **
~trinity-base/kmoon-9999 **
~trinity-base/kmrml-9999 **
~trinity-base/knetattach-9999 **
~trinity-base/knewsticker-9999 **
~trinity-base/knewsticker-scripts-9999 **
~trinity-base/knotes-9999 **
~trinity-base/kodo-9999 **
~trinity-base/kolourpaint-9999 **
~trinity-base/konq-plugins-9999 **
~trinity-base/konqueror-9999 **
~trinity-base/konsole-9999 **
~trinity-base/kontact-9999 **
~trinity-base/kooka-9999 **
~trinity-base/kopete-9999 **
~trinity-base/korganizer-9999 **
~trinity-base/kpager-9999 **
~trinity-base/kpdf-9999 **
~trinity-base/kpersonalizer-9999 **
~trinity-base/kpf-9999 **
~trinity-base/kpovmodeler-9999 **
~trinity-base/kppp-9999 **
~trinity-base/krdc-9999 **
~trinity-base/kreadconfig-9999 **
~trinity-base/kregexpeditor-9999 **
~trinity-base/krfb-9999 **
~trinity-base/krootbacking-9999 **
~trinity-base/kruler-9999 **
~trinity-base/ksig-9999 **
~trinity-base/ksim-9999 **
~trinity-base/ksirc-9999 **
~trinity-base/ksmserver-9999 **
~trinity-base/ksnapshot-9999 **
~trinity-base/ksplashml-9999 **
~trinity-base/kstart-9999 **
~trinity-base/ksvg-9999 **
~trinity-base/ksysguard-9999 **
~trinity-base/ksystraycmd-9999 **
~trinity-base/ktalkd-9999 **
~trinity-base/kteatime-9999 **
~trinity-base/ktimer-9999 **
~trinity-base/ktip-9999 **
~trinity-base/ktnef-9999 **
~trinity-base/ktux-9999 **
~trinity-base/kuickshow-9999 **
~trinity-base/kview-9999 **
~trinity-base/kviewshell-9999 **
~trinity-base/kweather-9999 **
~trinity-base/kwifimanager-9999 **
~trinity-base/kworldclock-9999 **
~trinity-base/kxkb-9999 **
~trinity-base/libkcal-9999 **
~trinity-base/libkholidays-9999 **
~trinity-base/libkmime-9999 **
~trinity-base/libkonq-9999 **
~trinity-base/libkpimexchange-9999 **
~trinity-base/libkpimidentities-9999 **
~trinity-base/libkscan-9999 **
~trinity-base/librss-9999 **
~trinity-base/libtdegames-9999 **
~trinity-base/libtdenetwork-9999 **
~trinity-base/libtdepim-9999 **
~trinity-base/lisa-9999 **
~trinity-base/noatun-plugins-9999 **
~trinity-base/nsplugins-9999 **
~trinity-base/renamedlg-plugins-9999 **
~trinity-base/superkaramba-9999 **
~trinity-base/tdeaddons-doc-9999 **
~trinity-base/tdeaddons-meta-9999 **
~trinity-base/tdeaddons-tdefile-plugins-9999 **
~trinity-base/tdeartwork-emoticons-9999 **
~trinity-base/tdeartwork-icewm-themes-9999 **
~trinity-base/tdeartwork-icon-themes-9999 **
~trinity-base/tdeartwork-kworldclock-9999 **
~trinity-base/tdeartwork-meta-9999 **
~trinity-base/tdeartwork-sounds-9999 **
~trinity-base/tdeartwork-styles-9999 **
~trinity-base/tdeartwork-tdescreensaver-9999 **
~trinity-base/tdeartwork-twin-styles-9999 **
~trinity-base/tdeartwork-wallpapers-9999 **
~trinity-base/tdebase-data-9999 **
~trinity-base/tdebase-meta-9999 **
~trinity-base/tdebase-starttde-9999 **
~trinity-base/tdebase-tdeioslaves-9999 **
~trinity-base/tdedebugdialog-9999 **
~trinity-base/tdednssd-9999 **
~trinity-base/tdeeject-9999 **
~trinity-base/tdegames-doc-9999 **
~trinity-base/tdegames-meta-9999 **
~trinity-base/tdegraphics-doc-9999 **
~trinity-base/tdegraphics-meta-9999 **
~trinity-base/tdegraphics-tdefile-plugins-9999 **
~trinity-base/tde-i18n-9999 **
~trinity-base/tdeiconedit-9999 **
~trinity-base/tdeinit-9999 **
~trinity-base/tdelibs-9999 **
~trinity-base/tdelirc-9999 **
~trinity-base/tdenetwork-doc-9999 **
~trinity-base/tdenetwork-filesharing-9999 **
~trinity-base/tdenetwork-meta-9999 **
~trinity-base/tdenetwork-tdefile-plugins-9999 **
~trinity-base/tdepasswd-9999 **
~trinity-base/tdeprint-9999 **
~trinity-base/tdescreensaver-9999 **
~trinity-base/tdesu-9999 **
~trinity-base/tdetoys-doc-9999 **
~trinity-base/tdetoys-meta-9999 **
~trinity-base/tdeutils-doc-9999 **
~trinity-base/tdeutils-meta-9999 **
~trinity-base/tdewallet-9999 **
~trinity-base/tdm-9999 **
~trinity-base/tqt3integration-9999 **
~trinity-base/twin-9999 **

@ -1,10 +0,0 @@
<layman>
<overlay type="git" src="https://github.com/Fat-Zer/trinity.git" contact="fatzer2@gmail.com" status="unofficial" name="trinity">
<link>
http://www.trinitydesktop.org/
</link>
<description>
Gentoo overlay for Trinity Desktop Environment, a fork of KDE3
</description>
</overlay>
</layman>

@ -1 +0,0 @@
DIST hal-info-20091130.tar.gz 144859 SHA256 3b5a90eaea4359977d36c808a19b3f08835345a258c68b9c6c080ad5ef875224 SHA512 c435e60eaa8170cdf12112e4fbefe34180e499de53c5b30d26c6f8999626708a41600d8ce41a2e999f791e0855676d1ef4362d7b3cd52297195294b8b8b3c52e WHIRLPOOL f6e0807376bdaa90332f532429939550a0f3144a818f51cb21f656790a64afdeefab234a16674eb46a02d272a019c7bf698bfce024067b1b680e1b11e13e2284

@ -1,22 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
DESCRIPTION="The fdi scripts that HAL uses"
HOMEPAGE="http://hal.freedesktop.org/"
SRC_URI="http://hal.freedesktop.org/releases/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ia64 x86"
IUSE=""
RDEPEND=">=sys-apps/hal-0.5.10"
DEPEND="${RDEPEND}"
# This ebuild does not install any binaries
RESTRICT="binchecks strip"
src_install() {
emake DESTDIR="${D}" install || die
}

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>fatzer2@gmail.com</email>
<name>Alexander Golubev</name>
</maintainer>
</pkgmetadata>

@ -1,4 +0,0 @@
AUX gsmlib-1.11-gcc41.patch 2110 SHA256 382dfa6e005cee54d14700191d326d3063e1db0f9f8106f9883a1e4790ae83a6 SHA512 75335091d6dccc7babbd5f55f5c2a51cd51dc22a2b4571641e3beec4d35f5d34938a73c3ae2cf91f759521f05a299a628c70bdd6fc3a8a9948023a9f67ab5efa WHIRLPOOL f7039292deb7d4aacc7ba1b35e2fe90af3a0ad2d1f0b83874f4314f04bc49482b5e07fe10b9c57bb95ab293030ce7eda9e117e0327012f038c0a6a17e8aedcc2
AUX gsmlib-1.11-gcc43.patch 2342 SHA256 a6647855cc4a4100c45ae4a3d4515d3de92113e7140bf49b55ad211629da454a SHA512 1fe3e11cd45de5a29bdf440733aadbd41635d85793d3f0c1fa0d43fab3cdd9d58c9c6d9a32ba5e2600c85095bf614ff0b2e00db3724f3e2031a460b2abc9ecc6 WHIRLPOOL fc49802ba435f029d164081a79fded10c9918294971d4950a17215b0988e1bc998305c85e174d9d981a7fc0fda9620719fff9c3ca3f5170e3cc05c060b85014a
AUX gsmlib-1.11-include-gcc34-fix.patch 1436 SHA256 59de49fcf775aad7e4d693274500d629bf399d5738f304804e25069745e3d0fd SHA512 1945d62185b3ac6d63763c3547ef2e264626b808c5254d450a415c20451a9d3c360cae95e9469c424d7abcf3abdc4b2ace9ae3d089dcdef8f64b8d64456e241a WHIRLPOOL 5474569e82b5c5aa6278170404427471d94f7a071e43f654ecbd09d111496b619b17be91ccb8cea4ff35b602d8908bec9fe80bd2749bad7129fe3d516b94c5d3
DIST gsmlib-pre1.11-041028.tar.gz 499052 SHA256 2dae164cdaa3b6ce41cfe4e41501f44bc665296349a5be4d5d10cb260a87231f SHA512 9009fce488b7ed7aeb0a0581f0586a3898911ea042b92369e0242dc8b0292ca82f913058cfd958a7af121be57cf925598dc26822817ccf81027917abe6b6096a WHIRLPOOL 6970eeeca15dfa14204d02f0f3e55e30e9e43808554df5bc2cb9d16496f1e422cf72373906a8b216df61cbe14d619f35dfa3b04fd676caad5d9d983897adcbe9

@ -1,52 +0,0 @@
diff -ur gsmlib-1.11-orig/gsmlib/gsm_map_key.h gsmlib-1.11/gsmlib/gsm_map_key.h
--- gsmlib-1.11-orig/gsmlib/gsm_map_key.h 2006-02-25 19:20:52.000000000 -0500
+++ gsmlib-1.11/gsmlib/gsm_map_key.h 2006-02-25 19:23:01.000000000 -0500
@@ -78,7 +78,7 @@
// MapKey members
template <class SortedStore>
- bool gsmlib::operator<(const MapKey<SortedStore> &x,
+ bool operator<(const MapKey<SortedStore> &x,
const MapKey<SortedStore> &y)
{
assert(&x._myStore == &y._myStore);
@@ -103,7 +103,7 @@
}
template <class SortedStore>
- bool gsmlib::operator==(const MapKey<SortedStore> &x,
+ bool operator==(const MapKey<SortedStore> &x,
const MapKey<SortedStore> &y)
{
assert(&x._myStore == &y._myStore);
diff -ur gsmlib-1.11-orig/gsmlib/gsm_me_ta.h gsmlib-1.11/gsmlib/gsm_me_ta.h
--- gsmlib-1.11-orig/gsmlib/gsm_me_ta.h 2006-02-25 19:20:52.000000000 -0500
+++ gsmlib-1.11/gsmlib/gsm_me_ta.h 2006-02-25 19:21:48.000000000 -0500
@@ -294,8 +294,8 @@
// 3 disable phone receive RF circuits only
// 4 disable phone both transmit and receive RF circuits
// 5...127 implementation-defined
- int MeTa::getFunctionalityLevel() throw(GsmException);
- void MeTa::setFunctionalityLevel(int level) throw(GsmException);
+ int getFunctionalityLevel() throw(GsmException);
+ void setFunctionalityLevel(int level) throw(GsmException);
// return battery charge status (+CBC):
// 0 ME is powered by the battery
@@ -389,13 +389,13 @@
void setCallWaitingLockStatus(FacilityClass cl,
bool lock)throw(GsmException);
- void MeTa::setCLIRPresentation(bool enable) throw(GsmException);
+ void setCLIRPresentation(bool enable) throw(GsmException);
//(+CLIR)
// 0:according to the subscription of the CLIR service
// 1:CLIR invocation
// 2:CLIR suppression
- int MeTa::getCLIRPresentation() throw(GsmException);
+ int getCLIRPresentation() throw(GsmException);
friend class Phonebook;
friend class SMSStore;

@ -1,67 +0,0 @@
diff -Naurp gsmlib-1.11-orig/gsmlib/gsm_me_ta.cc gsmlib-1.11/gsmlib/gsm_me_ta.cc
--- gsmlib-1.11-orig/gsmlib/gsm_me_ta.cc 2003-08-26 02:01:36.000000000 -0600
+++ gsmlib-1.11/gsmlib/gsm_me_ta.cc 2008-02-24 15:09:58.000000000 -0600
@@ -19,6 +19,8 @@
#include <gsmlib/gsm_parser.h>
#include <gsmlib/gsm_sysdep.h>
+#include <cstdlib>
+
using namespace std;
using namespace gsmlib;
diff -Naurp gsmlib-1.11-orig/gsmlib/gsm_sms_codec.cc gsmlib-1.11/gsmlib/gsm_sms_codec.cc
--- gsmlib-1.11-orig/gsmlib/gsm_sms_codec.cc 2004-10-27 17:06:06.000000000 -0600
+++ gsmlib-1.11/gsmlib/gsm_sms_codec.cc 2008-02-24 15:10:44.000000000 -0600
@@ -23,6 +23,7 @@
#ifdef HAVE_STRING_H
#include <string.h>
#endif
+#include <climits>
#include <string>
using namespace std;
using namespace gsmlib;
diff -Naurp gsmlib-1.11-orig/gsmlib/gsm_util.cc gsmlib-1.11/gsmlib/gsm_util.cc
--- gsmlib-1.11-orig/gsmlib/gsm_util.cc 2004-10-27 17:05:53.000000000 -0600
+++ gsmlib-1.11/gsmlib/gsm_util.cc 2008-02-24 15:09:36.000000000 -0600
@@ -35,6 +35,7 @@
#define __USE_GNU
#define _GNU_SOURCE
#endif
+#include <cstdlib>
#include <stdio.h>
#include <sys/stat.h>
diff -Naurp gsmlib-1.11-orig/gsmlib/gsm_unix_serial.cc gsmlib-1.11/gsmlib/gsm_unix_serial.cc
--- gsmlib-1.11-orig/gsmlib/gsm_unix_serial.cc 2004-10-27 16:57:35.000000000 -0600
+++ gsmlib-1.11/gsmlib/gsm_unix_serial.cc 2008-02-24 15:19:03.000000000 -0600
@@ -28,6 +28,7 @@
#include <pthread.h>
#include <cassert>
#include <assert.h>
+#include <cstring>
using namespace std;
using namespace gsmlib;
diff -Naurp gsmlib-1.11-orig/gsmlib/gsm_sorted_phonebook.cc gsmlib-1.11/gsmlib/gsm_sorted_phonebook.cc
--- gsmlib-1.11-orig/gsmlib/gsm_sorted_phonebook.cc 2002-05-14 13:38:12.000000000 -0600
+++ gsmlib-1.11/gsmlib/gsm_sorted_phonebook.cc 2008-02-24 15:22:52.000000000 -0600
@@ -20,6 +20,7 @@
#include <iostream>
#include <fstream>
#include <limits.h>
+#include <cstring>
const int MAX_LINE_SIZE = 1000;
diff -Naurp gsmlib-1.11-orig/apps/gsmsmsd.cc gsmlib-1.11/apps/gsmsmsd.cc
--- gsmlib-1.11-orig/apps/gsmsmsd.cc 2003-08-26 00:47:47.000000000 -0600
+++ gsmlib-1.11/apps/gsmsmsd.cc 2008-02-24 15:25:54.000000000 -0600
@@ -40,6 +40,7 @@
#include <iostream>
#include <gsmlib/gsm_me_ta.h>
#include <gsmlib/gsm_event.h>
+#include <cstring>
using namespace std;
using namespace gsmlib;

@ -1,52 +0,0 @@
--- gsmlib-1.11/gsmlib/gsm_map_key.h 2002-05-14 23:38:12.000000000 +0400
+++ gsmlib-1.11-fixed/gsmlib/gsm_map_key.h 2004-08-02 00:56:40.997784696 +0400
@@ -25,6 +25,16 @@
// wrapper for map key, can access Sortedtore to get sortOrder()
+ // compare two keys
+ template <class SortedStore> class MapKey;
+
+ template <class SortedStore>
+ bool operator<(const MapKey<SortedStore> &x,
+ const MapKey<SortedStore> &y);
+ template <class SortedStore>
+ bool operator==(const MapKey<SortedStore> &x,
+ const MapKey<SortedStore> &y);
+
template <class SortedStore> class MapKey
{
SortedStore &_myStore; // my store
@@ -47,20 +57,16 @@
friend
bool operator<
-#ifndef WIN32
- <>
-#endif
+ <SortedStore>
(const MapKey<SortedStore> &x,
const MapKey<SortedStore> &y);
friend
bool operator==
-#ifndef WIN32
- <>
-#endif
+ <SortedStore>
(const MapKey<SortedStore> &x,
const MapKey<SortedStore> &y);
};
-
+/*
// compare two keys
template <class SortedStore>
extern bool operator<(const MapKey<SortedStore> &x,
@@ -68,7 +74,7 @@
template <class SortedStore>
extern bool operator==(const MapKey<SortedStore> &x,
const MapKey<SortedStore> &y);
-
+ */
// MapKey members
template <class SortedStore>

@ -1,31 +0,0 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
inherit eutils
DESCRIPTION="Library and applications to access GSM mobile phones"
SRC_URI="http://www.pxh.de/fs/gsmlib/snapshots/${PN}-pre${PV%_pre*}-${PV#*_pre}.tar.gz"
HOMEPAGE="http://www.pxh.de/fs/gsmlib/"
IUSE=""
SLOT="0"
LICENSE="LGPL-2"
KEYWORDS="amd64 ~ia64 ppc ppc64 sparc x86"
RESTRICT="test"
S="${WORKDIR}/${PN}-${PV%_pre*}"
src_unpack() {
unpack ${A}
epatch "${FILESDIR}/${P%_pre*}-include-gcc34-fix.patch"
epatch "${FILESDIR}/${P%_pre*}-gcc41.patch"
epatch "${FILESDIR}"/${P%_pre*}-gcc43.patch
}
src_install () {
emake DESTDIR="${D}" install || die "make install failed"
dodoc README
}

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<longdescription>Library and applications to access GSM mobile phones.</longdescription>
</pkgmetadata>

@ -1 +0,0 @@
DIST smssend-3.4.tar.gz 407556 SHA256 1f402c34fb61c409488a7806e53aac349038758eef431376714d206de9bf13d0 SHA512 028826fdaff932a8c384d510155af4e868665e1c6989cd6856067128a445a850ef35d6701b8daa73d0ed41ee193e26a2034c0b4a03ea2a35113973ee00d71d8d WHIRLPOOL 14862a733aafd18e6ba0a9d122749e8867216ecbdae150ba8da2df139cdb9914697eba92d93de51083554e5d12bd23a60cb1dd20648a1df42ad009bd8d9061ee

@ -1,34 +0,0 @@
diff -Nur smssend-3.4/scripts/Makefile.am smssend-3.4-new/scripts/Makefile.am
--- smssend-3.4/scripts/Makefile.am 2004-01-11 13:31:29.000000000 -0500
+++ smssend-3.4-new/scripts/Makefile.am 2004-12-16 02:01:28.141681368 -0500
@@ -2,6 +2,6 @@
AUTOMAKE_OPTIONS = no-dependencies dist-shar
-pkgdata_DATA = 130sms.sms 1rstwap.sms 6sensreg.sms 6sens.sms a1_globalsms.sms amazonia.sms americel.sms armgsm.sms atl.sms attwireless.sms banana.sms basemine.sms bcp.sms bell.sms bol_rus.sms bol.sms boltblue.sms bramka.sms bwc.sms clarodigital.sms claro.sms clubmessage.sms comcel.sms coolsmsdk-fast.sms coolsmsdk.sms cosmos.sms cricket.sms ebol.sms e-merge.sms ems-iwarp.sms ermak_rus.sms etsity.sms eurobate.sms eurotel.sms everyday.sms exoset.sms extel-gsm.sms fajront.sms fido.sms freenet.sms freesmsau.sms ft.sms globtel.sms gmxde.sms goingtonight.sms golden.sms gomobile.sms gorizont-rt.sms gtnet.sms halebop.sms hooya.sms hotsms.sms indosat-m3.sms info2you.sms ingyensms.sms inwind.sms iol.sms kiyvstar.sms kyivstar.sms lycosde.sms lycosse.sms lycos.sms lycosuk.sms mageos.sms maxitel.sms megaforums.sms mobimel.sms mobitag.sms mobitel.sms mtnsms.sms mtsmb.sms mts.sms mtsspb.sms mufa.sms mybegin.sms natelskyline.sms netcom.sms netzquadrat.sms nwgsm.sms o2-genie.sms oi.sms onelv.sms orangeportal.sms orange.sms orf.sms oskar.sms paegas.sms pager.sms passagen.sms planet.sms plus.sms proximus.sms quick.sms rekom.sms rogers.sms room33.sms scs-900.sms sfr.sms simobil.sms smarts.sms sms_ac.sms smsitaly.sms smspress.sms smsro.sms sprintpcs.sms starhub.sms suomi24.sms surfeu.sms tango.sms tankssms.sms telebahiacelular.sms telemig.sms telering.sms tess.sms timnordeste.sms timsul.sms t-mobile.sms totalise.sms touristik.sms ubootflash.sms uboot.sms umail.sms umc.sms unimobile.sms universal.sms vivo.sms vizzavifr.sms vizzavigr.sms vizzaviuk.sms vodacom.sms yab.sms
+pkgdata_DATA = 130sms.sms 1rstwap.sms 6sensreg.sms 6sens.sms a1_globalsms.sms amazonia.sms americel.sms armgsm.sms atl.sms attwireless.sms banana.sms basemine.sms bcp.sms bell.sms bol_rus.sms bol.sms boltblue.sms bramka.sms bwc.sms clarodigital.sms claro.sms clubmessage.sms comcel.sms coolsmsdk-fast.sms coolsmsdk.sms cosmos.sms cricket.sms ebol.sms e-merge.sms ems-iwarp.sms ermak_rus.sms etsity.sms eurobate.sms eurotel.sms everyday.sms exoset.sms extel-gsm.sms fajront.sms fido.sms freenet.sms freesmsau.sms ft.sms globtel.sms gmxde.sms goingtonight.sms golden.sms gomobile.sms gorizont-rt.sms gtnet.sms halebop.sms hooya.sms hotsms.sms indosat-m3.sms info2you.sms ingyensms.sms inwind.sms iol.sms kiyvstar.sms kyivstar.sms lycosde.sms lycosse.sms lycos.sms lycosuk.sms mageos.sms maxitel.sms megaforums.sms mobimel.sms mobitag.sms mobitel.sms mtnsms.sms mtsmb.sms mts.sms mtsspb.sms mufa.sms mybegin.sms natelskyline.sms netcom.sms netzquadrat.sms nwgsm.sms o2-genie.sms oi.sms onelv.sms orangeportal.sms orange.sms orf.sms oskar.sms paegas.sms pager.sms passagen.sms planet.sms plus.sms proximus.sms quick.sms rekom.sms rogers.sms room33.sms scs-900.sms sfr.sms simobil.sms smarts.sms sms_ac.sms smsitaly.sms smspress.sms smsro.sms sprintpcs.sms starhub.sms suomi24.sms surfeu.sms tango.sms tankssms.sms telebahiacelular.sms telemig.sms telering.sms tess.sms timnordeste.sms timsul.sms t-mobile.sms totalise.sms touristik.sms ubootflash.sms uboot.sms umail.sms umc.sms unimobile.sms universal.sms verizon.sms vivo.sms vizzavifr.sms vizzavigr.sms vizzaviuk.sms vodacom.sms yab.sms
-EXTRA_DIST = 130sms.sms 1rstwap.sms 6sensreg.sms 6sens.sms a1_globalsms.sms amazonia.sms americel.sms armgsm.sms atl.sms attwireless.sms banana.sms basemine.sms bcp.sms bell.sms bol_rus.sms bol.sms boltblue.sms bramka.sms bwc.sms clarodigital.sms claro.sms clubmessage.sms comcel.sms coolsmsdk-fast.sms coolsmsdk.sms cosmos.sms cricket.sms ebol.sms e-merge.sms ems-iwarp.sms ermak_rus.sms etsity.sms eurobate.sms eurotel.sms everyday.sms exoset.sms extel-gsm.sms fajront.sms fido.sms freenet.sms freesmsau.sms ft.sms globtel.sms gmxde.sms goingtonight.sms golden.sms gomobile.sms gorizont-rt.sms gtnet.sms halebop.sms hooya.sms hotsms.sms indosat-m3.sms info2you.sms ingyensms.sms inwind.sms iol.sms kiyvstar.sms kyivstar.sms lycosde.sms lycosse.sms lycos.sms lycosuk.sms mageos.sms maxitel.sms megaforums.sms mobimel.sms mobitag.sms mobitel.sms mtnsms.sms mtsmb.sms mts.sms mtsspb.sms mufa.sms mybegin.sms natelskyline.sms netcom.sms netzquadrat.sms nwgsm.sms o2-genie.sms oi.sms onelv.sms orangeportal.sms orange.sms orf.sms oskar.sms paegas.sms pager.sms passagen.sms planet.sms plus.sms proximus.sms quick.sms rekom.sms rogers.sms room33.sms scs-900.sms sfr.sms simobil.sms smarts.sms sms_ac.sms smsitaly.sms smspress.sms smsro.sms sprintpcs.sms starhub.sms suomi24.sms surfeu.sms tango.sms tankssms.sms telebahiacelular.sms telemig.sms telering.sms tess.sms timnordeste.sms timsul.sms t-mobile.sms totalise.sms touristik.sms ubootflash.sms uboot.sms umail.sms umc.sms unimobile.sms universal.sms vivo.sms vizzavifr.sms vizzavigr.sms vizzaviuk.sms vodacom.sms yab.sms
+EXTRA_DIST = 130sms.sms 1rstwap.sms 6sensreg.sms 6sens.sms a1_globalsms.sms amazonia.sms americel.sms armgsm.sms atl.sms attwireless.sms banana.sms basemine.sms bcp.sms bell.sms bol_rus.sms bol.sms boltblue.sms bramka.sms bwc.sms clarodigital.sms claro.sms clubmessage.sms comcel.sms coolsmsdk-fast.sms coolsmsdk.sms cosmos.sms cricket.sms ebol.sms e-merge.sms ems-iwarp.sms ermak_rus.sms etsity.sms eurobate.sms eurotel.sms everyday.sms exoset.sms extel-gsm.sms fajront.sms fido.sms freenet.sms freesmsau.sms ft.sms globtel.sms gmxde.sms goingtonight.sms golden.sms gomobile.sms gorizont-rt.sms gtnet.sms halebop.sms hooya.sms hotsms.sms indosat-m3.sms info2you.sms ingyensms.sms inwind.sms iol.sms kiyvstar.sms kyivstar.sms lycosde.sms lycosse.sms lycos.sms lycosuk.sms mageos.sms maxitel.sms megaforums.sms mobimel.sms mobitag.sms mobitel.sms mtnsms.sms mtsmb.sms mts.sms mtsspb.sms mufa.sms mybegin.sms natelskyline.sms netcom.sms netzquadrat.sms nwgsm.sms o2-genie.sms oi.sms onelv.sms orangeportal.sms orange.sms orf.sms oskar.sms paegas.sms pager.sms passagen.sms planet.sms plus.sms proximus.sms quick.sms rekom.sms rogers.sms room33.sms scs-900.sms sfr.sms simobil.sms smarts.sms sms_ac.sms smsitaly.sms smspress.sms smsro.sms sprintpcs.sms starhub.sms suomi24.sms surfeu.sms tango.sms tankssms.sms telebahiacelular.sms telemig.sms telering.sms tess.sms timnordeste.sms timsul.sms t-mobile.sms totalise.sms touristik.sms ubootflash.sms uboot.sms umail.sms umc.sms unimobile.sms universal.sms verizon.sms vivo.sms vizzavifr.sms vizzavigr.sms vizzaviuk.sms vodacom.sms yab.sms
diff -Nur smssend-3.4/scripts/verizon.sms smssend-3.4-new/scripts/verizon.sms
--- smssend-3.4/scripts/verizon.sms 1969-12-31 19:00:00.000000000 -0500
+++ smssend-3.4-new/scripts/verizon.sms 2004-12-16 02:00:43.056535352 -0500
@@ -0,0 +1,18 @@
+#messaging.verizonwireless.com
+#Version 1.0
+#Dane Jackson <dane@unixbigots.org>
+
+NbParams 3
+%Number : The phone number should be 10 digits
+%CallbackNumber : Your phone number - 1 or more digits
+%Message Size=160 Convert : Your message
+
+# Sending message
+# The only important part that's different from the submittal page
+# instead of the disclaimer page is the disclaimer_submit key. So
+# we can just skip the first page.
+
+PostURL http://www.vtext.com/customer_site/jsp/disclaimer.jsp
+PostData min=\%Number%&text=\%Message%&counter=160&sender=\%CallbackNumber%&trackResponses=No&DOMAIN_NAME=@vtext.com&disclaimer_submit=On
+GO
+

@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>

@ -1,33 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
inherit autotools
DESCRIPTION="Universal SMS sender"
# Was: http://zekiller.skytech.org/smssend_menu_en.html
HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
SRC_URI="mirror://gentoo/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~ppc ~ppc64 ~sparc x86"
IUSE=""
# -r5 of skyutils fixes a runtime crash, bug 588326.
# Without SSL support in skyutils, some providers fail.
DEPEND=">=dev-libs/skyutils-2.8-r5[ssl]"
RDEPEND="${DEPEND}"
PATCHES=( "${FILESDIR}/${P}-verizon.diff" )
src_prepare() {
default
sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g' configure.in \
|| die 'failed to rename AM_CONFIG_HEADER macro'
eautoreconf
}

@ -1,2 +0,0 @@
DIST dbus-1-tqt-3.5.13.1.tar.gz 378109 SHA256 afa621ae0bd65d50d011c1789e98f1418a2c852d2ca72833b1f50805acb1d935 SHA512 5c73d0cf603f345782b318197dec89632123ca2a3802cf152fd8f24600ec670a156f74026e4578bd25af766dd5a5243050442ee07067cfef9bd950f0cd5b3a39 WHIRLPOOL 95e5dd704824cc23390795d775735cdaeb58245c266409888f5cd0b79563e5b00e5b60fd2fbc8e5618889f612dfbcf71566223ed23a2ca1318454812b952b78a
DIST dbus-1-tqt-trinity-3.5.13.2.tar.xz 302900 SHA256 b4b048a4eaa67e9bedb5d46a15f16f5b814c3eb55474c6bcd4a817105b5e4a64 SHA512 3bc6b732288e9348ebff999644478926fefc8f62235a3accb45fdf828a2ef6988cf2d192b093ad532393fbe57bfbb353371bef18caff27f512d2f046d24f3131 WHIRLPOOL 0d959b83181c97bc26343322312c848e7c7c031912f8f3869806d2d4f682fa142d405016e49da1e498ab9311b18f1cacde5d71de99531412ce51b2dd26e27b51

@ -1,24 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
TRINITY_MODULE_TYPE="dependencies"
TRINITY_MODULE_NAME="dbus-1-tqt"
inherit trinity-base
DESCRIPTION="D-BUS TQt bindings"
HOMEPAGE="http://trinitydesktop.org/"
LICENSE="GPL-2 LGPL-2"
KEYWORDS="x86 amd64"
SLOT="0"
IUSE=""
DEPEND=">=dev-qt/qt-3.3.8d:3
sys-apps/dbus
dev-qt/tqtinterface"
RDEPEND="$DEPEND"
src_configure() {
cmake-utils_src_configure
}

@ -1,24 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
TRINITY_MODULE_TYPE="dependencies"
TRINITY_MODULE_NAME="dbus-1-tqt"
inherit trinity-base
DESCRIPTION="D-BUS TQt bindings"
HOMEPAGE="http://trinitydesktop.org/"
LICENSE="GPL-2 LGPL-2"
KEYWORDS="~amd64 ~x86"
SLOT="0"
IUSE=""
DEPEND=">=dev-qt/qt-3.3.8d:3
sys-apps/dbus
dev-qt/tqtinterface"
RDEPEND="$DEPEND"
src_configure() {
cmake-utils_src_configure
}

@ -1,23 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
TRINITY_MODULE_TYPE="dependencies"
TRINITY_MODULE_NAME="dbus-1-tqt"
inherit trinity-base
DESCRIPTION="D-BUS TQt bindings"
HOMEPAGE="http://trinitydesktop.org/"
LICENSE="GPL-2 LGPL-2"
KEYWORDS=
SLOT="0"
IUSE=""
DEPEND="sys-apps/dbus
dev-qt/tqtinterface"
RDEPEND="$DEPEND"
src_configure() {
cmake-utils_src_configure
}

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>fatzer2@gmail.com</email>
<name>Alexander Golubev</name>
</maintainer>
</pkgmetadata>

@ -1 +0,0 @@
DIST dbus-tqt-3.5.13.1.tar.gz 513838 SHA256 f6e024370743c1aae32f9c89660fb22b93f3710864eef679a3be07b2ab3aec71 SHA512 ef9b9d1873b524f07940d9ce31ffb7a8c7002baebb7ab58aec2c93040e9827b33d22a522f63e8d60151bca0f2509f5e4cab0a8d37097ef6262c4a8beca2506db WHIRLPOOL 6b4090816d9790781767d2a523cde61632cabff739966e8c44e06b218a2bfb13c313c574060eaac27fad02dd1df1d7209e1171e2e9f3a93097957c805e31c5b1

@ -1,24 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
TRINITY_MODULE_TYPE="dependencies"
TRINITY_MODULE_NAME="dbus-tqt"
inherit trinity-base
DESCRIPTION="D-BUS TQt bindings"
HOMEPAGE="http://trinitydesktop.org/"
LICENSE="GPL-2 LGPL-2"
KEYWORDS="x86 amd64"
SLOT="0"
IUSE=""
DEPEND=">=dev-qt/qt-3.3.8d:3
dev-qt/tqtinterface
!!dev-libs/dbus-qt3-old"
RDEPEND="$DEPEND"
src_configure() {
cmake-utils_src_configure
}

@ -1,24 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
TRINITY_MODULE_TYPE="dependencies"
TRINITY_MODULE_NAME="dbus-tqt"
inherit trinity-base
DESCRIPTION="D-BUS TQt bindings"
HOMEPAGE="http://trinitydesktop.org/"
LICENSE="GPL-2 LGPL-2"
KEYWORDS=
SLOT="0"
IUSE=""
DEPEND="sys-apps/dbus
dev-qt/tqtinterface
!!dev-libs/dbus-qt3-old"
RDEPEND="$DEPEND"
src_configure() {
cmake-utils_src_configure
}

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>fatzer2@gmail.com</email>
<name>Alexander Golubev</name>
</maintainer>
</pkgmetadata>

@ -1 +0,0 @@
DIST skyutils-2.8.tar.gz 357571 SHA256 724c23673f060ec14e452ff8d28a9592993d22328eac5213c780ac674d2a8518 SHA512 65073067f8cd3c81587e6a3b718cd4903004d681f6852afb7de8cb91249fc655afe8234aa780409843649dd0996d877892a97cc5073445ad687c7c2eb6619a01 WHIRLPOOL 1a223fce1fff2f37a0f9cbc20314e19018f4cd7ab50a6b0a12a13ad428442ed9cb58eef586d9e5ca96f7a2d0c76aca3388702a80986c9686ef5ff38d7b3cf64f

@ -1,40 +0,0 @@
From 40a157d2161fdd8709a777de6625fbd1b93efed3 Mon Sep 17 00:00:00 2001
From: Michael Orlitzky <michael@orlitzky.com>
Date: Sat, 6 Aug 2016 19:23:48 -0400
Subject: [PATCH 1/1] src/skyutils.h: fix two missing format strings in
SU_SYSLOG_FN.
The SU_SYSLOG_FN(x,y) macro could be defined as either syslog(x,y) or
printf(y), both of which are missing the trivial format string
"%s". This commit adds it, so that the project builds with no
-Wformat-security warnings.
Gentoo-Bug: 521114
---
src/skyutils.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/skyutils.h b/src/skyutils.h
index 8b7d59d..f77c9fd 100644
--- a/src/skyutils.h
+++ b/src/skyutils.h
@@ -279,14 +279,14 @@ void SU_PrintDebug(int Level,char *Txt, ...);
#ifdef __unix__
#define SU_PrintDebug(x,...) /* If you have an error here, remove 'x,...' from the () */
#include <syslog.h>
-#define SU_SYSLOG_FN(x,y) syslog(x,y)
+#define SU_SYSLOG_FN(x,y) syslog(x,"%s",y)
#else /* !__unix__ */
#define SU_PrintDebug() /* Avoid compilation warnings */
extern FILE *SU_LogFile;
#define SU_SYSLOG_FN(x,y) SU_WriteToLogFile(SU_LogFile,y)
#endif /* __unix__ */
#else /* DEBUG */
-#define SU_SYSLOG_FN(x,y) printf(y)
+#define SU_SYSLOG_FN(x,y) printf("%s",y)
#endif /* !DEBUG */
#ifdef _WIN32
#define SU_SLEEP(x) Sleep(x*1000)
--
2.7.3

@ -1,12 +0,0 @@
diff -ur skyutils-2.8.orig/configure.in skyutils-2.8/configure.in
--- skyutils-2.8.orig/configure.in 2005-05-09 08:16:44.000000000 +0000
+++ skyutils-2.8/configure.in 2008-07-18 05:38:13.000000000 +0000
@@ -208,6 +208,8 @@
AC_SUBST(SU_ARCH_LIB)
AC_SUBST(SU_ARCH_CFLAGS)
AC_SUBST(SU_ANSI_CFLAGS)
+LIBS="$SU_PTHREAD_LIB $SU_DL_LIB $SU_SSL_LIB $SU_ARCH_LIB"
+AC_SUBST(LIBS)
AC_OUTPUT([
Makefile

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<longdescription>
This library contains many useful functions such as chained lists,
string manipulation, socket, and the HTTP protocol.
</longdescription>
</pkgmetadata>

@ -1,37 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
inherit flag-o-matic autotools
DESCRIPTION="Library of assorted C utility functions"
# Was: http://zekiller.skytech.org/coders_en.html
HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
SRC_URI="mirror://gentoo/${P}.tar.gz"
LICENSE="LGPL-2.1+"
SLOT="0"
KEYWORDS="amd64 ~ppc ~ppc64 ~sparc x86"
IUSE="ssl"
DEPEND="ssl? ( dev-libs/openssl:0=[sslv3] )"
RDEPEND="${DEPEND}"
PATCHES=(
"${FILESDIR}/${P}-libs.patch"
"${FILESDIR}/fix-Wformat-security-warnings.patch"
)
src_prepare() {
default
sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g' configure.in \
|| die 'failed to rename AM_CONFIG_HEADER macro'
eautoreconf
}
src_configure() {
append-flags -D_GNU_SOURCE
econf $(use_enable ssl)
}

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>fatzer2@gmail.com</email>
<name>Alexander Golubev</name>
</maintainer>
</pkgmetadata>

@ -1,25 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=3
DESCRIPTION="This is a meta package for a Qt3 toolkit it is needed to keep dependencies clean"
HOMEPAGE="http://qt.nokia.com/ http://www.trinitydesktop.org/"
LICENSE="|| ( QPL-1.0 GPL-2 GPL-3 )"
SLOT="3"
KEYWORDS="amd64 x86"
IUSE="cups debug doc examples firebird ipv6 mysql nas nis opengl postgres sqlite xinerama"
DEPEND="
=dev-qt/qt-${PV}:${SLOT}[cups=,debug=,doc=,examples=,firebird=,ipv6=,mysql=]
=dev-qt/qt-${PV}:${SLOT}[nas=,nis=,opengl=,postgres=,sqlite=,xinerama=]"
RDEPEND="${DEPEND}"
pkg_postinst() {
echo
einfo "Please note that this meta package is only provided for capability."
einfo "No packages should depend directly on this meta package, but on the"
einfo "dev-qt/qt:${SLOT} package."
echo
}

@ -1,25 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=3
DESCRIPTION="This is a meta package for a Qt3 toolkit it is needed to keep dependencies clean"
HOMEPAGE="http://qt.nokia.com/ http://www.trinitydesktop.org/"
LICENSE="|| ( QPL-1.0 GPL-2 GPL-3 )"
SLOT="3"
KEYWORDS=
IUSE="cups debug doc examples firebird ipv6 mysql nas nis opengl postgres sqlite xinerama"
DEPEND="
=dev-qt/qt-${PV}:${SLOT}[cups=,debug=,doc=,examples=,firebird=,ipv6=,mysql=]
=dev-qt/qt-${PV}:${SLOT}[nas=,nis=,opengl=,postgres=,sqlite=,xinerama=]"
RDEPEND="${DEPEND}"
pkg_postinst() {
echo
einfo "Please note that this meta package is only provided for capability."
einfo "No packages should depend directly on this meta package, but on the"
einfo "dev-qt/qt:${SLOT} package."
echo
}

@ -1,17 +0,0 @@
AUX trinity-3.5.13.1..3.5.13.2/qt3-2012-12-12_02_54_53-Ensure-that-a-valid-DPI-is-always-set-cbe0a27.patch 1053 SHA256 6822c2f3c59c621ba853f583f9fdf2cd6b7ac1b069d1a2ec147e2f4ee6a7aa7b SHA512 c2209b9a61c817422df932f7d844f07a85ac3cc0f6a75770cf3eac279419c5b95091d919a533fac94c72e8b2f98004a5c858870a15660c0b33cb0d94a5aeb431 WHIRLPOOL c434a0f5e7d9b801bb0a6a5c68f564b32b876b2c66ab2bd6511b54cc9755c35cd6f2d3bd8e9deba4dd302dcceb0615d408371f36d1129cadd65246f64ff7098c
AUX trinity-3.5.13.1..3.5.13.2/qt3-2013-01-13_02_45_04-Verify-desktop-widget-screen-number-before-applying-size-changes-This-resolves-Bug-1378-b8ca17c.patch 1412 SHA256 1c53a022a723f25ca9661d9b6baa552e9ff1cf76f6d3cba4f9f19b8b8c547a1a SHA512 d625c0c6adf436de29780ba5bbf077a30c7fcd6b19c69e2191ab6ad40f20d9f2c2dc0ec55ded01c7bf777c5913c9b5bcac8b09ca1c6a04ea25f39d9fcbb8e137 WHIRLPOOL ed27f89056249d06399f709b4ab8fb5f0fbdc43b8db6cb5935045e061666eb1792b79f1564fd840b9fe880debf2fbd770ed54b29cafc1dd46afb2fea519e3e65
AUX trinity-3.5.13.1..3.5.13.2/qt3-2013-02-20_21_52_12-Doublebuffer-QIconView-to-reduce-flicker-This-closes-Bug-1408-897cd5c.patch 3266 SHA256 c901cebe79142bb81764138eff6bbdb74c126cd4950555f97924000c791aad96 SHA512 d892a88052a713a8f7d1edcbef15c951aac33a25f1f73e90a63f6b1394413678bf4ed12865710b84ddb4d9536dd452bc1c2f88af7a442807aa0f61aeadff0020 WHIRLPOOL c370ab576e8e68e54a5f0b18c19b19013c762f0434b60cbc595d8f5d465e8c81fdb6496080d4b71f78d4de390a7fbff8181dcce6946eb60f0c7825f2fe1473a5
AUX trinity-3.5.13.1..3.5.13.2/qt3-2013-03-02_12_16_10-Fix-textbox-trails-introduced-with-GIT-commit-82b71e49-This-resolves-Bug-1408-a78eb9c.patch 599 SHA256 03f4a35d89835a0b3de726492b99d83045a6c4c27170f4c0feaa4d7e7cd361e6 SHA512 b779f7669f40796c9c7b7d4c9e1970b930e661b7247927cdb0c668c084a950dc19bdeab4b15326248ec836987160821fed98f467e8bdfe5c2f250ed8db143f07 WHIRLPOOL 3258ff6dfec41829fe2390bca3cb7739d5fc5d00dcc99f4cc0694c6d2d12f0603b4535ebd2874bb99fae767fa8b63f8bc85e58dfe84f5e108f841f693475f616
AUX trinity-3.5.13.1..3.5.13.2/qt3-2013-04-13_13_31_15-Properly-set-WM_CLASS-atom-even-if-Display-pointer-was-passed-to-TQApplication-This-relates-to-Bug-1443-045b2d9.patch 1640 SHA256 88cce480013054358856e35df7f734f52a2188276d5ac786707aa7f4eef4575b SHA512 0c6ffd19404633c2ec8d6742fead4713227852174b83fb749656daf4117766d08a94624c81c3e2226d524aa904039337811b4a68878f72170ece0a0ad6136df7 WHIRLPOOL a9ffc49517144ff6c02dbb8be969817baec0960b80e0a2637ecfa3da43f0bf556b9df9c9b93b5485389335b3c24b2fa8ef17224db2c3aa2d5acb46519c7d6d6b
AUX trinity-3.5.13.1..3.5.13.2/qt3-2013-04-16_17_34_08-Fix-fatal-X11-errors-when-both-external-display-and-command-arguments-are-provided-to-QApplication-This-resolves-Bug-1456-e7d0f7d.patch 1138 SHA256 caca943700c410e75d8bfc8c5b0c07c6041f5a4f1b5068a8ae9907aba3c3e1cb SHA512 121681c67a0417b2ead19d5f3ad206f12f3b10bf997ad12315b2fc3dbc3a60487d90a782cb6899bf4e3a4774cfa06d5233752118acc6b113fd79723b0295e39d WHIRLPOOL 56d5a008c5bcc4e2079e549a596900cd7df763af0f45978e8761c4879e45a466652c3b2184ac6c895181b109a68f5d24f12ce36c7cf7cbfbeda3c7f58fea4c3b
AUX trinity-3.5.13.1..3.5.13.2/qt3-2013-04-20_19_01_58-Fix-Qt-input-method-failure-This-resolves-Bug-1019-c421de2.patch 1664 SHA256 c28a05e90a19a7a5e73c1d840f2605e2d457f5030242057fd205155f5fd50c1b SHA512 a3ac74e67fc014e0169ceca4d0df953ce6b1897236f090273196ff36133d25b64b66a7b7781695a790760720fd194243c09e3b33a1f02115c96d519db106f3ab WHIRLPOOL a0ec3ad64708840a1a2b2eefd1118979bcdf6c2f158ec5320f626348c3562df6d855864950aa3f00deb22142807f1555af2e2adb64fffdbdfd215962aa968060
AUX trinity-3.5.13.1..3.5.13.2/qt3-2013-04-20_19_01_59-Fix-qmake-library-search-path-on-64-bit-systems-This-resolves-Bug-1016-e374dac.patch 484 SHA256 3ad05e0a17420315039834c6816c540b3c4695fa3c4a969bc2b1ea44f0b1542c SHA512 45c68ec9a00eae11195f71926a256c683fb6d237763555f0889f9f780971d382ee0e75f718b960355a932314ec3e8347d9282d6f9961701acef077b36365b92e WHIRLPOOL da7640575b82f94cd606a4777f9916a7ec6a7f163b8105004433356a8bef8a165154980d00c3d579cfdbc00fc10690f0b1e531c69da9b9eb03bdcd5e6c7ff644
AUX trinity-3.5.13.1..3.5.13.2/qt3-2013-04-20_19_01_59-Update-zh-tw-translations-c62cd50.patch 10355 SHA256 9c538abc919d0f54ce7615c2d070f353e894ab712637deabd8aeca5560d3c8a1 SHA512 762e98fcf0772f774524f95d1678e976aa5e8c503a123ef23cf0633baa9d068889ec8259379f5bd021ca37c99c48b9f8ca0f6791de10ad670e62e65b52d2450c WHIRLPOOL 7134d02266ec8356568ed493cde3f99f79e41e3ac422ceb81a0b5d0fac5b47473824ea099f774de426eb893bc487672576f312d716dbbd3c9798fb7439edb065
AUX trinity-3.5.13.1..3.5.13.2/qt3-2013-04-20_19_02_00-Add-0084-compositing-patch-from-RedHat-909c3cb.patch 2682 SHA256 d2443d46fdfcfa45fc8fd6249efe4a264a3c4c82df6ae786f1d11582321b49be SHA512 a6f5dc4c6ca4502bc12d0e568e6ce8c4d4d9646a7596376db85b58687be32d9569f6b5f663c8eb282595729c4bea110f9c3b5368d6bb1159548d64b33c4dd92f WHIRLPOOL a4e72e38474c336cee82d35208a2119c67d4d3211d6d191bd79abb53c9de580bca47f45544702717f9a22e8da5e7efce120f60b8ee0c78446ea90fc00c71964f
AUX trinity-3.5.13.1..3.5.13.2/qt3-2013-04-20_19_02_00-Use-unixODBC-instead-of-obsolete-iODBC-This-closes-Bug-792-Thanks-to-L0ner-for-the-patch-3f779ee.patch 1531 SHA256 ee56a45c2ec961e67a9aeaf0e232af089e8f99e8f012ea6210db0e8b0de46a0c SHA512 7408f786aea8104e0a2372c1d46493e5cae7bd13a71f6b7e25803b40e5a6170833f6e2c23ae5f680ed8924e354e499efb63c21baa18de486f64ab5332d8408cf WHIRLPOOL 9b97795a571579a0bc0782052c23e4bbf3a95947c070aaebc563c84497f6bedfc43640a3a2ffe0a1dd83fb86270f02fc7ba3a2465a9c103e663f12cd2e549765
AUX trinity-3.5.13.1..3.5.13.2/qt3-2013-04-20_19_02_01-Make-basic-integer-QDataStream-reads-resistant-to-corruption-from-underlying-IO-device-failure-60621ef.patch 2928 SHA256 c3736f4297d22c076f107a6b5756ac59cf581b86bb88e2a28cb06fd120cba0ad SHA512 46941d3b677bafd84b1b52efbc56b5b5848423d1f8a9a7f83f485939a2092ce6344dcceeccb524e8ca8b97d3defd060644405d70fadc6f51a8ae6b57d55affbe WHIRLPOOL 031431bca71b586e64b60c63600a8832daa5faee3a150534072bba8d74929fc05639a858739622c5e0552088095e840c2a40a9c6530e58a4f50b20de1b5671a7
AUX trinity-3.5.13.1..3.5.13.2/qt3-2013-04-25_03_21_44-Fix-a-number-of-threading-problems-and-crashes-This-partially-resolves-Bug-1467-part-of-the-original-commit-b8e4f24.patch 25691 SHA256 7f6156a4f927fae9571c6277e1e4619750c7a0a9d9893a102f262f3105affc65 SHA512 0d9e30ec474e25be3c2542337c5e0ae9f1a2e412d006a528180bdcc692cdab7eb584926e26964453591fd3315ce713ca39660ab50c6688fe4eb3f924fa8bc2e0 WHIRLPOOL b54a8ea84d1d0e850675a0e2168bddd971edb3b493c7f52f7d34d239f4541e3856610dcf05d47b297565bec9e2cb9bbe7aada141703c58fc723f9ffa2f13e424
AUX trinity-3.5.13.1..3.5.13.2/qt3-2013-05-03_03_47_45-Fix-corrupted-titlebar-icons-in-subwindows-of-ARGB-applications-90f4a55.patch 1996 SHA256 707099432bd702883b488ddf5cd5290b327938168392efc4c03a862abef67000 SHA512 e839b2575def437aa98670298e2804f4f826a6483cf7e220193cf7b641b2b68ec2cf731a23ecb2c8e78bf432d778378e93eccb3d7f51b74cdea68aec0e7b0661 WHIRLPOOL c9d7c1882efa0d41cd19cc4fa175216791d40c053b73714fa67f43ed76b428b2471bf9f447373afddecbcaceeb3febaf7f87ba62d9fec97fc5a3f263c5c89ef8
AUX trinity-3.5.13.1..3.5.13.2/qt3-2013-05-04_17_28_30-Fix-ARGB-mode-stippled-focus-rectangle-showing-underlying-window-contents-Fix-TQColor-not-processing-alpha-channel-in-ARGB-mode-d2240de.patch 2184 SHA256 3893537b4a328495c717d586b135b940b29ca50de9240878cec350e0208f79f3 SHA512 68c73892f8cc011392261267b3a9ed38b4989e9ed3adbe34982ee1d220be9dba503ec9bf383b29f601b2fc11f490db33b7802c21223050d581ea84b683f0943d WHIRLPOOL 10525ee058888558c191dfe0922f45f53df60a9594e921c6cee94ddcbcbfc2efe3aeb18ab73372adfac3ecfb49943ef875cd936ae1bc01f8da2f3a1baba969db
AUX trinity-3.5.13.1..3.5.13.2/qt3-2013-05-08_01_43_38-Fix-spelling-mistakes-169c39a.patch 3103 SHA256 19e830e3dcdb0888cd00a94ba9acafb9d6b2c22961306d4a796b5fabba63e449 SHA512 107d8c84fd480b8cbcb93b30ca1f78352e53a776d64221378fc4b5fb9f08decc5edec2973377d37785cc02bdd68c7c305dde2c2a1fad3827ea1964b28b72857c WHIRLPOOL c7c073884cbb99451784a2cf27fa7a7b3dce927e9f6be8111875272e58adb4b689f156d4c0f72896dbbc72473597456910422013d487a2082616d08c213b6db5
DIST qt3-3.5.13.1.tar.gz 16618074 SHA256 6d124412f89eb7c445668e339cd10114778b3efe56f061886364a0b27141a6ff SHA512 7adda5a6ee2c72086e672230dcd9088d39d975ee802dfc1ac4fcbb0b9cdd2feeac3b1a7147663ffb57b285e0631b14735930ea1f33904c37b000d96c0859ae84 WHIRLPOOL e0afdbc051f6d215ad6e46ec6a9756e96d303177d32c21ee7d944a1abe5b58b153da5afb01942b747278b92876203e05076cd18a0e75a51c5ab3c52b6b25eda6

@ -1,26 +0,0 @@
diff --git a/src/kernel/qpaintdevice_x11.cpp b/src/kernel/qpaintdevice_x11.cpp
index a755c01..5941657 100644
--- a/src/kernel/qpaintdevice_x11.cpp
+++ b/src/kernel/qpaintdevice_x11.cpp
@@ -529,11 +529,16 @@ static void create_dpis()
Q_CHECK_PTR( dpisX );
Q_CHECK_PTR( dpisY );
for ( i = 0; i < screens; i++ ) {
- dpisX[ i ] = (DisplayWidth(dpy,i) * 254 + DisplayWidthMM(dpy,i)*5)
-
- / (DisplayWidthMM(dpy,i)*10);
- dpisY[ i ] = (DisplayHeight(dpy,i) * 254 + DisplayHeightMM(dpy,i)*5)
- / (DisplayHeightMM(dpy,i)*10);
+ if (DisplayWidthMM(dpy,i) < 1)
+ dpisX[ i ] = 75; // default the dpi to 75.
+ else
+ dpisX[ i ] = (DisplayWidth(dpy,i) * 254 + DisplayWidthMM(dpy,i)*5)
+ / (DisplayWidthMM(dpy,i)*10);
+ if (DisplayHeightMM(dpy,i) < 1)
+ dpisY[ i ] = 75; // default the dpi to 75.
+ else
+ dpisY[ i ] = (DisplayHeight(dpy,i) * 254 + DisplayHeightMM(dpy,i)*5)
+ / (DisplayHeightMM(dpy,i)*10);
}
}

@ -1,38 +0,0 @@
diff --git a/src/kernel/qapplication_x11.cpp b/src/kernel/qapplication_x11.cpp
index 203cb39..4a03d95 100644
--- a/src/kernel/qapplication_x11.cpp
+++ b/src/kernel/qapplication_x11.cpp
@@ -3446,13 +3446,26 @@ int QApplication::x11ProcessEvent( XEvent* event )
// update the size for desktop widget
int scr = XRRRootToScreen( appDpy, event->xany.window );
QWidget *w = desktop()->screen( scr );
- QSize oldSize( w->size() );
- w->crect.setWidth( DisplayWidth( appDpy, scr ) );
- w->crect.setHeight( DisplayHeight( appDpy, scr ) );
- if ( w->size() != oldSize ) {
- QResizeEvent e( w->size(), oldSize );
- QApplication::sendEvent( w, &e );
- emit desktop()->resized( scr );
+
+ if (w) {
+ int widgetScr = -1;
+ // make sure the specified widget is on the same screen that received the XRandR event
+ XWindowAttributes widgetAttr;
+ XGetWindowAttributes(appDpy, w->winId(), &widgetAttr);
+ if (widgetAttr.screen) {
+ widgetScr = XScreenNumberOfScreen(widgetAttr.screen);
+ }
+
+ if ((widgetScr < 0) || (widgetScr == scr)) {
+ QSize oldSize( w->size() );
+ w->crect.setWidth( DisplayWidth( appDpy, scr ) );
+ w->crect.setHeight( DisplayHeight( appDpy, scr ) );
+ if ( w->size() != oldSize ) {
+ QResizeEvent e( w->size(), oldSize );
+ QApplication::sendEvent( w, &e );
+ emit desktop()->resized( scr );
+ }
+ }
}
}
#endif // QT_NO_XRANDR

@ -1,98 +0,0 @@
diff --git a/src/iconview/qiconview.cpp b/src/iconview/qiconview.cpp
index c1ea8cc..36b5da2 100644
--- a/src/iconview/qiconview.cpp
+++ b/src/iconview/qiconview.cpp
@@ -214,6 +214,7 @@ public:
QIconViewItem *currentItem, *tmpCurrentItem, *highlightedItem,
*startDragItem, *pressedItem, *selectAnchor, *renamingItem;
QRect *rubber;
+ QPixmap *backBuffer;
QTimer *scrollTimer, *adjustTimer, *updateTimer, *inputTimer,
*fullRedrawTimer;
int rastX, rastY, spacing;
@@ -2789,6 +2790,7 @@ QIconView::QIconView( QWidget *parent, const char *name, WFlags f )
d->currentItem = 0;
d->highlightedItem = 0;
d->rubber = 0;
+ d->backBuffer = 0;
d->scrollTimer = 0;
d->startDragItem = 0;
d->tmpCurrentItem = 0;
@@ -2942,6 +2944,8 @@ QIconView::~QIconView()
delete item;
item = tmp;
}
+ delete d->backBuffer;
+ d->backBuffer = 0;
delete d->fm;
d->fm = 0;
#ifndef QT_NO_TOOLTIP
@@ -4943,6 +4947,47 @@ void QIconView::contentsDropEvent( QDropEvent *e )
#endif
/*!
+ This function grabs all paintevents that otherwise would have been
+ processed by the QScrollView::viewportPaintEvent(). Here we use a
+ doublebuffer to reduce 'on-paint' flickering on QIconView
+ (and of course its children).
+
+ \sa QScrollView::viewportPaintEvent(), QIconView::drawContents()
+*/
+
+void QIconView::bufferedPaintEvent( QPaintEvent* pe )
+{
+ QWidget* vp = viewport();
+ QRect r = pe->rect() & vp->rect();
+ int ex = r.x() + contentsX();
+ int ey = r.y() + contentsY();
+ int ew = r.width();
+ int eh = r.height();
+
+ if ( !d->backBuffer )
+ d->backBuffer = new QPixmap(vp->size());
+ if ( d->backBuffer->size() != vp->size() ) {
+ // Resize function (with hysteresis). Uses a good compromise between memory
+ // consumption and speed (number) of resizes.
+ float newWidth = (float)vp->width();
+ float newHeight = (float)vp->height();
+ if ( newWidth > d->backBuffer->width() || newHeight > d->backBuffer->height() )
+ {
+ newWidth *= 1.1892;
+ newHeight *= 1.1892;
+ d->backBuffer->resize( (int)newWidth, (int)newHeight );
+ } else if ( 1.5*newWidth < d->backBuffer->width() || 1.5*newHeight < d->backBuffer->height() )
+ d->backBuffer->resize( (int)newWidth, (int)newHeight );
+ }
+
+ QPainter p;
+ p.begin(d->backBuffer, vp);
+ drawContentsOffset(&p, contentsX(), contentsY(), ex, ey, ew, eh);
+ p.end();
+ bitBlt(vp, r.x(), r.y(), d->backBuffer, r.x(), r.y(), ew, eh);
+}
+
+/*!
\reimp
*/
@@ -5726,7 +5771,7 @@ bool QIconView::eventFilter( QObject * o, QEvent * e )
if ( !d->rubber )
drawDragShapes( d->oldDragPos );
}
- viewportPaintEvent( (QPaintEvent*)e );
+ bufferedPaintEvent( (QPaintEvent*)e );
if ( d->dragging ) {
if ( !d->rubber )
drawDragShapes( d->oldDragPos );
diff --git a/src/iconview/qiconview.h b/src/iconview/qiconview.h
index 97780d8..109779f 100644
--- a/src/iconview/qiconview.h
+++ b/src/iconview/qiconview.h
@@ -452,6 +452,7 @@ protected:
void contentsDropEvent( QDropEvent *e );
#endif
+ void bufferedPaintEvent( QPaintEvent* );
void resizeEvent( QResizeEvent* e );
void keyPressEvent( QKeyEvent *e );
void focusInEvent( QFocusEvent *e );

@ -1,19 +0,0 @@
diff --git a/src/iconview/qiconview.cpp b/src/iconview/qiconview.cpp
index 36b5da2..4387a19 100644
--- a/src/iconview/qiconview.cpp
+++ b/src/iconview/qiconview.cpp
@@ -5770,11 +5770,11 @@ bool QIconView::eventFilter( QObject * o, QEvent * e )
if ( d->dragging ) {
if ( !d->rubber )
drawDragShapes( d->oldDragPos );
- }
- bufferedPaintEvent( (QPaintEvent*)e );
- if ( d->dragging ) {
+ viewportPaintEvent( (QPaintEvent*)e );
if ( !d->rubber )
drawDragShapes( d->oldDragPos );
+ } else {
+ bufferedPaintEvent( (QPaintEvent*)e );
}
}
return TRUE;

@ -1,46 +0,0 @@
diff --git a/src/kernel/qapplication.cpp b/src/kernel/qapplication.cpp
index 7296f4c..0ec4904 100644
--- a/src/kernel/qapplication.cpp
+++ b/src/kernel/qapplication.cpp
@@ -320,6 +320,7 @@ void qt_init( int *, char **, QApplication::Type );
void qt_cleanup();
#if defined(Q_WS_X11)
void qt_init( Display* dpy, Qt::HANDLE, Qt::HANDLE );
+void qt_init( int *, char **, Display* dpy, Qt::HANDLE, Qt::HANDLE );
#endif
Q_EXPORT bool qt_tryModalHelper( QWidget *widget, QWidget **rettop );
@@ -908,7 +909,7 @@ QApplication::QApplication(Display *dpy, int argc, char **argv,
qt_init( &argc, argv, GuiClient );
} else {
- qt_init(dpy, visual, colormap);
+ qt_init( &argc, argv, dpy, visual, colormap );
}
process_cmdline( &argc, argv );
diff --git a/src/kernel/qapplication_x11.cpp b/src/kernel/qapplication_x11.cpp
index 4a03d95..0f9d777 100644
--- a/src/kernel/qapplication_x11.cpp
+++ b/src/kernel/qapplication_x11.cpp
@@ -1639,7 +1639,7 @@ void qt_init_internal( int *argcptr, char **argv,
}
#endif
- if ( display ) {
+ if ( display && ((!argcptr) || (!argv)) ) {
// Qt part of other application
appForeignDpy = TRUE;
@@ -2439,6 +2439,11 @@ void qt_init( Display *display, Qt::HANDLE visual, Qt::HANDLE colormap )
qt_init_internal( 0, 0, display, visual, colormap );
}
+void qt_init( int *argcptr, char **argv, Display *display, Qt::HANDLE visual, Qt::HANDLE colormap )
+{
+ qt_init_internal( argcptr, argv, display, visual, colormap );
+}
+
/*****************************************************************************
qt_cleanup() - cleans up when the application is finished

@ -1,42 +0,0 @@
diff --git a/src/kernel/qapplication_x11.cpp b/src/kernel/qapplication_x11.cpp
index 0f9d777..50a2bac 100644
--- a/src/kernel/qapplication_x11.cpp
+++ b/src/kernel/qapplication_x11.cpp
@@ -1790,18 +1790,26 @@ void qt_init_internal( int *argcptr, char **argv,
}
}
#endif
- // Connect to X server
-
- if( qt_is_gui_used ) {
- if ( ( appDpy = XOpenDisplay(appDpyName) ) == 0 ) {
- qWarning( "%s: cannot connect to X server %s", appName,
- XDisplayName(appDpyName) );
- qApp = 0;
- exit( 1 );
- }
+ if ( display ) {
+ // Display connection already opened by another application
- if ( appSync ) // if "-sync" argument
- XSynchronize( appDpy, TRUE );
+ appForeignDpy = TRUE;
+ appDpy = display;
+ }
+ else {
+ // Connect to X server
+
+ if( qt_is_gui_used ) {
+ if ( ( appDpy = XOpenDisplay(appDpyName) ) == 0 ) {
+ qWarning( "%s: cannot connect to X server %s", appName,
+ XDisplayName(appDpyName) );
+ qApp = 0;
+ exit( 1 );
+ }
+
+ if ( appSync ) // if "-sync" argument
+ XSynchronize( appDpy, TRUE );
+ }
}
}
// Common code, regardless of whether display is foreign.

@ -1,45 +0,0 @@
diff --git a/src/kernel/qapplication_x11.cpp b/src/kernel/qapplication_x11.cpp
index 50a2bac..9236f3a 100644
--- a/src/kernel/qapplication_x11.cpp
+++ b/src/kernel/qapplication_x11.cpp
@@ -195,7 +195,7 @@ static const char *appBTNCol = 0; // application btn color
static const char *mwGeometry = 0; // main widget geometry
static const char *mwTitle = 0; // main widget title
//Ming-Che 10/10
-char *qt_ximServer = 0; // XIM Server will connect to
+Q_EXPORT char *qt_ximServer = 0; // XIM Server will connect to
static bool mwIconic = FALSE; // main widget iconified
//Ming-Che 10/10
static Display *appDpy = 0; // X11 application display
@@ -415,13 +415,13 @@ static bool qt_x11EventFilter( XEvent* ev )
#if !defined(QT_NO_XIM)
//XIM qt_xim = 0;
-XIMStyle qt_xim_style = 0;
-XIMStyle qt_xim_preferred_style = 0;
-static XIMStyle xim_default_style = XIMPreeditCallbacks | XIMStatusNothing;
+Q_EXPORT XIMStyle qt_xim_style = 0;
+Q_EXPORT XIMStyle qt_xim_preferred_style = 0;
+Q_EXPORT static XIMStyle xim_default_style = XIMPreeditCallbacks | XIMStatusNothing;
#endif
-int qt_ximComposingKeycode=0;
-QTextCodec * qt_input_mapper = 0;
+Q_EXPORT int qt_ximComposingKeycode=0;
+Q_EXPORT QTextCodec * qt_input_mapper = 0;
Q_EXPORT Time qt_x_time = CurrentTime;
Q_EXPORT Time qt_x_user_time = CurrentTime;
diff --git a/src/kernel/qinputcontext.h b/src/kernel/qinputcontext.h
index 99e5d37..5b2650a 100644
--- a/src/kernel/qinputcontext.h
+++ b/src/kernel/qinputcontext.h
@@ -69,7 +69,7 @@ struct QInputContextMenu {
};
-class QInputContext : public QObject
+class Q_EXPORT QInputContext : public QObject
{
Q_OBJECT
public:

@ -1,13 +0,0 @@
diff --git a/mkspecs/linux-g++-64/qmake.conf b/mkspecs/linux-g++-64/qmake.conf
index 716e5c0..f891b3e 100644
--- a/mkspecs/linux-g++-64/qmake.conf
+++ b/mkspecs/linux-g++-64/qmake.conf
@@ -45,7 +45,7 @@ QMAKE_LIBDIR =
QMAKE_INCDIR_X11 = /usr/X11R6/include
QMAKE_LIBDIR_X11 = /usr/X11R6/lib64
QMAKE_INCDIR_QT = $(QTDIR)/include
-QMAKE_LIBDIR_QT = $(QTDIR)/lib
+QMAKE_LIBDIR_QT = $(QTDIR)/lib64
QMAKE_INCDIR_OPENGL = /usr/X11R6/include
QMAKE_LIBDIR_OPENGL = /usr/X11R6/lib64

@ -1,253 +0,0 @@
diff --git a/translations/qt_zh-tw.ts b/translations/qt_zh-tw.ts
index 8260fe4..0f0eaa8 100644
--- a/translations/qt_zh-tw.ts
+++ b/translations/qt_zh-tw.ts
@@ -115,7 +115,7 @@
</message>
<message>
<source>Menu</source>
- <translation>Menu</translation>
+ <translation>選單</translation>
</message>
<message>
<source>Help</source>
@@ -337,7 +337,7 @@
</message>
<message>
<source>A&amp;lpha channel:</source>
- <translation>Alpha 色頻(&amp;L)</translation>
+ <translation>透明色頻(&amp;L)</translation>
</message>
<message>
<source>&amp;Basic colors</source>
@@ -429,11 +429,11 @@
</message>
<message>
<source>Read: %1</source>
- <translation>讀取: %1</translation>
+ <translation>讀取:%1</translation>
</message>
<message>
<source>Write: %1</source>
- <translation>寫入: %1</translation>
+ <translation>寫入:%1</translation>
</message>
<message>
<source>Cancel</source>
@@ -1194,7 +1194,7 @@ to
</message>
<message>
<source>Customize...</source>
- <translation>自訂...</translation>
+ <translation>自訂…</translation>
</message>
</context>
<context>
@@ -1264,7 +1264,7 @@ to
</message>
<message>
<source>&lt;h3&gt;About Qt&lt;/h3&gt;&lt;p&gt;This program uses Qt version %1.&lt;/p&gt;&lt;p&gt;Qt is a C++ toolkit for multiplatform GUI &amp;amp; application development.&lt;/p&gt;&lt;p&gt;Qt provides single-source portability across MS&amp;nbsp;Windows, Mac&amp;nbsp;OS&amp;nbsp;X, Linux, and all major commercial Unix variants.&lt;br&gt;Qt is also available for embedded devices.&lt;/p&gt;&lt;p&gt;Qt is a Trolltech product. See &lt;tt&gt;http://www.trolltech.com/qt/&lt;/tt&gt; for more information.&lt;/p&gt;</source>
- <translation>&lt;h3&gt;關於 Qt&lt;/h3&gt;&lt;p&gt;本程式使用 Qt 版本 %1。&lt;/p&gt;&lt;p&gt;Qt 是用於多平台 GUI 和應用程式開發的 C++ 工具套件。&lt;/p&gt;&lt;p&gt;Qt 為 MS&amp;nbsp;Windows、Mac&amp;nbsp;OS&amp;nbsp;X、Linux 和所有主要的商用 Unix 變異版本,提供跨平台的單一原始碼可攜性。&lt;br&gt;Qt 也可用於內嵌裝置。&lt;/p&gt;&lt;p&gt;Qt 是 Trolltech 的產品。如需詳細資訊,請參閱 &lt;tt&gt;http://www.trolltech.com/qt/&lt;/tt&gt;。&lt;/p&gt;</translation>
+ <translation>&lt;h3&gt;關於 Qt&lt;/h3&gt;&lt;p&gt;本程式使用 Qt 版本 %1。&lt;/p&gt;&lt;p&gt;Qt 是用於多平臺 GUI 和應用程式開發的 C++ 工具套件。&lt;/p&gt;&lt;p&gt;Qt 為 MS&amp;nbsp;Windows、Mac&amp;nbsp;OS&amp;nbsp;X、Linux 和所有主要的商用 Unix 變異版本,提供跨平臺的單一原始碼可攜性。&lt;br&gt;Qt 也可用於內嵌裝置。&lt;/p&gt;&lt;p&gt;Qt 是 Trolltech 的產品。如需詳細資訊,請參閱 &lt;tt&gt;http://www.trolltech.com/qt/&lt;/tt&gt;。&lt;/p&gt;</translation>
</message>
</context>
<context>
@@ -1282,7 +1282,7 @@ to
</message>
<message>
<source>Aliases: %1</source>
- <translation>別名: %1</translation>
+ <translation>別名:%1</translation>
</message>
<message>
<source>unknown</source>
@@ -1338,7 +1338,7 @@ to
</message>
<message>
<source>Browse...</source>
- <translation>瀏覽...</translation>
+ <translation>瀏覽…</translation>
</message>
<message>
<source>Options</source>
@@ -1386,123 +1386,123 @@ to
</message>
<message>
<source>A0 (841 x 1189 mm)</source>
- <translation>A0 (841 x 1189 mm)</translation>
+ <translation>A0 (841 x 1189 公釐)</translation>
</message>
<message>
<source>A1 (594 x 841 mm)</source>
- <translation>A1 (594 x 841 mm)</translation>
+ <translation>A1 (594 x 841 公釐)</translation>
</message>
<message>
<source>A2 (420 x 594 mm)</source>
- <translation>A2 (420 x 594 mm)</translation>
+ <translation>A2 (420 x 594 公釐)</translation>
</message>
<message>
<source>A3 (297 x 420 mm)</source>
- <translation>A3 (297 x 420 mm)</translation>
+ <translation>A3 (297 x 420 公釐)</translation>
</message>
<message>
<source>A4 (210x297 mm, 8.26x11.7 inches)</source>
- <translation>A4 (210x297 mm8.26x11.7 英吋)</translation>
+ <translation>A4 (210x297 公釐8.26x11.7 英吋)</translation>
</message>
<message>
<source>A5 (148 x 210 mm)</source>
- <translation>A5 (148 x 210 mm)</translation>
+ <translation>A5 (148 x 210 公釐)</translation>
</message>
<message>
<source>A6 (105 x 148 mm)</source>
- <translation>A6 (105 x 148 mm)</translation>
+ <translation>A6 (105 x 148 公釐)</translation>
</message>
<message>
<source>A7 (74 x 105 mm)</source>
- <translation>A7 (74 x 105 mm)</translation>
+ <translation>A7 (74 x 105 公釐)</translation>
</message>
<message>
<source>A8 (52 x 74 mm)</source>
- <translation>A8 (52 x 74 mm)</translation>
+ <translation>A8 (52 x 74 公釐)</translation>
</message>
<message>
<source>A9 (37 x 52 mm)</source>
- <translation>A9 (37 x 52 mm)</translation>
+ <translation>A9 (37 x 52 公釐)</translation>
</message>
<message>
<source>B0 (1000 x 1414 mm)</source>
- <translation>B0 (1000 x 1414 mm)</translation>
+ <translation>B0 (1000 x 1414 公釐)</translation>
</message>
<message>
<source>B1 (707 x 1000 mm)</source>
- <translation>B1 (707 x 1000 mm)</translation>
+ <translation>B1 (707 x 1000 公釐)</translation>
</message>
<message>
<source>B2 (500 x 707 mm)</source>
- <translation>B2 (500 x 707 mm)</translation>
+ <translation>B2 (500 x 707 公釐)</translation>
</message>
<message>
<source>B3 (353 x 500 mm)</source>
- <translation>B3 (353 x 500 mm)</translation>
+ <translation>B3 (353 x 500 公釐)</translation>
</message>
<message>
<source>B4 (250 x 353 mm)</source>
- <translation>B4 (250 x 353 mm)</translation>
+ <translation>B4 (250 x 353 公釐)</translation>
</message>
<message>
<source>B5 (176 x 250 mm, 6.93x9.84 inches)</source>
- <translation>B5 (176 x 250 mm6.93x9.84 英吋)</translation>
+ <translation>B5 (176 x 250 公釐6.93x9.84 英吋)</translation>
</message>
<message>
<source>B6 (125 x 176 mm)</source>
- <translation>B6 (125 x 176 mm)</translation>
+ <translation>B6 (125 x 176 公釐)</translation>
</message>
<message>
<source>B7 (88 x 125 mm)</source>
- <translation>B7 (88 x 125 mm)</translation>
+ <translation>B7 (88 x 125 公釐)</translation>
</message>
<message>
<source>B8 (62 x 88 mm)</source>
- <translation>B8 (62 x 88 mm)</translation>
+ <translation>B8 (62 x 88 公釐)</translation>
</message>
<message>
<source>B9 (44 x 62 mm)</source>
- <translation>B9 (44 x 62 mm)</translation>
+ <translation>B9 (44 x 62 公釐)</translation>
</message>
<message>
<source>B10 (31 x 44 mm)</source>
- <translation>B10 (31 x 44 mm)</translation>
+ <translation>B10 (31 x 44 公釐)</translation>
</message>
<message>
<source>C5E (163 x 229 mm)</source>
- <translation>C5E (163 x 229 mm)</translation>
+ <translation>C5E (163 x 229 公釐)</translation>
</message>
<message>
<source>DLE (110 x 220 mm)</source>
- <translation>DLE (110 x 220 mm)</translation>
+ <translation>DLE (110 x 220 公釐)</translation>
</message>
<message>
<source>Executive (7.5x10 inches, 191x254 mm)</source>
- <translation>Executive (7.5x10 英吋191x254 mm)</translation>
+ <translation>Executive (7.5x10 英吋191x254 公釐)</translation>
</message>
<message>
<source>Folio (210 x 330 mm)</source>
- <translation>Folio (210 x 330 mm)</translation>
+ <translation>Folio (210 x 330 公釐)</translation>
</message>
<message>
<source>Ledger (432 x 279 mm)</source>
- <translation>Ledger (432 x 279 mm)</translation>
+ <translation>Ledger (432 x 279 公釐)</translation>
</message>
<message>
<source>Legal (8.5x14 inches, 216x356 mm)</source>
- <translation>Legal (8.5x14 英吋216x356 mm)</translation>
+ <translation>Legal (8.5x14 英吋216x356 公釐)</translation>
</message>
<message>
<source>Letter (8.5x11 inches, 216x279 mm)</source>
- <translation>Letter (8.5x11 英吋216x279 mm)</translation>
+ <translation>Letter (8.5x11 英吋216x279 公釐)</translation>
</message>
<message>
<source>Tabloid (279 x 432 mm)</source>
- <translation>Tabloid (279 x 432 mm)</translation>
+ <translation>Tabloid (279 x 432 公釐)</translation>
</message>
<message>
<source>US Common #10 Envelope (105 x 241 mm)</source>
- <translation>美國一般 10 號信封 (105 x 241 mm)</translation>
+ <translation>美國一般 10 號信封 (105 x 241 公釐)</translation>
</message>
<message>
<source>Setup Printer</source>
@@ -1691,7 +1691,7 @@ to
<name>QToolBar</name>
<message>
<source>More...</source>
- <translation>其他...</translation>
+ <translation>其他…</translation>
</message>
</context>
<context>
@@ -1811,7 +1811,7 @@ to
</message>
<message>
<source>&amp;Help</source>
- <translation>說明(&amp;H)</translation>
+ <translation>求助(&amp;H)</translation>
</message>
</context>
<context>
@@ -1988,7 +1988,7 @@ to
</message>
<message>
<source>Paste special...</source>
- <translation>選擇性貼上...</translation>
+ <translation>選擇性貼上…</translation>
</message>
<message>
<source>Clear</source>

@ -1,73 +0,0 @@
diff --git a/src/kernel/qwidget_x11.cpp b/src/kernel/qwidget_x11.cpp
index 02fdebf..a095025 100644
--- a/src/kernel/qwidget_x11.cpp
+++ b/src/kernel/qwidget_x11.cpp
@@ -558,7 +558,10 @@ void QWidget::create( WId window, bool initializeWindow, bool destroyOldWindow)
wsa.save_under = True;
XChangeWindowAttributes( dpy, id, CWOverrideRedirect | CWSaveUnder,
&wsa );
- x11SetWindowType();
+ XClassHint class_hint;
+ class_hint.res_name = (char *) qAppName(); // application name
+ class_hint.res_class = (char *) qAppClass(); // application class
+ XSetClassHint( dpy, id, &class_hint );
} else if ( topLevel && !desktop ) { // top-level widget
QWidget *p = parentWidget(); // real parent
if (p)
@@ -621,8 +624,6 @@ void QWidget::create( WId window, bool initializeWindow, bool destroyOldWindow)
else
XDeleteProperty(dpy, id, qt_xa_motif_wm_hints);
- x11SetWindowType();
-
// set _NET_WM_WINDOW_STATE
if (curr_winstate > 0)
XChangeProperty(dpy, id, qt_net_wm_state, XA_ATOM, 32, PropModeReplace,
@@ -630,11 +631,6 @@ void QWidget::create( WId window, bool initializeWindow, bool destroyOldWindow)
else
XDeleteProperty(dpy, id, qt_net_wm_state);
- // set _NET_WM_PID
- long curr_pid = getpid();
- XChangeProperty(dpy, id, qt_net_wm_pid, XA_CARDINAL, 32, PropModeReplace,
- (unsigned char *) &curr_pid, 1);
-
#ifndef QT_NO_XSYNC
// set _NET_WM_SYNC_COUNTER
createSyncCounter();
@@ -646,19 +642,31 @@ void QWidget::create( WId window, bool initializeWindow, bool destroyOldWindow)
// when we create a toplevel widget, the frame strut should be dirty
fstrut_dirty = 1;
+ } else {
+ // non-toplevel widgets don't have a frame, so no need to
+ // update the strut
+ fstrut_dirty = 0;
+ }
+
+ if (initializeWindow && (popup || (topLevel && !desktop))) { // properties set on all toplevel windows
+ x11SetWindowType();
+
+ // set _NET_WM_PID
+ long curr_pid = getpid();
+ XChangeProperty(dpy, id, qt_net_wm_pid, XA_CARDINAL, 32, PropModeReplace,
+ (unsigned char *) &curr_pid, 1);
+
// declare the widget's object name as window role
XChangeProperty( dpy, id,
qt_window_role, XA_STRING, 8, PropModeReplace,
(unsigned char *)name(), qstrlen( name() ) );
// set client leader property
+ if ( !qt_x11_wm_client_leader )
+ qt_x11_create_wm_client_leader();
XChangeProperty( dpy, id, qt_wm_client_leader,
XA_WINDOW, 32, PropModeReplace,
(unsigned char *)&qt_x11_wm_client_leader, 1 );
- } else {
- // non-toplevel widgets don't have a frame, so no need to
- // update the strut
- fstrut_dirty = 0;
}
if ( initializeWindow ) {

@ -1,59 +0,0 @@
diff --git a/plugins/src/sqldrivers/odbc/odbc.pro b/plugins/src/sqldrivers/odbc/odbc.pro
index ac0cf3c..36d35b5 100644
--- a/plugins/src/sqldrivers/odbc/odbc.pro
+++ b/plugins/src/sqldrivers/odbc/odbc.pro
@@ -17,7 +17,7 @@ mac {
unix {
OBJECTS_DIR = .obj
!contains( LIBS, .*odbc.* ) {
- LIBS *= -liodbc
+ LIBS *= -lodbc
}
}
diff --git a/src/sql/drivers/odbc/qsql_odbc.cpp b/src/sql/drivers/odbc/qsql_odbc.cpp
index b09afd2..8b0b58b 100644
--- a/src/sql/drivers/odbc/qsql_odbc.cpp
+++ b/src/sql/drivers/odbc/qsql_odbc.cpp
@@ -61,19 +61,18 @@
#endif
// newer platform SDKs use SQLLEN instead of SQLINTEGER
-#ifdef SQLLEN
+#if defined(SQLLEN) || defined(Q_OS_WIN64) || defined(Q_OS_UNIX)
# define QSQLLEN SQLLEN
#else
# define QSQLLEN SQLINTEGER
#endif
-#ifdef SQLULEN
+#if defined(SQLULEN) || defined(Q_OS_WIN64) || defined(Q_OS_UNIX)
# define QSQLULEN SQLULEN
#else
# define QSQLULEN SQLUINTEGER
#endif
-
static const QSQLLEN COLNAMESIZE = 256;
//Map Qt parameter types to ODBC types
static const SQLSMALLINT qParamType[ 4 ] = { SQL_PARAM_INPUT, SQL_PARAM_INPUT, SQL_PARAM_OUTPUT, SQL_PARAM_INPUT_OUTPUT };
diff --git a/src/sql/qt_sql.pri b/src/sql/qt_sql.pri
index 5533c6f..17a6d40 100644
--- a/src/sql/qt_sql.pri
+++ b/src/sql/qt_sql.pri
@@ -110,13 +110,13 @@ sql {
mac {
!contains( LIBS, .*odbc.* ) {
- LIBS *= -liodbc
+ LIBS *= -lodbc
}
}
unix {
!contains( LIBS, .*odbc.* ) {
- LIBS *= -liodbc
+ LIBS *= -lodbc
}
}

@ -1,133 +0,0 @@
diff --git a/src/tools/qdatastream.cpp b/src/tools/qdatastream.cpp
index dfdc20e..2cdd5f7 100644
--- a/src/tools/qdatastream.cpp
+++ b/src/tools/qdatastream.cpp
@@ -544,7 +544,10 @@ QDataStream &QDataStream::operator>>( Q_INT8 &i )
i = (buf[2] & 0x07)+((buf[1] & 0x07) << 3)+((buf[0] & 0x07) << 6);
}
} else { // data or text
- i = (Q_INT8)dev->getch();
+ int ret = dev->getch();
+ if (ret >= 0) {
+ i = (Q_INT8)ret;
+ }
}
return *this;
}
@@ -574,9 +577,10 @@ QDataStream &QDataStream::operator>>( Q_INT16 &i )
} else { // swap bytes
register uchar *p = (uchar *)(&i);
char b[2];
- dev->readBlock( b, 2 );
- *p++ = b[1];
- *p = b[0];
+ if (dev->readBlock( b, 2 ) >= 2) {
+ *p++ = b[1];
+ *p = b[0];
+ }
}
return *this;
}
@@ -606,11 +610,12 @@ QDataStream &QDataStream::operator>>( Q_INT32 &i )
} else { // swap bytes
uchar *p = (uchar *)(&i);
char b[4];
- dev->readBlock( b, 4 );
- *p++ = b[3];
- *p++ = b[2];
- *p++ = b[1];
- *p = b[0];
+ if (dev->readBlock( b, 4 ) >= 4) {
+ *p++ = b[3];
+ *p++ = b[2];
+ *p++ = b[1];
+ *p = b[0];
+ }
}
return *this;
}
@@ -643,15 +648,16 @@ QDataStream &QDataStream::operator>>( Q_INT64 &i )
} else { // swap bytes
uchar *p = (uchar *)(&i);
char b[8];
- dev->readBlock( b, 8 );
- *p++ = b[7];
- *p++ = b[6];
- *p++ = b[5];
- *p++ = b[4];
- *p++ = b[3];
- *p++ = b[2];
- *p++ = b[1];
- *p = b[0];
+ if (dev->readBlock( b, 8 ) >= 8) {
+ *p++ = b[7];
+ *p++ = b[6];
+ *p++ = b[5];
+ *p++ = b[4];
+ *p++ = b[3];
+ *p++ = b[2];
+ *p++ = b[1];
+ *p = b[0];
+ }
}
return *this;
}
@@ -683,9 +689,11 @@ QDataStream &QDataStream::operator>>( Q_LONG &i )
} else { // swap bytes
register uchar *p = (uchar *)(&i);
char b[sizeof(Q_LONG)];
- dev->readBlock( b, sizeof(Q_LONG) );
- for ( int j = sizeof(Q_LONG); j; )
- *p++ = b[--j];
+ if (dev->readBlock( b, sizeof(Q_LONG) ) >= (int)sizeof(Q_LONG)) {
+ for ( int j = sizeof(Q_LONG); j; ) {
+ *p++ = b[--j];
+ }
+ }
}
return *this;
}
@@ -724,11 +732,12 @@ QDataStream &QDataStream::operator>>( float &f )
} else { // swap bytes
uchar *p = (uchar *)(&f);
char b[4];
- dev->readBlock( b, 4 );
- *p++ = b[3];
- *p++ = b[2];
- *p++ = b[1];
- *p = b[0];
+ if (dev->readBlock( b, 4 ) >= 4) {
+ *p++ = b[3];
+ *p++ = b[2];
+ *p++ = b[1];
+ *p = b[0];
+ }
}
return *this;
}
@@ -752,15 +761,16 @@ QDataStream &QDataStream::operator>>( double &f )
} else { // swap bytes
register uchar *p = (uchar *)(&f);
char b[8];
- dev->readBlock( b, 8 );
- *p++ = b[7];
- *p++ = b[6];
- *p++ = b[5];
- *p++ = b[4];
- *p++ = b[3];
- *p++ = b[2];
- *p++ = b[1];
- *p = b[0];
+ if (dev->readBlock( b, 8 ) >= 8) {
+ *p++ = b[7];
+ *p++ = b[6];
+ *p++ = b[5];
+ *p++ = b[4];
+ *p++ = b[3];
+ *p++ = b[2];
+ *p++ = b[1];
+ *p = b[0];
+ }
}
return *this;
}

@ -1,63 +0,0 @@
diff --git a/src/kernel/qwidget_x11.cpp b/src/kernel/qwidget_x11.cpp
index a095025..783034e 100644
--- a/src/kernel/qwidget_x11.cpp
+++ b/src/kernel/qwidget_x11.cpp
@@ -44,6 +44,7 @@
#include "qpaintdevicemetrics.h"
#include "qpainter.h"
#include "qbitmap.h"
+#include "qimage.h"
#include "qobjectlist.h"
#include "qlayout.h"
#include "qtextcodec.h"
@@ -1231,14 +1232,47 @@ void QWidget::setIcon( const QPixmap &pixmap )
}
Pixmap icon_pixmap = 0;
Pixmap mask_pixmap = 0;
+ QPixmap* pm = NULL;
if ( !pixmap.isNull() ) {
- QPixmap* pm = new QPixmap( pixmap );
+ if (pixmap.depth() == 24) {
+ pm = new QPixmap( pixmap );
+ }
+ else {
+ // With most window managers, only 24-bit icon pixmaps are allowed in the WM hints, otherwise corrupt icons will be displayed
+ // Convert provided pixmaps to 24-bit here
+ int w = pixmap.width();
+ int h = pixmap.height();
+ pm = new QPixmap( pixmap.width(), pixmap.height(), 24 );
+ QImage iconImage = pixmap.convertToImage();
+
+ // Load the new 24-bit RGB pixmap with data
+ GC gc;
+ pm->detach();
+ Qt::HANDLE pmHandle = pm->handle();
+ gc = XCreateGC(x11Display(), pmHandle, 0, 0);
+ for (int y = 0; y < h; ++y) {
+ QRgb *ls = (QRgb *)iconImage.scanLine( y );
+ for (int x = 0; x < w; ++x) {
+ QRgb l = ls[x];
+ int r = int( qRed( l ) );
+ int g = int( qGreen( l ) );
+ int b = int( qBlue( l ) );
+ ls[x] = qRgb( r, g, b );
+ XSetForeground(x11Display(), gc, (r << 16) | (g << 8) | b );
+ XDrawPoint(x11Display(), pmHandle, gc, x, y);
+ }
+ }
+ XFreeGC(x11Display(), gc);
+ }
+
extra->topextra->icon = pm;
- if ( !pm->mask() )
+ if ( !pm->mask() ) {
pm->setMask( pm->createHeuristicMask() ); // may do detach()
+ }
icon_pixmap = pm->handle();
- if ( pm->mask() )
+ if ( pm->mask() ) {
mask_pixmap = pm->mask()->handle();
+ }
}
XWMHints *h = XGetWMHints( x11Display(), winId() );
XWMHints wm_hints;

@ -1,62 +0,0 @@
diff --git a/src/kernel/qcolor_x11.cpp b/src/kernel/qcolor_x11.cpp
index eeaee5e..dbd039e 100644
--- a/src/kernel/qcolor_x11.cpp
+++ b/src/kernel/qcolor_x11.cpp
@@ -407,8 +407,14 @@ uint QColor::alloc( int screen )
b = sd->blue_shift > 0 ? b << sd->blue_shift : b >> -sd->blue_shift;
pix = (b & sd->blue_mask) | (g & sd->green_mask) | (r & sd->red_mask)
| ~(sd->blue_mask | sd->green_mask | sd->red_mask);
- if ( screen == QPaintDevice::x11AppScreen() )
+ if (QPaintDevice::x11AppDepth(screen) == 32) {
+ int a = qAlpha(d.argb);
+ pix = pix & 0x00ffffff;
+ pix = pix | (a << 24);
+ }
+ if ( screen == QPaintDevice::x11AppScreen() ) {
d.d32.pix = pix;
+ }
return pix;
}
QColorData *c = sd->colorDict->find( (long)(d.argb) );
diff --git a/src/kernel/qpainter_x11.cpp b/src/kernel/qpainter_x11.cpp
index 126c0d6..267887e 100644
--- a/src/kernel/qpainter_x11.cpp
+++ b/src/kernel/qpainter_x11.cpp
@@ -1842,16 +1842,24 @@ void QPainter::drawWinFocusRect( int x, int y, int w, int h,
RasterOp old_rop = (RasterOp)rop;
if ( xorPaint ) {
- if ( QColor::numBitPlanes() <= 8 )
+ if ( QColor::numBitPlanes() <= 8 ) {
setPen( QPen(color1, 0, Qt::FineDotLine) );
- else
+ }
+ else if ( QColor::numBitPlanes() <= 8 ) {
setPen( QPen(white, 0, Qt::FineDotLine) );
+ }
+ else {
+ setPen( QPen(QColor(qRgba(255,255,255,0)), 0, Qt::FineDotLine) );
+ }
setRasterOp( XorROP );
- } else {
- if ( qGray( bgColor.rgb() ) < 128 )
+ }
+ else {
+ if ( qGray( bgColor.rgb() ) < 128 ) {
setPen( QPen(white, 0, Qt::FineDotLine) );
- else
+ }
+ else {
setPen( QPen(black, 0, Qt::FineDotLine) );
+ }
}
if ( testf(ExtDev|VxF|WxF) ) {
@@ -1876,6 +1884,7 @@ void QPainter::drawWinFocusRect( int x, int y, int w, int h,
XSetLineAttributes( dpy, gc, 1, LineOnOffDash, CapButt, JoinMiter );
XDrawRectangle( dpy, hd, gc, x, y, w-1, h-1 );
+
XSetLineAttributes( dpy, gc, 0, LineSolid, CapButt, JoinMiter );
setRasterOp( old_rop );
setPen( old_pen );

@ -1,52 +0,0 @@
diff --git a/doc/html/qsqlcursor.html b/doc/html/qsqlcursor.html
index 3111cc5..1caaaa7 100644
--- a/doc/html/qsqlcursor.html
+++ b/doc/html/qsqlcursor.html
@@ -386,7 +386,7 @@ record.
<a name="x2446"></a> cur.<a href="#insert">insert</a>();
</pre>
<p> In the above example, a cursor is created on the 'prices' table
-and a pointer to the insert buffer is aquired using <a href="#primeInsert">primeInsert</a>().
+and a pointer to the insert buffer is acquired using <a href="#primeInsert">primeInsert</a>().
Each field's value is set to the desired value and then <a href="#insert">insert</a>()
is called to insert the data into the database. Remember: all edit
operations (insert(), <a href="#update">update</a>() and delete()) operate on the
diff --git a/doc/man/man3/qsqlcursor.3qt b/doc/man/man3/qsqlcursor.3qt
index c7067de..0a97aec 100644
--- a/doc/man/man3/qsqlcursor.3qt
+++ b/doc/man/man3/qsqlcursor.3qt
@@ -376,7 +376,7 @@ If \fIinvalidate\fR is TRUE (the default), the cursor will no longer be position
cur.insert();
.fi
.PP
-In the above example, a cursor is created on the 'prices' table and a pointer to the insert buffer is aquired using primeInsert(). Each field's value is set to the desired value and then insert() is called to insert the data into the database. Remember: all edit operations (insert(), update() and delete()) operate on the contents of the cursor edit buffer and not on the contents of the cursor itself.
+In the above example, a cursor is created on the 'prices' table and a pointer to the insert buffer is acquired using primeInsert(). Each field's value is set to the desired value and then insert() is called to insert the data into the database. Remember: all edit operations (insert(), update() and delete()) operate on the contents of the cursor edit buffer and not on the contents of the cursor itself.
.PP
See also setMode() and lastError().
.SH "bool QSqlCursor::isCalculated ( const QString & name ) const"
diff --git a/src/kernel/qinternal.cpp b/src/kernel/qinternal.cpp
index cf1e037..dfb2abc 100644
--- a/src/kernel/qinternal.cpp
+++ b/src/kernel/qinternal.cpp
@@ -497,7 +497,7 @@ void QSharedDoubleBuffer::flush()
}
/* \internal
- Aquire ownership of the shared double buffer pixmap, subject to the
+ Acquire ownership of the shared double buffer pixmap, subject to the
following conditions:
\list 1
diff --git a/src/sql/qsqlcursor.cpp b/src/sql/qsqlcursor.cpp
index a1be1f8..2ed963c 100644
--- a/src/sql/qsqlcursor.cpp
+++ b/src/sql/qsqlcursor.cpp
@@ -1007,7 +1007,7 @@ QString QSqlCursor::toString( const QSqlIndex& i, QSqlRecord* rec, const QString
\printuntil insert
In the above example, a cursor is created on the 'prices' table
- and a pointer to the insert buffer is aquired using primeInsert().
+ and a pointer to the insert buffer is acquired using primeInsert().
Each field's value is set to the desired value and then insert()
is called to insert the data into the database. Remember: all edit
operations (insert(), update() and delete()) operate on the

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>fatzer2@gmail.com</email>
<name>Alexander Golubev</name>
</maintainer>
</pkgmetadata>

@ -1,341 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=2
# *** Please remember to update qt3.eclass when revbumping this ***
inherit eutils flag-o-matic toolchain-funcs
DESCRIPTION="The Qt toolkit is a comprehensive C++ application development framework."
HOMEPAGE="http://qt.nokia.com/ http://www.trinitydesktop.org/"
# IMMQT_P="qt-x11-immodule-unified-qt3.3.8-20070321-gentoo"
TDE_VERSION="3.5.13.1"
TDE_PATCH_VERSION="3.5.13.2"
SRC_URI="http://www.mirrorservice.org/sites/trinitydesktop.org/trinity/releases/${TDE_VERSION}/dependencies/qt3-${TDE_VERSION}.tar.gz"
# immqt? ( mirror://gentoo/${IMMQT_P}.diff.bz2 )
# immqt-bc? ( mirror://gentoo/${IMMQT_P}.diff.bz2 )"
LICENSE="|| ( QPL-1.0 GPL-2 GPL-3 )"
SLOT="3"
KEYWORDS="x86 amd64"
IUSE="cups debug doc examples firebird ipv6 mysql nas nis opengl postgres sqlite xinerama"
# no odbc, immqt and immqt-bc support anymore.
DEPEND="
virtual/jpeg
>=media-libs/freetype-2
>=media-libs/libmng-1.0.9
media-libs/libpng
sys-libs/zlib
x11-libs/libXft
x11-libs/libXcursor
x11-libs/libXi
x11-libs/libXrandr
x11-libs/libSM
cups? ( net-print/cups )
firebird? ( dev-db/firebird )
mysql? ( virtual/mysql )
nas? ( >=media-libs/nas-1.5 )
opengl? ( virtual/opengl virtual/glu )
postgres? ( dev-db/postgresql )
xinerama? ( x11-libs/libXinerama )
!!<=dev-qt/qt-meta-3.3.8c"
RDEPEND="${RDEPEND}
x11-proto/inputproto
x11-proto/xextproto
xinerama? ( x11-proto/xineramaproto )"
# immqt? ( x11-proto/xineramaproto )
# immqt-bc? ( x11-proto/xineramaproto )"
#PDEPEND="odbc? ( ~dev-db/qt-unixODBC-$PV )"
S="${WORKDIR}/qt3-3.5.13.1"
QTBASE="/usr/qt/3"
pkg_setup() {
# if use immqt && use immqt-bc ; then
# ewarn
# ewarn "immqt and immqt-bc are exclusive. You cannot set both."
# ewarn "Please specify either immqt or immqt-bc."
# ewarn
# die
# elif use immqt ; then
# ewarn
# ewarn "You are going to compile binary imcompatible immodule for Qt. This means"
## ewarn "you have to recompile everything depending on Qt after you install it."
# ewarn "Be aware."
# ewarn
# fi
export QTDIR="${S}"
CXX=$(tc-getCXX)
if [[ ${CXX/g++/} != ${CXX} ]]; then
PLATCXX="g++"
elif [[ ${CXX/icpc/} != ${CXX} ]]; then
PLATCXX="icc"
else
die "Unknown compiler ${CXX}."
fi
case ${CHOST} in
*-freebsd*|*-dragonfly*)
PLATNAME="freebsd" ;;
*-openbsd*)
PLATNAME="openbsd" ;;
*-netbsd*)
PLATNAME="netbsd" ;;
*-darwin*)
PLATNAME="darwin" ;;
*-linux-*|*-linux)
PLATNAME="linux" ;;
*)
die "Unknown CHOST, no platform choosed."
esac
# probably this should be '*-64' for 64bit archs
# in a fully multilib environment (no compatibility symlinks)
export PLATFORM="${PLATNAME}-${PLATCXX}"
}
src_prepare() {
# apply trinity patches for minor releases
if [[ "$TDE_VERSION" != "$TDE_PATCH_VERSION" ]]; then
epatch "${FILESDIR}/trinity-$TDE_VERSION..$TDE_PATCH_VERSION/"
fi
# It's nice to able user apply his own patches.
epatch_user
sed -i -e 's:read acceptance:acceptance=yes:' configure
# Do not link with -rpath. See bug #75181.
find "${S}"/mkspecs -name qmake.conf | xargs \
sed -i -e 's:QMAKE_RPATH.*:QMAKE_RPATH =:'
# known working flags wrt #77623
use sparc && export CFLAGS="-O1" && export CXXFLAGS="${CFLAGS}"
# set c/xxflags and ldflags
strip-flags
append-flags -fno-strict-aliasing
sed -i -e "s:QMAKE_CFLAGS_RELEASE.*=.*:QMAKE_CFLAGS_RELEASE=${CFLAGS}:" \
-e "s:QMAKE_CXXFLAGS_RELEASE.*=.*:QMAKE_CXXFLAGS_RELEASE=${CXXFLAGS}:" \
-e "s:QMAKE_LFLAGS_RELEASE.*=.*:QMAKE_LFLAGS_RELEASE=${LDFLAGS}:" \
-e "s:\<QMAKE_CC\>.*=.*:QMAKE_CC=$(tc-getCC):" \
-e "s:\<QMAKE_CXX\>.*=.*:QMAKE_CXX=$(tc-getCXX):" \
-e "s:\<QMAKE_LINK\>.*=.*:QMAKE_LINK=$(tc-getCXX):" \
-e "s:\<QMAKE_LINK_SHLIB\>.*=.*:QMAKE_LINK_SHLIB=$(tc-getCXX):" \
"${S}"/mkspecs/${PLATFORM}/qmake.conf || die
if [ $(get_libdir) != "lib" ] ; then
sed -i -e "s:/lib$:/$(get_libdir):" \
"${S}"/mkspecs/${PLATFORM}/qmake.conf || die
fi
sed -i -e "s:CXXFLAGS.*=:CXXFLAGS=${CXXFLAGS} :" \
-e "s:LFLAGS.*=:LFLAGS=${LDFLAGS} :" \
"${S}"/qmake/Makefile.unix || die
# remove unnecessary headers
rm include/[^q]*.h
rm include/*_p.h
}
src_configure() {
export SYSCONF="${D}${QTBASE}"/etc/settings
# Let's just allow writing to these directories during Qt emerge
# as it makes Qt much happier.
addwrite "${QTBASE}/etc/settings"
addwrite "${HOME}/.qt"
[ "$(get_libdir)" != "lib" ] && myconf="${myconf} -L/usr/$(get_libdir)"
# unixODBC support is now a PDEPEND on dev-db/qt-unixODBC; see bug 14178.
use nas && myconf+=" -system-nas-sound"
use nis && myconf+=" -nis" || myconf+=" -no-nis"
use mysql && myconf+=" -plugin-sql-mysql -I/usr/include/mysql -L/usr/$(get_libdir)/mysql" || myconf+=" -no-sql-mysql"
use postgres && myconf+=" -plugin-sql-psql -I/usr/include/postgresql/server -I/usr/include/postgresql/pgsql -I/usr/include/postgresql/pgsql/server" || myconf+=" -no-sql-psql"
use firebird && myconf+=" -plugin-sql-ibase -I/opt/firebird/include" || myconf+=" -no-sql-ibase"
use sqlite && myconf+=" -plugin-sql-sqlite" || myconf+=" -no-sql-sqlite"
use cups && myconf+=" -cups" || myconf+=" -no-cups"
use opengl && myconf+=" -enable-module=opengl" || myconf+=" -disable-opengl"
use debug && myconf+=" -debug" || myconf+=" -release -no-g++-exceptions"
use xinerama && myconf+=" -xinerama" || myconf+=" -no-xinerama"
myconf="${myconf} -system-zlib -qt-gif"
use ipv6 && myconf+=" -ipv6" || myconf+=" -no-ipv6"
# use immqt-bc && myconf+=" -inputmethod"
# use immqt && myconf+=" -inputmethod -inputmethod-ext"
export YACC='byacc -d'
tc-export CC CXX
export LINK="$(tc-getCXX)"
./configure -sm -thread -stl -system-libjpeg -verbose -largefile \
-qt-imgfmt-{jpeg,mng,png} -tablet -system-libmng \
-system-libpng -xft -platform ${PLATFORM} -xplatform \
${PLATFORM} -xrender -prefix ${QTBASE} -libdir ${QTBASE}/$(get_libdir) \
-fast -no-sql-odbc ${myconf} -dlopen-opengl || die
emake src-qmake src-moc sub-src || die
export DYLD_LIBRARY_PATH="${S}/lib:/usr/X11R6/lib:${DYLD_LIBRARY_PATH}"
export LD_LIBRARY_PATH="${S}/lib:${LD_LIBRARY_PATH}"
emake sub-tools || die
if use examples; then
emake sub-tutorial sub-examples || die
fi
# Make the msg2qm utility (not made by default)
cd "${S}"/tools/msg2qm
../../bin/qmake
emake
# Make the qembed utility (not made by default)
cd "${S}"/tools/qembed
../../bin/qmake
}
src_install() {
local qt_version="$(grep VERSION src/qt.pro | awk '{ print $3 }')"
# binaries
into ${QTBASE}
dobin bin/*
dobin tools/msg2qm/msg2qm
dobin tools/qembed/qembed
# libraries
dolib.so lib/lib{editor,qassistantclient,designercore}.a
dolib.so lib/libqt-mt.la
dolib.so lib/libqt-mt.so.${qt_version} lib/libqui.so.1.0.0
cd "${D}"/${QTBASE}/$(get_libdir)
for x in libqui.so ; do
ln -s $x.1.0.0 $x.1.0
ln -s $x.1.0 $x.1
ln -s $x.1 $x
done
# version symlinks - 3.3.5->3.3->3->.so
ln -s libqt-mt.so.${qt_version} libqt-mt.so.3.3
ln -s libqt-mt.so.3.3 libqt-mt.so.3
ln -s libqt-mt.so.3 libqt-mt.so
# libqt -> libqt-mt symlinks
ln -s libqt-mt.so.${qt_version} libqt.so.${qt_version}
ln -s libqt-mt.so.3.3 libqt.so.3.3
ln -s libqt-mt.so.3 libqt.so.3
ln -s libqt-mt.so libqt.so
# plugins
cd "${S}"
local plugins=$(find plugins -name "lib*.so" -print)
for x in ${plugins}; do
exeinto ${QTBASE}/$(dirname ${x})
doexe ${x}
done
# Past this point just needs to be done once
is_final_abi || return 0
# includes
cd "${S}"
dodir ${QTBASE}/include/private
cp include/*\.h "${D}"/${QTBASE}/include/
cp include/private/*\.h "${D}"/${QTBASE}/include/private/
# prl files
sed -i -e "s:${S}:${QTBASE}:g" "${S}"/lib/*.prl
insinto ${QTBASE}/$(get_libdir)
doins "${S}"/lib/*.prl
# pkg-config file
insinto /usr/$(get_libdir)/pkgconfig
doins "${S}"/lib/*.pc
# List all the multilib libdirs
local libdirs
for alibdir in $(get_all_libdirs); do
libdirs="${libdirs}:${QTBASE}/${alibdir}"
done
# environment variables
cat <<EOF > "${T}"/45qt3
PATH=${QTBASE}/bin
ROOTPATH=${QTBASE}/bin
LDPATH=${libdirs:1}
QMAKESPEC=${PLATFORM}
MANPATH=${QTBASE}/doc/man
EOF
cat <<EOF > "${T}"/50qtdir3
QTDIR=${QTBASE}
EOF
cat <<EOF > "${T}"/50-qt3-revdep
SEARCH_DIRS="${QTBASE}"
EOF
insinto /etc/revdep-rebuild
doins "${T}"/50-qt3-revdep
doenvd "${T}"/45qt3 "${T}"/50qtdir3
if [ "${SYMLINK_LIB}" = "yes" ]; then
dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) ${QTBASE}/lib
fi
insinto ${QTBASE}/tools/designer
doins -r tools/designer/templates
insinto ${QTBASE}
doins -r translations
keepdir ${QTBASE}/etc/settings
if use doc; then
insinto ${QTBASE}
doins -r "${S}"/doc
fi
if use examples; then
find "${S}"/examples "${S}"/tutorial -name Makefile | \
xargs sed -i -e "s:${S}:${QTBASE}:g"
cp -r "${S}"/examples "${D}"${QTBASE}/
cp -r "${S}"/tutorial "${D}"${QTBASE}/
fi
# misc build reqs
insinto ${QTBASE}/mkspecs
doins -r "${S}"/mkspecs/${PLATFORM}
sed -e "s:${S}:${QTBASE}:g" \
"${S}"/.qmake.cache > "${D}"${QTBASE}/.qmake.cache
dodoc FAQ README README-QT.TXT changes*
# if use immqt || use immqt-bc ; then
# dodoc "${S}"/README.immodule
# fi
}
pkg_postinst() {
echo
elog "After a rebuild of Qt, it can happen that Qt plugins (such as Qt/KDE styles,"
elog "or widgets for the Qt designer) are no longer recognized. If this situation"
elog "occurs you should recompile the packages providing these plugins,"
elog "and you should also make sure that Qt and its plugins were compiled with the"
elog "same version of GCC. Packages that may need to be rebuilt are, for instance,"
elog "kde-base/kdelibs, kde-base/kdeartwork and kde-base/kdeartwork-styles."
elog "See http://doc.trolltech.com/3.3/plugins-howto.html for more infos."
echo
}

@ -1,341 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=2
# *** Please remember to update qt3.eclass when revbumping this ***
inherit eutils flag-o-matic toolchain-funcs
DESCRIPTION="The Qt toolkit is a comprehensive C++ application development framework."
HOMEPAGE="http://qt.nokia.com/ http://www.trinitydesktop.org/"
# IMMQT_P="qt-x11-immodule-unified-qt3.3.8-20070321-gentoo"
TDE_VERSION="3.5.13.1"
TDE_PATCH_VERSION="3.5.13.1"
SRC_URI="http://www.mirrorservice.org/sites/trinitydesktop.org/trinity/releases/${TDE_VERSION}/dependencies/qt3-${TDE_VERSION}.tar.gz"
# immqt? ( mirror://gentoo/${IMMQT_P}.diff.bz2 )
# immqt-bc? ( mirror://gentoo/${IMMQT_P}.diff.bz2 )"
LICENSE="|| ( QPL-1.0 GPL-2 GPL-3 )"
SLOT="3"
KEYWORDS="x86 amd64"
IUSE="cups debug doc examples firebird ipv6 mysql nas nis opengl postgres sqlite xinerama"
# no odbc, immqt and immqt-bc support anymore.
DEPEND="
virtual/jpeg
>=media-libs/freetype-2
>=media-libs/libmng-1.0.9
media-libs/libpng
sys-libs/zlib
x11-libs/libXft
x11-libs/libXcursor
x11-libs/libXi
x11-libs/libXrandr
x11-libs/libSM
cups? ( net-print/cups )
firebird? ( dev-db/firebird )
mysql? ( virtual/mysql )
nas? ( >=media-libs/nas-1.5 )
opengl? ( virtual/opengl virtual/glu )
postgres? ( dev-db/postgresql )
xinerama? ( x11-libs/libXinerama )
!!<=dev-qt/qt-meta-3.3.8c"
RDEPEND="${RDEPEND}
x11-proto/inputproto
x11-proto/xextproto
xinerama? ( x11-proto/xineramaproto )"
# immqt? ( x11-proto/xineramaproto )
# immqt-bc? ( x11-proto/xineramaproto )"
#PDEPEND="odbc? ( ~dev-db/qt-unixODBC-$PV )"
S="${WORKDIR}/qt3-3.5.13.1"
QTBASE="/usr/qt/3"
pkg_setup() {
# if use immqt && use immqt-bc ; then
# ewarn
# ewarn "immqt and immqt-bc are exclusive. You cannot set both."
# ewarn "Please specify either immqt or immqt-bc."
# ewarn
# die
# elif use immqt ; then
# ewarn
# ewarn "You are going to compile binary imcompatible immodule for Qt. This means"
## ewarn "you have to recompile everything depending on Qt after you install it."
# ewarn "Be aware."
# ewarn
# fi
export QTDIR="${S}"
CXX=$(tc-getCXX)
if [[ ${CXX/g++/} != ${CXX} ]]; then
PLATCXX="g++"
elif [[ ${CXX/icpc/} != ${CXX} ]]; then
PLATCXX="icc"
else
die "Unknown compiler ${CXX}."
fi
case ${CHOST} in
*-freebsd*|*-dragonfly*)
PLATNAME="freebsd" ;;
*-openbsd*)
PLATNAME="openbsd" ;;
*-netbsd*)
PLATNAME="netbsd" ;;
*-darwin*)
PLATNAME="darwin" ;;
*-linux-*|*-linux)
PLATNAME="linux" ;;
*)
die "Unknown CHOST, no platform choosed."
esac
# probably this should be '*-64' for 64bit archs
# in a fully multilib environment (no compatibility symlinks)
export PLATFORM="${PLATNAME}-${PLATCXX}"
}
src_prepare() {
# apply trinity patches for minor releases
if [[ "$TDE_VERSION" != "$TDE_PATCH_VERSION" ]]; then
epatch "${FILESDIR}/trinity-$TDE_VERSION..$TDE_PATCH_VERSION/"
fi
# It's nice to able user apply his own patches.
epatch_user
sed -i -e 's:read acceptance:acceptance=yes:' configure
# Do not link with -rpath. See bug #75181.
find "${S}"/mkspecs -name qmake.conf | xargs \
sed -i -e 's:QMAKE_RPATH.*:QMAKE_RPATH =:'
# known working flags wrt #77623
use sparc && export CFLAGS="-O1" && export CXXFLAGS="${CFLAGS}"
# set c/xxflags and ldflags
strip-flags
append-flags -fno-strict-aliasing
sed -i -e "s:QMAKE_CFLAGS_RELEASE.*=.*:QMAKE_CFLAGS_RELEASE=${CFLAGS}:" \
-e "s:QMAKE_CXXFLAGS_RELEASE.*=.*:QMAKE_CXXFLAGS_RELEASE=${CXXFLAGS}:" \
-e "s:QMAKE_LFLAGS_RELEASE.*=.*:QMAKE_LFLAGS_RELEASE=${LDFLAGS}:" \
-e "s:\<QMAKE_CC\>.*=.*:QMAKE_CC=$(tc-getCC):" \
-e "s:\<QMAKE_CXX\>.*=.*:QMAKE_CXX=$(tc-getCXX):" \
-e "s:\<QMAKE_LINK\>.*=.*:QMAKE_LINK=$(tc-getCXX):" \
-e "s:\<QMAKE_LINK_SHLIB\>.*=.*:QMAKE_LINK_SHLIB=$(tc-getCXX):" \
"${S}"/mkspecs/${PLATFORM}/qmake.conf || die
if [ $(get_libdir) != "lib" ] ; then
sed -i -e "s:/lib$:/$(get_libdir):" \
"${S}"/mkspecs/${PLATFORM}/qmake.conf || die
fi
sed -i -e "s:CXXFLAGS.*=:CXXFLAGS=${CXXFLAGS} :" \
-e "s:LFLAGS.*=:LFLAGS=${LDFLAGS} :" \
"${S}"/qmake/Makefile.unix || die
# remove unnecessary headers
rm include/[^q]*.h
rm include/*_p.h
}
src_configure() {
export SYSCONF="${D}${QTBASE}"/etc/settings
# Let's just allow writing to these directories during Qt emerge
# as it makes Qt much happier.
addwrite "${QTBASE}/etc/settings"
addwrite "${HOME}/.qt"
[ "$(get_libdir)" != "lib" ] && myconf="${myconf} -L/usr/$(get_libdir)"
# unixODBC support is now a PDEPEND on dev-db/qt-unixODBC; see bug 14178.
use nas && myconf+=" -system-nas-sound"
use nis && myconf+=" -nis" || myconf+=" -no-nis"
use mysql && myconf+=" -plugin-sql-mysql -I/usr/include/mysql -L/usr/$(get_libdir)/mysql" || myconf+=" -no-sql-mysql"
use postgres && myconf+=" -plugin-sql-psql -I/usr/include/postgresql/server -I/usr/include/postgresql/pgsql -I/usr/include/postgresql/pgsql/server" || myconf+=" -no-sql-psql"
use firebird && myconf+=" -plugin-sql-ibase -I/opt/firebird/include" || myconf+=" -no-sql-ibase"
use sqlite && myconf+=" -plugin-sql-sqlite" || myconf+=" -no-sql-sqlite"
use cups && myconf+=" -cups" || myconf+=" -no-cups"
use opengl && myconf+=" -enable-module=opengl" || myconf+=" -disable-opengl"
use debug && myconf+=" -debug" || myconf+=" -release -no-g++-exceptions"
use xinerama && myconf+=" -xinerama" || myconf+=" -no-xinerama"
myconf="${myconf} -system-zlib -qt-gif"
use ipv6 && myconf+=" -ipv6" || myconf+=" -no-ipv6"
# use immqt-bc && myconf+=" -inputmethod"
# use immqt && myconf+=" -inputmethod -inputmethod-ext"
export YACC='byacc -d'
tc-export CC CXX
export LINK="$(tc-getCXX)"
./configure -sm -thread -stl -system-libjpeg -verbose -largefile \
-qt-imgfmt-{jpeg,mng,png} -tablet -system-libmng \
-system-libpng -xft -platform ${PLATFORM} -xplatform \
${PLATFORM} -xrender -prefix ${QTBASE} -libdir ${QTBASE}/$(get_libdir) \
-fast -no-sql-odbc ${myconf} -dlopen-opengl || die
emake src-qmake src-moc sub-src || die
export DYLD_LIBRARY_PATH="${S}/lib:/usr/X11R6/lib:${DYLD_LIBRARY_PATH}"
export LD_LIBRARY_PATH="${S}/lib:${LD_LIBRARY_PATH}"
emake sub-tools || die
if use examples; then
emake sub-tutorial sub-examples || die
fi
# Make the msg2qm utility (not made by default)
cd "${S}"/tools/msg2qm
../../bin/qmake
emake
# Make the qembed utility (not made by default)
cd "${S}"/tools/qembed
../../bin/qmake
}
src_install() {
local qt_version="$(grep VERSION src/qt.pro | awk '{ print $3 }')"
# binaries
into ${QTBASE}
dobin bin/*
dobin tools/msg2qm/msg2qm
dobin tools/qembed/qembed
# libraries
dolib.so lib/lib{editor,qassistantclient,designercore}.a
dolib.so lib/libqt-mt.la
dolib.so lib/libqt-mt.so.${qt_version} lib/libqui.so.1.0.0
cd "${D}"/${QTBASE}/$(get_libdir)
for x in libqui.so ; do
ln -s $x.1.0.0 $x.1.0
ln -s $x.1.0 $x.1
ln -s $x.1 $x
done
# version symlinks - 3.3.5->3.3->3->.so
ln -s libqt-mt.so.${qt_version} libqt-mt.so.3.3
ln -s libqt-mt.so.3.3 libqt-mt.so.3
ln -s libqt-mt.so.3 libqt-mt.so
# libqt -> libqt-mt symlinks
ln -s libqt-mt.so.${qt_version} libqt.so.${qt_version}
ln -s libqt-mt.so.3.3 libqt.so.3.3
ln -s libqt-mt.so.3 libqt.so.3
ln -s libqt-mt.so libqt.so
# plugins
cd "${S}"
local plugins=$(find plugins -name "lib*.so" -print)
for x in ${plugins}; do
exeinto ${QTBASE}/$(dirname ${x})
doexe ${x}
done
# Past this point just needs to be done once
is_final_abi || return 0
# includes
cd "${S}"
dodir ${QTBASE}/include/private
cp include/*\.h "${D}"/${QTBASE}/include/
cp include/private/*\.h "${D}"/${QTBASE}/include/private/
# prl files
sed -i -e "s:${S}:${QTBASE}:g" "${S}"/lib/*.prl
insinto ${QTBASE}/$(get_libdir)
doins "${S}"/lib/*.prl
# pkg-config file
insinto /usr/$(get_libdir)/pkgconfig
doins "${S}"/lib/*.pc
# List all the multilib libdirs
local libdirs
for alibdir in $(get_all_libdirs); do
libdirs="${libdirs}:${QTBASE}/${alibdir}"
done
# environment variables
cat <<EOF > "${T}"/45qt3
PATH=${QTBASE}/bin
ROOTPATH=${QTBASE}/bin
LDPATH=${libdirs:1}
QMAKESPEC=${PLATFORM}
MANPATH=${QTBASE}/doc/man
EOF
cat <<EOF > "${T}"/50qtdir3
QTDIR=${QTBASE}
EOF
cat <<EOF > "${T}"/50-qt3-revdep
SEARCH_DIRS="${QTBASE}"
EOF
insinto /etc/revdep-rebuild
doins "${T}"/50-qt3-revdep
doenvd "${T}"/45qt3 "${T}"/50qtdir3
if [ "${SYMLINK_LIB}" = "yes" ]; then
dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) ${QTBASE}/lib
fi
insinto ${QTBASE}/tools/designer
doins -r tools/designer/templates
insinto ${QTBASE}
doins -r translations
keepdir ${QTBASE}/etc/settings
if use doc; then
insinto ${QTBASE}
doins -r "${S}"/doc
fi
if use examples; then
find "${S}"/examples "${S}"/tutorial -name Makefile | \
xargs sed -i -e "s:${S}:${QTBASE}:g"
cp -r "${S}"/examples "${D}"${QTBASE}/
cp -r "${S}"/tutorial "${D}"${QTBASE}/
fi
# misc build reqs
insinto ${QTBASE}/mkspecs
doins -r "${S}"/mkspecs/${PLATFORM}
sed -e "s:${S}:${QTBASE}:g" \
"${S}"/.qmake.cache > "${D}"${QTBASE}/.qmake.cache
dodoc FAQ README README-QT.TXT changes*
# if use immqt || use immqt-bc ; then
# dodoc "${S}"/README.immodule
# fi
}
pkg_postinst() {
echo
elog "After a rebuild of Qt, it can happen that Qt plugins (such as Qt/KDE styles,"
elog "or widgets for the Qt designer) are no longer recognized. If this situation"
elog "occurs you should recompile the packages providing these plugins,"
elog "and you should also make sure that Qt and its plugins were compiled with the"
elog "same version of GCC. Packages that may need to be rebuilt are, for instance,"
elog "kde-base/kdelibs, kde-base/kdeartwork and kde-base/kdeartwork-styles."
elog "See http://doc.trolltech.com/3.3/plugins-howto.html for more infos."
echo
}

@ -1,396 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# *** Please remember to update qt3.eclass when revbumping this ***
inherit eutils git-2 flag-o-matic toolchain-funcs
SRCTYPE="free"
DESCRIPTION="The Qt toolkit is a comprehensive C++ application development framework."
HOMEPAGE="http://qt.nokia.com/"
# IMMQT_P="qt-x11-immodule-unified-qt3.3.8-20070321-gentoo"
#SRC_URI="ftp://ftp.trolltech.com/qt/source/qt-x11-${SRCTYPE}-${PV}.tar.gz
# immqt? ( mirror://gentoo/${IMMQT_P}.diff.bz2 )
# immqt-bc? ( mirror://gentoo/${IMMQT_P}.diff.bz2 )"
EGIT_REPO_URI="http://scm.trinitydesktop.org/scm/git/qt3"
EGIT_BRANCH="master"
EGIT_PROJECT="trinity/qt3"
LICENSE="|| ( QPL-1.0 GPL-2 GPL-3 )"
SLOT="3"
KEYWORDS=
IUSE="cups debug doc examples firebird ipv6 mysql nas nis opengl postgres sqlite xinerama"
# no odbc, immqt and immqt-bc support anymore.
RDEPEND="
virtual/jpeg
>=media-libs/freetype-2
>=media-libs/libmng-1.0.9
media-libs/libpng
sys-libs/zlib
x11-libs/libXft
x11-libs/libXcursor
x11-libs/libXi
x11-libs/libXrandr
x11-libs/libSM
cups? ( net-print/cups )
firebird? ( dev-db/firebird )
mysql? ( virtual/mysql )
nas? ( >=media-libs/nas-1.5 )
opengl? ( virtual/opengl virtual/glu )
postgres? ( dev-db/postgresql )
xinerama? ( x11-libs/libXinerama )
!<=dev-qt/qt-meta-3.3.8c"
DEPEND="${RDEPEND}
x11-proto/inputproto
x11-proto/xextproto
xinerama? ( x11-proto/xineramaproto )"
# immqt? ( x11-proto/xineramaproto )
# immqt-bc? ( x11-proto/xineramaproto )"
#PDEPEND="odbc? ( ~dev-db/qt-unixODBC-$PV )"
#S="${WORKDIR}/qt-x11-${SRCTYPE}-${PV}"
QTBASE="/usr/qt/3"
pkg_setup() {
# if use immqt && use immqt-bc ; then
# ewarn
# ewarn "immqt and immqt-bc are exclusive. You cannot set both."
# ewarn "Please specify either immqt or immqt-bc."
# ewarn
# die
# elif use immqt ; then
# ewarn
# ewarn "You are going to compile binary imcompatible immodule for Qt. This means"
## ewarn "you have to recompile everything depending on Qt after you install it."
# ewarn "Be aware."
# ewarn
# fi
export QTDIR="${S}"
CXX=$(tc-getCXX)
if [[ ${CXX/g++/} != ${CXX} ]]; then
PLATCXX="g++"
elif [[ ${CXX/icpc/} != ${CXX} ]]; then
PLATCXX="icc"
else
die "Unknown compiler ${CXX}."
fi
case ${CHOST} in
*-freebsd*|*-dragonfly*)
PLATNAME="freebsd" ;;
*-openbsd*)
PLATNAME="openbsd" ;;
*-netbsd*)
PLATNAME="netbsd" ;;
*-darwin*)
PLATNAME="darwin" ;;
*-linux-*|*-linux)
PLATNAME="linux" ;;
*)
die "Unknown CHOST, no platform choosed."
esac
# probably this should be '*-64' for 64bit archs
# in a fully multilib environment (no compatibility symlinks)
export PLATFORM="${PLATNAME}-${PLATCXX}"
}
src_unpack() {
git-2_src_unpack
# mv "${S}/main/dependencies/qt3/" "${WORKDIR}/"
# rm -rf "${S}"
# mv "${WORKDIR}/qt3" "${S}"
#
# cd "${S}"
sed -i -e 's:read acceptance:acceptance=yes:' configure
# Do not link with -rpath. See bug #75181.
find "${S}"/mkspecs -name qmake.conf | xargs \
sed -i -e 's:QMAKE_RPATH.*:QMAKE_RPATH =:'
#
# # Patch for uic includehint errors (aseigo patch)
# epatch "${FILESDIR}"/qt-3.3.8-uic-fix.patch
#
# # KDE related patches
# epatch "${FILESDIR}"/0001-dnd_optimization.patch
# epatch "${FILESDIR}"/0002-dnd_active_window_fix.patch
# epatch "${FILESDIR}"/0038-dragobject-dont-prefer-unknown.patch
# epatch "${FILESDIR}"/0044-qscrollview-windowactivate-fix.diff
# epatch "${FILESDIR}"/0047-fix-kmenu-widget.diff
# epatch "${FILESDIR}"/0048-qclipboard_hack_80072.patch
#
# # ulibc patch (bug #100246)
# epatch "${FILESDIR}"/qt-ulibc.patch
#
# # xinerama patch: http://ktown.kde.org/~seli/xinerama/
# epatch "${FILESDIR}"/qt-3.3.8-seli-xinerama.patch
#
# # Visibility patch, apply only on GCC 4.1 and later for safety
# # [[ $(gcc-major-version)$(gcc-minor-version) -ge 41 ]] && \
# epatch "${FILESDIR}"/qt-3.3.8-visibility.patch
#
# # Fix configure to correctly pick up gcc version, bug 244732
# epatch "${FILESDIR}"/qt-3.3.8-fix-compiler-detection.patch
#
# # Fix CJK script rendering, bug 229567
# epatch "${FILESDIR}"/qt-3.3.8b-cjk-fix.patch
# now it's applyed to git version
# Fix libpng-1.4 issues
# epatch "${FILESDIR}"/qt-3.3.8-libpng14.patch
# if use immqt || use immqt-bc ; then
# epatch ../${IMMQT_P}.diff
# sh make-symlinks.sh || die "make symlinks failed"
#
# epatch "${FILESDIR}"/qt-3.3.8-immqt+gcc-4.3.patch
# fi
#
# if use mips; then
# epatch "${FILESDIR}"/qt-3.3.8-mips.patch
# fi
#
# # Add compatibility functions for the TQt interface
# if use trinity; then
# epatch "${FILESDIR}"/qt3_3.3.8c.diff
# epatch ""
# fi
#
# known working flags wrt #77623
use sparc && export CFLAGS="-O1" && export CXXFLAGS="${CFLAGS}"
# set c/xxflags and ldflags
strip-flags
append-flags -fno-strict-aliasing
#
# if [[ $( gcc-fullversion ) == "3.4.6" && gcc-specs-ssp ]] ; then
# ewarn "Appending -fno-stack-protector to CFLAGS/CXXFLAGS"
# append-flags -fno-stack-protector
# fi
#
sed -i -e "s:QMAKE_CFLAGS_RELEASE.*=.*:QMAKE_CFLAGS_RELEASE=${CFLAGS}:" \
-e "s:QMAKE_CXXFLAGS_RELEASE.*=.*:QMAKE_CXXFLAGS_RELEASE=${CXXFLAGS}:" \
-e "s:QMAKE_LFLAGS_RELEASE.*=.*:QMAKE_LFLAGS_RELEASE=${LDFLAGS}:" \
-e "s:\<QMAKE_CC\>.*=.*:QMAKE_CC=$(tc-getCC):" \
-e "s:\<QMAKE_CXX\>.*=.*:QMAKE_CXX=$(tc-getCXX):" \
-e "s:\<QMAKE_LINK\>.*=.*:QMAKE_LINK=$(tc-getCXX):" \
-e "s:\<QMAKE_LINK_SHLIB\>.*=.*:QMAKE_LINK_SHLIB=$(tc-getCXX):" \
"${S}"/mkspecs/${PLATFORM}/qmake.conf || die
if [ $(get_libdir) != "lib" ] ; then
sed -i -e "s:/lib$:/$(get_libdir):" \
"${S}"/mkspecs/${PLATFORM}/qmake.conf || die
fi
sed -i -e "s:CXXFLAGS.*=:CXXFLAGS=${CXXFLAGS} :" \
-e "s:LFLAGS.*=:LFLAGS=${LDFLAGS} :" \
"${S}"/qmake/Makefile.unix || die
}
src_compile() {
export SYSCONF="${D}${QTBASE}"/etc/settings
# Let's just allow writing to these directories during Qt emerge
# as it makes Qt much happier.
addwrite "${QTBASE}/etc/settings"
addwrite "${HOME}/.qt"
[ "$(get_libdir)" != "lib" ] && myconf="${myconf} -L/usr/$(get_libdir)"
# unixODBC support is now a PDEPEND on dev-db/qt-unixODBC; see bug 14178.
use nas && myconf+=" -system-nas-sound"
use nis && myconf+=" -nis" || myconf+=" -no-nis"
use mysql && myconf+=" -plugin-sql-mysql -I/usr/include/mysql -L/usr/$(get_libdir)/mysql" || myconf+=" -no-sql-mysql"
use postgres && myconf+=" -plugin-sql-psql -I/usr/include/postgresql/server -I/usr/include/postgresql/pgsql -I/usr/include/postgresql/pgsql/server" || myconf+=" -no-sql-psql"
use firebird && myconf+=" -plugin-sql-ibase -I/opt/firebird/include" || myconf+=" -no-sql-ibase"
use sqlite && myconf+=" -plugin-sql-sqlite" || myconf+=" -no-sql-sqlite"
use cups && myconf+=" -cups" || myconf+=" -no-cups"
use opengl && myconf+=" -enable-module=opengl" || myconf+=" -disable-opengl"
use debug && myconf+=" -debug" || myconf+=" -release -no-g++-exceptions"
use xinerama && myconf+=" -xinerama" || myconf+=" -no-xinerama"
myconf="${myconf} -system-zlib -qt-gif"
use ipv6 && myconf+=" -ipv6" || myconf+=" -no-ipv6"
# use immqt-bc && myconf+=" -inputmethod"
# use immqt && myconf+=" -inputmethod -inputmethod-ext"
export YACC='byacc -d'
tc-export CC CXX
export LINK="$(tc-getCXX)"
einfo ./configure -sm -thread -stl -system-libjpeg -verbose -largefile \
-qt-imgfmt-{jpeg,mng,png} -tablet -system-libmng \
-system-libpng -xft -platform ${PLATFORM} -xplatform \
${PLATFORM} -xrender -prefix ${QTBASE} -libdir ${QTBASE}/$(get_libdir) \
-fast -no-sql-odbc ${myconf} -dlopen-opengl || die
./configure -sm -thread -stl -system-libjpeg -verbose -largefile \
-qt-imgfmt-{jpeg,mng,png} -tablet -system-libmng \
-system-libpng -xft -platform ${PLATFORM} -xplatform \
${PLATFORM} -xrender -prefix ${QTBASE} -libdir ${QTBASE}/$(get_libdir) \
-fast -no-sql-odbc ${myconf} -dlopen-opengl || die
emake src-qmake src-moc sub-src || die
export DYLD_LIBRARY_PATH="${S}/lib:/usr/X11R6/lib:${DYLD_LIBRARY_PATH}"
export LD_LIBRARY_PATH="${S}/lib:${LD_LIBRARY_PATH}"
emake sub-tools || die
if use examples; then
emake sub-tutorial sub-examples || die
fi
# Make the msg2qm utility (not made by default)
cd "${S}"/tools/msg2qm
../../bin/qmake
emake
# Make the qembed utility (not made by default)
cd "${S}"/tools/qembed
../../bin/qmake
emake
}
src_install() {
local qt_version="$(grep VERSION src/qt.pro | awk '{ print $3 }')"
# binaries
into ${QTBASE}
dobin bin/*
dobin tools/msg2qm/msg2qm
dobin tools/qembed/qembed
# libraries
dolib.so lib/lib{editor,qassistantclient,designercore}.a
dolib.so lib/libqt-mt.la
dolib.so lib/libqt-mt.so.${qt_version} lib/libqui.so.1.0.0
cd "${D}"/${QTBASE}/$(get_libdir)
for x in libqui.so ; do
ln -s $x.1.0.0 $x.1.0
ln -s $x.1.0 $x.1
ln -s $x.1 $x
done
# version symlinks - 3.3.5->3.3->3->.so
ln -s libqt-mt.so.${qt_version} libqt-mt.so.3.3
ln -s libqt-mt.so.3.3 libqt-mt.so.3
ln -s libqt-mt.so.3 libqt-mt.so
# libqt -> libqt-mt symlinks
ln -s libqt-mt.so.${qt_version} libqt.so.${qt_version}
ln -s libqt-mt.so.3.3 libqt.so.3.3
ln -s libqt-mt.so.3 libqt.so.3
ln -s libqt-mt.so libqt.so
# plugins
cd "${S}"
local plugins=$(find plugins -name "lib*.so" -print)
for x in ${plugins}; do
exeinto ${QTBASE}/$(dirname ${x})
doexe ${x}
done
# Past this point just needs to be done once
is_final_abi || return 0
# includes
cd "${S}"
dodir ${QTBASE}/include/private
cp include/*\.h "${D}"/${QTBASE}/include/
cp include/private/*\.h "${D}"/${QTBASE}/include/private/
# prl files
sed -i -e "s:${S}:${QTBASE}:g" "${S}"/lib/*.prl
insinto ${QTBASE}/$(get_libdir)
doins "${S}"/lib/*.prl
# pkg-config file
insinto /usr/$(get_libdir)/pkgconfig
doins "${S}"/lib/*.pc
# List all the multilib libdirs
local libdirs
for alibdir in $(get_all_libdirs); do
libdirs="${libdirs}:${QTBASE}/${alibdir}"
done
# environment variables
cat <<EOF > "${T}"/45qt3
PATH=${QTBASE}/bin
ROOTPATH=${QTBASE}/bin
LDPATH=${libdirs:1}
QMAKESPEC=${PLATFORM}
MANPATH=${QTBASE}/doc/man
EOF
cat <<EOF > "${T}"/50qtdir3
QTDIR=${QTBASE}
EOF
cat <<EOF > "${T}"/50-qt3-revdep
SEARCH_DIRS="${QTBASE}"
EOF
insinto /etc/revdep-rebuild
doins "${T}"/50-qt3-revdep
doenvd "${T}"/45qt3 "${T}"/50qtdir3
if [ "${SYMLINK_LIB}" = "yes" ]; then
dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) ${QTBASE}/lib
fi
insinto ${QTBASE}/tools/designer
doins -r tools/designer/templates
insinto ${QTBASE}
doins -r translations
keepdir ${QTBASE}/etc/settings
if use doc; then
insinto ${QTBASE}
doins -r "${S}"/doc
fi
if use examples; then
find "${S}"/examples "${S}"/tutorial -name Makefile | \
xargs sed -i -e "s:${S}:${QTBASE}:g"
cp -r "${S}"/examples "${D}"${QTBASE}/
cp -r "${S}"/tutorial "${D}"${QTBASE}/
fi
# misc build reqs
insinto ${QTBASE}/mkspecs
doins -r "${S}"/mkspecs/${PLATFORM}
sed -e "s:${S}:${QTBASE}:g" \
"${S}"/.qmake.cache > "${D}"${QTBASE}/.qmake.cache
dodoc FAQ README README-QT.TXT changes*
# if use immqt || use immqt-bc ; then
# dodoc "${S}"/README.immodule
# fi
}
pkg_postinst() {
echo
elog "After a rebuild of Qt, it can happen that Qt plugins (such as Qt/KDE styles,"
elog "or widgets for the Qt designer) are no longer recognized. If this situation"
elog "occurs you should recompile the packages providing these plugins,"
elog "and you should also make sure that Qt and its plugins were compiled with the"
elog "same version of GCC. Packages that may need to be rebuilt are, for instance,"
elog "kde-base/kdelibs, kde-base/kdeartwork and kde-base/kdeartwork-styles."
elog "See http://doc.trolltech.com/3.3/plugins-howto.html for more infos."
echo
}

@ -1 +0,0 @@
AUX qt4-tqt-theme-engine-suppress-annoying-warning-about-qt-version.pacth 1094 SHA256 985b992afab2ddb18850ec56c60bbff087739f1ee25ae5eb26f79b21904f7a2e SHA512 904833bfe34979953157565ce2d44bdd48b66f2292dac20eefbb8e6f5a4774738cd5b3fd0f157871cf87a7ad328fbbe9707a76f1a162616d17696128e460ad85 WHIRLPOOL df9b8e3d74b23c96f109c267c572e25225c15b28fc0c635f4f1ef1bd922aa747ab14ca61deff0ace91801a2029427dce7d0ff937b6bfdbbfa9d942f74a1ada1b

@ -1,17 +0,0 @@
diff --git a/plugin/simplestyle.cpp b/plugin/simplestyle.cpp
index e876c45..1ea75fc 100644
--- a/plugin/simplestyle.cpp
+++ b/plugin/simplestyle.cpp
@@ -247,12 +247,6 @@ Qt4TDEStyle::Qt4TDEStyle() : m_aboutData(NULL), m_tqApplication(NULL), m_tdeAppl
qt_filedialog_save_filename_hook = &TDEFileDialogSaveName;
qt_filedialog_existing_directory_hook = &TDEFileDialogSelectDirectory;
#endif // INTEGRATE_WITH_TDE
-
-#if QT_VERSION > 0x040800
- // How a bug of this magnitude could go undetected in a major Qt4 release is beyond me...I guess cell phones don't generally use thin lines in their widgets!?
- // This is Yet Another Example of why TDE cannot rely on Qt4 for anything of any real importance
- printf("[WARNING] Qt4 >= Qt 4.8.0 detected; you are likely affected by these Qt4 bugs:\n[WARNING] https://bugreports.qt-project.org/browse/QTBUG-25896\n[WARNING] https://bugreports.qt-project.org/browse/QTBUG-26013\n[WARNING] There is no known workaround for this problem; your Qt4 application will display with numerous graphical glitches.\n");
-#endif
}
Qt4TDEStyle::~Qt4TDEStyle()

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>fatzer2@gmail.com</email>
<name>Alexander Golubev</name>
</maintainer>
</pkgmetadata>

@ -1,67 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
TRINITY_MODULE_TYPE="dependencies"
TRINITY_MODULE_NAME="qt4-tqt-theme-engine"
inherit trinity-base qt4-r2
DESCRIPTION="A trinity Qt4 theme engine using tqt as a backend"
HOMEPAGE="http://trinitydesktop.org/"
LICENSE="GPL-2 LGPL-2"
KEYWORDS=""
SLOT="0"
IUSE=""
DEPEND="dev-qt/tqtinterface
>=dev-qt/qtcore-4.8.4:4
>=dev-qt/qtgui-4.8.4:4"
RDEPEND="$DEPEND"
need-trinity 9999
src_unpack() {
trinity-base_src_unpack
}
src_prepare() {
local pro libdirs d
trinity-base_src_prepare
for d in $(get-trinity-libdirs); do
libdirs+=" -L$d"
done
for d in $(get_all_libdirs); do
libdirs+=" -L/usr/tqt3/$d"
done
for pro in ./plugin/plugin.pro ./lib/lib.pro ./examples/tqt3reference/stylewindow.pro; do
sed -i -e 's!\(^INCLUDEPATH += \)/usr/include/tqt3!\1/usr/tqt3/include!;' \
-e 's!\(^INCLUDEPATH += \)/opt/trinity/include!\1'"$TDEDIR/include"'!;' \
-e '/\(^LIBS += \)/s!!\1 '"$libdirs"'!' $pro || die "sed failed"
done
epatch "${FILESDIR}/qt4-tqt-theme-engine-suppress-annoying-warning-about-qt-version.pacth"
}
src_configure() {
qt4-r2_src_configure
}
src_compile() {
qt4-r2_src_compile
}
src_install() {
qt4-r2_src_install
}
pkg_postinst() {
ewarn "With Qt >= 4.8.0 you are likely affected by these Qt4 bug:"
ewarn " https://bugreports.qt.io/browse/QTBUG-25896"
ewarn "To workaround this please make sure to set your Qt graphics system to \"native\""
ewarn "rather than \"opengl\". Otherwice Qt4 applications may be displayed with numerous"
ewarn "graphical glitches."
}

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>fatzer2@gmail.com</email>
<name>Alexander Golubev</name>
</maintainer>
</pkgmetadata>

@ -1,306 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit eutils git-2 flag-o-matic toolchain-funcs
SRCTYPE="free"
DESCRIPTION="The Trinitie's Qt toolkit fork."
HOMEPAGE="http://trinitydesktop.org/"
# IMMTQT_P="tqt-x11-immodule-unified-tqt3.3.8-20070321-gentoo"
#SRC_URI="ftp://ftp.trolltech.com/tqt/source/tqt-x11-${SRCTYPE}-${PV}.tar.gz
# immtqt? ( mirror://gentoo/${IMMTQT_P}.diff.bz2 )
# immtqt-bc? ( mirror://gentoo/${IMMTQT_P}.diff.bz2 )"
EGIT_REPO_URI="http://scm.trinitydesktop.org/scm/git/tqt3"
EGIT_PROJECT="trinity/tqt3"
LICENSE="|| ( QPL-1.0 GPL-2 GPL-3 )"
SLOT="3"
KEYWORDS=
IUSE="cups debug doc examples firebird ipv6 mysql nas nis opengl postgres sqlite xinerama"
# no odbc, immtqt and immtqt-bc support anymore.
# TODO: optional support for xrender and xrandr
RDEPEND="
virtual/jpeg:=
>=media-libs/freetype-2
>=media-libs/libmng-1.0.9
media-libs/libpng:=
sys-libs/zlib
x11-libs/libXft
x11-libs/libXcursor
x11-libs/libXi
x11-libs/libXrandr
x11-libs/libSM
cups? ( net-print/cups )
firebird? ( dev-db/firebird )
mysql? ( virtual/mysql )
nas? ( >=media-libs/nas-1.5 )
opengl? ( virtual/opengl virtual/glu )
postgres? ( dev-db/postgresql:= )
xinerama? ( x11-libs/libXinerama )
!dev-qt/qt:3
!dev-qt/qt-meta:3"
DEPEND="${RDEPEND}
x11-proto/inputproto
x11-proto/xextproto
xinerama? ( x11-proto/xineramaproto )"
# immtqt? ( x11-proto/xineramaproto )
# immtqt-bc? ( x11-proto/xineramaproto )"
#PDEPEND="odbc? ( ~dev-db/tqt-unixODBC-$PV )"
#S="${WORKDIR}/tqt-x11-${SRCTYPE}-${PV}"
TQTBASE="/usr/tqt3"
pkg_setup() {
# if use immtqt && use immtqt-bc ; then
# ewarn
# ewarn "immtqt and immtqt-bc are exclusive. You cannot set both."
# ewarn "Please specify either immtqt or immtqt-bc."
# ewarn
# die
# elif use immtqt ; then
# ewarn
# ewarn "You are going to compile binary imcompatible immodule for Qt. This means"
## ewarn "you have to recompile everything depending on Qt after you install it."
# ewarn "Be aware."
# ewarn
# fi
export QTDIR="${S}"
CXX=$(tc-getCXX)
if [[ ${CXX/g++/} != ${CXX} ]]; then
PLATCXX="g++"
elif [[ ${CXX/icpc/} != ${CXX} ]]; then
PLATCXX="icc"
else
die "Unknown compiler ${CXX}."
fi
case ${CHOST} in
*-freebsd*|*-dragonfly*)
PLATNAME="freebsd" ;;
*-openbsd*)
PLATNAME="openbsd" ;;
*-netbsd*)
PLATNAME="netbsd" ;;
*-darwin*)
PLATNAME="darwin" ;;
*-linux-*|*-linux)
PLATNAME="linux" ;;
*)
die "Unknown CHOST, no platform choosed."
esac
if [[ "$CHOST" == *64* && "$PLATCXX" == "g++" ]]; then
export PLATFORM="${PLATNAME}-${PLATCXX}-64"
else
export PLATFORM="${PLATNAME}-${PLATCXX}"
fi
}
src_prepare() {
# Apply user-provided patches
epatch_user
# Do not link with -rpath. See bug #75181.
find "${S}"/mkspecs -name qmake.conf | xargs \
sed -i -e 's:QMAKE_RPATH.*:QMAKE_RPATH =:'
# if use immtqt || use immtqt-bc ; then
# epatch ../${IMMTQT_P}.diff
# sh make-symlinks.sh || die "make symlinks failed"
#
# epatch "${FILESDIR}"/tqt-3.3.8-immtqt+gcc-4.3.patch
# fi
# set c/xxflags and ldflags
strip-flags
append-flags -fno-strict-aliasing
sed -i -e "s:QMAKE_CFLAGS_RELEASE.*=.*:QMAKE_CFLAGS_RELEASE=${CFLAGS}:" \
-e "s:QMAKE_CXXFLAGS_RELEASE.*=.*:QMAKE_CXXFLAGS_RELEASE=${CXXFLAGS}:" \
-e "s:QMAKE_LFLAGS_RELEASE.*=.*:QMAKE_LFLAGS_RELEASE=${LDFLAGS}:" \
-e "s:\<QMAKE_CC\>.*=.*:QMAKE_CC=$(tc-getCC):" \
-e "s:\<QMAKE_CXX\>.*=.*:QMAKE_CXX=$(tc-getCXX):" \
-e "s:\<QMAKE_LINK\>.*=.*:QMAKE_LINK=$(tc-getCXX):" \
-e "s:\<QMAKE_LINK_SHLIB\>.*=.*:QMAKE_LINK_SHLIB=$(tc-getCXX):" \
-e "s:\<QMAKE_STRIP\>.*=.*:QMAKE_STRIP=:" \
"${S}/mkspecs/${PLATFORM}/qmake.conf" || die
if [ $(get_libdir) != "lib" ] ; then
sed -i -e "s:/lib$:/$(get_libdir):" \
"${S}/mkspecs/${PLATFORM}/qmake.conf" || die
fi
sed -i -e "s:CXXFLAGS.*=:CXXFLAGS=${CXXFLAGS} :" \
-e "s:LFLAGS.*=:LFLAGS=${LDFLAGS} :" \
"${S}/qmake/Makefile.unix" || die
# remove docs from install if we don't need it
use doc || sed -i -e '/INSTALLS.*=.*htmldocs/d' \
"${S}/src/qt_install.pri"
}
src_configure() {
export SYSCONF="${D}${TQTBASE}"/etc/settings
# Let's just allow writing to these directories during Qt emerge
# as it makes Qt much happier.
addwrite "${TQTBASE}/etc/settings"
addwrite "${HOME}/.qt"
addwrite "${HOME}/.tqt"
# common opts
myconf=" -sm -thread -stl -no-verbose -no-verbose -verbose -largefile -tablet"
myconf+=" $(echo -{qt-imgfmt-,system-lib}{jpeg,mng,png})"
myconf+=" -platform ${PLATFORM} -xplatform ${PLATFORM}"
myconf+=" -xft -xrender -prefix ${TQTBASE}"
myconf+=" -libdir ${TQTBASE}/$(get_libdir) -fast -no-sql-odbc"
[ "$(get_libdir)" != "lib" ] && myconf+="${myconf} -L/usr/$(get_libdir)"
# unixODBC support is now a PDEPEND on dev-db/tqt-unixODBC; see bug 14178.
use nas && myconf+=" -system-nas-sound"
use nis && myconf+=" -nis" || myconf+=" -no-nis"
use mysql && myconf+=" -plugin-sql-mysql -I/usr/include/mysql -L/usr/$(get_libdir)/mysql" || myconf+=" -no-sql-mysql"
use postgres && myconf+=" -plugin-sql-psql -I/usr/include/postgresql/server -I/usr/include/postgresql/pgsql -I/usr/include/postgresql/pgsql/server" || myconf+=" -no-sql-psql"
use firebird && myconf+=" -plugin-sql-ibase -I/opt/firebird/include" || myconf+=" -no-sql-ibase"
use sqlite && myconf+=" -plugin-sql-sqlite" || myconf+=" -no-sql-sqlite"
use cups && myconf+=" -cups" || myconf+=" -no-cups"
use opengl && myconf+=" -enable-module=opengl" || myconf+=" -disable-opengl"
use debug && myconf+=" -debug" || myconf+=" -release -no-g++-exceptions"
use xinerama && myconf+=" -xinerama" || myconf+=" -no-xinerama"
myconf+=" -system-zlib -qt-gif"
use ipv6 && myconf+=" -ipv6" || myconf+=" -no-ipv6"
# use immtqt-bc && myconf+=" -inputmethod"
# use immtqt && myconf+=" -inputmethod -inputmethod-ext"
myconf+=" -dlopen-opengl"
export YACC='byacc -d'
tc-export CC CXX
export LINK="$(tc-getCXX)"
einfo ./configure ${myconf}
./configure ${myconf} || die
}
src_compile() {
emake src-qmake src-moc sub-src
export DYLD_LIBRARY_PATH="${S}/lib:/usr/X11R6/lib:${DYLD_LIBRARY_PATH}"
export LD_LIBRARY_PATH="${S}/lib:${LD_LIBRARY_PATH}"
emake sub-tools
if use examples; then
emake sub-tutorial sub-examples
fi
# Make the msg2qm utility (not made by default)
cd "${S}"/tools/msg2tqm
../../bin/tqmake || die
emake
# Make the qembed utility (not made by default)
cd "${S}"/tools/qembed
../../bin/tqmake || die
emake
}
src_install() {
emake INSTALL_ROOT="${D}" install
# Next executables are missing to be installed:
# /usr/qt/3/bin/findtr
# /usr/qt/3/bin/conv2ui
# /usr/qt/3/bin/qt20fix
# /usr/qt/3/bin/qtrename140
# I'm not sure if they are really needed
# fix pkgconfig location
dodir /usr/$(get_libdir)
mv "${D}${TQTBASE}/$(get_libdir)/pkgconfig" "${D}/usr/$(get_libdir)/"
# cleanup a bad symlink created by crappy install scrypt
rm -r "${D}${TQTBASE}/mkspec/${PLATFORM}/${PLATFORM}"
# List all the multilib libdirs
local libdirs
for alibdir in $(get_all_libdirs); do
libdirs="${libdirs}:${TQTBASE}/${alibdir}"
done
# environment variables
cat <<EOF > "${T}"/44tqt3
PATH=${TQTBASE}/bin
ROOTPATH=${TQTBASE}/bin
LDPATH=${libdirs:1}
MANPATH=${TQTBASE}/doc/man
EOF
cat <<EOF > "${T}"/44-tqt3-revdep
SEARCH_DIRS="${TQTBASE}"
EOF
insinto /etc/revdep-rebuild
doins "${T}"/44-tqt3-revdep
doenvd "${T}"/44tqt3
if [ "${SYMLINK_LIB}" = "yes" ]; then
dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) ${TQTBASE}/lib
fi
# insinto ${TQTBASE}/tools/designer
# doins -r tools/designer/templates
#
# insinto ${TQTBASE}
# doins -r translations
#
keepdir ${TQTBASE}/etc/settings
if use doc; then
insinto ${TQTBASE}
doins -r "${S}"/doc
fi
if use examples; then
find "${S}"/examples "${S}"/tutorial -name Makefile | \
xargs sed -i -e "s:${S}:${TQTBASE}:g"
cp -r "${S}"/examples "${D}"${TQTBASE}/
cp -r "${S}"/tutorial "${D}"${TQTBASE}/
fi
# # misc build reqs
# insinto ${TQTBASE}/mkspecs
# doins -r "${S}"/mkspecs/${PLATFORM}
sed -e "s:${S}:${TQTBASE}:g" \
"${S}"/.qmake.cache > "${D}"${TQTBASE}/.qmake.cache
dodoc FAQ README README-QT.TXT changes*
# if use immtqt || use immtqt-bc ; then
# dodoc "${S}"/README.immodule
# fi
}
pkg_postinst() {
echo
elog "After a rebuild of Qt, it can happen that Qt plugins (such as Qt/KDE styles,"
elog "or widgets for the Qt designer) are no longer recognized. If this situation"
elog "occurs you should recompile the packages providing these plugins,"
elog "and you should also make sure that Qt and its plugins were compiled with the"
elog "same version of GCC. Packages that may need to be rebuilt are, for instance,"
elog "kde-base/kdelibs, kde-base/kdeartwork and kde-base/kdeartwork-styles."
elog "See http://doc.trolltech.com/3.3/plugins-howto.html for more infos."
echo
}

@ -1,2 +0,0 @@
DIST tqtinterface-3.5.13.1.tar.gz 1203318 SHA256 72c8477867a4dfc0f65f00a22a3a4303eb1f1de7211c9e086053ed921a3693a1 SHA512 d0257a9e9eef332d60a13b37dbbbdd202837718384e9edc8d5d429531e914e5b42fab9a41bee65bedfcf5698c79419c04e9741c1a3ac6cafce10579bdec3654e WHIRLPOOL dd8827fc5c7025c111267c13dfb92fbd83635eb78e2af0a2175bf74837b5092050bbe0738d16a8f67173cb6e422b38fb8f730f29a7ee81ec0f6f42f6b8375a77
DIST tqtinterface-trinity-3.5.13.2.tar.xz 795076 SHA256 385f1c7d38a978a9c43c18d9c65896beae9344fe6de87f72c884f7ec9ab7f84d SHA512 58894e9db01cffda9b2132553ac342d1d47d0f8db231e8be21438c5fcf171b09db3d64fcde065e01ab539f7d9ee7662b4907b19b585eb1aae0ca8c838b1144ee WHIRLPOOL 7ed1ff2f48a30b670be59e2b94bb3b37ec5d481c967d210484ebf3b48541957a8e30bfcd3415534b9aa85e64c87e9af2e777f11a93fe847a899d740df5855c1c

@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>fatzer2@gmail.com</email>
<name>Alexander Golubev</name>
</maintainer>
<use>
<flag name="qt3">Support for qt3 library(<pkg>dev-qt/qt</pkg>:3)</flag>
<flag name="tqt">Support for tqt library(<pkg>dev-qt/tqt</pkg>:3) a trinity fork of qt3</flag>
</use>
</pkgmetadata>

@ -1,30 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
TRINITY_MODULE_TYPE="dependencies"
TRINITY_MODULE_NAME="${PN}"
inherit trinity-base
DESCRIPTION="Interface and abstraction library for Qt and Trinity"
HOMEPAGE="http://trinitydesktop.org/"
LICENSE="GPL-2"
KEYWORDS="x86 amd64"
IUSE="+qt3 -qt4"
SLOT="0"
DEPEND="qt3? ( >=dev-qt/qt-3.3.8d:3 )
qt4? ( dev-qt/qt-meta:4 )
!!x11-libs/tqtinterface"
RDEPEND="${RDEPEND}"
src_configure() {
mycmakeargs=(
$(cmake-utils_use qt3 USE_QT3)
$(cmake-utils_use qt4 USE_QT4)
)
cmake-utils_src_configure
}

@ -1,30 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
TRINITY_MODULE_TYPE="dependencies"
TRINITY_MODULE_NAME="${PN}"
inherit trinity-base
DESCRIPTION="Interface and abstraction library for Qt and Trinity"
HOMEPAGE="http://trinitydesktop.org/"
LICENSE="GPL-2"
KEYWORDS="~amd64 ~x86"
IUSE="+qt3 -qt4"
SLOT="0"
DEPEND="qt3? ( >=dev-qt/qt-3.3.8d:3 )
qt4? ( dev-qt/qt-meta:4 )
!!x11-libs/tqtinterface"
RDEPEND="${RDEPEND}"
src_configure() {
mycmakeargs=(
$(cmake-utils_use qt3 USE_QT3)
$(cmake-utils_use qt4 USE_QT4)
)
cmake-utils_src_configure
}

@ -1,36 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
TRINITY_MODULE_TYPE="dependencies"
TRINITY_MODULE_NAME="${PN}"
inherit trinity-base
DESCRIPTION="Interface and abstraction library for Qt and Trinity"
HOMEPAGE="http://trinitydesktop.org/"
LICENSE="GPL-2"
KEYWORDS=
IUSE="-qt3 +tqt"
REQUIRED_USE="^^ ( qt3 tqt )"
SLOT="0"
DEPEND="qt3? ( >=dev-qt/qt-3.9999:3 )
tqt? ( >=dev-qt/tqt-3.9999 )
!!x11-libs/tqtinterface"
RDEPEND="${DEPEND}"
pkg_setup() {
use qt3 && export QTDIR="/usr/qt/3"
use tqt && export QTDIR="/usr/tqt3"
}
src_configure() {
mycmakeargs=(
-DUSE_QT3=ON
-DQT_PREFIX_DIR="$QTDIR"
)
cmake-utils_src_configure
}

@ -1,608 +0,0 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# @ECLASS: git-2.eclass
# @MAINTAINER:
# Michał Górny <mgorny@gentoo.org>
# Donnie Berkholz <dberkholz@gentoo.org>
# @BLURB: Eclass for fetching and unpacking git repositories.
# @DESCRIPTION:
# Eclass for easing maitenance of live ebuilds using git as remote repository.
# Eclass support working with git submodules and branching.
#
# This eclass is DEPRECATED. Please use git-r3 instead.
if [[ ${EAPI} == 6 ]]; then
die "${ECLASS}.eclass is banned in EAPI ${EAPI}"
fi
# This eclass support all EAPIs
EXPORT_FUNCTIONS src_unpack
DEPEND="dev-vcs/git"
# @ECLASS-VARIABLE: EGIT_SOURCEDIR
# @DESCRIPTION:
# This variable specifies destination where the cloned
# data are copied to.
#
# EGIT_SOURCEDIR="${S}"
# @ECLASS-VARIABLE: EGIT_STORE_DIR
# @DESCRIPTION:
# Storage directory for git sources.
#
# EGIT_STORE_DIR="${DISTDIR}/egit-src"
# @ECLASS-VARIABLE: EGIT_HAS_SUBMODULES
# @DEFAULT_UNSET
# @DESCRIPTION:
# If non-empty this variable enables support for git submodules in our
# checkout. Also this makes the checkout to be non-bare for now.
# @ECLASS-VARIABLE: EGIT_OPTIONS
# @DEFAULT_UNSET
# @DESCRIPTION:
# Variable specifying additional options for fetch command.
# @ECLASS-VARIABLE: EGIT_MASTER
# @DESCRIPTION:
# Variable for specifying master branch.
# Usefull when upstream don't have master branch or name it differently.
#
# EGIT_MASTER="master"
# @ECLASS-VARIABLE: EGIT_PROJECT
# @DESCRIPTION:
# Variable specifying name for the folder where we check out the git
# repository. Value of this variable should be unique in the
# EGIT_STORE_DIR as otherwise you would override another repository.
#
# EGIT_PROJECT="${EGIT_REPO_URI##*/}"
# @ECLASS-VARIABLE: EGIT_DIR
# @DESCRIPTION:
# Directory where we want to store the git data.
# This variable should not be overriden.
#
# EGIT_DIR="${EGIT_STORE_DIR}/${EGIT_PROJECT}"
# @ECLASS-VARIABLE: EGIT_REPO_URI
# @REQUIRED
# @DEFAULT_UNSET
# @DESCRIPTION:
# URI for the repository
# e.g. http://foo, git://bar
#
# It can be overriden via env using packagename_LIVE_REPO
# variable.
#
# Support multiple values:
# EGIT_REPO_URI="git://a/b.git http://c/d.git"
# @ECLASS-VARIABLE: EVCS_OFFLINE
# @DEFAULT_UNSET
# @DESCRIPTION:
# If non-empty this variable prevents performance of any online
# operations.
# @ECLASS-VARIABLE: EGIT_BRANCH
# @DESCRIPTION:
# Variable containing branch name we want to check out.
# It can be overriden via env using packagename_LIVE_BRANCH
# variable.
#
# EGIT_BRANCH="${EGIT_MASTER}"
# @ECLASS-VARIABLE: EGIT_COMMIT
# @DESCRIPTION:
# Variable containing commit hash/tag we want to check out.
# It can be overriden via env using packagename_LIVE_COMMIT
# variable.
#
# EGIT_COMMIT="${EGIT_BRANCH}"
# @ECLASS-VARIABLE: EGIT_REPACK
# @DEFAULT_UNSET
# @DESCRIPTION:
# If non-empty this variable specifies that repository will be repacked to
# save space. However this can take a REALLY LONG time with VERY big
# repositories.
# @ECLASS-VARIABLE: EGIT_PRUNE
# @DEFAULT_UNSET
# @DESCRIPTION:
# If non-empty this variable enables pruning all loose objects on each fetch.
# This is useful if upstream rewinds and rebases branches often.
# @ECLASS-VARIABLE: EGIT_NONBARE
# @DEFAULT_UNSET
# @DESCRIPTION:
# If non-empty this variable specifies that all checkouts will be done using
# non bare repositories. This is useful if you can't operate with bare
# checkouts for some reason.
# @ECLASS-VARIABLE: EGIT_NOUNPACK
# @DEFAULT_UNSET
# @DESCRIPTION:
# If non-empty this variable bans unpacking of ${A} content into the srcdir.
# Default behaviour is to unpack ${A} content.
# @FUNCTION: git-2_init_variables
# @INTERNAL
# @DESCRIPTION:
# Internal function initializing all git variables.
# We define it in function scope so user can define
# all the variables before and after inherit.
git-2_init_variables() {
debug-print-function ${FUNCNAME} "$@"
local esc_pn liverepo livebranch livecommit
esc_pn=${PN//[-+]/_}
: ${EGIT_SOURCEDIR="${S}"}
: ${EGIT_STORE_DIR:="${PORTAGE_ACTUAL_DISTDIR-${DISTDIR}}/egit-src"}
: ${EGIT_HAS_SUBMODULES:=}
: ${EGIT_OPTIONS:=}
: ${EGIT_MASTER:=master}
liverepo=${esc_pn}_LIVE_REPO
EGIT_REPO_URI=${!liverepo:-${EGIT_REPO_URI}}
[[ ${EGIT_REPO_URI} ]] || die "EGIT_REPO_URI must have some value"
: ${EVCS_OFFLINE:=}
livebranch=${esc_pn}_LIVE_BRANCH
[[ ${!livebranch} ]] && ewarn "QA: using \"${esc_pn}_LIVE_BRANCH\" variable, you won't get any support"
EGIT_BRANCH=${!livebranch:-${EGIT_BRANCH:-${EGIT_MASTER}}}
livecommit=${esc_pn}_LIVE_COMMIT
[[ ${!livecommit} ]] && ewarn "QA: using \"${esc_pn}_LIVE_COMMIT\" variable, you won't get any support"
EGIT_COMMIT=${!livecommit:-${EGIT_COMMIT:-${EGIT_BRANCH}}}
: ${EGIT_REPACK:=}
: ${EGIT_PRUNE:=}
}
# @FUNCTION: git-2_submodules
# @INTERNAL
# @DESCRIPTION:
# Internal function wrapping the submodule initialisation and update.
git-2_submodules() {
debug-print-function ${FUNCNAME} "$@"
if [[ ${EGIT_HAS_SUBMODULES} ]]; then
if [[ ${EVCS_OFFLINE} ]]; then
# for submodules operations we need to be online
debug-print "${FUNCNAME}: not updating submodules in offline mode"
return 1
fi
debug-print "${FUNCNAME}: working in \"${1}\""
pushd "${EGIT_DIR}" > /dev/null || die
debug-print "${FUNCNAME}: git submodule init"
git submodule init || die
debug-print "${FUNCNAME}: git submodule sync"
git submodule sync || die
debug-print "${FUNCNAME}: git submodule update"
git submodule update || die
popd > /dev/null || die
fi
}
# @FUNCTION: git-2_branch
# @INTERNAL
# @DESCRIPTION:
# Internal function that changes branch for the repo based on EGIT_COMMIT and
# EGIT_BRANCH variables.
git-2_branch() {
debug-print-function ${FUNCNAME} "$@"
local branchname src
debug-print "${FUNCNAME}: working in \"${EGIT_SOURCEDIR}\""
pushd "${EGIT_SOURCEDIR}" > /dev/null || die
local branchname=branch-${EGIT_BRANCH} src=origin/${EGIT_BRANCH}
if [[ ${EGIT_COMMIT} != ${EGIT_BRANCH} ]]; then
branchname=tree-${EGIT_COMMIT}
src=${EGIT_COMMIT}
fi
debug-print "${FUNCNAME}: git checkout -b ${branchname} ${src}"
git checkout -b ${branchname} ${src} \
|| die "${FUNCNAME}: changing the branch failed"
popd > /dev/null || die
}
# @FUNCTION: git-2_gc
# @INTERNAL
# @DESCRIPTION:
# Internal function running garbage collector on checked out tree.
git-2_gc() {
debug-print-function ${FUNCNAME} "$@"
local args
if [[ ${EGIT_REPACK} || ${EGIT_PRUNE} ]]; then
pushd "${EGIT_DIR}" > /dev/null || die
ebegin "Garbage collecting the repository"
[[ ${EGIT_PRUNE} ]] && args='--prune'
debug-print "${FUNCNAME}: git gc ${args}"
git gc ${args}
eend $?
popd > /dev/null || die
fi
}
# @FUNCTION: git-2_prepare_storedir
# @INTERNAL
# @DESCRIPTION:
# Internal function preparing directory where we are going to store SCM
# repository.
git-2_prepare_storedir() {
debug-print-function ${FUNCNAME} "$@"
local clone_dir
# initial clone, we have to create master git storage directory and play
# nicely with sandbox
if [[ ! -d ${EGIT_STORE_DIR} ]]; then
debug-print "${FUNCNAME}: Creating git main storage directory"
addwrite /
mkdir -m 775 -p "${EGIT_STORE_DIR}" \
|| die "${FUNCNAME}: can't mkdir \"${EGIT_STORE_DIR}\""
fi
# allow writing into EGIT_STORE_DIR
addwrite "${EGIT_STORE_DIR}"
# calculate git.eclass store dir for data
# We will try to clone the old repository,
# and we will remove it if we don't need it anymore.
EGIT_OLD_CLONE=
if [[ ${EGIT_STORE_DIR} == */egit-src ]]; then
local old_store_dir=${EGIT_STORE_DIR/%egit-src/git-src}
local old_location=${old_store_dir}/${EGIT_PROJECT:-${PN}}
if [[ -d ${old_location} ]]; then
EGIT_OLD_CLONE=${old_location}
# required to remove the old clone
addwrite "${old_store_dir}"
fi
fi
# calculate the proper store dir for data
# If user didn't specify the EGIT_DIR, we check if he did specify
# the EGIT_PROJECT or get the folder name from EGIT_REPO_URI.
EGIT_REPO_URI=${EGIT_REPO_URI%/}
if [[ ! ${EGIT_DIR} ]]; then
if [[ ${EGIT_PROJECT} ]]; then
clone_dir=${EGIT_PROJECT}
else
local strippeduri=${EGIT_REPO_URI%/.git}
clone_dir=${strippeduri##*/}
fi
EGIT_DIR=${EGIT_STORE_DIR}/${clone_dir}
if [[ ${EGIT_OLD_CLONE} && ! -d ${EGIT_DIR} ]]; then
elog "${FUNCNAME}: ${CATEGORY}/${PF} will be cloned from old location."
elog "It will be necessary to rebuild the package to fetch updates."
EGIT_REPO_URI="${EGIT_OLD_CLONE} ${EGIT_REPO_URI}"
fi
fi
export EGIT_DIR=${EGIT_DIR}
debug-print "${FUNCNAME}: Storing the repo into \"${EGIT_DIR}\"."
}
# @FUNCTION: git-2_move_source
# @INTERNAL
# @DESCRIPTION:
# Internal function moving sources from the EGIT_DIR to EGIT_SOURCEDIR dir.
git-2_move_source() {
debug-print-function ${FUNCNAME} "$@"
debug-print "${FUNCNAME}: ${MOVE_COMMAND} \"${EGIT_DIR}\" \"${EGIT_SOURCEDIR}\""
pushd "${EGIT_DIR}" > /dev/null || die
mkdir -p "${EGIT_SOURCEDIR}" \
|| die "${FUNCNAME}: failed to create ${EGIT_SOURCEDIR}"
${MOVE_COMMAND} "${EGIT_SOURCEDIR}" \
|| die "${FUNCNAME}: sync to \"${EGIT_SOURCEDIR}\" failed"
popd > /dev/null || die
}
# @FUNCTION: git-2_initial_clone
# @INTERNAL
# @DESCRIPTION:
# Internal function running initial clone on specified repo_uri.
git-2_initial_clone() {
debug-print-function ${FUNCNAME} "$@"
local repo_uri
EGIT_REPO_URI_SELECTED=""
for repo_uri in ${EGIT_REPO_URI}; do
debug-print "${FUNCNAME}: git clone ${EGIT_LOCAL_OPTIONS} \"${repo_uri}\" \"${EGIT_DIR}\""
if git clone ${EGIT_LOCAL_OPTIONS} "${repo_uri}" "${EGIT_DIR}"; then
# global variable containing the repo_name we will be using
debug-print "${FUNCNAME}: EGIT_REPO_URI_SELECTED=\"${repo_uri}\""
EGIT_REPO_URI_SELECTED="${repo_uri}"
break
fi
done
[[ ${EGIT_REPO_URI_SELECTED} ]] \
|| die "${FUNCNAME}: can't fetch from ${EGIT_REPO_URI}"
}
# @FUNCTION: git-2_update_repo
# @INTERNAL
# @DESCRIPTION:
# Internal function running update command on specified repo_uri.
git-2_update_repo() {
debug-print-function ${FUNCNAME} "$@"
local repo_uri
if [[ ${EGIT_LOCAL_NONBARE} ]]; then
# checkout master branch and drop all other local branches
git checkout ${EGIT_MASTER} || die "${FUNCNAME}: can't checkout master branch ${EGIT_MASTER}"
for x in $(git branch | grep -v "* ${EGIT_MASTER}" | tr '\n' ' '); do
debug-print "${FUNCNAME}: git branch -D ${x}"
git branch -D ${x} > /dev/null
done
fi
EGIT_REPO_URI_SELECTED=""
for repo_uri in ${EGIT_REPO_URI}; do
# git urls might change, so reset it
git config remote.origin.url "${repo_uri}"
debug-print "${EGIT_UPDATE_CMD}"
if ${EGIT_UPDATE_CMD} > /dev/null; then
# global variable containing the repo_name we will be using
debug-print "${FUNCNAME}: EGIT_REPO_URI_SELECTED=\"${repo_uri}\""
EGIT_REPO_URI_SELECTED="${repo_uri}"
break
fi
done
[[ ${EGIT_REPO_URI_SELECTED} ]] \
|| die "${FUNCNAME}: can't update from ${EGIT_REPO_URI}"
}
# @FUNCTION: git-2_fetch
# @INTERNAL
# @DESCRIPTION:
# Internal function fetching repository from EGIT_REPO_URI and storing it in
# specified EGIT_STORE_DIR.
git-2_fetch() {
debug-print-function ${FUNCNAME} "$@"
local oldsha cursha repo_type
[[ ${EGIT_LOCAL_NONBARE} ]] && repo_type="non-bare repository" || repo_type="bare repository"
if [[ ! -d ${EGIT_DIR} ]]; then
git-2_initial_clone
pushd "${EGIT_DIR}" > /dev/null || die
cursha=$(git rev-parse ${UPSTREAM_BRANCH})
echo "GIT NEW clone -->"
echo " repository: ${EGIT_REPO_URI_SELECTED}"
echo " at the commit: ${cursha}"
popd > /dev/null || die
elif [[ ${EVCS_OFFLINE} ]]; then
pushd "${EGIT_DIR}" > /dev/null || die
cursha=$(git rev-parse ${UPSTREAM_BRANCH})
echo "GIT offline update -->"
echo " repository: $(git config remote.origin.url)"
echo " at the commit: ${cursha}"
popd > /dev/null || die
else
pushd "${EGIT_DIR}" > /dev/null || die
oldsha=$(git rev-parse ${UPSTREAM_BRANCH})
git-2_update_repo
cursha=$(git rev-parse ${UPSTREAM_BRANCH})
# fetch updates
echo "GIT update -->"
echo " repository: ${EGIT_REPO_URI_SELECTED}"
# write out message based on the revisions
if [[ "${oldsha}" != "${cursha}" ]]; then
echo " updating from commit: ${oldsha}"
echo " to commit: ${cursha}"
else
echo " at the commit: ${cursha}"
fi
# print nice statistic of what was changed
git --no-pager diff --stat ${oldsha}..${UPSTREAM_BRANCH}
popd > /dev/null || die
fi
# export the version the repository is at
export EGIT_VERSION="${cursha}"
# log the repo state
[[ ${EGIT_COMMIT} != ${EGIT_BRANCH} ]] \
&& echo " commit: ${EGIT_COMMIT}"
echo " branch: ${EGIT_BRANCH}"
echo " storage directory: \"${EGIT_DIR}\""
echo " checkout type: ${repo_type}"
# Cleanup after git.eclass
if [[ ${EGIT_OLD_CLONE} ]]; then
einfo "${FUNCNAME}: removing old clone in ${EGIT_OLD_CLONE}."
rm -rf "${EGIT_OLD_CLONE}"
fi
}
# @FUNCTION: git_bootstrap
# @INTERNAL
# @DESCRIPTION:
# Internal function that runs bootstrap command on unpacked source.
git-2_bootstrap() {
debug-print-function ${FUNCNAME} "$@"
# @ECLASS-VARIABLE: EGIT_BOOTSTRAP
# @DESCRIPTION:
# Command to be executed after checkout and clone of the specified
# repository.
# enviroment the package will fail if there is no update, thus in
# combination with --keep-going it would lead in not-updating
# pakcages that are up-to-date.
if [[ ${EGIT_BOOTSTRAP} ]]; then
pushd "${EGIT_SOURCEDIR}" > /dev/null || die
einfo "Starting bootstrap"
if [[ -f ${EGIT_BOOTSTRAP} ]]; then
# we have file in the repo which we should execute
debug-print "${FUNCNAME}: bootstraping with file \"${EGIT_BOOTSTRAP}\""
if [[ -x ${EGIT_BOOTSTRAP} ]]; then
eval "./${EGIT_BOOTSTRAP}" \
|| die "${FUNCNAME}: bootstrap script failed"
else
eerror "\"${EGIT_BOOTSTRAP}\" is not executable."
eerror "Report upstream, or bug ebuild maintainer to remove bootstrap command."
die "\"${EGIT_BOOTSTRAP}\" is not executable"
fi
else
# we execute some system command
debug-print "${FUNCNAME}: bootstraping with commands \"${EGIT_BOOTSTRAP}\""
eval "${EGIT_BOOTSTRAP}" \
|| die "${FUNCNAME}: bootstrap commands failed"
fi
einfo "Bootstrap finished"
popd > /dev/null || die
fi
}
# @FUNCTION: git-2_migrate_repository
# @INTERNAL
# @DESCRIPTION:
# Internal function migrating between bare and normal checkout repository.
# This is based on usage of EGIT_SUBMODULES, at least until they
# start to work with bare checkouts sanely.
# This function also set some global variables that differ between
# bare and non-bare checkout.
git-2_migrate_repository() {
debug-print-function ${FUNCNAME} "$@"
local bare returnstate
# first find out if we have submodules
# or user explicitly wants us to use non-bare clones
if ! [[ ${EGIT_HAS_SUBMODULES} || ${EGIT_NONBARE} ]]; then
bare=1
fi
# test if we already have some repo and if so find out if we have
# to migrate the data
if [[ -d ${EGIT_DIR} ]]; then
if [[ ${bare} && -d ${EGIT_DIR}/.git ]]; then
debug-print "${FUNCNAME}: converting \"${EGIT_DIR}\" to bare copy"
ebegin "Converting \"${EGIT_DIR}\" from non-bare to bare copy"
mv "${EGIT_DIR}/.git" "${EGIT_DIR}.bare"
export GIT_DIR="${EGIT_DIR}.bare"
git config core.bare true > /dev/null
returnstate=$?
unset GIT_DIR
rm -rf "${EGIT_DIR}"
mv "${EGIT_DIR}.bare" "${EGIT_DIR}"
eend ${returnstate}
elif [[ ! ${bare} && ! -d ${EGIT_DIR}/.git ]]; then
debug-print "${FUNCNAME}: converting \"${EGIT_DIR}\" to non-bare copy"
ebegin "Converting \"${EGIT_DIR}\" from bare to non-bare copy"
git clone -l "${EGIT_DIR}" "${EGIT_DIR}.nonbare" > /dev/null
returnstate=$?
rm -rf "${EGIT_DIR}"
mv "${EGIT_DIR}.nonbare" "${EGIT_DIR}"
eend ${returnstate}
fi
fi
if [[ ${returnstate} -ne 0 ]]; then
debug-print "${FUNCNAME}: converting \"${EGIT_DIR}\" failed, removing to start from scratch"
# migration failed, remove the EGIT_DIR to play it safe
einfo "Migration failed, removing \"${EGIT_DIR}\" to start from scratch."
rm -rf "${EGIT_DIR}"
fi
# set various options to work with both targets
if [[ ${bare} ]]; then
debug-print "${FUNCNAME}: working in bare repository for \"${EGIT_DIR}\""
EGIT_LOCAL_OPTIONS+="${EGIT_OPTIONS} --bare"
MOVE_COMMAND="git clone -l -s -n ${EGIT_DIR// /\\ }"
EGIT_UPDATE_CMD="git fetch -t -f -u origin ${EGIT_BRANCH}:${EGIT_BRANCH}"
UPSTREAM_BRANCH="${EGIT_BRANCH}"
EGIT_LOCAL_NONBARE=
else
debug-print "${FUNCNAME}: working in bare repository for non-bare \"${EGIT_DIR}\""
MOVE_COMMAND="cp -pPR ."
EGIT_LOCAL_OPTIONS="${EGIT_OPTIONS}"
EGIT_UPDATE_CMD="git pull -f ${EGIT_OPTIONS}"
UPSTREAM_BRANCH="origin/${EGIT_BRANCH}"
EGIT_LOCAL_NONBARE="true"
fi
}
# @FUNCTION: git-2_cleanup
# @INTERNAL
# @DESCRIPTION:
# Internal function cleaning up all the global variables
# that are not required after the unpack has been done.
git-2_cleanup() {
debug-print-function ${FUNCNAME} "$@"
# Here we can unset only variables that are GLOBAL
# defined by the eclass, BUT NOT subject to change
# by user (like EGIT_PROJECT).
# If ebuild writer polutes his environment it is
# his problem only.
unset EGIT_DIR
unset MOVE_COMMAND
unset EGIT_LOCAL_OPTIONS
unset EGIT_UPDATE_CMD
unset UPSTREAM_BRANCH
unset EGIT_LOCAL_NONBARE
}
# @FUNCTION: git-2_src_unpack
# @DESCRIPTION:
# Default git src_unpack function.
git-2_src_unpack() {
debug-print-function ${FUNCNAME} "$@"
git-2_init_variables
git-2_prepare_storedir
git-2_migrate_repository
git-2_fetch "$@"
git-2_gc
git-2_submodules
git-2_move_source
git-2_branch
git-2_bootstrap
git-2_cleanup
echo ">>> Unpacked to ${EGIT_SOURCEDIR}"
# Users can specify some SRC_URI and we should
# unpack the files too.
if [[ ! ${EGIT_NOUNPACK} ]]; then
if has ${EAPI:-0} 0 1; then
[[ ${A} ]] && unpack ${A}
else
default_src_unpack
fi
fi
}

@ -1,706 +0,0 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/eclass/kde-functions.eclass,v 1.175 2009/11/01 20:26:34 abcd Exp $
# @ECLASS: kde-functions.eclass
# @MAINTAINER:
# kde@gentoo.org
# Original author Dan Armak <danarmak@gentoo.org>
#
# @BLURB: This contains everything except things that modify ebuild variables and
# @DESCRIPTION:
# This contains everything except things that modify ebuild variables
# and functions (e.g. $P, src_compile() etc.)
inherit qt3 eutils
# map of the monolithic->split ebuild derivation; used to build deps describing
# the relationships between them
KDE_DERIVATION_MAP='
kde-base/kdeaccessibility kde-base/kbstateapplet
kde-base/kdeaccessibility kde-base/kdeaccessibility-iconthemes
kde-base/kdeaccessibility kde-base/kmag
kde-base/kdeaccessibility kde-base/kmousetool
kde-base/kdeaccessibility kde-base/kmouth
kde-base/kdeaccessibility kde-base/kttsd
kde-base/kdeaccessibility kde-base/ksayit
kde-base/kdeaddons kde-base/atlantikdesigner
kde-base/kdeaddons kde-base/kaddressbook-plugins
kde-base/kdeaddons kde-base/kate-plugins
kde-base/kdeaddons kde-base/kdeaddons-docs-konq-plugins
kde-base/kdeaddons kde-base/kdeaddons-kfile-plugins
kde-base/kdeaddons kde-base/kicker-applets
kde-base/kdeaddons kde-base/knewsticker-scripts
kde-base/kdeaddons kde-base/konq-plugins
kde-base/kdeaddons kde-base/konqueror-akregator
kde-base/kdeaddons kde-base/ksig
kde-base/kdeaddons kde-base/noatun-plugins
kde-base/kdeaddons kde-base/renamedlg-audio
kde-base/kdeaddons kde-base/renamedlg-images
kde-base/kdeadmin kde-base/kcron
kde-base/kdeadmin kde-base/kdat
kde-base/kdeadmin kde-base/kdeadmin-kfile-plugins
kde-base/kdeadmin kde-base/knetworkconf
kde-base/kdeadmin kde-base/kpackage
kde-base/kdeadmin kde-base/ksysv
kde-base/kdeadmin kde-base/kuser
kde-base/kdeadmin kde-base/lilo-config
kde-base/kdeadmin kde-base/secpolicy
kde-base/kdeartwork kde-base/kdeartwork-emoticons
kde-base/kdeartwork kde-base/kdeartwork-icewm-themes
kde-base/kdeartwork kde-base/kdeartwork-iconthemes
kde-base/kdeartwork kde-base/kdeartwork-kscreensaver
kde-base/kdeartwork kde-base/kdeartwork-kwin-styles
kde-base/kdeartwork kde-base/kdeartwork-kworldclock
kde-base/kdeartwork kde-base/kdeartwork-kworldwatch
kde-base/kdeartwork kde-base/kdeartwork-sounds
kde-base/kdeartwork kde-base/kdeartwork-styles
kde-base/kdeartwork kde-base/kdeartwork-wallpapers
kde-base/kdebase kde-base/drkonqi
kde-base/kdebase kde-base/kappfinder
kde-base/kdebase kde-base/kate
kde-base/kdebase kde-base/kcheckpass
kde-base/kdebase kde-base/kcminit
kde-base/kdebase kde-base/kcontrol
kde-base/kdebase kde-base/kdcop
kde-base/kdebase kde-base/kdebase-data
kde-base/kdebase kde-base/kdebase-kioslaves
kde-base/kdebase kde-base/kdebase-startkde
kde-base/kdebase kde-base/kdebugdialog
kde-base/kdebase kde-base/kdepasswd
kde-base/kdebase kde-base/kdeprint
kde-base/kdebase kde-base/kdesktop
kde-base/kdebase kde-base/kdesu
kde-base/kdebase kde-base/kdialog
kde-base/kdebase kde-base/kdm
kde-base/kdebase kde-base/kfind
kde-base/kdebase kde-base/khelpcenter
kde-base/kdebase kde-base/khotkeys
kde-base/kdebase kde-base/kicker
kde-base/kdebase kde-base/klipper
kde-base/kdebase kde-base/kmenuedit
kde-base/kdebase kde-base/knetattach
kde-base/kdebase kde-base/konqueror
kde-base/kdebase kde-base/konsole
kde-base/kdebase kde-base/kpager
kde-base/kdebase kde-base/kpersonalizer
kde-base/kdebase kde-base/kreadconfig
kde-base/kdebase kde-base/kscreensaver
kde-base/kdebase kde-base/ksmserver
kde-base/kdebase kde-base/ksplashml
kde-base/kdebase kde-base/kstart
kde-base/kdebase kde-base/ksysguard
kde-base/kdebase kde-base/ksystraycmd
kde-base/kdebase kde-base/ktip
kde-base/kdebase kde-base/kwin
kde-base/kdebase kde-base/kxkb
kde-base/kdebase kde-base/libkonq
kde-base/kdebase kde-base/nsplugins
kde-base/kdebindings kde-base/dcopc
kde-base/kdebindings kde-base/dcopjava
kde-base/kdebindings kde-base/dcopperl
kde-base/kdebindings kde-base/dcoppython
kde-base/kdebindings kde-base/kalyptus
kde-base/kdebindings kde-base/kdejava
kde-base/kdebindings kde-base/kjsembed
kde-base/kdebindings kde-base/korundum
kde-base/kdebindings kde-base/pykde
kde-base/kdebindings kde-base/qtjava
kde-base/kdebindings kde-base/qtruby
kde-base/kdebindings kde-base/qtsharp
kde-base/kdebindings kde-base/smoke
kde-base/kdebindings kde-base/xparts
kde-base/kdeedu kde-base/blinken
kde-base/kdeedu kde-base/kalzium
kde-base/kdeedu kde-base/kanagram
kde-base/kdeedu kde-base/kbruch
kde-base/kdeedu kde-base/kdeedu-applnk
kde-base/kdeedu kde-base/keduca
kde-base/kdeedu kde-base/kgeography
kde-base/kdeedu kde-base/khangman
kde-base/kdeedu kde-base/kig
kde-base/kdeedu kde-base/kiten
kde-base/kdeedu kde-base/klatin
kde-base/kdeedu kde-base/klettres
kde-base/kdeedu kde-base/kmathtool
kde-base/kdeedu kde-base/kmessedwords
kde-base/kdeedu kde-base/kmplot
kde-base/kdeedu kde-base/kpercentage
kde-base/kdeedu kde-base/kstars
kde-base/kdeedu kde-base/ktouch
kde-base/kdeedu kde-base/kturtle
kde-base/kdeedu kde-base/kverbos
kde-base/kdeedu kde-base/kvoctrain
kde-base/kdeedu kde-base/kwordquiz
kde-base/kdeedu kde-base/libkdeedu
kde-base/kdegames kde-base/atlantik
kde-base/kdegames kde-base/kasteroids
kde-base/kdegames kde-base/katomic
kde-base/kdegames kde-base/kbackgammon
kde-base/kdegames kde-base/kbattleship
kde-base/kdegames kde-base/kblackbox
kde-base/kdegames kde-base/kbounce
kde-base/kdegames kde-base/kenolaba
kde-base/kdegames kde-base/kfouleggs
kde-base/kdegames kde-base/kgoldrunner
kde-base/kdegames kde-base/kjumpingcube
kde-base/kdegames kde-base/klickety
kde-base/kdegames kde-base/klines
kde-base/kdegames kde-base/kmahjongg
kde-base/kdegames kde-base/kmines
kde-base/kdegames kde-base/knetwalk
kde-base/kdegames kde-base/kolf
kde-base/kdegames kde-base/konquest
kde-base/kdegames kde-base/kpat
kde-base/kdegames kde-base/kpoker
kde-base/kdegames kde-base/kreversi
kde-base/kdegames kde-base/ksame
kde-base/kdegames kde-base/kshisen
kde-base/kdegames kde-base/ksirtet
kde-base/kdegames kde-base/ksmiletris
kde-base/kdegames kde-base/ksnake
kde-base/kdegames kde-base/ksokoban
kde-base/kdegames kde-base/kspaceduel
kde-base/kdegames kde-base/ktron
kde-base/kdegames kde-base/ktuberling
kde-base/kdegames kde-base/kwin4
kde-base/kdegames kde-base/libkdegames
kde-base/kdegames kde-base/libksirtet
kde-base/kdegames kde-base/lskat
kde-base/kdegraphics kde-base/kamera
kde-base/kdegraphics kde-base/kcoloredit
kde-base/kdegraphics kde-base/kdegraphics-kfile-plugins
kde-base/kdegraphics kde-base/kdvi
kde-base/kdegraphics kde-base/kfax
kde-base/kdegraphics kde-base/kgamma
kde-base/kdegraphics kde-base/kghostview
kde-base/kdegraphics kde-base/kiconedit
kde-base/kdegraphics kde-base/kmrml
kde-base/kdegraphics kde-base/kolourpaint
kde-base/kdegraphics kde-base/kooka
kde-base/kdegraphics kde-base/kpdf
kde-base/kdegraphics kde-base/kpovmodeler
kde-base/kdegraphics kde-base/kruler
kde-base/kdegraphics kde-base/ksnapshot
kde-base/kdegraphics kde-base/ksvg
kde-base/kdegraphics kde-base/kuickshow
kde-base/kdegraphics kde-base/kview
kde-base/kdegraphics kde-base/kviewshell
kde-base/kdegraphics kde-base/libkscan
kde-base/kdemultimedia kde-base/akode
kde-base/kdemultimedia kde-base/artsplugin-akode
kde-base/kdemultimedia kde-base/artsplugin-audiofile
kde-base/kdemultimedia kde-base/artsplugin-mpeglib
kde-base/kdemultimedia kde-base/artsplugin-mpg123
kde-base/kdemultimedia kde-base/artsplugin-xine
kde-base/kdemultimedia kde-base/juk
kde-base/kdemultimedia kde-base/kaboodle
kde-base/kdemultimedia kde-base/kaudiocreator
kde-base/kdemultimedia kde-base/kdemultimedia-arts
kde-base/kdemultimedia kde-base/kdemultimedia-kappfinder-data
kde-base/kdemultimedia kde-base/kdemultimedia-kfile-plugins
kde-base/kdemultimedia kde-base/kdemultimedia-kioslaves
kde-base/kdemultimedia kde-base/kmid
kde-base/kdemultimedia kde-base/kmix
kde-base/kdemultimedia kde-base/krec
kde-base/kdemultimedia kde-base/kscd
kde-base/kdemultimedia kde-base/libkcddb
kde-base/kdemultimedia kde-base/mpeglib
kde-base/kdemultimedia kde-base/noatun
kde-base/kdenetwork kde-base/dcoprss
kde-base/kdenetwork kde-base/kdenetwork-filesharing
kde-base/kdenetwork kde-base/kdenetwork-kfile-plugins
kde-base/kdenetwork kde-base/kdict
kde-base/kdenetwork kde-base/kdnssd
kde-base/kdenetwork kde-base/kget
kde-base/kdenetwork kde-base/knewsticker
kde-base/kdenetwork kde-base/kopete
kde-base/kdenetwork kde-base/kpf
kde-base/kdenetwork kde-base/kppp
kde-base/kdenetwork kde-base/krdc
kde-base/kdenetwork kde-base/krfb
kde-base/kdenetwork kde-base/ksirc
kde-base/kdenetwork kde-base/ktalkd
kde-base/kdenetwork kde-base/kwifimanager
kde-base/kdenetwork kde-base/librss
kde-base/kdenetwork kde-base/lisa
kde-base/kdepim kde-base/akregator
kde-base/kdepim kde-base/certmanager
kde-base/kdepim kde-base/kaddressbook
kde-base/kdepim kde-base/kalarm
kde-base/kdepim kde-base/kandy
kde-base/kdepim kde-base/karm
kde-base/kdepim kde-base/kdepim-kioslaves
kde-base/kdepim kde-base/kdepim-kresources
kde-base/kdepim kde-base/kdepim-wizards
kde-base/kdepim kde-base/kitchensync
kde-base/kdepim kde-base/kmail
kde-base/kdepim kde-base/kmailcvt
kde-base/kdepim kde-base/knode
kde-base/kdepim kde-base/knotes
kde-base/kdepim kde-base/kode
kde-base/kdepim kde-base/konsolekalendar
kde-base/kdepim kde-base/kontact
kde-base/kdepim kde-base/kontact-specialdates
kde-base/kdepim kde-base/korganizer
kde-base/kdepim kde-base/korn
kde-base/kdepim kde-base/kpilot
kde-base/kdepim kde-base/ksync
kde-base/kdepim kde-base/ktnef
kde-base/kdepim kde-base/libkcal
kde-base/kdepim kde-base/libkdenetwork
kde-base/kdepim kde-base/libkdepim
kde-base/kdepim kde-base/libkholidays
kde-base/kdepim kde-base/libkmime
kde-base/kdepim kde-base/libkpgp
kde-base/kdepim kde-base/libkpimexchange
kde-base/kdepim kde-base/libkpimidentities
kde-base/kdepim kde-base/libksieve
kde-base/kdepim kde-base/mimelib
kde-base/kdepim kde-base/networkstatus
kde-base/kdesdk kde-base/cervisia
kde-base/kdesdk kde-base/kapptemplate
kde-base/kdesdk kde-base/kbabel
kde-base/kdesdk kde-base/kbugbuster
kde-base/kdesdk kde-base/kcachegrind
kde-base/kdesdk kde-base/kdesdk-kfile-plugins
kde-base/kdesdk kde-base/kdesdk-kioslaves
kde-base/kdesdk kde-base/kdesdk-misc
kde-base/kdesdk kde-base/kdesdk-scripts
kde-base/kdesdk kde-base/kmtrace
kde-base/kdesdk kde-base/kompare
kde-base/kdesdk kde-base/kspy
kde-base/kdesdk kde-base/kuiviewer
kde-base/kdesdk kde-base/umbrello
kde-base/kdetoys kde-base/amor
kde-base/kdetoys kde-base/eyesapplet
kde-base/kdetoys kde-base/fifteenapplet
kde-base/kdetoys kde-base/kmoon
kde-base/kdetoys kde-base/kodo
kde-base/kdetoys kde-base/kteatime
kde-base/kdetoys kde-base/ktux
kde-base/kdetoys kde-base/kweather
kde-base/kdetoys kde-base/kworldclock
kde-base/kdetoys kde-base/kworldwatch
kde-base/kdeutils kde-base/ark
kde-base/kdeutils kde-base/kcalc
kde-base/kdeutils kde-base/kcharselect
kde-base/kdeutils kde-base/kdelirc
kde-base/kdeutils kde-base/kdf
kde-base/kdeutils kde-base/kedit
kde-base/kdeutils kde-base/kfloppy
kde-base/kdeutils kde-base/kgpg
kde-base/kdeutils kde-base/khexedit
kde-base/kdeutils kde-base/kjots
kde-base/kdeutils kde-base/klaptopdaemon
kde-base/kdeutils kde-base/kmilo
kde-base/kdeutils kde-base/kregexpeditor
kde-base/kdeutils kde-base/ksim
kde-base/kdeutils kde-base/ktimer
kde-base/kdeutils kde-base/kwalletmanager
kde-base/kdeutils kde-base/superkaramba
kde-base/kdewebdev kde-base/kfilereplace
kde-base/kdewebdev kde-base/kimagemapeditor
kde-base/kdewebdev kde-base/klinkstatus
kde-base/kdewebdev kde-base/kommander
kde-base/kdewebdev kde-base/kxsldbg
kde-base/kdewebdev kde-base/quanta
app-office/koffice app-office/karbon
app-office/koffice app-office/kchart
app-office/koffice app-office/kexi
app-office/koffice app-office/kformula
app-office/koffice app-office/kivio
app-office/koffice app-office/koffice-data
app-office/koffice app-office/koffice-libs
app-office/koffice app-office/koffice-meta
app-office/koffice app-office/koshell
app-office/koffice app-office/kplato
app-office/koffice app-office/kpresenter
app-office/koffice app-office/krita
app-office/koffice app-office/kspread
app-office/koffice app-office/kugar
app-office/koffice app-office/kword
'
# @FUNCTION: get-parent-package
# @USAGE: < name of split-ebuild >
# @DESCRIPTION:
# accepts 1 parameter, the name of a split ebuild; echoes the name of its mother package
get-parent-package() {
local parent child
while read parent child; do
if [[ ${child} == $1 ]]; then
echo ${parent}
return 0
fi
done <<EOF
$KDE_DERIVATION_MAP
EOF
die "Package $1 not found in KDE_DERIVATION_MAP, please report bug"
}
# @FUNCTION: get-child-packages
# @USAGE: < name of monolithic package >
# @DESCRIPTION:
# accepts 1 parameter, the name of a monolithic package; echoes the names of all ebuilds derived from it
get-child-packages() {
local parent child
while read parent child; do
[[ ${parent} == $1 ]] && echo -n "${child} "
done <<EOF
$KDE_DERIVATION_MAP
EOF
}
# @FUNCTION: is-parent-package
# @USAGE: < name >
# @RETURN: 0 if <name> is a parent package, otherwise 1
is-parent-package() {
local parent child
while read parent child; do
[[ "${parent}" == "$1" ]] && return 0
done <<EOF
$KDE_DERIVATION_MAP
EOF
return 1
}
# ---------------------------------------------------------------
# kde/qt directory management etc. functions, was kde-dirs.ebuild
# ---------------------------------------------------------------
# @FUNCTION: need-kde-at-least
# @USAGE: < version >
# @DESCRIPTION:
# Sets the correct DEPEND and RDEPEND for the needed minimum kde < version >. Also takes
# care of the correct Qt-version and correct RDEPEND handling.
need-kde-at-least() {
debug-print-function $FUNCNAME "$@"
KDEVER="$1"
# determine install locations
set-kdedir ${KDEVER}
if [[ "${RDEPEND-unset}" != "unset" ]]; then
x_DEPEND="${RDEPEND}"
else
x_DEPEND="${DEPEND}"
fi
DEPEND="${DEPEND} >=kde-base/kdelibs-$KDEVER"
RDEPEND="${x_DEPEND} >=kde-base/kdelibs-$KDEVER"
qtver-from-kdever ${KDEVER}
need-qt ${selected_version}
if [[ -n "${KDEBASE}" ]]; then
SLOT="$KDEMAJORVER.$KDEMINORVER"
else
: ${SLOT="0"}
fi
}
# ---------------------------------------------------------------
# kde/qt directory management etc. functions, was kde-dirs.ebuild
# ---------------------------------------------------------------
# @FUNCTION: need-kde
# @USAGE: < version >
# @DESCRIPTION:
# Sets the correct DEPEND and RDEPEND for the needed kde < version >. Also takes
# care of the correct Qt-version and correct RDEPEND handling.
need-kde() {
debug-print-function $FUNCNAME "$@"
KDEVER="$1"
# determine install locations
set-kdedir ${KDEVER}
if [[ "${RDEPEND-unset}" != "unset" ]]; then
x_DEPEND="${RDEPEND}"
else
x_DEPEND="${DEPEND}"
fi
if [[ -n "${KDEBASE}" ]]; then
# If we're a kde-base package, we need at least our own version of kdelibs.
# Note: we only set RDEPEND if it is already set, otherwise
# we break packages relying on portage copying RDEPEND from DEPEND.
DEPEND="${DEPEND} ~kde-base/kdelibs-$PV"
RDEPEND="${x_DEPEND} ~kde-base/kdelibs-${PV}"
else
# Things outside kde-base need a minimum version,
# but kde-base/kdelibs:kde-4 mustn't satisfy it.
min-kde-ver ${KDEVER}
DEPEND="${DEPEND} =kde-base/kdelibs-3.5*"
RDEPEND="${x_DEPEND} =kde-base/kdelibs-3.5*"
fi
qtver-from-kdever ${KDEVER}
need-qt ${selected_version}
if [[ -n "${KDEBASE}" ]]; then
SLOT="$KDEMAJORVER.$KDEMINORVER"
else
: ${SLOT="0"}
fi
}
# @FUNCTION: set-kdedir
# @USAGE: < version >
# @DESCRIPTION:
# Sets the right directories for the kde <version> wrt what kind of package will
# be installed, e. g. third-party-apps, kde-base-packages, ...
set-kdedir() {
debug-print-function $FUNCNAME "$@"
# set install location:
# - 3rd party apps go into /usr, and have SLOT="0".
# - kde-base category ebuilds go into /usr/kde/$MAJORVER.$MINORVER,
# and have SLOT="$MAJORVER.$MINORVER".
# - kde-base category cvs ebuilds have major version 5 and go into
# /usr/kde/cvs; they have SLOT="cvs".
# - Backward-compatibility exceptions: all kde2 packages (kde-base or otherwise)
# go into /usr/kde/2. kde 3.0.x goes into /usr/kde/3 (and not 3.0).
# - kde-base category ebuilds always depend on their exact matching version of
# kdelibs and link against it. Other ebuilds link aginst the latest one found.
# - This function exports $PREFIX (location to install to) and $KDEDIR
# (location of kdelibs to link against) for all ebuilds.
#
# -- Overrides - deprecated but working for now: --
# - If $KDEPREFIX is defined (in the profile or env), it overrides everything
# and both base and 3rd party kde stuff goes in there.
# - If $KDELIBSDIR is defined, the kdelibs installed in that location will be
# used, even by kde-base packages.
# get version elements
IFSBACKUP="$IFS"
IFS=".-_"
for x in $1; do
if [[ -z "$KDEMAJORVER" ]]; then KDEMAJORVER=$x
else if [[ -z "$KDEMINORVER" ]]; then KDEMINORVER=$x
else if [[ -z "$KDEREVISION" ]]; then KDEREVISION=$x
fi; fi; fi
done
[[ -z "$KDEMINORVER" ]] && KDEMINORVER="0"
[[ -z "$KDEREVISION" ]] && KDEREVISION="0"
IFS="$IFSBACKUP"
debug-print "$FUNCNAME: version breakup: KDEMAJORVER=$KDEMAJORVER KDEMINORVER=$KDEMINORVER KDEREVISION=$KDEREVISION"
# install prefix
if [[ -n "$KDEPREFIX" ]]; then
export PREFIX="$KDEPREFIX"
else
if [[ -z "$KDEBASE" ]]; then
PREFIX="/usr/kde/3.5"
else
case $KDEMAJORVER.$KDEMINORVER in
3*) export PREFIX="/usr/kde/3.5";;
5.0) export PREFIX="/usr/kde/svn";;
*) die "failed to set PREFIX";;
esac
fi
fi
# kdelibs location
if [[ -n "$KDELIBSDIR" ]]; then
export KDEDIR="$KDELIBSDIR"
else
if [[ -z "$KDEBASE" ]]; then
# find the latest kdelibs installed
for x in /usr/kde/{svn,3.5} "${PREFIX}" \
"${KDE3LIBSDIR}" "${KDELIBSDIR}" "${KDE3DIR}" "${KDEDIR}" /usr/kde/*; do
if [[ -f "${x}/include/kwin.h" ]]; then
debug-print found
export KDEDIR="$x"
break
fi
done
else
# kde-base ebuilds must always use the exact version of kdelibs they came with
case $KDEMAJORVER.$KDEMINORVER in
3*) export KDEDIR="/usr/kde/3.5";;
5.0) export KDEDIR="/usr/kde/svn";;
*) die "failed to set KDEDIR";;
esac
fi
fi
debug-print "$FUNCNAME: Will use the kdelibs installed in $KDEDIR, and install into $PREFIX."
}
# @FUNCTION: need-qt
# @USAGE: < version >
# @DESCRIPTION:
# Sets the DEPEND and RDEPEND for Qt <version>.
need-qt() {
debug-print-function $FUNCNAME "${@}"
QTVER="$1"
QT=qt
if [[ "${RDEPEND-unset}" != "unset" ]]; then
x_DEPEND="${RDEPEND}"
else
x_DEPEND="${DEPEND}"
fi
case ${QTVER} in
3*) DEPEND="${DEPEND} =dev-qt/qt-meta-3*"
RDEPEND="${RDEPEND} =dev-qt/qt-meta-3*"
;;
*) echo "!!! error: $FUNCNAME() called with invalid parameter: \"$QTVER\", please report bug" && exit 1;;
esac
}
# @FUNCTION: set-qtdir
# @DESCRIPTION:
# This function is not needed anymore.
set-qtdir() {
:
}
# @FUNCTION: qtver-from-kdever
# @USAGE: < kde-version >
# @DESCRIPTION:
# returns minimal qt version needed for specified kde version
qtver-from-kdever() {
debug-print-function $FUNCNAME "$@"
local ver
case $1 in
3.1*) ver=3.1;;
3.2*) ver=3.2;;
3.3*) ver=3.3;;
3.4*) ver=3.3;;
3.5*) ver=3.3;;
3*) ver=3.0.5;;
5) ver=3.3;; # cvs version
*) echo "!!! error: $FUNCNAME called with invalid parameter: \"$1\", please report bug" && exit 1;;
esac
selected_version="$ver"
}
min-kde-ver() {
debug-print-function $FUNCNAME "$@"
case $1 in
3.0*) selected_version="3.0";;
3.1*) selected_version="3.1";;
3.2*) selected_version="3.2";;
3.3*) selected_version="3.3";;
3.4*) selected_version="3.4";;
3.5*) selected_version="3.5";;
3*) selected_version="3.0";;
5) selected_version="5";;
*) echo "!!! error: $FUNCNAME() called with invalid parameter: \"$1\", please report bug" && exit 1;;
esac
}
# @FUNCTION: kde_sandbox_patch
# @USAGE: < dir > [ dir ] [ dir ] [...]
# @DESCRIPTION:
# generic makefile sed for sandbox compatibility. for some reason when the kde makefiles (of many packages
# and versions) try to chown root and chmod 4755 some binaries (after installing, target install-exec-local),
# they do it to the files in $(bindir), not $(DESTDIR)/$(bindir). Most of these have been fixed in latest cvs
# but a few remain here and there.
#
# Pass a list of dirs to sed, Makefile.{am,in} in these dirs will be sed'ed.
# This should be harmless if the makefile doesn't need fixing.
kde_sandbox_patch() {
debug-print-function $FUNCNAME "$@"
while [[ -n "$1" ]]; do
# can't use dosed, because it only works for things in ${D}, not ${S}
cd $1
for x in Makefile.am Makefile.in Makefile
do
if [[ -f "$x" ]]; then
echo Running sed on $x
cp $x ${x}.orig
sed -e 's: $(bindir): $(DESTDIR)/$(bindir):g' -e 's: $(kde_datadir): $(DESTDIR)/$(kde_datadir):g' -e 's: $(TIMID_DIR): $(DESTDIR)/$(TIMID_DIR):g' ${x}.orig > ${x}
rm ${x}.orig
fi
done
shift
done
}
# @FUNCTION: kde_remove_flag
# @USAGE: < dir > < flag >
# @DESCRIPTION:
# remove an optimization flag from a specific subdirectory's makefiles.
# currently kdebase and koffice use it to compile certain subdirs without
# -fomit-frame-pointer which breaks some things.
kde_remove_flag() {
debug-print-function $FUNCNAME "$@"
cd "${S}"/${1} || die "cd to '${S}/${1}' failed."
[[ -n "$2" ]] || die "missing argument to kde_remove_flag"
cp Makefile Makefile.orig
sed -e "/CFLAGS/ s/${2}//g
/CXXFLAGS/ s/${2}//g" Makefile.orig > Makefile
cd "${OLDPWD}"
}
buildsycoca() {
[[ $EBUILD_PHASE != postinst ]] && [[ $EBUILD_PHASE != postrm ]] && \
die "buildsycoca() has to be calles in pkg_postinst() and pkg_postrm()."
if [[ -x ${KDEDIR}/bin/kbuildsycoca ]] && [[ -z ${ROOT} || ${ROOT} == "/" ]] ; then
# First of all, make sure that the /usr/share/services directory exists
# and it has the right permissions
mkdir -p /usr/share/services
chown root:0 /usr/share/services
chmod 0755 /usr/share/services
ebegin "Running kbuildsycoca to build global database"
# Filter all KDEDIRs not belonging to the current SLOT from XDG_DATA_DIRS
# before running kbuildsycoca. This makes sure they don't show up in the
# 3.5 K-menu unless the user manually adds them.
XDG_DATA_DIRS="/usr/share:${KDEDIR}/share:/usr/local/share"
"${KDEDIR}"/bin/kbuildsycoca --global --noincremental &> /dev/null
eend $?
fi
}
postprocess_desktop_entries() {
[[ $EBUILD_PHASE != preinst ]] && [[ $EBUILD_PHASE != install ]] && \
die "postprocess_desktop_entries() has to be called in src_install() or pkg_preinst()."
if [[ -d ${D}${PREFIX}/share/applnk ]] ; then
# min/max depth is _important_ as it excludes legacy KDE stuff. Moving it would cause breakage.
local desktop_entries="$(find "${D}${PREFIX}/share/applnk" -mindepth 2 -maxdepth 2 \
-name '*\.desktop' -not -path '*.hidden*' 2>/dev/null)"
if [[ -n ${desktop_entries} ]]; then
for entry in ${desktop_entries} ; do
if ! [[ -f "${D}${PREFIX}"/share/applications/kde/${entry##*/} ]] ; then
dodir "${PREFIX}"/share/applications/kde
mv ${entry} "${D}${PREFIX}"/share/applications/kde
fi
done
fi
fi
validate_desktop_entries "${PREFIX}"/share/applications
}
# is this a kde-base ebuid?
if [[ "${CATEGORY}" == "kde-base" ]]; then
debug-print "${ECLASS}: KDEBASE ebuild recognized"
export KDEBASE="true"
export KDEREVISION
fi

@ -1,608 +0,0 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/eclass/kde.eclass,v 1.223 2009/05/12 12:55:46 tampakrap Exp $
# @ECLASS: kde.eclass
# @MAINTAINER:
# kde@gentoo.org
#
# original author Dan Armak <danarmak@gentoo.org>
#
# Revisions Caleb Tennis <caleb@gentoo.org>
# @BLURB: The kde eclass is inherited by all kde-* eclasses.
# @DESCRIPTION:
# This eclass is inherited by all kde-* eclasses. Few ebuilds inherit straight from here.
[[ -z ${WANT_AUTOMAKE} ]] && WANT_AUTOMAKE="1.9"
inherit base eutils kde-functions flag-o-matic libtool autotools
DESCRIPTION="Based on the $ECLASS eclass"
HOMEPAGE="http://www.kde.org/"
IUSE="debug elibc_FreeBSD"
if [[ ${CATEGORY} == "kde-base" ]]; then
if [[ ${PV##*.} -lt 10 ]] ; then
# Keep old ebuilds as is
IUSE="${IUSE} kdeenablefinal"
else
# Don't use --enable-final anymore. Does only cause problems for users and
# as an unwelcome extra invalid bug reports, without any reasonable benefit.
# Get the aRts dependencies right - finally.
case "${PN}" in
blinken|juk|kalarm|kanagram|kbounce|kcontrol|konq-plugins|kscd|kscreensaver|kttsd|kwifimanager|kdelibs) ARTS_REQUIRED="" ;;
artsplugin-*|kaboodle|kasteroids|kdemultimedia-arts|kolf|krec|ksayit|noatun*) ARTS_REQUIRED="yes" ;;
*) ARTS_REQUIRED="never" ;;
esac
fi
fi
if [[ ${ARTS_REQUIRED} != "yes" && ${ARTS_REQUIRED} != "never" && ${PN} != "arts" ]]; then
IUSE="${IUSE} arts"
fi
# @ECLASS-VARIABLE: KDE_S
# @DESCRIPTION:
# Like the 'normal' ${S} this variable takes the path to the temporary build
# directory. If unset ${S} will be used.
# @ECLASS-VARIABLE: USE_KEG_PACKAGING
# @DESCRIPTION:
# Set USE_KEG_PACKAGING=1 before inheriting if the package use extragear-like
# packaging and then supports ${LANGS} and ${LANGS_DOC} variables. By default
# translations are found in the po subdirectory of ${S}. Set KEG_PO_DIR to
# override this default.
if [[ -n ${USE_KEG_PACKAGING} && -n "${LANGS}${LANGS_DOC}" ]]; then
for lang in ${LANGS} ${LANGS_DOC}; do
IUSE="${IUSE} linguas_${lang}"
done
fi
DEPEND="sys-devel/make
dev-util/pkgconfig
dev-lang/perl"
if [[ ${CATEGORY} != "kde-base" ]] || [[ ${CATEGORY} == "kde-base" && ${PV##*.} -lt 10 ]] ; then
DEPEND="${DEPEND}
x11-libs/libXt
x11-proto/xf86vidmodeproto
xinerama? ( x11-proto/xineramaproto )"
RDEPEND="xinerama? ( x11-libs/libXinerama )"
IUSE="${IUSE} xinerama"
else
RDEPEND=""
fi
if [[ ${ARTS_REQUIRED} == "yes" ]]; then
DEPEND="${DEPEND} kde-base/arts"
RDEPEND="${RDEPEND} kde-base/arts"
elif [[ ${ARTS_REQUIRED} != "never" && ${PN} != "arts" ]]; then
DEPEND="${DEPEND} arts? ( kde-base/arts )"
RDEPEND="${RDEPEND} arts? ( kde-base/arts )"
fi
# overridden in other places like kde-dist, kde-source and some individual ebuilds
SLOT="0"
# @ECLASS-VARIABLE: ARTS_REQUIRED
# @DESCRIPTION:
# Is aRTs-support required or not? Possible values are 'yes', 'never'. Otherwise
# leave this variable unset. This results in an arts USE flag.
# @FUNCTION: kde_pkg_setup
# @DESCRIPTION:
# Some basic test about arts-support. It also filters some compiler flags
kde_pkg_setup() {
if [[ ${PN} != "arts" ]] && [[ ${PN} != "kdelibs" ]] ; then
if [[ ${ARTS_REQUIRED} == 'yes' ]] || \
( [[ ${ARTS_REQUIRED} != "never" ]] && use arts ) ; then
if ! built_with_use =kde-base/kdelibs-3.5* arts ; then
if has arts ${IUSE} && use arts; then
eerror "You are trying to compile ${CATEGORY}/${PF} with the \"arts\" USE flag enabled."
else
eerror "The package ${CATEGORY}/${PF} you're trying to merge requires aRTs."
fi
eerror "However, $(best_version =kde-base/kdelibs-3.5*) was compiled with the arts USE flag disabled."
eerror
if has arts ${IUSE} && use arts; then
eerror "You must either disable this USE flag, or recompile"
else
eerror "To build this package you have to recompile"
fi
eerror "$(best_version =kde-base/kdelibs-3.5*) with the arts USE flag enabled."
die "kdelibs missing arts"
fi
fi
fi
if [[ "${PN}" = "kdelibs" ]]; then
use doc && if ! built_with_use =dev-qt/qt-meta-3* doc ; then
eerror "Building kdelibs with the doc USE flag requires qt to be built with the doc USE flag."
eerror "Please re-emerge qt-3 with this USE flag enabled."
fi
fi
# Let filter visibility flags that will *really* hurt your KDE
# _experimental_ support for this is enabled by kdehiddenvisibility useflag
filter-flags -fvisibility=hidden -fvisibility-inlines-hidden
}
# @FUNCTION: kde_src_unpack
# @DESCRIPTION:
# This function unpacks the sources.
# For EAPI 0 and 1 it allso runs kde_src_prepare.
kde_src_unpack() {
debug-print-function $FUNCNAME "$@"
[[ -z "$*" ]] || die "$FUNCNAME no longer supports stages."
[[ -z "${KDE_S}" ]] && KDE_S="${S}"
# Don't use base_src_unpack, as that will call base_src_prepare
# in the wrong place
[[ -d "${KDE_S}" ]] || unpack ${A}
case ${EAPI:-0} in
0|1) kde_src_prepare ;;
esac
}
# @FUNCTION: kde_src_prepare
# @DESCRIPTION:
# This function patches the sources. The patches need to be named
# $PN-$PV-*{diff,patch}
#
# This function also handles the linguas if extragear-like packaging is enabled.
# (See USE_KEG_PACKAGING)
kde_src_prepare() {
debug-print-function $FUNCNAME "$@"
local PATCHDIR="${WORKDIR}/patches/"
# Unpack first and deal with KDE patches after examing possible patch sets.
# To be picked up, patches need to be named $PN-$PV-*{diff,patch} and be
# placed in $PATCHDIR. Monolithic ebuilds will use the split ebuild patches.
if [[ -d "${PATCHDIR}" ]] ; then
local packages p f
if is-parent-package ${CATEGORY}/${PN} ; then
packages="$(get-child-packages ${CATEGORY}/${PN})"
packages="${packages//${CATEGORY}\//} ${PN}"
else
packages="${PN}"
fi
if [[ -n ${PATCHES[@]} && $(declare -p PATCHES) != 'declare -a '* ]]; then
PATCHES=(${PATCHES})
fi
for p in ${packages}; do
for f in "${PATCHDIR}"/${p}-${PV}-*{diff,patch}; do
[[ -e ${f} ]] && PATCHES+=("${f}")
done
if [[ -n "${KDEBASE}" ]]; then
for f in "${PATCHDIR}"/${p}-${SLOT}-*{diff,patch}; do
[[ -e ${f} ]] && PATCHES+=("${f}")
done
fi
done
fi
base_src_prepare
# if extragear-like packaging is enabled, set the translations and the
# documentation depending on LINGUAS settings
if [[ -n ${USE_KEG_PACKAGING} ]]; then
if [[ -z ${LINGUAS} ]]; then
einfo "You can drop some of the translations of the interface and"
einfo "documentation by setting the \${LINGUAS} variable to the"
einfo "languages you want installed."
einfo
einfo "Enabling all languages"
else
# we sanitise LINGUAS to avoid issues when a user specifies the same
# linguas twice. bug #215016.
local sanitised_linguas=$(echo "${LINGUAS}" | tr '[[:space:]]' '\n' | sort | uniq)
if [[ -n ${LANGS} ]]; then
MAKE_PO=$(echo "${sanitised_linguas} ${LANGS}" | tr '[[:space:]]' '\n' | sort | uniq -d | tr '\n' ' ')
einfo "Enabling translations for: ${MAKE_PO}"
sed -i -e "s:^SUBDIRS[ \t]*=.*:SUBDIRS = ${MAKE_PO}:" "${KDE_S}/${KEG_PO_DIR:-po}/Makefile.am" \
|| die "sed for locale failed"
rm -f "${KDE_S}/configure"
fi
if [[ -n ${LANGS_DOC} ]]; then
MAKE_DOC=$(echo "${sanitised_linguas} ${LANGS_DOC}" | tr '[[:space:]]' '\n' | sort | uniq -d | tr '\n' ' ')
einfo "Enabling documentation for: ${MAKE_DOC}"
[[ -n ${MAKE_DOC} ]] && [[ -n ${DOC_DIR_SUFFIX} ]] && MAKE_DOC=$(echo "${MAKE_DOC}" | tr '\n' ' ') && MAKE_DOC="${MAKE_DOC// /${DOC_DIR_SUFFIX} }"
sed -i -e "s:^SUBDIRS[ \t]*=.*:SUBDIRS = ${MAKE_DOC} ${PN}:" \
"${KDE_S}/doc/Makefile.am" || die "sed for locale failed"
rm -f "${KDE_S}/configure"
fi
fi
fi
# fix the 'languageChange undeclared' bug group: touch all .ui files, so that the
# makefile regenerate any .cpp and .h files depending on them.
cd "${KDE_S}"
debug-print "$FUNCNAME: Searching for .ui files in ${PWD}"
UIFILES="$(find . -name '*.ui' -print)"
debug-print "$FUNCNAME: .ui files found:"
debug-print "$UIFILES"
# done in two stages, because touch doens't have a silent/force mode
if [[ -n "$UIFILES" ]]; then
debug-print "$FUNCNAME: touching .ui files..."
touch $UIFILES
fi
if [[ -d "${WORKDIR}/admin" ]] && [[ -d "${KDE_S}/admin" ]]; then
ebegin "Updating admin/ directory..."
rm -rf "${KDE_S}/admin" "${KDE_S}/configure" || die "Unable to remove old admin/ directory"
ln -s "${WORKDIR}/admin" "${KDE_S}/admin" || die "Unable to symlink the new admin/ directory"
eend 0
fi
}
# @FUNCTION: kde_src_configure
# @USAGE: [ myconf ] [ configure ] [ all ]
# @DESCRIPTION:
# This function compiles the sources. It takes care of "cannot write to .kde
# or .qt"-problem due to sandbox and some other sandbox issues.
#
# If no argument is given, all is assumed.
kde_src_configure() {
debug-print-function $FUNCNAME "$@"
[[ -z "$1" ]] && kde_src_configure all
[[ -z "${KDE_S}" ]] && KDE_S="${S}"
cd "${KDE_S}"
export kde_widgetdir="$KDEDIR/$(get_libdir)/kde3/plugins/designer"
# fix the sandbox errors "can't writ to .kde or .qt" problems.
# this is a fake homedir that is writeable under the sandbox, so that the build process
# can do anything it wants with it.
REALHOME="$HOME"
mkdir -p "${T}"/fakehome/.kde
mkdir -p "${T}"/fakehome/.qt
export HOME="${T}"/fakehome
addwrite "${QTDIR}/etc/settings"
# Fix bug 96177: if KDEROOTHOME is defined, the ebuild accesses the real homedir via it, and not our exported $HOME
unset KDEHOME
unset KDEROOTHOME
# things that should access the real homedir
[[ -d "$REALHOME/.ccache" ]] && ln -sf "$REALHOME/.ccache" "$HOME/"
while [[ "$1" ]]; do
case $1 in
myconf)
debug-print-section myconf
if [[ ${CATEGORY} != "kde-base" ]] || [[ ${CATEGORY} == "kde-base" && ${PV##*.} -lt 10 ]] ; then
myconf+=" --with-x --enable-mitshm $(use_with xinerama) --with-qt-dir=${QTDIR} --enable-mt --with-qt-libraries=${QTDIR}/$(get_libdir)"
else
myconf+=" --with-qt-dir=${QTDIR} --enable-mt --with-qt-libraries=${QTDIR}/$(get_libdir)"
fi
# calculate dependencies separately from compiling, enables ccache to work on kde compiles
myconf="$myconf --disable-dependency-tracking"
if use debug ; then
myconf="$myconf --enable-debug=full --with-debug"
else
myconf="$myconf --disable-debug --without-debug"
fi
if hasq kdeenablefinal ${IUSE}; then
myconf="$myconf $(use_enable kdeenablefinal final)"
fi
if [[ ${ARTS_REQUIRED} == "never" ]]; then
myconf="$myconf --without-arts"
elif [[ ${ARTS_REQUIRED} != 'yes' && ${PN} != "arts" ]]; then
# This might break some external package until
# ARTS_REQUIRED="yes" is set on them, KDE 3.2 is no more
# supported anyway.
myconf="$myconf $(use_with arts)"
fi
debug-print "$FUNCNAME: myconf: set to ${myconf}"
;;
configure)
debug-print-section configure
debug-print "$FUNCNAME::configure: myconf=$myconf"
export WANT_AUTOMAKE
# rebuild configure script, etc
# This can happen with e.g. a cvs snapshot
if [[ ! -f "./configure" ]]; then
# This is needed to fix building with autoconf 2.60.
# Many thanks to who preferred such a stupid check rather
# than a working arithmetic comparison.
if [[ -f admin/cvs.sh ]]; then
sed -i -e '/case $AUTO\(CONF\|HEADER\)_VERSION in/,+1 s/2\.5/2.[56]/g' \
admin/cvs.sh
fi
# Replace the detection script with a dummy, let our wrappers do the work
if [[ -f admin/detect-autoconf.sh ]]; then
cat - > admin/detect-autoconf.sh <<EOF
#!/bin/sh
export AUTOCONF="autoconf"
export AUTOHEADER="autoheader"
export AUTOM4TE="autom4te"
export AUTOMAKE="automake"
export ACLOCAL="aclocal"
export WHICH="which"
EOF
fi
# Make build succeed with >=autoconf-2.65, see http://tinyurl.com/yc4nbhq
if [[ -f admin/acinclude.m4.in ]] && \
[[ ! -f ${T}/acinclude.m4.in ]]; then
cp admin/acinclude.m4.in "${T}"
einfo "Patching admin/acinclude.m4.in"
patch -f --ignore-whitespace admin/acinclude.m4.in <<'EOF'
--- admin/acinclude.m4.in
+++ admin/acinclude.m4.in
@@ -3081,6 +3081,13 @@
fi
])
+AC_DEFUN([GENTOO_DUMMY_CFLAGS],
+[
+ dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS
+ CFLAGS=" $CFLAGS"
+])
+AC_BEFORE([GENTOO_DUMMY_CFLAGS],[AC_PROG_CC])
+
AC_DEFUN([AC_CHECK_COMPILERS],
[
AC_ARG_ENABLE(debug,
@@ -3141,12 +3148,10 @@
[kde_use_profiling="no"]
)
- dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS
- CFLAGS=" $CFLAGS"
-
- AC_PROG_CC
+ AC_REQUIRE([GENTOO_DUMMY_CFLAGS])
+ AC_REQUIRE([AC_PROG_CC])
- AC_PROG_CPP
+ AC_REQUIRE([AC_PROG_CPP])
if test "$GCC" = "yes"; then
if test "$kde_use_debug_code" != "no"; then
@@ -3176,7 +3181,7 @@
CXXFLAGS=" $CXXFLAGS"
- AC_PROG_CXX
+ AC_REQUIRE([AC_PROG_CXX])
KDE_CHECK_FOR_BAD_COMPILER
EOF
if [[ $? != 0 ]]; then
ewarn "Failed to patch admin/acinclude.m4.in"
cp "${T}/acinclude.m4.in" admin/acinclude.m4.in
fi
fi
for x in Makefile.cvs admin/Makefile.common; do
if [[ -f "$x" && -z "$makefile" ]]; then makefile="$x"; fi
done
if [[ -f "$makefile" ]]; then
debug-print "$FUNCNAME: configure: generating configure script, running make -f $makefile"
emake -f $makefile
fi
[[ -f "./configure" ]] || die "no configure script found, generation unsuccessful"
fi
export PATH="${KDEDIR}/bin:${PATH}"
# configure doesn't need to know about the other KDEs installed.
# in fact, if it does, it sometimes tries to use the wrong dcopidl, etc.
# due to the messed up way configure searches for things
export KDEDIRS="${PREFIX}:${KDEDIR}"
# Visiblity stuff is broken. Just disable it when it's present.
export kde_cv_prog_cxx_fvisibility_hidden=no
if hasq kdehiddenvisibility ${IUSE} && use kdehiddenvisibility; then
if [[ $(gcc-major-version)$(gcc-minor-version) -ge 41 ]]; then
if [[ ${PN} != "kdelibs" && ${PN} != "arts" ]] && \
! fgrep -q "#define __KDE_HAVE_GCC_VISIBILITY" "${KDEDIR}/include/kdemacros.h"; then
eerror "You asked to enable hidden visibility, but your kdelibs was"
eerror "built without its support. Please rebuild kdelibs with the"
eerror "kdehiddenvisibility useflag enabled."
die "kdelibs without hidden visibility"
else
unset kde_cv_prog_cxx_fvisibility_hidden
myconf="$myconf $(use_enable kdehiddenvisibility gcc-hidden-visibility)"
fi
else
eerror "You're trying to enable hidden visibility, but"
eerror "you are using an old GCC version. Hidden visibility"
eerror "can be enabled only with GCC 4.1 and later."
fi
fi
# If we're in a kde-base ebuild, set the prefixed directories to
# override the ones set by econf.
if [[ -n ${PREFIX} && ${PREFIX} != "/usr" ]]; then
myconf="${myconf} --prefix=${PREFIX}
--mandir=${PREFIX}/share/man
--infodir=${PREFIX}/share/info
--datadir=${PREFIX}/share
--sysconfdir=${PREFIX}/etc"
fi
# Use libsuffix to keep KDE happy, the --libdir parameter get
# still honored.
if [[ $(get_libdir) != "lib" ]] ; then
myconf="${myconf} --enable-libsuffix=$(get_libdir | sed s/lib//)"
fi
export PATH="${KDEDIR}/bin:${PATH}"
# The configure checks for kconfig_compiler do not respect PATH
export KCONFIG_COMPILER="${KDEDIR}/bin/kconfig_compiler"
# Sometimes it doesn't get the include and library paths right,
# so hints them.
if [[ -z ${PREFIX} || ${PREFIX} != ${KDEDIR} ]]; then
myconf="${myconf} --with-extra-includes=${KDEDIR}/include
--with-extra-libs=${KDEDIR}/$(get_libdir)"
fi
if grep "cope with newer libtools" "${KDE_S}/admin/ltconfig" &> /dev/null; then
einfo "Removing the dummy ltconfig file."
rm "${KDE_S}/admin/ltconfig"
fi
use elibc_FreeBSD && myconf="${myconf} --disable-pie"
elibtoolize
econf ${myconf}
# Seems ./configure add -O2 by default but hppa don't want that but we need -ffunction-sections
if [[ "${ARCH}" = "hppa" ]]
then
einfo "Fixing Makefiles"
find "${KDE_S}" -name Makefile -print0 | xargs -0 sed -i -e \
's:-O2:-ffunction-sections:g'
fi
;;
all)
debug-print-section all
kde_src_configure myconf configure
;;
esac
shift
done
}
# @FUNCTION: kde_src_compile
# @USAGE: [ myconf ] [ configure ] [ make ] [ all ]
# @DESCRIPTION:
# This function compiles the sources. It takes care of "cannot write to .kde
# or .qt"-problem due to sandbox and some other sandbox issues.
#
# If no argument is given, all is assumed.
kde_src_compile() {
debug-print-function $FUNCNAME "$@"
[[ -z "$1" ]] && kde_src_compile all
[[ -z "${KDE_S}" ]] && KDE_S="${S}"
cd "${KDE_S}"
while [[ "$1" ]]; do
case $1 in
make)
debug-print-section make
emake || die "died running emake, $FUNCNAME:make"
;;
all)
case ${EAPI:-0} in
0|1) kde_src_configure all ;;
esac
kde_src_compile make
;;
*)
case ${EAPI:-0} in
0|1) kde_src_configure $1 ;;
esac
;;
esac
shift
done
}
# @FUNCTION: kde_src_install
# @USAGE: [ make ] [ dodoc ] [ all ]
# @DESCRIPTION:
# This installs the software, including the right handling of the
# "/usr/share/doc/kde"-dir, but it only installs AUTHORS, ChangeLog*, README*,
# NEWS, and TODO (if available) as docs.
#
# If no argument is given, all is assumed
kde_src_install() {
debug-print-function $FUNCNAME "$@"
[[ -z "$1" ]] && kde_src_install all
[[ -z ${KDE_S} ]] && KDE_S="${S}"
cd "${KDE_S}"
# Ensure that KDE binaries take precedence
export PATH="${KDEDIR}/bin:${PATH}"
while [[ "$1" ]]; do
case $1 in
make)
debug-print-section make
emake install DESTDIR="${D}" destdir="${D}" || die "died running make install, $FUNCNAME:make"
;;
dodoc)
debug-print-section dodoc
for doc in AUTHORS ChangeLog* README* NEWS TODO; do
[[ -s "$doc" ]] && dodoc $doc
done
;;
all)
debug-print-section all
kde_src_install make dodoc
;;
esac
shift
done
if [[ -n ${KDEBASE} && "${PN}" != "arts" && -d "${D}"/usr/share/doc/${PF} ]]; then
# work around bug #97196
dodir /usr/share/doc/kde && \
mv "${D}"/usr/share/doc/${PF} "${D}"/usr/share/doc/kde/ || \
die "Failed to move docs to kde/ failed."
fi
}
# @FUNCTION: slot_rebuild
# @USAGE: [ list_of_packages_to_check ]
# @RETURN: False, if no rebuild is required
# @DESCRIPTION:
# Unneeded and therefore deprecated for a long, long time now. Ebuilds are still
# referencing it, so replacing with a stub.
# Looks for packages in the supplied list of packages which have not been linked
# against this kde SLOT. It does this by looking for lib*.la files that doesn't
# contain the current ${KDEDIR}. If it finds any thus broken packages it prints
# eerrors and return True.
#
# Thanks to Carsten Lohrke in bug 98425.
slot_rebuild() {
:
}
# @FUNCTION: kde_pkg_preinst
# @DESCRIPTION:
# Calls postprocess_desktop_entries
kde_pkg_preinst() {
postprocess_desktop_entries
}
# @FUNCTION: kde_pkg_postinst
# @DESCRIPTION:
# Calls buildsycoca
kde_pkg_postinst() {
buildsycoca
}
# @FUNCTION: kde_pkg_postrm
# @DESCRIPTION:
# Calls buildsycoca
kde_pkg_postrm() {
buildsycoca
}
case ${EAPI:-0} in
0|1) EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_install pkg_postinst pkg_postrm pkg_preinst;;
2) EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_configure src_compile src_install pkg_postinst pkg_postrm pkg_preinst;;
esac

@ -1,97 +0,0 @@
# Copyright 2005-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/eclass/qt3.eclass,v 1.41 2009/05/17 15:17:03 hwoarang Exp $
# @ECLASS: qt3.eclass
# @MAINTAINER:
# kde-sunset overlay maintainers
# @BLURB: Eclass for Qt3 packages
# @DESCRIPTION:
# This eclass contains various functions that may be useful
# when dealing with packages using Qt3 libraries.
inherit toolchain-funcs versionator eutils
if [[ -z "${QTDIR}" ]]; then
export QTDIR="/usr/qt/3"
fi
addwrite "${QTDIR}/etc/settings"
addpredict "${QTDIR}/etc/settings"
# @FUNCTION: eqmake3
# @USAGE: [.pro file] [additional parameters to qmake]
# @MAINTAINER:
# Przemyslaw Maciag <troll@gentoo.org>
# Davide Pesavento <davidepesa@gmail.com>
# @DESCRIPTION:
# Runs qmake on the specified .pro file (defaults to
# ${PN}.pro if eqmake3 was called with no argument).
# Additional parameters are passed unmodified to qmake.
eqmake3() {
local LOGFILE="${T}/qmake-$$.out"
local projprofile="${1}"
[[ -z ${projprofile} ]] && projprofile="${PN}.pro"
shift 1
ebegin "Processing qmake ${projprofile}"
# file exists?
if [[ ! -f ${projprofile} ]]; then
echo
eerror "Project .pro file \"${projprofile}\" does not exist"
eerror "qmake cannot handle non-existing .pro files"
echo
eerror "This shouldn't happen - please send a bug report to bugs.gentoo.org"
echo
die "Project file not found in ${PN} sources"
fi
echo >> ${LOGFILE}
echo "****** qmake ${projprofile} ******" >> ${LOGFILE}
echo >> ${LOGFILE}
# some standard config options
local configoptplus="CONFIG += no_fixpath"
local configoptminus="CONFIG -="
if has debug ${IUSE} && use debug; then
configoptplus="${configoptplus} debug"
configoptminus="${configoptminus} release"
else
configoptplus="${configoptplus} release"
configoptminus="${configoptminus} debug"
fi
${QTDIR}/bin/qmake ${projprofile} \
QTDIR=${QTDIR} \
QMAKE=${QTDIR}/bin/qmake \
QMAKE_CC=$(tc-getCC) \
QMAKE_CXX=$(tc-getCXX) \
QMAKE_LINK=$(tc-getCXX) \
QMAKE_CFLAGS_RELEASE="${CFLAGS}" \
QMAKE_CFLAGS_DEBUG="${CFLAGS}" \
QMAKE_CXXFLAGS_RELEASE="${CXXFLAGS}" \
QMAKE_CXXFLAGS_DEBUG="${CXXFLAGS}" \
QMAKE_LFLAGS_RELEASE="${LDFLAGS}" \
QMAKE_LFLAGS_DEBUG="${LDFLAGS}" \
"${configoptminus}" \
"${configoptplus}" \
QMAKE_RPATH= \
QMAKE_STRIP= \
${@} >> ${LOGFILE} 2>&1
local result=$?
eend ${result}
# was qmake successful?
if [[ ${result} -ne 0 ]]; then
echo
eerror "Running qmake on \"${projprofile}\" has failed"
echo
eerror "This shouldn't happen - please send a bug report to bugs.gentoo.org"
echo
die "qmake failed on ${projprofile}"
fi
return ${result}
}

@ -1,439 +0,0 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
#
# Original Author: fat-zer
# Purpose: support planty of ebuilds for trinity project (a kde3 fork).
#
inherit trinity-functions cmake-utils base
# FIXME we don't need to write to both
addwrite "/usr/qt/3/etc/settings"
addpredict "/usr/qt/3/etc/settings"
addwrite "/usr/tqt3/etc/settings"
addpredict "/usr/tqt3/etc/settings"
# ban EAPI 0, 1 and 2
case $EAPI in
0|1|2|3|4) die "EAPI=${EAPI} is not supported" ;;
5) ;;
*) die "Unknown EAPI=${EAPI}"
esac
# @ECLASS-VARIABLE: BUILD_TYPE
# @DESCRIPTION:
# Determins he build type: live or release
if [[ ${PV} = *9999* ]]; then
BUILD_TYPE="live"
else
BUILD_TYPE="release"
fi
export BUILD_TYPE
# @ECLASS-VARIABLE: TRINITY_MODULE_NAME
# @DESCRIPTION:
# The name of trinity module; It's used for multiple purposes. First of all it
# determines the tarball name (git repository for live packages)
echo "${TRINITY_MODULE_NAME:=${PN}}" >/dev/null
# @ECLASS-VARIABLE: TRINITY_SCM
# @DESCRIPTION:
# Determins from what version control system code is chiking out for live
# ebuilds.
# @ECLASS-VARIABLE: TMP_DOCDIR
# @DESCRIPTION:
# A temporary directory used to copy common documentation before installing it
#
# @ECLASS-VARIABLE: TRINTY_BASE_NO_INSTALL_DOC
# @DESCRIPTION:
# if setted to anything except "no" this variable prevents
# trinity-base_src_install() to install documentation
#
# @ECLASS-VARIABLE: TRINTY_LANGS
# @DESCRIPTION:
# This is a whitespace-separated list of translations this ebuild supports.
# These translations are automatically added to IUSE. Therefore ebuilds must set
# this variable before inheriting any eclasses. To enable only selected
# translations, ebuilds must call enable_selected_linguas(). kde4-{base,meta}.eclass does
# this for you.
# @ECLASS-VARIABLE: TRINTY_DOC_LANGS
# @DESCRIPTION:
# This is a whitespace-separated list of translations this ebuild supports.
# These translations are automatically added to IUSE. Therefore ebuilds must set
# this variable before inheriting any eclasses. To enable only selected
# translations, ebuilds must call enable_selected_linguas(). kde4-{base,meta}.eclass does
# this for you.
# @ECLASS-VARIABLE: TRINITY_HANDBOOK
# @DESCRIPTION:
# Set to enable handbook in application. Possible values are 'always', 'optional'
# (handbook USE flag) and 'never'.
# This variable must be set before inheriting any eclasses. Defaults to 'never'.
# As well It ensures buildtime and runtime dependencies.
TRINITY_HANDBOOK="${TRINITY_HANDBOOK:-never}"
# @ECLASS-VARIABLE: TRINITY_EXTRAGEAR_PACKAGING
# @DESCRIPTION:
# Set TRINITY_EXTRAGEAR_PACKAGING=yes before inheriting if the package use extragear-like
# packaging and then supports ${TRINITY_LANGS}, ${TRINITY_DOC_LANGS} and
# ${TRINITY_HANDBOOK} variables. The translations are found in the directory
# pointed by the TEG_PO_DIR variable.
# @ECLASS-VARIABLE: TRINITY_GIT_MIRROR
# @DESCRIPTION:
# User (or ebuild) can decide another git mirror if it's needed;
# Defaults to http://scm.trinitydesktop.org/scm/git
# @ECLASS-VARIABLE: TRINITY_GIT_BRANCH
# @DESCRIPTION:
# Specify git branch for live ebuilds. Default: master
# @ECLASS-VARIABLE: TRINITY_COMMON_DOCS
# @DESCRIPTION:
# Common doc names that was found in trinity project's dirs.
TRINITY_COMMON_DOCS="AUTHORS BUGS CHANGELOG CHANGES COMMENTS COMPLIANCE COMPILING
CONFIG_FORMAT CONFIGURING COPYING COPYRIGHT CREDITS DEBUG DESIGN FAQ
HACKING HISTORY HOWTO IDEAS INSTALL LICENSE MAINTAINERS NAMING NEWS
NOTES PLUGINS PORTING README SECURITY-HOLES TASKGROUPS TEMPLATE
TESTCASES THANKS THOUGHTS TODO VERSION"
# @ECLASS-VARIABLE: TRINITY_TARBALL
# @DESCRIPTION:
# This variable holds the name of the tarboll with current module's source code.
# @ECLASS-VARIABLE: TRINITY_BASE_SRC_URI
# @DESCRIPTION:
# The top SRC_URI for all trinity packages
TRINITY_BASE_SRC_URI="http://www.mirrorservice.org/sites/trinitydesktop.org/trinity/releases/"
# TRINITY_BASE_SRC_URI="http://trinity.blackmag.net/releases" # the old one
#reset TRINITY_SCM and inherit proper eclass
if [[ ${BUILD_TYPE} = live ]]; then
# set default TRINITY_SCM if not set
[[ -z "$TRINITY_SCM" ]] && TRINITY_SCM=git
case ${TRINITY_SCM} in
git) inherit git-2 ;;
*) die "Unsupported TRINITY_SCM=${TRINITY_SCM}" ;;
esac
#set some varyables
case ${TRINITY_SCM} in
git)
EGIT_REPO_URI="${TRINITY_GIT_MIRROR:=http://scm.trinitydesktop.org/scm/git}/${TRINITY_MODULE_NAME}"
EGIT_BRANCH="${TRINITY_GIT_BRANCH:=master}"
EGIT_PROJECT="trinity/${TRINITY_MODULE_NAME}"
EGIT_HAS_SUBMODULES="yes"
;;
esac
S="${WORKDIR}/${TRINITY_MODULE_NAME}"
elif [[ "${BUILD_TYPE}" == release ]]; then
mod_name="${TRINITY_MODULE_NAME}"
mod_ver="${TRINITY_MODULE_VER:=${PV}}"
case ${mod_ver} in
3.5.13.1)
full_mod_name="${mod_name}-${mod_ver}"
TRINITY_TARBALL="${full_mod_name}.tar.gz" ;;
3.5.13.2)
full_mod_name="${mod_name}-trinity-${mod_ver}"
TRINITY_TARBALL="${full_mod_name}.tar.xz" ;;
*)
full_mod_name="${mod_name}-${mod_ver}"
TRINITY_TARBALL="${full_mod_name}.tar.xz"
esac
if [[ -n "${TRINITY_MODULE_TYPE}" ]] ; then
SRC_URI="${TRINITY_BASE_SRC_URI}/${mod_ver}/${TRINITY_MODULE_TYPE}/$TRINITY_TARBALL"
else
SRC_URI="${TRINITY_BASE_SRC_URI}/${mod_ver}/$TRINITY_TARBALL"
fi
S="${WORKDIR}/${full_mod_name}"
else
die "Unknown BUILD_TYPE=${BUILD_TYPE}"
fi
if [[ -n "${TRINITY_EXTRAGEAR_PACKAGING}" ]]; then
# @ECLASS-VARIABLE: TEG_PO_DIR
# @DESCRIPTION:
# Change the translation directory for extragear packages. The default is ${S}/po
TEG_PO_DIR="${TEG_PO_DIR:-${S}/po}"
# @ECLASS-VARIABLE: TEG_DOC_DIR
# @DESCRIPTION:
# Change the documentation directory for extragear packages. The default is
# ${S}/doc
TEG_DOC_DIR="${TEG_DOC_DIR:-${S}/doc}"
if [[ -n "${TRINITY_LANGS}" || -n "${TRINITY_DOC_LANGS}" ]]; then
for lang in ${TRINITY_LANGS} ${TRINITY_DOC_LANGS}; do
IUSE="${IUSE} linguas_${lang}"
done
trinityhandbookdepend="
app-text/docbook-xml-dtd:4.2
app-text/docbook-xsl-stylesheets
"
case ${TRINITY_HANDBOOK} in
yes | always)
DEPEDND+=" ${trinityhandbookdepend}"
;;
optional)
IUSE+=" +handbook"
DEPEND+=" handbook? ( ${trinityhandbookdepend} )"
;;
*) ;;
esac
fi
fi
# @FUNCTION: trinity-base_src_unpack
# @DESCRIPTION:
# A default src unpack function to be call git-2_src_unpack either
trinity-base_src_unpack() {
if [[ ${BUILD_TYPE} = live ]]; then
case "${TRINITY_SCM}" in
git)
git-2_src_unpack
;;
*) die "TRINITY_SCM: ${TRINITY_SCM} is not supported by ${FUNCNAME}" ;;
esac
else
base_src_unpack
fi
}
# @FUNCTION: trinity-base_src_prepare
# @DESCRIPTION:
# General pre-configure and pre-compile function for Trinity applications.
trinity-base_src_prepare() {
debug-print-function ${FUNCNAME} "$@"
# # Only enable selected languages, used for KDE extragear apps.
# if [[ -n ${KDE_LINGUAS} ]]; then
# enable_selected_linguas
# fi
local dir lang
# SCM bootstrap
if [[ ${BUILD_TYPE} = live ]]; then
case ${TRINITY_SCM} in
svn) subversion_src_prepare ;;
git) ;;
*) die "TRINITY_SCM: ${TRINITY_SCM} is not supported by ${FUNCNAME}"
esac
fi
# Apply patches
base_src_prepare
# Handle documentation and translations for extragear packages
if [[ -n "$TRINITY_EXTRAGEAR_PACKAGING" ]]; then
# remove not selected languages
if [[ -n $TRINITY_LANGS ]]; then
einfo "Removing unselected translations from ${TEG_PO_DIR}"
for dir in $(find ${TEG_PO_DIR} -mindepth 1 -maxdepth 1 -type d ); do
lang="$(basename "$dir")"
if ! has "$lang" ${TRINITY_LANGS}; then
eerror "Translation $lang seems to present in the package but is not supported by the ebuild"
elif ! has $lang ${LINGUAS}; then
rm -rf $dir
fi
done
fi
# if we removed all translations we should point it
if [[ -z $(find ${TEG_PO_DIR} -mindepth 1 -maxdepth 1 -type d) ]]; then
TRINITY_NO_TRANSLATIONS=yes
fi
# remove not selected documentation
if [[ -n $TRINITY_DOC_LANGS ]]; then
einfo "Removing unselected documentation from ${TEG_DOC_DIR}"
for dir in $(find ${TEG_DOC_DIR} -mindepth 1 -maxdepth 1 -type d ); do
lang="$(basename "$dir")"
if [[ "$lang" == "${PN}" || \
"$lang" == "${TRINITY_MODULE_NAME}" ]] ; then
echo -n; # do nothing it's main documentation
elif ! has "$lang" ${TRINITY_LANGS}; then
eerror "Documentation translated to language $lang seems to present in the package but is not supported by the ebuild"
elif ! has $lang ${LINGUAS}; then
rm -rf $dir
fi
done
fi
fi
}
# @FUNCTION: trinity-base_src_configure
# @DESCRIPTION:
# Call standart cmake-utils_src_onfigure and add some common arguments.
trinity-base_src_configure() {
debug-print-function ${FUNCNAME} "$@"
local eg_cmakeargs
[[ -n "${PREFIX}" ]] && export PREFIX="${TDEDIR}"
if [[ -n "$TRINITY_EXTRAGEAR_PACKAGING" ]]; then
eg_cmakeargs=( -DBUILD_ALL=ON )
if [[ "$TRINITY_NO_TRANSLATIONS" == "yes" ]]; then
eg_cmakeargs=( -DBUILD_TRANSLATIONS=OFF "${eg_cmakeargs[@]}" )
else
eg_cmakeargs=( -DBUILD_TRANSLATIONS=ON "${eg_cmakeargs[@]}" )
fi
if [[ "${TRINITY_HANDBOOK}" == optional ]]; then
eg_cmakeargs=(
$(cmake-utils_use_with handbook DOC)
"${eg_cmakeargs[@]}" )
fi
fi
mycmakeargs=(
-DCMAKE_INSTALL_PREFIX="${EPREFIX}${TDEDIR}"
-DCMAKE_INSTALL_RPATH="${EPREFIX}${TDEDIR}"
$([[ "${TRINITY_NEED_ARTS}" == "optional" ]] && cmake-utils_use_with arts ARTS)
"${eg_cmakeargs[@]}"
"${mycmakeargs[@]}"
)
cmake-utils_src_configure
}
# @FUNCTION: trinity-base_src_compile
# @DESCRIPTION:
# Just call cmake-utils_src_compile.
trinity-base_src_compile() {
debug-print-function ${FUNCNAME} "$@"
cmake-utils_src_compile
}
# @FUNCTION: trinity-base_src_install
# @DESCRIPTION:
# Call standart cmake-utils_src_install and installs common documentation.
trinity-base_src_install() {
debug-print-function ${FUNCNAME} "$@"
cmake-utils_src_install
trinity-base_fix_desktop_files
if [[ -z "$TRINITY_BASE_NO_INSTALL_DOC" ||
"$TRINITY_BASE_NO_INSTALL_DOC" == "no" ]]; then
trinity-base_create_tmp_docfiles
trinity-base_install_docfiles
fi
}
# @FUNCTION: trinity-base_create_tmp_docfiles
# @DESCRIPTION:
# Create docfiles in the form ${TMP_DOCDIR}/path.to.docfile.COMMON_NAME
# Also see the description for TRINITY_COMMON_DOCS and TMP_DOCDIR.
trinity-base_create_tmp_docfiles() {
debug-print-function ${FUNCNAME} "$@"
local srcdirs dir docfile targetdoc
if [[ -z "$TMP_DOCDIR" || ! -d "$TMP_DOCDIR" ]] ; then
TMP_DOCDIR="$T/docs"
mkdir -p ${TMP_DOCDIR}
fi
if [[ -z "$@" ]] ; then
srcdirs="./"
else
srcdirs="$@"
fi
einfo "Generating documentation list..."
for dir in $srcdirs; do
for doc in ${TRINITY_COMMON_DOCS}; do
for docfile in $(find $dir -type f -name "*${doc}*"); do
targetdoc="${docfile//\//.}"
targetdoc="${targetdoc#..}"
cp "${docfile}" "$TMP_DOCDIR/${targetdoc}"
done
done
done
# if [[ "${TRINITY_INSTALL_ROOT_DOCS}" == "yes" && " ${srcdirs} " == "* ./ *" ]]; then
# for doc in ${TRINITY_COMMON_DOCS}; do
# for docfile in $(ls ./"*${doc}*"); do
# targetdoc="${docfile//\//.}"
# targetdoc="${targetdoc#..}"
# cp "${docfile}" "$TMP_DOCDIR/${targetdoc}"
# done
# done
# fi
}
# @FUNCTION: trinity-base_install_docfiles
# @DESCRIPTION:
# Install documentation from ${TMP_DOCDIR} or from first argument.
trinity-base_install_docfiles() {
debug-print-function ${FUNCNAME} "$@"
local doc docdir
[[ -n "$TMP_DOCDIR" ]] && docdir="$TMP_DOCDIR"
[[ -n "$1" ]] && docdir="$1"
[[ -z "$docdir" ]] && die "docdir is not set in ${FUNCNAME}."
pushd "${docdir}" >/dev/null
find . -maxdepth 1 -type f | while read doc; do
einfo "Installing documentation: ${doc##*/}"
dodoc "${doc}"
done
popd >/dev/null
}
# @FUNCTION: trinity-base_fix_desktop_files
# @DESCRIPTION:
# Perform desktop files modifications according to current version. You can pass
# either desktop files or direcories to the parametrs. In case you'd pass a
# directory the function will recursively search for all desktop files and
# modify them. If no argument specified the function assume to work on the ${D};
trinity-base_fix_desktop_files() {
# Test if we have to perform any file fixing for current version
case "3.5" in
*${TRINITY_VER}*);;
*) return 0 ;;
esac
local file_list dir_list f
if [ "$#" != 0 ]; then
# Get directories and files from arguments
for f in $@; do
if [ -f "$f" ]; then
file_list+=" $f"
elif [ -d "$f" ]; then
dir_list+=" $f"
else
eerror "${FUNCNAME}: bad argument type: $(stat -c %F "$f")"
fi
done
else
dir_list="${D}"
fi
# Recursivly search for desktop files in directories
for f in $dir_list; do
file_list+="$(find ${f} -type f -name '*.desktop')"
done
# Performe the updates
case "${TRINITY_VER}" in
3.5)
for f in $file_list; do
sed -i '/^OnlyShowIn=/s/KDE/TDE/g' "$f"
done;;
esac
}
EXPORT_FUNCTIONS src_configure src_compile src_install src_prepare

@ -1,205 +0,0 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
#
# Original Author: Alexander Golubev (Fat-Zer)
# Purpose: basic trinity functions and variables
#
inherit versionator multilib
TRINITY_LIVEVER="14.0.0"
# @FUNCTION: set-trinityver
# @USAGE: < version >
# @DESCRIPTION:
# Sets the right TRINITY_VER, TDEDIR etc...
# !!! unfinished
set-trinityver() {
debug-print-function $FUNCNAME "$@"
# set install location:
# - 3rd party apps go into /usr, and have SLOT="0".
# - kde-base category ebuilds go into /usr/kde/$MAJORVER.$MINORVER,
# and have SLOT="$MAJORVER.$MINORVER".
# - This function exports $PREFIX (location to install to) and $KDEDIR
# (location of kdelibs to link against) for all ebuilds.
#
# -- Overrides - deprecated but working for now: --
# - If $KDEPREFIX is defined (in the profile or env), it overrides everything
# and both base and 3rd party kde stuff goes in there.
# - If $KDELIBSDIR is defined, the kdelibs installed in that location will be
# used, even by kde-base packages.
# get version elements
if [[ -n "$1" ]]; then
ETRINITY_VER="$1"
else
ETRINITY_VER="$PV"
fi
case "$ETRINITY_VER" in
3.* )
export TRINITY_VER="$(get_version_component_range 1-2 "${ETRINITY_VER}")" ;;
9999 )
export TRINITY_VER="$(get_major_version "$TRINITY_LIVEVER" )" ;;
* )
export TRINITY_VER="$(get_major_version "$ETRINITY_VER" )" ;;
esac
export TDEDIR="/usr/trinity/${TRINITY_VER}"
export TDEDIRS="/usr/trinity/${TRINITY_VER}"
# 3.5.x still uses KDE* variables
if [ "${TRINITY_VER}" = "3.5" ]; then
export KDEDIR="$TDEDIR"
export KDEDIRS="$TDEDIRS"
fi
# this sould solve problems like "cannot find libraries" espessialy when
# compiling kdelibs
# NOTE: That can breaks compilation of tdelibs:
# binaries which runs during compilation are tring to load shared
# libraries from the TDE's directory wich may be broken.
# TODO: fix that issue for tdelibs
adjust-trinity-paths
}
# @FUNCTION: get-trinity-libdirs
# @USAGE:
# @DESCRIPTION:
# lists all the trinity library directories
get-trinity-libdirs() {
local rv
for libdir in $(get_all_libdirs); do
echo " ${TDEDIR}/${libdir}"
done
}
# @FUNCTION: adjust-trinity-paths
# @USAGE: < version >
# @DESCRIPTION:
# Adjust PATH LDPATH and LD_LIBRARY_PATH to see only current trinity version
adjust-trinity-paths() {
debug-print-function $FUNCNAME "$@"
local libdir
# this function can be called during depend phase so we shouldn't use sed here
PATH="$(trinity_remove_path_component "$PATH" "/usr/trinity/*/bin")"
PATH="$(trinity_remove_path_component "$PATH" "/usr/trinity/*/sbin")"
PATH="$(trinity_prepand_path_component "$PATH" "${TDEDIR}/bin" )"
# FIXME: it seems we don't need LDPATH
# LDPATH="$(trinity_remove_path_component "$LDPATH" "/usr/trinity/*/${libdir}")"
LD_LIBRARY_PATH="$(trinity_remove_path_component "$LD_LIBRARY_PATH" "/usr/trinity/*/${libdir}")"
for libdir in $(get-trinity-libdirs); do
# LDPATH="$(trinity_prepand_path_component "$LDPATH" "${TDEDIR}/${libdir}" )"
LD_LIBRARY_PATH="$(trinity_prepand_path_component "$LD_LIBRARY_PATH" "${libdir}" )"
done
export PATH
export LD_LIBRARY_PATH
# Unset home paths so aplications wouldn't try to write to root's dir while build
unset TDEHOME
unset TDEROOTHOME
}
trinity_remove_path_component() {
local i new_path path_array
IFS=: read -ra path_array <<< "$1"
for i in "${path_array[@]}"; do
case "$i" in
$2 ) ;; # delete specyfied entry
"" ) ;;
* ) new_path="${new_path}:${i}" ;;
esac
done
echo "${new_path#:}"
}
trinity_prepand_path_component() {
local new_path
new_path="${2%:}:${1#:}"
echo "${new_path%:}"
}
# @FUNCTION: need-trinity
# @USAGE: < version >
# @DESCRIPTION:
# Sets the correct DEPEND and RDEPEND for the needed trinity < version >.
need-trinity() {
debug-print-function $FUNCNAME "$@"
local my_depend
# determine install locations
set-trinityver $1
adjust-trinity-paths
case "$1" in
3.5*)
my_depend=">=trinity-base/kdelibs-${ETRINITY_VER}:3.5";;
*)
my_depend=">=trinity-base/tdelibs-${ETRINITY_VER}:${TRINITY_VER}";;
esac
DEPEND="$DEPEND $my_depend"
RDEPEND="$RDEPEND $my_depend"
}
# @ECLASS-VARIABLE: TRINITY_NEED_ARTS
# @DESCRIPTION:
# This variable is setted by need-arts function. Possible arguments values 'yes', 'no' and 'optional'
# Default is 'no'
TRINITY_NEED_ARTS="no"
# @FUNCTION: need-arts
# @USAGE: need-arts <yes|optional>
# @DESCRIPTION:
# This function adds DEPEND's for aRTs-support Possible arguments are 'yes' and 'optinal'
# 'yes' means arts is required, optional' results in USE flag arts.
# NOTE: this function modifies IUSE DEPEND and RDEPEND variables, so if you call it before setting
# those variables don't forget to include the priviously setted value into them.
need-arts() {
debug-print-function $FUNCNAME "$@"
local tdelibs my_depend
[[ -z "${1}" ]] && die "$FUNCNAME requires an argument"
TRINITY_NEED_ARTS=$1;
case "${TRINITY_VER}" in
"") die "You must call set-trinityver unctions to set TRINITY_VER before calling $FUNCNAME.";;
3.5*) tdelibs="trinity-base/kdelibs";;
*) tdelibs="trinity-base/tdelibs";;
esac
# handle trinity-base/tdelibs in special way
if [[ "${CATEGORY}/${PN}" == "${tdelibs}" ]]; then
if [[ "$1" == optional ]]; then
my_depend=" arts? ( trinity-base/arts )"
IUSE+=" arts"
else
die "aRTs support for ${tdelibs} supposed to be optional"
fi
else
case "$1" in
yes) my_depend=" trinity-base/arts
${tdelibs}[arts]" ;;
optional) my_depend=" arts? ( trinity-base/arts
${tdelibs}[arts] )"
IUSE+=" arts" ;;
*) die "bad parameter: $1"
esac
fi
DEPEND+=" ${my_depend}";
RDEPEND+=" ${my_depend}";
}

@ -1,262 +0,0 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
#
# Original Author: fat-zer
# Purpose: make easy to install trinity ebuilds.
#
inherit trinity-base trinity-functions cmake-utils
LICENSE="GPL-2 LGPL-2"
HOMEPAGE="http://www.trinitydesktop.org/"
# set slot, TDEDIR, TRINITY_VER and PREFIX
set-trinityver
[[ -z "$SLOT" ]] && SLOT="$TRINITY_VER"
if [[ "$TRINITY_VER" == "3.5" ]]; then
# common dependencies
DEPEND="trinity-base/kdelibs:${SLOT}"
else
DEPEND="trinity-base/tdelibs:${SLOT}"
fi
# @FUNCTION: trinity-meta_set_trinity_submodule
# @DESCRIPTION:
# sets the TRINITY_SUBMODULE variable to vth value aptained from ${PN}
# if it doesn't set yet
trinity-meta_set_trinity_submodule() {
debug-print-function $FUNCNAME "$@"
if [[ -z "$TRINITY_SUBMODULE" ]]; then
TRINITY_SUBMODULE="${PN#${TRINITY_MODULE_NAME}-}"
fi
}
# @FUNCTION: trinity-meta_src_pkg_setup
# @DESCRIPTION:
# Default pkg_setup function. It sets the correct ${S}
# nessecary files.
trinity-meta_pkg_setup() {
debug-print-function ${FUNCNAME} "$@"
adjust-trinity-paths
trinity-meta_set_trinity_submodule
}
# @FUNCTION: trinity-meta_src_unpack
# @DESCRIPTION:
# Default source extract function. It tries to unpack only
# nessecary files.
trinity-meta_src_unpack() {
debug-print-function ${FUNCNAME} "$@"
if [[ ${BUILD_TYPE} = live ]]; then
case "${TRINITY_SCM}" in
svn)
mkdir -p "$S"
ESVN_RESTRICT="export" subversion_src_unpack
subversion_wc_info
subversion_bootstrap
;;
git)
git-2_src_unpack
;;
*) die "TRINITY_SCM: ${TRINITY_SCM} is not supported by ${FUNCNAME}" ;;
esac
fi
trinity-meta_src_extract
}
# @FUNCTION: trinity-meta_src_extract
# @DESCRIPTION:
# A function to extract the source for a split KDE ebuild.
# Also see KMMODULE, KMEXTRACT
trinity-meta_src_extract() {
debug-print-function ${FUNCNAME} "$@"
trinity-meta_create_extractlists
if [[ "${BUILD_TYPE}" = live ]]; then
einfo "Exporting parts of working copy to ${S}"
case "$TRINITY_SCM" in
svn) trinity-meta_rsync_copy ;;
git) # we nothing can do to prevent git from unpacking code
;;
*) die "TRINITY_SCM: ${TRINITY_SCM} is not supported by ${FUNCNAME}"
esac
else
local tarfile tarparams f extractlist
case $TRINITY_TARBALL in
*.gz)
tarparams=" --gzip"
;;
*.xz)
tarparams=" --xz"
;;
esac
# Full path to source tarball
tarfile="${DISTDIR}/${TRINITY_TARBALL}"
# Detect real toplevel dir from tarball name - it will be used upon extraction
topdir="${TRINITY_TARBALL%.tar.*}"
ebegin "Unpacking parts of ${TRINITY_TARBALL} to ${WORKDIR}"
for f in $TSM_EXTRACT_LIST; do
extractlist+=" ${topdir}/${f}"
done
tar -xpf "${tarfile}" ${tarparams} -C "${WORKDIR}" ${extractlist} 2> /dev/null \
|| echo "tar extract command failed at least partially - continuing anyway"
# Make sure $S points to right place
[[ "${WORKDIR}/${topdir}" != "${S}" ]] && S="${WORKDIR}/${topdir}"
fi
}
# @FUNCTION: trinity-meta_rsync_copy
# @DESCRIPTION:
# Copies files from svn or git repository to $S
trinity-meta_rsync_copy() {
debug-print-function ${FUNCNAME} "$@"
local rsync_options subdir targetdir wc_path escm
case "${TRINITY_SCM}" in
svn) wc_path="${ESVN_WC_PATH}";;
git) wc_path="${EGIT_STORE_DIR}/${EGIT_PROJECT}";;
*) die "TRINITY_SCM: ${TRINITY_SCM} is not supported by ${FUNCNAME}" ;;
esac
rsync_options="--group --links --owner --perms --quiet --exclude=.svn/ --exclude=.git/"
# Copy ${TRINITY_MODULE_NAME} non-recursively (toplevel files)
rsync ${rsync_options} "${wc_path}"/* "${S}" \
|| die "rsync: can't export toplevel files to '${S}'."
# Copy cmake directory
if [[ -d "${wc_path}/cmake" ]]; then
rsync --recursive ${rsync_options} "${wc_path}/cmake" "${S}" \
|| die "rsync: can't export cmake files to '${S}'."
fi
# Copy all subdirectories listed in $TSM_EXTRACT_LIST
for subdir in ${TSM_EXTRACT_LIST}; do
rsync --recursive ${rsync_options} "${wc_path}/${subdir}" \
"${S}/$(dirname subdir)" \
|| die "rsync: can't export object '${wc_path}/${subdir}' to '${S}'."
done
}
# @FUNCTION: trinity-meta_create_extractlists
# @DESCRIPTION:
# Create lists of files and subdirectories to extract.
# Also see descriptions of KMMODULE and KMEXTRACT
trinity-meta_create_extractlists() {
debug-print-function ${FUNCNAME} "$@"
local submod
# if $TSM_EXTRACT is not set assign it to dirs named in TRINITY_SUBMODULE
if [ -z "${TSM_EXTRACT}" ]; then
for submod in ${TRINITY_SUBMODULE}; do
TSM_EXTRACT="${TSM_EXTRACT} ${submod}/"
done
fi
# add package-specific files and directories
case "${TRINITY_MODULE_NAME}" in
kdebase) TSM_EXTRACT_LIST+=" kcontrol/ kdmlib/" ;;
tdebase) TSM_EXTRACT_LIST+=" kcontrol/" ;;
*) ;; # nothing special for over modules
# *) die "TRINITY_MODULE_NAME ${TRINITY_MODULE_NAME} is not supported by function ${FUNCNAME}" ;;
esac
TSM_EXTRACT_LIST+=" ${TSM_EXTRACT} ${TSM_EXTRACT_ALSO} cmake/ CMakeLists.txt"
TSM_EXTRACT_LIST+=" config.h.cmake ConfigureChecks.cmake"
debug-print "line ${LINENO} ${ECLASS} ${FUNCNAME}: TSM_EXTRACT_LIST=\"${TSM_EXTRACT_LIST}\""
}
# @FUNCTION: trinity-meta_src_prepare
# @DESCRIPTION:
# Default src prepare function. Currently it's only a stub.
trinity-meta_src_prepare() {
debug-print-function ${FUNCNAME} "$@"
local shared_patch_dir f f_name;
shared_patch_dir="${FILESDIR}/shared/${TRINITY_MODULE_NAME}-${PV}/patches/"
if [ -d "${shared_patch_dir}" ]; then
find "${shared_patch_dir}" -type f | while read f; do
f_name="$(basename "${f}")"
case "${f_name}" in
*.diff | *.patch ) epatch "${f}" ;;
*.gz ) cp "${f}" "${T}"
gunzip ${T}/${f_name}
epatch ${T}/${f_name%.gz}
;;
*.bz2 ) cp "${f}" "${T}"
bunzip2 ${T}/${f_name}
epatch ${T}/${f_name%.bz2}
;;
*) die "unknown patch type in the patch directory" ;;
esac
done;
fi
# fix bad cmake code fo 3.5.13.1
if [ $PV == "3.5.13.1" ]; then
[ -f "cmake/modules/FindTDE.cmake" ] && \
sed -ie 's!HINTS\s\+${\w*BIN\w*}!HINTS "${TDE_PREFIX}/bin" ${BIN_INSTALL_DIR}!' \
cmake/modules/FindTDE.cmake
fi
trinity-base_src_prepare
}
# @FUNCTION: trinity-meta_src_configure
# @DESCRIPTION:
# Default source configure function. It sets apropriate cmake args.
# Also see description of KMMODULE
trinity-meta_src_configure() {
debug-print-function ${FUNCNAME} "$@"
local item tsmargs mod
for item in $TRINITY_SUBMODULE; do
mod="${item^^}"
mod="${mod//-/_}"
tsmargs+=" -DBUILD_${mod}=ON"
done
mycmakeargs=(
"${mycmakeargs[@]}"
${tsmargs}
)
trinity-base_src_configure
}
# @FUNCTION: trinity-meta_src_compile
# @DESCRIPTION:
# Just call trinity-base_src_compile.
trinity-meta_src_compile() {
debug-print-function ${FUNCNAME} "$@"
trinity-base_src_compile
}
# @FUNCTION: trinity-meta_src_install
# @DESCRIPTION:
# Call default cmake install function. and install documentation.
trinity-meta_src_install() {
debug-print-function ${FUNCNAME} "$@"
TRINITY_BASE_NO_INSTALL_DOC="yes" trinity-base_src_install
trinity-base_create_tmp_docfiles $TSM_EXTRACT
trinity-base_install_docfiles
}
EXPORT_FUNCTIONS src_prepare src_configure src_compile src_install src_unpack pkg_setup

@ -1,46 +0,0 @@
The Academic Free License
v. 2.0
This Academic Free License (the "License") applies to any original work of authorship (the "Original Work") whose owner (the "Licensor") has placed the following notice immediately following the copyright notice for the Original Work:
Licensed under the Academic Free License version 2.0
1) Grant of Copyright License. Licensor hereby grants You a world-wide, royalty-free, non-exclusive, perpetual, sublicenseable license to do the following:
a) to reproduce the Original Work in copies;
b) to prepare derivative works ("Derivative Works") based upon the Original Work;
c) to distribute copies of the Original Work and Derivative Works to the public;
d) to perform the Original Work publicly; and
e) to display the Original Work publicly.
2) Grant of Patent License. Licensor hereby grants You a world-wide, royalty-free, non-exclusive, perpetual, sublicenseable license, under patent claims owned or controlled by the Licensor that are embodied in the Original Work as furnished by the Licensor, to make, use, sell and offer for sale the Original Work and Derivative Works.
3) Grant of Source Code License. The term "Source Code" means the preferred form of the Original Work for making modifications to it and all available documentation describing how to modify the Original Work. Licensor hereby agrees to provide a machine-readable copy of the Source Code of the Original Work along with each copy of the Original Work that Licensor distributes. Licensor reserves the right to satisfy this obligation by placing a machine-readable copy of the Source Code in an information repository reasonably calculated to permit inexpensive and convenient access by You for as long as Licensor continues to distribute the Original Work, and by publishing the address of that information repository in a notice immediately following the copyright notice that applies to the Original Work.
4) Exclusions From License Grant. Neither the names of Licensor, nor the names of any contributors to the Original Work, nor any of their trademarks or service marks, may be used to endorse or promote products derived from this Original Work without express prior written permission of the Licensor. Nothing in this License shall be deemed to grant any rights to trademarks, copyrights, patents, trade secrets or any other intellectual property of Licensor except as expressly stated herein. No patent license is granted to make, use, sell or offer to sell embodiments of any patent claims other than the licensed claims defined in Section 2. No right is granted to the trademarks of Licensor even if such marks are included in the Original Work. Nothing in this License shall be interpreted to prohibit Licensor from licensing under different terms from this License any Original Work that Licensor otherwise would have a right to license.
5) This section intentionally omitted.
6) Attribution Rights. You must retain, in the Source Code of any Derivative Works that You create, all copyright, patent or trademark notices from the Source Code of the Original Work, as well as any notices of licensing and any descriptive text identified therein as an "Attribution Notice." You must cause the Source Code for any Derivative Works that You create to carry a prominent Attribution Notice reasonably calculated to inform recipients that You have modified the Original Work.
7) Warranty of Provenance and Disclaimer of Warranty. Licensor warrants that the copyright in and to the Original Work and the patent rights granted herein by Licensor are owned by the Licensor or are sublicensed to You under the terms of this License with the permission of the contributor(s) of those copyrights and patent rights. Except as expressly stated in the immediately proceeding sentence, the Original Work is provided under this License on an "AS IS" BASIS and WITHOUT WARRANTY, either express or implied, including, without limitation, the warranties of NON-INFRINGEMENT, MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK IS WITH YOU. This DISCLAIMER OF WARRANTY constitutes an essential part of this License. No license to Original Work is granted hereunder except under this disclaimer.
8) Limitation of Liability. Under no circumstances and under no legal theory, whether in tort (including negligence), contract, or otherwise, shall the Licensor be liable to any person for any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or the use of the Original Work including, without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses. This limitation of liability shall not apply to liability for death or personal injury resulting from Licensor's negligence to the extent applicable law prohibits such limitation. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so this exclusion and limitation may not apply to You.
9) Acceptance and Termination. If You distribute copies of the Original Work or a Derivative Work, You must make a reasonable effort under the circumstances to obtain the express assent of recipients to the terms of this License. Nothing else but this License (or another written agreement between Licensor and You) grants You permission to create Derivative Works based upon the Original Work or to exercise any of the rights granted in Section 1 herein, and any attempt to do so except under the terms of this License (or another written agreement between Licensor and You) is expressly prohibited by U.S. copyright law, the equivalent laws of other countries, and by international treaty. Therefore, by exercising any of the rights granted to You in Section 1 herein, You indicate Your acceptance of this License and all of its terms and conditions.
10) Termination for Patent Action. This License shall terminate automatically and You may no longer exercise any of the rights granted to You by this License as of the date You commence an action, including a cross-claim or counterclaim, for patent infringement (i) against Licensor with respect to a patent applicable to software or (ii) against any entity with respect to a patent applicable to the Original Work (but excluding combinations of the Original Work with other software or hardware).
11) Jurisdiction, Venue and Governing Law. Any action or suit relating to this License may be brought only in the courts of a jurisdiction wherein the Licensor resides or in which Licensor conducts its primary business, and under the laws of that jurisdiction excluding its conflict-of-law provisions. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any use of the Original Work outside the scope of this License or after its termination shall be subject to the requirements and penalties of the U.S. Copyright Act, 17 U.S.C. ¤ 101 et seq., the equivalent laws of other countries, and international treaty. This section shall survive the termination of this License.
12) Attorneys Fees. In any action to enforce the terms of this License or seeking damages relating thereto, the prevailing party shall be entitled to recover its costs and expenses, including, without limitation, reasonable attorneys' fees and costs incurred in connection with such action, including any appeal of such action. This section shall survive the termination of this License.
13) Miscellaneous. This License represents the complete agreement concerning the subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable.
14) Definition of "You" in This License. "You" throughout this License, whether in upper or lower case, means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License. For legal entities, "You" includes any entity that controls, is controlled by, or is under common control with you. For purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
15) Right to Use. You may use the Original Work in all ways not otherwise restricted or conditioned by this License or by law, and Licensor promises not to interfere with or be responsible for such uses by You.
This license is Copyright (C) 2003 Lawrence E. Rosen. All rights reserved. Permission is hereby granted to copy and distribute this license without modification. This license may not be modified without the express written permission of its copyright owner.

@ -1,3 +0,0 @@
AUX lcms-1.19-disable_static_modules.patch 578 SHA256 bd56a283da65a7ab262d35c890a99e8b103a3a73e50b997e404c3c0ac3ae467e SHA512 fba391dd6d69122217cdcde985d2154dfc2fd9b9aed5a50a013248e024ee54fe07a98acf917fd0e889578616512a2bdf155f0cbe782795e406d96a90b10bbb33 WHIRLPOOL d40c77d18ab5249252e4cadd5b6e2e40c1e43c0f761758908f2afa06d29dce41d56de52d33fe043d7441180c40ca572571fb7c27b87c43406991e5f1e25ff22c
AUX lcms-1.19-implicit.patch 1308 SHA256 327eb96faafac582362f57800727896bd5c2206a7bb150f12ef7787e84f3ddd9 SHA512 120db0ea4c5a77563dffef55507a8e7fa172ee73ad3943b6ba55c4a01f4a0a2ae21794f4775d58f0d8ba6b5fbdc28c461622416981683063ff746db9a38c724b WHIRLPOOL df45ecfc6fe36db90c676e25f053b370af466648e36e752acfd9f5c0d5acc25a445bf0a8a476f0913ca5c7f0304940c3af35bf56c021fa34045cfdb1e52419bc
DIST lcms-1.19.tar.gz 927752 SHA256 80ae32cb9f568af4dc7ee4d3c05a4c31fc513fc3e31730fed0ce7378237273a9 SHA512 85a55ad0673f0df2aaa80d18caa50314319f8da5ee4d84eed919059d0dad9861d684ef6353ce0ec6f9892a4603ce8e8e12f84d46858e23f52846b8aefd3cf449 WHIRLPOOL cb6bcb5497798ff2fa86ff433eae6afea38408306345156da6103aa8af6fc0d48fa1d730c5958c027ba06ea023236328bcb00be60f600d987d060625385c820b

@ -1,20 +0,0 @@
--- a/python/Makefile.am
+++ b/python/Makefile.am
@@ -22,7 +22,7 @@
endif
-_lcms_la_LDFLAGS = -no-undefined -module -avoid-version \
+_lcms_la_LDFLAGS = -no-undefined -module -avoid-version -shared \
-L$(LCMS_PYLIB)/config
_lcms_la_LIBADD = $(top_builddir)/src/liblcms.la -lpython$(PYTHON_VERSION)
@@ -31,7 +31,7 @@
_lcms_la_CPPFLAGS = -I$(PYTHON_PREFIX)/include/python$(PYTHON_VERSION) \
-I$(LCMS_PYINCLUDE) \
- $(AM_CPPFLAGS)
+ $(AM_CPPFLAGS) -shared
EXTRA_DIST = lcms.py lcms.i testbed swig_lcms

@ -1,49 +0,0 @@
cmsio1.c: In function 'AdjustEndianessArray16':
cmsio1.c:118: warning: implicit declaration of function 'swab'
testcms.c: In function 'CheckSwab':
testcms.c:113: warning: implicit declaration of function 'swab'
================================================================================
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -6,6 +6,9 @@
# Don't require all the GNU mandated files
AUTOMAKE_OPTIONS = 1.7 foreign
+# _XOPEN_SOURCE is required for swab() but undefines strcasecmp(), so add _GNU_SOURCE as well:
+AM_CPPFLAGS = -D_XOPEN_SOURCE -D_GNU_SOURCE
+
includedir = ${prefix}/include
# Shared libraries built in this directory
--- a/src/cmsio1.c
+++ b/src/cmsio1.c
@@ -24,6 +24,7 @@
#include "lcms.h"
+#include <unistd.h>
// ----------------------------------------------------------------- Tag Serialization
--- a/testbed/Makefile.am
+++ b/testbed/Makefile.am
@@ -6,6 +6,9 @@
# Don't require all the GNU mandated files
AUTOMAKE_OPTIONS = 1.7 foreign
+# Required for swab()
+AM_CPPFLAGS = -D_XOPEN_SOURCE
+
INCLUDES = -I$(top_builddir)/include -I$(top_srcdir)/include
check_PROGRAMS = testcms
--- a/testbed/testcms.c
+++ b/testbed/testcms.c
@@ -36,6 +36,7 @@
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
+#include <unistd.h>
#ifndef NON_WINDOWS
#include <icm.h>

@ -1,103 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="6"
PYTHON_COMPAT=( python2_{6,7} )
inherit autotools eutils python-r1
DESCRIPTION="A lightweight, speed optimized color management engine"
HOMEPAGE="http://www.littlecms.com/"
SRC_URI="http://www.littlecms.com/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE="jpeg python static-libs tiff zlib"
RDEPEND="tiff? ( media-libs/tiff:0 )
jpeg? ( virtual/jpeg:0 )
zlib? ( sys-libs/zlib )
python? ( ${PYTHON_DEPS} )"
DEPEND="${RDEPEND}
python? ( >=dev-lang/swig-1.3.31 )"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
PATCHES=(
"${FILESDIR}/${P}-disable_static_modules.patch"
"${FILESDIR}/${P}-implicit.patch"
)
src_prepare() {
# Python bindings are built/installed manually.
sed -e "/SUBDIRS =/s/ python//" -i Makefile.am
default
eautoreconf
# run swig to regenerate lcms_wrap.cxx and lcms.py (bug #148728)
if use python; then
cd python
./swig_lcms || die "swig failed to regenerate files"
fi
}
src_configure() {
econf \
--libdir="${EPREFIX}"/usr/$(get_libdir) \
--bindir="${EPREFIX}"/usr/bin \
--disable-dependency-tracking \
$(use_enable static-libs static) \
$(use_with jpeg) \
$(use_with python) \
$(use_with tiff) \
$(use_with zlib)
}
src_compile() {
default
if use python; then
local BUILD_DIR
BUILD_DIR=python
python_copy_sources
building() {
emake \
LCMS_PYEXECDIR="${EPREFIX}$(python_get_sitedir)" \
LCMS_PYINCLUDE="${EPREFIX}$(python_get_includedir)"
# No corresponding functions in python-r1
# LCMS_PYLIB="${EPREFIX}$(python_get_libdir)" \
# PYTHON_VERSION="$(python_get_version)"
}
python_foreach_impl run_in_build_dir building
fi
}
src_install() {
DOCS=(AUTHORS README* INSTALL NEWS doc/*)
default
if use python; then
local BUILD_DIR
BUILD_DIR=python
installation() {
emake \
DESTDIR="${D}" \
LCMS_PYEXECDIR="${EPREFIX}$(python_get_sitedir)" \
install
}
python_foreach_impl run_in_build_dir installation
fi
insinto /usr/share/lcms/profiles
doins testbed/*.icm
find "${D}" -name '*.la' -exec rm -f '{}' +
}

@ -1,16 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>fatzer2@gmail.com</email>
<name>Alexander Golubev</name>
<description>The maintainer of the package in the overlay</description>
</maintainer>
<maintainer type="project">
<email>printing@gentoo.org</email>
<name>Gentoo Printing Project</name>
</maintainer>
<upstream>
<remote-id type="sourceforge">lcms</remote-id>
</upstream>
</pkgmetadata>

@ -1,4 +0,0 @@
AUX 0001-gentoo-do-not-build-tests-if-not-required.patch 529 SHA256 15eae8cfbe4e8218be9dadd5e6a77830d7b47d4732499dd0a1ba4b325ef51f3c SHA512 6efe371e2a51211698ca0ae9c3c498331ea69342a3be2cf98a9ad060aa062738d6b49830f4c5f65529bb14df5993f516fb14d4c977e9d2263158819ed8c7d67d WHIRLPOOL 2a598d0d2d487592ed0125bef51cfb8c5e4d645fb9011f250e11cec4b65629a9219e884dc5d6e3ee567fb1e135bd52d5f393fd8ed1cc71f508c8de843040890f
AUX 0002-TDE-fix-a-number-of-problems.patch 11281 SHA256 faa31cb9cfe45539f1b478d9f6792651b913525db8492d9aab980e784f92ee0a SHA512 6ea308b5857e8339994dd1530962c2dd8d225f4f3b553d65003266c84eb79095f7a79c52fba2469e8683aa47f2db0d85dbb1841945ed2fe6d78a4c7efd1662a7 WHIRLPOOL 8a623b5247f8f4002fc28c578b8cd2d16bef7b6c939056f294011b14227d14e6e7c3b4ec07b7191bf7e7a2d80c4e23a9d8368e1aaa8390921dbd16a0d52f4bd7
AUX 0003-TDE-Clean-up-debug-spew.patch 3607 SHA256 5a1b797b31623bc0b79a51ac15c6573e70fd76306c114f7e781bc8295c9888c8 SHA512 83c651c9e7ac6cdcb28b9a2e1a7542150bfec522e9b9bb05f4679830621164a4e49a4a2e881765e1edf1efcb0a8af9b6252cc004dd33628ea59dd03ca4a8c8d3 WHIRLPOOL 823a59a127709ff2c023e739553ca99749a18786a13c817645159373506cebd45fd17b58529add2b3770fceef529ca04384a818c8621aca0bf441997a55356dd
DIST libart_lgpl-2.3.21.tar.bz2 329102 SHA256 fdc11e74c10fc9ffe4188537e2b370c0abacca7d89021d4d303afdf7fd7476fa SHA512 8a632a6a4da59e5e8c02ec2f5a57e36d182b325b46513765425e5f171ff9ae326af1b133725beba28f7e76654309e001aee9bace727b5b4c8589405256a3c020 WHIRLPOOL 1e524326519b5e8b12a6bc708bcd9c8e9789a79d2a3cd6bf71fd526b6868407436af7d5b00ece7e41b7ea7419cb700ef0b417e7f22ebcfe4aace2cbfa02bcd80

@ -1,22 +0,0 @@
From f2288355d0709b183b749b10ca0a3c6587cd2ddc Mon Sep 17 00:00:00 2001
From: Gilles Dartiguelongue <eva@gentoo.org>
Date: Tue, 6 Apr 2010 15:11:46 +0200
Subject: [PATCH 1/3] gentoo: do not build tests if not required
---
Makefile.am | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile.am b/Makefile.am
index aec6c5d..95952da 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,4 +1,4 @@
-noinst_PROGRAMS = testart testuta
+check_PROGRAMS = testart testuta
bin_SCRIPTS = \
libart2-config
--
1.8.1.5

@ -1,402 +0,0 @@
From 12ea00aa1898e33a467e2d8e18b6ebad43a181f3 Mon Sep 17 00:00:00 2001
From: Golubev Alexander <fatzer2@gmail.com>
Date: Thu, 15 Aug 2013 02:08:26 +0400
Subject: [PATCH 2/3] TDE: fix a number of problems
Conflicts:
art_config.h
---
ChangeLog | 2 +
README | 14 ++++++
art_render_gradient.c | 28 ++++++++++++
art_render_gradient.h | 3 +-
art_vpath_bpath.c | 119 ++++++++++++++++++++++++--------------------------
gen_art_config.sh.in | 6 +++
libart-config.in | 13 +++++-
testart.c | 6 +++
8 files changed, 127 insertions(+), 64 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 6861cf3..e274c9c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,5 @@
+*** PLEASE SEE THE GIT COMMIT LOG FOR NEWER CHANGES ***
+
2009-01-14 Fridrich Strba <fridrich.strba@bluewin.ch>
* gen_art_config.c: remove
diff --git a/README b/README
index 882527e..a88ec40 100644
--- a/README
+++ b/README
@@ -17,3 +17,17 @@ For more information about libart, see the web page:
There's also a libart tutorial available at
http://www.gnome.org/~mathieu/libart/libart.html
+======================================================================
+
+NOTE: The TDE project has take over maintinance of this library,
+starting with the sources from the final upstream release v2.3.21.
+
+This allows the TDE project to resolve remaining issues that cause
+problems or crashes within TDE.
+
+This patched library is only available under the terms of the
+GPL/LGPL, and is NOT for sale by the original author as mentioned
+above, as patch copyright has NOT been transferred to the original
+author and we have no plans to do so.
+
+======================================================================
diff --git a/art_render_gradient.c b/art_render_gradient.c
index bf93c6f..008d61a 100644
--- a/art_render_gradient.c
+++ b/art_render_gradient.c
@@ -30,7 +30,9 @@
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
+#if 0
#include <assert.h>
+#endif
/* Hack to find out how to define alloca on different platforms.
* Modified version of glib/galloca.h.
@@ -203,7 +205,9 @@ calc_color_at (ArtGradientStop *stops,
}
printf ("WARNING! bad ix %d in calc_color_at() [internal error]\n", ix);
+#if 0
assert (0);
+#endif
}
static void
@@ -331,6 +335,7 @@ art_render_gradient_linear_render_8 (ArtRenderCallback *self,
printf ("Initial ix: %d\n", ix);
#endif
+#if 0
assert (ix > 0);
assert (ix < n_stops);
assert ((stops[ix-1].offset <= offset_fraction + EPSILON) ||
@@ -344,6 +349,17 @@ art_render_gradient_linear_render_8 (ArtRenderCallback *self,
assert ((offset_fraction != stops[ix].offset) ||
(d_offset <= 0.0));
*/
+#else
+ if (!( (ix > 0) && (ix < n_stops)
+ && ((stops[ix-1].offset <= offset_fraction + EPSILON) ||
+ ((stops[ix].offset > (1.0 - EPSILON))
+ && (offset_fraction < EPSILON /* == 0.0*/)))
+ && (offset_fraction <= stops[ix].offset)))
+ {
+ printf ("art_render_gradient.c:%d: Old assert() failed!\n", __LINE__);
+ return;
+ }
+#endif
while (width > 0)
{
@@ -663,6 +679,18 @@ art_render_gradient_radial_render (ArtRenderCallback *self, ArtRender *render,
z = b_a + sqrt (rad);
else
z = b_a;
+
+ if (gradient->spread == ART_GRADIENT_PAD)
+ z = z;
+ else if (gradient->spread == ART_GRADIENT_REPEAT)
+ z = z - floor (z);
+ else /* (gradient->spread == ART_GRADIENT_REFLECT) */
+ {
+ double tmp;
+
+ tmp = z - 2 * floor (0.5 * z);
+ z = tmp > 1 ? 2 - tmp : tmp;
+ }
art_render_gradient_setpix (render, bufp, n_stops, stops, z);
bufp += pixstride;
b_a += db_a;
diff --git a/art_render_gradient.h b/art_render_gradient.h
index ef5da95..7e8e0c8 100644
--- a/art_render_gradient.h
+++ b/art_render_gradient.h
@@ -52,14 +52,15 @@ struct _ArtGradientLinear {
double a;
double b;
double c;
- ArtGradientSpread spread;
int n_stops;
ArtGradientStop *stops;
+ ArtGradientSpread spread;
};
struct _ArtGradientRadial {
double affine[6]; /* transforms user coordinates to unit circle */
double fx, fy; /* focal point in unit circle coords */
+ ArtGradientSpread spread;
int n_stops;
ArtGradientStop *stops;
};
diff --git a/art_vpath_bpath.c b/art_vpath_bpath.c
index 3f9afe7..2459f23 100644
--- a/art_vpath_bpath.c
+++ b/art_vpath_bpath.c
@@ -123,18 +123,6 @@ art_vpath_render_bez (ArtVpath **p_vpath, int *pn, int *pn_max,
double x3, double y3,
double flatness)
{
- double x3_0, y3_0;
- double z3_0_dot;
- double z1_dot, z2_dot;
- double z1_perp, z2_perp;
- double max_perp_sq;
-
- double x_m, y_m;
- double xa1, ya1;
- double xa2, ya2;
- double xb1, yb1;
- double xb2, yb2;
-
/* It's possible to optimize this routine a fair amount.
First, once the _dot conditions are met, they will also be met in
@@ -157,70 +145,79 @@ art_vpath_render_bez (ArtVpath **p_vpath, int *pn, int *pn_max,
just that I have this undying quest for more speed...
*/
-
- x3_0 = x3 - x0;
- y3_0 = y3 - y0;
-
- /* z3_0_dot is dist z0-z3 squared */
- z3_0_dot = x3_0 * x3_0 + y3_0 * y3_0;
-
- if (z3_0_dot < 0.001)
+ do
{
- /* if start and end point are almost identical, the flatness tests
- * don't work properly, so fall back on testing whether both of
- * the other two control points are the same as the start point,
- * too.
- */
- if (hypot(x1 - x0, y1 - y0) < 0.001
- && hypot(x2 - x0, y2 - y0) < 0.001)
- goto nosubdivide;
- else
- goto subdivide;
- }
+ /* don't subdivide inside this */
+ double x3_0, y3_0;
+ double z3_0_dot;
+ double z1_dot, z2_dot;
+ double z1_perp, z2_perp;
+ double max_perp_sq;
- /* we can avoid subdivision if:
+ x3_0 = x3 - x0;
+ y3_0 = y3 - y0;
- z1 has distance no more than flatness from the z0-z3 line
+ /* z3_0_dot is dist z0-z3 squared */
+ z3_0_dot = x3_0 * x3_0 + y3_0 * y3_0;
- z1 is no more z0'ward than flatness past z0-z3
+ if (z3_0_dot > 0.001)
+ {
+ /* we can avoid subdivision if:
- z1 is more z0'ward than z3'ward on the line traversing z0-z3
+ z1 has distance no more than flatness from the z0-z3 line
- and correspondingly for z2 */
+ z1 is no more z0'ward than flatness past z0-z3
- /* perp is distance from line, multiplied by dist z0-z3 */
- max_perp_sq = flatness * flatness * z3_0_dot;
+ z1 is more z0'ward than z3'ward on the line traversing z0-z3
- z1_perp = (y1 - y0) * x3_0 - (x1 - x0) * y3_0;
- if (z1_perp * z1_perp > max_perp_sq)
- goto subdivide;
+ and correspondingly for z2 */
- z2_perp = (y3 - y2) * x3_0 - (x3 - x2) * y3_0;
- if (z2_perp * z2_perp > max_perp_sq)
- goto subdivide;
+ /* perp is distance from line, multiplied by dist z0-z3 */
+ max_perp_sq = flatness * flatness * z3_0_dot;
- z1_dot = (x1 - x0) * x3_0 + (y1 - y0) * y3_0;
- if (z1_dot < 0 && z1_dot * z1_dot > max_perp_sq)
- goto subdivide;
+ z1_perp = (y1 - y0) * x3_0 - (x1 - x0) * y3_0;
+ if (z1_perp * z1_perp > max_perp_sq)
+ break;
- z2_dot = (x3 - x2) * x3_0 + (y3 - y2) * y3_0;
- if (z2_dot < 0 && z2_dot * z2_dot > max_perp_sq)
- goto subdivide;
+ z2_perp = (y3 - y2) * x3_0 - (x3 - x2) * y3_0;
+ if (z2_perp * z2_perp > max_perp_sq)
+ break;
- if (z1_dot + z1_dot > z3_0_dot)
- goto subdivide;
+ z1_dot = (x1 - x0) * x3_0 + (y1 - y0) * y3_0;
+ if (z1_dot < 0 && z1_dot * z1_dot > max_perp_sq)
+ break;
- if (z2_dot + z2_dot > z3_0_dot)
- goto subdivide;
+ if (z1_dot + z1_dot > z3_0_dot)
+ break;
-
- nosubdivide:
- /* don't subdivide */
- art_vpath_add_point (p_vpath, pn, pn_max,
- ART_LINETO, x3, y3);
- return;
+ z2_dot = (x3 - x2) * x3_0 + (y3 - y2) * y3_0;
+ if (z2_dot < 0 && z2_dot * z2_dot > max_perp_sq)
+ break;
- subdivide:
+ if (z2_dot + z2_dot > z3_0_dot)
+ break;
+ }
+ else
+ {
+ /* if start and end point are almost identical, the flatness tests
+ * don't work properly, so fall back on testing whether both of
+ * the other two control points are the same as the start point,
+ * too.
+ */
+ if (hypot(x1 - x0, y1 - y0) > 0.001
+ || hypot(x2 - x0, y2 - y0) > 0.001)
+ break;
+ }
+
+ art_vpath_add_point (p_vpath, pn, pn_max,
+ ART_LINETO, x3, y3);
+ return;
+ } while (0);
+ double x_m, y_m;
+ double xa1, ya1;
+ double xa2, ya2;
+ double xb1, yb1;
+ double xb2, yb2;
xa1 = (x0 + x1) * 0.5;
ya1 = (y0 + y1) * 0.5;
diff --git a/gen_art_config.sh.in b/gen_art_config.sh.in
index 79843bc..8c525bd 100644
--- a/gen_art_config.sh.in
+++ b/gen_art_config.sh.in
@@ -8,6 +8,9 @@
echo "/* Automatically generated by gen_art_config */"
echo
+echo "#ifndef _ART_CONFIG_H_"
+echo "#define _ART_CONFIG_H_"
+echo
echo "#define ART_SIZEOF_CHAR @ART_SIZEOF_CHAR@"
echo "#define ART_SIZEOF_SHORT @ART_SIZEOF_SHORT@"
echo "#define ART_SIZEOF_INT @ART_SIZEOF_INT@"
@@ -39,5 +42,8 @@ else
fi
fi
+echo
+echo "#endif /* _ART_CONFIG_H_ */"
+
exit 0
}
diff --git a/libart-config.in b/libart-config.in
index 0a2f3a9..e32f010 100644
--- a/libart-config.in
+++ b/libart-config.in
@@ -3,6 +3,8 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
exec_prefix_set=no
+libs=""
+output_libs=no
usage="\
Usage: libart-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version] [--libs] [--cflags]"
@@ -43,8 +45,11 @@ while test $# -gt 0; do
echo $includes
;;
--libs)
- libdirs=-L@libdir@
- echo $libdirs -lart_lgpl_2 -lm
+ libs="$libs -L@libdir@ -lart_lgpl_2"
+ output_libs=yes
+ ;;
+ --static)
+ libs="$libs -lm"
;;
*)
echo "${usage}" 1>&2
@@ -54,3 +59,7 @@ while test $# -gt 0; do
shift
done
+if test $output_libs = yes ; then
+ echo $libs
+fi
+
diff --git a/testart.c b/testart.c
index f20b292..994c7ba 100644
--- a/testart.c
+++ b/testart.c
@@ -228,6 +228,7 @@ make_testpat (void)
art_free (vpath3);
#else
svp2 = art_svp_from_vpath (vpath2);
+ art_free (vpath2);
#endif
#if 1
@@ -361,6 +362,7 @@ test_dist (void)
4,
0.5);
#endif
+ art_free (vpath);
art_rgb_svp_aa (svp, 0, 0, 512, 512,
0xffe0a0, 0x100040,
@@ -431,10 +433,12 @@ test_render_gradient (art_u8 *buf)
vpath = randstar (50);
svp = art_svp_from_vpath (vpath);
+ art_free (vpath);
render = art_render_new (0, 0, 512, 512, buf, 512 * 3, 3, 8, ART_ALPHA_NONE,
NULL);
art_render_svp (render, svp);
+ art_svp_free (svp);
art_render_gradient_linear (render, &gradient, ART_FILTER_NEAREST);
art_render_invoke (render);
@@ -467,6 +471,7 @@ test_render_rad_gradient (art_u8 *buf)
vpath = randstar (50);
svp = art_svp_from_vpath (vpath);
+ art_free (vpath);
render = art_render_new (0, 0, 512, 512, buf, 512 * 3, 3, 8, ART_ALPHA_NONE,
NULL);
@@ -489,6 +494,7 @@ test_gradient (void)
vpath = randstar (50);
svp = art_svp_from_vpath (vpath);
+ art_free (vpath);
for (i = 0; i < n_iter; i++)
{
--
1.8.1.5

@ -1,120 +0,0 @@
From 2d8f80350005641824e90447234352dc311a3c9d Mon Sep 17 00:00:00 2001
From: Golubev Alexander <fatzer2@gmail.com>
Date: Thu, 15 Aug 2013 02:10:16 +0400
Subject: [PATCH 3/3] TDE: Clean up debug spew
Clean up README file
---
README | 2 +-
art_render_gradient.c | 28 ++++------------------------
art_render_gradient.h | 2 +-
art_svp_intersect.c | 2 ++
4 files changed, 8 insertions(+), 26 deletions(-)
diff --git a/README b/README
index a88ec40..dc912f9 100644
--- a/README
+++ b/README
@@ -19,7 +19,7 @@ http://www.gnome.org/~mathieu/libart/libart.html
======================================================================
-NOTE: The TDE project has take over maintinance of this library,
+NOTE: The TDE project has taken over maintenance of this library,
starting with the sources from the final upstream release v2.3.21.
This allows the TDE project to resolve remaining issues that cause
diff --git a/art_render_gradient.c b/art_render_gradient.c
index 008d61a..c0638f8 100644
--- a/art_render_gradient.c
+++ b/art_render_gradient.c
@@ -30,9 +30,6 @@
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
-#if 0
-#include <assert.h>
-#endif
/* Hack to find out how to define alloca on different platforms.
* Modified version of glib/galloca.h.
@@ -205,9 +202,6 @@ calc_color_at (ArtGradientStop *stops,
}
printf ("WARNING! bad ix %d in calc_color_at() [internal error]\n", ix);
-#if 0
- assert (0);
-#endif
}
static void
@@ -334,33 +328,19 @@ art_render_gradient_linear_render_8 (ArtRenderCallback *self,
#ifdef DEBUG_SPEW
printf ("Initial ix: %d\n", ix);
#endif
-
-#if 0
- assert (ix > 0);
- assert (ix < n_stops);
- assert ((stops[ix-1].offset <= offset_fraction + EPSILON) ||
- ((stops[ix].offset > (1.0 - EPSILON)) && (offset_fraction < EPSILON /* == 0.0*/)));
- assert (offset_fraction <= stops[ix].offset);
- /* FIXME: These asserts may be broken, it is for now
- safer to not use them. Should be fixed!
- See bug #121850
- assert ((offset_fraction != stops[ix-1].offset) ||
- (d_offset >= 0.0));
- assert ((offset_fraction != stops[ix].offset) ||
- (d_offset <= 0.0));
- */
-#else
+
if (!( (ix > 0) && (ix < n_stops)
&& ((stops[ix-1].offset <= offset_fraction + EPSILON) ||
((stops[ix].offset > (1.0 - EPSILON))
&& (offset_fraction < EPSILON /* == 0.0*/)))
&& (offset_fraction <= stops[ix].offset)))
{
+#ifdef DEBUG_SPEW
printf ("art_render_gradient.c:%d: Old assert() failed!\n", __LINE__);
+#endif
return;
}
-#endif
-
+
while (width > 0)
{
#ifdef DEBUG_SPEW
diff --git a/art_render_gradient.h b/art_render_gradient.h
index 7e8e0c8..79ed4f8 100644
--- a/art_render_gradient.h
+++ b/art_render_gradient.h
@@ -60,9 +60,9 @@ struct _ArtGradientLinear {
struct _ArtGradientRadial {
double affine[6]; /* transforms user coordinates to unit circle */
double fx, fy; /* focal point in unit circle coords */
- ArtGradientSpread spread;
int n_stops;
ArtGradientStop *stops;
+ ArtGradientSpread spread;
};
struct _ArtGradientStop {
diff --git a/art_svp_intersect.c b/art_svp_intersect.c
index 4ece5f4..69ddd39 100644
--- a/art_svp_intersect.c
+++ b/art_svp_intersect.c
@@ -601,7 +601,9 @@ art_svp_intersect_add_horiz (ArtIntersectCtx *ctx, ArtActiveSeg *seg)
#ifdef CHEAP_SANITYCHECK
if (seg->flags & ART_ACTIVE_FLAGS_IN_HORIZ)
{
+#ifdef VERBOSE
art_warn ("*** attempt to put segment in horiz list twice\n");
+#endif
return;
}
seg->flags |= ART_ACTIVE_FLAGS_IN_HORIZ;
--
1.8.1.5

@ -1,49 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
GCONF_DEBUG="no"
GNOME_TARBALL_SUFFIX="bz2"
inherit autotools eutils gnome2
DESCRIPTION="a LGPL version of libart"
HOMEPAGE="http://www.levien.com/libart"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE=""
RDEPEND=""
DEPEND="virtual/pkgconfig"
# The provided tests are interactive only
RESTRICT="test"
DOCS="AUTHORS ChangeLog NEWS README"
pkg_setup() {