Live ebuilds: More options, fixed dependencies and cleanup.

TQt:

- Add USE for:
  xrandr, tablet, tools, glib, mng and fontconfig.
- Get ride of forced -g flag (thanks to @selk).
- Make hiddenvisibility a choice.
- Do not dlopen libGL.
- Less debug if building without debug.
- Build sqlite3 plugin too, if build with sqlite.
- Add -xshape -xkb -xcursor for building.
- Fix dependencies and polish.

General:

- DrKonqi: Add USE for hwlib.
- KControl: Add USE for svg.
- TDM: Add USE for svg and hwlib.
- KSMServer: Add USE for hwlib, remove upower.
- Make hwlib USE flag default option.
- Fix dependencies in general.
- Remove avahi USE mask, because fixed.

TDELibs:

- Add USE for:
  svg, pkcs11, elficons, malloc, udisks,
  ssl, udevil, systemd, debug, pcre, idn.
- Use shared memory for pixmap loading.
- Depend on ca-certificates only with ssl USE.
- Ebuild polish and cleanup.
- Messages for informations.
- Remove redundant multilib eclass.
- Add back old_udisks, udisks and udevil USE.

Signed-off-by: Chris <xchrisx@uber.space>
pull/52/head
Chris 4 years ago committed by TDE Gitea
parent 4ee3ee1e29
commit fa565e6f4d

@ -6,21 +6,19 @@ EAPI=7
inherit eutils git-r3 toolchain-funcs inherit eutils git-r3 toolchain-funcs
SRCTYPE="free" SRCTYPE="free"
DESCRIPTION="Trinity's Qt toolkit fork." DESCRIPTION="Trinity's Qt3 toolkit fork - a comprehensive C++ application development framework."
HOMEPAGE="http://trinitydesktop.org/" HOMEPAGE="http://trinitydesktop.org/"
EGIT_REPO_URI="https://mirror.git.trinitydesktop.org/gitea/TDE/tqt3" EGIT_REPO_URI="https://mirror.git.trinitydesktop.org/gitea/TDE/tqt3"
LICENSE="|| ( GPL-2 GPL-3 )" LICENSE="|| ( GPL-2 GPL-3 )"
SLOT="3.5" SLOT="3.5"
KEYWORDS= IUSE="cups debug doc examples firebird ipv6 mysql nas nis +opengl postgres
IUSE="cups debug doc examples firebird ipv6 mysql nas nis opengl postgres sqlite xinerama" sqlite +xinerama tablet +xrandr glib mng fontconfig +hiddenvisibility"
# TODO: optional support for xrender and xrandr
RDEPEND=" RDEPEND="
virtual/jpeg:= virtual/jpeg:=
media-libs/freetype media-libs/freetype
media-libs/libmng
media-libs/libpng:= media-libs/libpng:=
sys-libs/zlib sys-libs/zlib
x11-libs/libXft x11-libs/libXft
@ -34,7 +32,12 @@ RDEPEND="
nas? ( media-libs/nas ) nas? ( media-libs/nas )
opengl? ( virtual/opengl virtual/glu ) opengl? ( virtual/opengl virtual/glu )
postgres? ( dev-db/postgresql:= ) postgres? ( dev-db/postgresql:= )
xinerama? ( x11-libs/libXinerama )" sqlite? ( dev-db/sqlite:= )
mng? ( media-libs/libmng )
glib? ( dev-libs/glib )
fontconfig? ( media-libs/fontconfig )
xinerama? ( x11-libs/libXinerama )
xrandr? ( x11-libs/libXrandr )"
DEPEND="${RDEPEND} DEPEND="${RDEPEND}
x11-base/xorg-proto" x11-base/xorg-proto"
@ -80,9 +83,10 @@ src_prepare() {
# Do not link with -rpath. See Gentoo bug #75181. # Do not link with -rpath. See Gentoo bug #75181.
find "${S}"/mkspecs -name qmake.conf | xargs \ find "${S}"/mkspecs -name qmake.conf | xargs \
sed -i -e 's:QMAKE_RPATH.*:QMAKE_RPATH =:' sed -i -e 's:QMAKE_RPATH.*:QMAKE_RPATH =:' || die
sed -i -e "s:QMAKE_CFLAGS_RELEASE.*=.*:QMAKE_CFLAGS_RELEASE=${CFLAGS}:" \ sed -i -e "s:QMAKE_CFLAGS_RELEASE.*=.*:QMAKE_CFLAGS_RELEASE=${CFLAGS}:" \
-e 's:QMAKE_CFLAGS\t\t=.*:QMAKE_CFLAGS =:' \
-e "s:QMAKE_CXXFLAGS_RELEASE.*=.*:QMAKE_CXXFLAGS_RELEASE=${CXXFLAGS}:" \ -e "s:QMAKE_CXXFLAGS_RELEASE.*=.*:QMAKE_CXXFLAGS_RELEASE=${CXXFLAGS}:" \
-e "s:QMAKE_LFLAGS_RELEASE.*=.*:QMAKE_LFLAGS_RELEASE=${LDFLAGS}:" \ -e "s:QMAKE_LFLAGS_RELEASE.*=.*:QMAKE_LFLAGS_RELEASE=${LDFLAGS}:" \
-e "s:\<QMAKE_CC\>.*=.*:QMAKE_CC=$(tc-getCC):" \ -e "s:\<QMAKE_CC\>.*=.*:QMAKE_CC=$(tc-getCC):" \
@ -92,6 +96,11 @@ src_prepare() {
-e "s:\<QMAKE_STRIP\>.*=.*:QMAKE_STRIP=:" \ -e "s:\<QMAKE_STRIP\>.*=.*:QMAKE_STRIP=:" \
"${S}/mkspecs/${PLATFORM}/qmake.conf" || die "${S}/mkspecs/${PLATFORM}/qmake.conf" || die
if use hiddenvisibility; then
sed -i -e 's:QMAKE_CFLAGS =:QMAKE_CFLAGS = -fvisibility=hidden -fvisibility-inlines-hidden:' \
"${S}/mkspecs/${PLATFORM}/qmake.conf" || die
fi
if [ $(get_libdir) != "lib" ] ; then if [ $(get_libdir) != "lib" ] ; then
sed -i -e "s:/lib$:/$(get_libdir):" \ sed -i -e "s:/lib$:/$(get_libdir):" \
"${S}/mkspecs/${PLATFORM}/qmake.conf" || die "${S}/mkspecs/${PLATFORM}/qmake.conf" || die
@ -101,9 +110,9 @@ src_prepare() {
-e "s:LFLAGS.*=:LFLAGS=${LDFLAGS} :" \ -e "s:LFLAGS.*=:LFLAGS=${LDFLAGS} :" \
"${S}/qmake/Makefile.unix" || die "${S}/qmake/Makefile.unix" || die
# remove docs from install if we don't need it # Remove docs from install if we don't need them
use doc || sed -i -e '/INSTALLS.*=.*htmldocs/d' \ use doc || sed -i -e '/INSTALLS.*=.*htmldocs/d' \
"${S}/src/qt_install.pri" "${S}/src/qt_install.pri" || die
} }
src_configure() { src_configure() {
@ -113,89 +122,75 @@ src_configure() {
# during emerge as it makes TQt much happier. # during emerge as it makes TQt much happier.
addwrite "${TQTBASE}/etc/settings" addwrite "${TQTBASE}/etc/settings"
addwrite "${HOME}/.qt" addwrite "${HOME}/.qt"
addwrite "${HOME}/.tqt"
# common opts # Common options
myconf=" -sm -thread -stl -no-verbose -largefile -tablet -no-exceptions" myconf=" -sm -thread -stl -no-verbose -largefile -no-pch -inputmethod"
myconf+=" $(echo -{qt-imgfmt-,system-lib}{jpeg,mng,png})" myconf+=" $(echo -{qt-imgfmt-,system-lib}{jpeg,png}) -qt-gif -system-zlib"
myconf+=" -platform ${PLATFORM} -xplatform ${PLATFORM}" myconf+=" -platform ${PLATFORM} -xplatform ${PLATFORM}"
myconf+=" -xft -xrender -prefix ${TQTBASE}" myconf+=" -xft -xrender -xshape -xkb -xcursor -prefix ${TQTBASE}"
myconf+=" -libdir ${TQTBASE}/$(get_libdir) -fast -no-sql-odbc" myconf+=" -libdir ${TQTBASE}/$(get_libdir) -fast -no-sql-odbc"
[ "$(get_libdir)" != "lib" ] && myconf+="${myconf} -L/usr/$(get_libdir)" [ "$(get_libdir)" != "lib" ] && myconf+="${myconf} -L/usr/$(get_libdir)"
use nas && myconf+=" -system-nas-sound" # Optional options
use nas && myconf+=" -system-nas-sound" || myconf+=" -no-nas-sound"
use nis && myconf+=" -nis" || myconf+=" -no-nis" 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 xrandr && myconf+=" -xrandr" || myconf+=" -no-xrandr"
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 mng && myconf+=" -qt-imgfmt -system-libmng" || myconf+=" -no-imgfmt-mng"
use firebird && myconf+=" -plugin-sql-ibase -I/opt/firebird/include" || myconf+=" -no-sql-ibase" use cups && myconf+=" -cups" || myconf+=" -no-cups"
use sqlite && myconf+=" -plugin-sql-sqlite" || myconf+=" -no-sql-sqlite" use opengl && myconf+=" -enable-module=opengl -no-dlopen-opengl" || myconf+=" -disable-opengl"
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" use xinerama && myconf+=" -xinerama" || myconf+=" -no-xinerama"
use ipv6 && myconf+=" -ipv6" || myconf+=" -no-ipv6"
use glib && myconf+=" -glibmainloop" || myconf+=" -no-glibmainloop"
use fontconfig && myconf+=" -lfontconfig"
myconf+=" -system-zlib -qt-gif" use debug && myconf+=" -debug" || myconf+=" -release -no-g++-exceptions -no-exceptions"
use ipv6 && myconf+=" -ipv6" || myconf+=" -no-ipv6" 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 -plugin-sql-sqlite3" || myconf+=" -no-sql-sqlite -no-sql-sqlite3"
myconf+=" -dlopen-opengl" use tablet && myconf+=" -tablet" || myconf+=" -no-tablet"
export YACC='byacc -d' export YACC='byacc -d'
tc-export CC CXX tc-export CC CXX
export LINK="$(tc-getCXX)" export LINK="$(tc-getCXX)"
einfo ./configure ${myconf}
./configure ${myconf} || die ./configure ${myconf} || die
} }
src_compile() { src_compile() {
emake src-qmake src-moc sub-src # Compile TQt with TQmake and TQmoc
emake src-qmake src-moc sub-src || die
export DYLD_LIBRARY_PATH="${S}/lib:/usr/X11R6/lib:${DYLD_LIBRARY_PATH}" # Compile TQt plugins (if any selected)
export LD_LIBRARY_PATH="${S}/lib:${LD_LIBRARY_PATH}" emake sub-plugins || die
emake sub-tools # Compile TQDesigner (TQuic is needed by tdelibs), TQAssistant and friends (msg2tqm, qembed..)
emake sub-tools || die
# Compile examples and tutorials
if use examples; then if use examples; then
emake sub-tutorial sub-examples emake sub-tutorial sub-examples || die
fi 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() { src_install() {
# Install TQt with all compiled before
emake INSTALL_ROOT="${D}" install emake INSTALL_ROOT="${D}" install
# Next executables are missing to be installed:
# /usr/qt/3/bin/findtr # Fix pkgconfig location
# /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) dodir /usr/$(get_libdir)
mv "${D}${TQTBASE}/$(get_libdir)/pkgconfig" "${D}/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 # List all the multilib libdirs
local libdirs local libdirs
for alibdir in $(get_all_libdirs); do for alibdir in $(get_all_libdirs); do
libdirs="${libdirs}:${TQTBASE}/${alibdir}" libdirs="${libdirs}:${TQTBASE}/${alibdir}"
done done
# environment variables # Set environment variables
cat <<EOF > "${T}"/44tqt3 cat <<EOF > "${T}"/44tqt3
PATH=${TQTBASE}/bin PATH=${TQTBASE}/bin
ROOTPATH=${TQTBASE}/bin ROOTPATH=${TQTBASE}/bin
@ -222,6 +217,7 @@ EOF
doins -r "${S}"/doc doins -r "${S}"/doc
fi fi
# Install example and tutorial sources
if use examples; then if use examples; then
find "${S}"/examples "${S}"/tutorial -name Makefile | \ find "${S}"/examples "${S}"/tutorial -name Makefile | \
xargs sed -i -e "s:${S}:${TQTBASE}:g" xargs sed -i -e "s:${S}:${TQTBASE}:g"
@ -230,17 +226,14 @@ EOF
cp -r "${S}"/tutorial "${D}"${TQTBASE}/ cp -r "${S}"/tutorial "${D}"${TQTBASE}/
fi fi
# misc build reqs # Misc build requirements
sed -e "s:${S}:${TQTBASE}:g" \ sed -e "s:${S}:${TQTBASE}:g" \
"${S}"/.qmake.cache > "${D}"${TQTBASE}/.qmake.cache "${S}"/.qmake.cache > "${D}"${TQTBASE}/.qmake.cache
dodoc FAQ README README-QT.TXT changes*
} }
pkg_postinst() { pkg_postinst() {
echo echo
elog "After a rebuild of TQt, it can happen that TQt plugins (such as TQt/TDE styles," elog "After rebuilding TQt, it can happen that TQt plugins (such as TQt/TDE styles,"
elog "or widgets for the TQt designer) are no longer recognized. If this situation" elog "or widgets for the TQt designer) are no longer recognized. If this situation"
elog "occurs you should recompile the packages providing these plugins," elog "occurs you should recompile the packages providing these plugins,"
elog "and you should also make sure that TQt and its plugins were compiled with the" elog "and you should also make sure that TQt and its plugins were compiled with the"

@ -1,5 +1,2 @@
#compiles but does nothing
trinity-base/tdelibs avahi
#broken but being fixed as of Jan. 2019 #broken but being fixed as of Jan. 2019
trinity-base/tdelibs cryptsetup trinity-base/tdelibs cryptsetup

@ -18,7 +18,6 @@ LICENSE="|| ( GPL-2 GPL-3 )"
DEPEND="x11-libs/libXScrnSaver DEPEND="x11-libs/libXScrnSaver
x11-libs/libXext x11-libs/libXext
x11-libs/libXtst x11-libs/libXtst
=dev-libs/dbus-tqt-${PV}
=dev-libs/dbus-1-tqt-${PV}" =dev-libs/dbus-1-tqt-${PV}"
RDEPEND="${DEPEND}" RDEPEND="${DEPEND}"

@ -9,4 +9,14 @@ inherit trinity-meta-2
DESCRIPTION="Trinity crash handler gives the user feedback if a program crashed" DESCRIPTION="Trinity crash handler gives the user feedback if a program crashed"
IUSE="+hwlib"
RDEPEND="sys-devel/gdb" RDEPEND="sys-devel/gdb"
src_configure() {
mycmakeargs=(
-DWITH_TDEHWLIB="$(usex hwlib)"
)
trinity-meta-2_src_configure
}

@ -9,7 +9,7 @@ inherit trinity-meta-2
DESCRIPTION="The Trinity Control Center" DESCRIPTION="The Trinity Control Center"
IUSE="samba logitech-mouse ieee1394 hwlib +xrandr " IUSE="samba logitech-mouse ieee1394 +svg +hwlib +xrandr "
DEPEND="x11-libs/libX11 DEPEND="x11-libs/libX11
x11-libs/libXrender x11-libs/libXrender
@ -17,7 +17,6 @@ DEPEND="x11-libs/libX11
samba? ( net-fs/samba ) samba? ( net-fs/samba )
logitech-mouse? ( virtual/libusb:0 ) logitech-mouse? ( virtual/libusb:0 )
ieee1394? ( sys-libs/libraw1394 ) ieee1394? ( sys-libs/libraw1394 )
xrandr? ( x11-libs/libXrandr )
=trinity-base/tdelibs-${PV}[xrandr?] =trinity-base/tdelibs-${PV}[xrandr?]
=trinity-base/libkonq-${PV} =trinity-base/libkonq-${PV}
=trinity-base/kicker-${PV}" =trinity-base/kicker-${PV}"
@ -28,7 +27,8 @@ RDEPEND="${DEPEND}
=trinity-base/tdebase-data-${PV} =trinity-base/tdebase-data-${PV}
=trinity-base/tdesu-${PV} =trinity-base/tdesu-${PV}
=trinity-base/khelpcenter-${PV} =trinity-base/khelpcenter-${PV}
=trinity-base/khotkeys-${PV}" =trinity-base/khotkeys-${PV}
svg? ( =media-libs/libart_lgpl-${PV} )"
TSM_EXTRACT_ALSO="kicker/ twin/ kdesktop/ klipper/ kxkb/" TSM_EXTRACT_ALSO="kicker/ twin/ kdesktop/ klipper/ kxkb/"
@ -42,6 +42,7 @@ src_configure() {
-DWITH_LIBRAW1394="$(usex ieee1394)" -DWITH_LIBRAW1394="$(usex ieee1394)"
-DWITH_XRANDR="$(usex xrandr)" -DWITH_XRANDR="$(usex xrandr)"
-DWITH_TDEHWLIB="$(usex hwlib)" -DWITH_TDEHWLIB="$(usex hwlib)"
-DWITH_LIBART="$(usex svg)"
-DXSCREENSAVER_DIR="/usr/$(get_libdir)/misc/xscreensaver" -DXSCREENSAVER_DIR="/usr/$(get_libdir)/misc/xscreensaver"
) )

@ -12,6 +12,7 @@ IUSE="pam xscreensaver"
COMMON_DEPEND="x11-libs/libXrender COMMON_DEPEND="x11-libs/libXrender
x11-libs/libXcursor x11-libs/libXcursor
=dev-libs/dbus-1-tqt-${PV}
=trinity-base/libkonq-${PV} =trinity-base/libkonq-${PV}
=trinity-base/kcontrol-${PV} =trinity-base/kcontrol-${PV}
xscreensaver? ( x11-libs/libXScrnSaver )" xscreensaver? ( x11-libs/libXScrnSaver )"

@ -8,18 +8,11 @@ TRINITY_MODULE_NAME="tdebase"
inherit trinity-meta-2 inherit trinity-meta-2
DESCRIPTION="The reliable Trinity session manager that talks the standard X11R6" DESCRIPTION="The reliable Trinity session manager that talks the standard X11R6"
IUSE="upower" IUSE="+hwlib"
DEPEND="
=dev-libs/dbus-tqt-${PV}
upower? ( =dev-libs/dbus-1-tqt-${PV} ) "
RDEPEND="${DEPEND}
upower? ( sys-power/upower ) "
src_configure() { src_configure() {
mycmakeargs=( mycmakeargs=(
-DWITH_UPOWER="$(usex upower)" -DWITH_TDEHWLIB="$(usex hwlib)"
) )
trinity-meta-2_src_configure trinity-meta-2_src_configure

@ -9,7 +9,10 @@ inherit trinity-meta-2
DESCRIPTION="A network enabled task manager/system monitor" DESCRIPTION="A network enabled task manager/system monitor"
IUSE=" dell-laptop lm_sensors" IUSE="dell-laptop lm_sensors"
DEPEND="lm_sensors? ( sys-apps/lm-sensors )"
RDEPEND="${DEPEND}"
src_configure() { src_configure() {
mycmakeargs=( mycmakeargs=(

@ -5,7 +5,7 @@
EAPI="7" EAPI="7"
TRINITY_MODULE_NAME="tdelibs" TRINITY_MODULE_NAME="tdelibs"
inherit trinity-base-2 multilib inherit trinity-base-2
set-trinityver set-trinityver
@ -17,60 +17,84 @@ LICENSE="|| ( GPL-2 GPL-3 )"
SLOT="${TRINITY_VER}" SLOT="${TRINITY_VER}"
IUSE+=" alsa avahi cups consolekit cryptsetup fam jpeg2k lua # NOTE: Building without tdehwlib segfaults, but you can try and report.
lzma networkmanager openexr pcsc-lite spell sudo tiff
utempter upower xcomposite hwlib libressl +xrandr " IUSE+=" alsa avahi cups consolekit cryptsetup fam jpeg2k lua lzma udevil +svg +idn
networkmanager openexr pcsc-lite spell sudo tiff utempter elficons +ssl pkcs11 kernel_linux
upower xcomposite +hwlib libressl +xrandr +malloc systemd old_udisks udisks +pcre debug"
MY_DEPEND="=dev-tqt/tqtinterface-${PV} MY_DEPEND="=dev-tqt/tqtinterface-${PV}
dev-libs/libxslt dev-libs/libxslt
dev-libs/libxml2 dev-libs/libxml2
dev-libs/libpcre
net-dns/libidn
app-text/ghostscript-gpl app-text/ghostscript-gpl
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
app-misc/ca-certificates
media-libs/fontconfig media-libs/fontconfig
media-libs/freetype media-libs/freetype
=media-libs/libart_lgpl-${PV}
=dev-libs/dbus-1-tqt-${PV} =dev-libs/dbus-1-tqt-${PV}
x11-libs/libxshmfence
x11-libs/libXrender x11-libs/libXrender
ssl? (
app-misc/ca-certificates
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
idn? ( net-dns/libidn )
pcre? ( dev-libs/libpcre )
svg? ( =media-libs/libart_lgpl-${PV} )
alsa? ( media-libs/alsa-lib ) alsa? ( media-libs/alsa-lib )
avahi? ( net-dns/avahi ) avahi? ( net-dns/avahi )
cryptsetup? ( sys-fs/cryptsetup )
cups? ( net-print/cups ) cups? ( net-print/cups )
fam? ( virtual/fam ) fam? ( virtual/fam )
jpeg2k? ( media-libs/jasper ) jpeg2k? ( media-libs/jasper )
lua? ( dev-lang/lua:* ) lua? ( dev-lang/lua:* )
openexr? ( media-libs/openexr ) openexr? ( media-libs/openexr )
pcsc-lite? ( sys-apps/pcsc-lite )
spell? ( app-dicts/aspell-en app-text/aspell ) spell? ( app-dicts/aspell-en app-text/aspell )
sudo? ( app-admin/sudo ) sudo? ( app-admin/sudo )
tiff? ( media-libs/tiff:= ) tiff? ( media-libs/tiff:= )
utempter? ( sys-libs/libutempter ) utempter? ( sys-libs/libutempter )
networkmanager? ( net-misc/networkmanager )
lzma? ( app-arch/xz-utils ) lzma? ( app-arch/xz-utils )
xrandr? ( x11-libs/libXrandr ) xrandr? ( x11-libs/libXrandr )
xcomposite? ( x11-libs/libXcomposite )" xcomposite? ( x11-libs/libXcomposite )
# TODO: add elfres support via libr (not in portage now) elficons? ( =sys-libs/libr-${PV} )
# NOTE: Building without tdehwlib segfaults, so no choice until fixed. debug? ( sys-libs/binutils-libs:= )"
DEPEND+=" ${MY_DEPEND}" DEPEND+=" ${MY_DEPEND}"
RDEPEND+=" ${MY_DEPEND} RDEPEND+=" ${MY_DEPEND}
consolekit? ( sys-auth/consolekit ) hwlib? (
upower? ( sys-power/upower ) sys-apps/pmount
hwlib? ( || ( sys-fs/udisks sys-apps/udevil sys-apps/pmount ) )" pcsc-lite? ( sys-apps/pcsc-lite )
pkcs11? ( dev-libs/pkcs11-helper )
cryptsetup? ( sys-fs/cryptsetup )
networkmanager? ( net-misc/networkmanager )
consolekit? ( sys-auth/consolekit )
upower? ( sys-power/upower )
systemd? ( sys-apps/systemd:= )
old_udisks? ( sys-fs/udisks:0 )
udisks? ( sys-fs/udisks:2 )
udevil? ( sys-apps/udevil )
)"
src_configure() { src_configure() {
mycmakeargs=( mycmakeargs=(
-DTDE_MALLOC_FULL=ON -DTDE_MALLOC="$(usex malloc)"
-DTDE_MALLOC_FULL="$(usex malloc)"
-DTDE_MALLOC_DEBUG="$(usex debug)"
-DWITH_LIBIDN=ON -DWITH_LIBIDN=ON
-DWITH_SSL=ON -DWITH_MITSHM=ON
-DWITH_LIBART=ON
-DWITH_PCRE=ON
-DWITH_HSPELL=OFF -DWITH_HSPELL=OFF
-DWITH_PKCS=OFF -DWITH_HAL=OFF
-DWITH_TDEHWLIB=ON -DWITH_DEVKITPOWER=OFF
-DWITH_TDEHWLIB_DAEMONS=ON -DWITH_OLD_XDG_STD=OFF
-DWITH_KDE4_MENU_SUFFIX=OFF
-DWITH_PCRE="$(usex pcre)"
-DWITH_LIBART="$(usex svg)"
-DWITH_SSL="$(usex ssl)"
-DWITH_LIBBFD="$(usex debug)"
-DWITH_ELFICON="$(usex elficons)"
-DWITH_TDEHWLIB="$(usex hwlib)"
-DWITH_TDEHWLIB_DAEMONS="$(usex hwlib)"
-DWITH_UDISKS="$(usex old_udisks)"
-DWITH_UDISKS2="$(usex udisks)"
-DWITH_UDEVIL="$(usex udevil)"
-DWITH_ALSA="$(usex alsa)" -DWITH_ALSA="$(usex alsa)"
-DWITH_AVAHI="$(usex avahi)" -DWITH_AVAHI="$(usex avahi)"
-DWITH_CRYPTSETUP="$(usex cryptsetup)" -DWITH_CRYPTSETUP="$(usex cryptsetup)"
@ -86,11 +110,14 @@ src_configure() {
-DWITH_TIFF="$(usex tiff)" -DWITH_TIFF="$(usex tiff)"
-DWITH_UTEMPTER="$(usex utempter)" -DWITH_UTEMPTER="$(usex utempter)"
-DWITH_UPOWER="$(usex upower)" -DWITH_UPOWER="$(usex upower)"
-DWITH_PKCS="$(usex pkcs11)"
-DWITH_CONSOLEKIT="$(usex consolekit)" -DWITH_CONSOLEKIT="$(usex consolekit)"
-DWITH_LOGINDPOWER="$(usex systemd)"
-DWITH_NETWORK_MANAGER_BACKEND="$(usex networkmanager)" -DWITH_NETWORK_MANAGER_BACKEND="$(usex networkmanager)"
-DWITH_XCOMPOSITE="$(usex xcomposite)" -DWITH_XCOMPOSITE="$(usex xcomposite)"
-DWITH_XRANDR="$(usex xrandr)" -DWITH_XRANDR="$(usex xrandr)"
-DWITH_SUDO_TDESU_BACKEND="$(usex sudo)" -DWITH_SUDO_TDESU_BACKEND="$(usex sudo)"
-DWITH_TDEICONLOADER_DEBUG="$(usex debug)"
) )
trinity-base-2_src_configure trinity-base-2_src_configure
@ -99,9 +126,11 @@ src_configure() {
src_install() { src_install() {
trinity-base-2_src_install trinity-base-2_src_install
# Make TDE to use our system certificates if use ssl; then
rm -f "${D}"${TDEDIR}/share/apps/kssl/ca-bundle.crt || die # Make TDE to use our system certificates
dosym /etc/ssl/certs/ca-certificates.crt ${TDEDIR}/share/apps/kssl/ca-bundle.crt rm -f "${D}"${TDEDIR}/share/apps/kssl/ca-bundle.crt || die
dosym /etc/ssl/certs/ca-certificates.crt ${TDEDIR}/share/apps/kssl/ca-bundle.crt
fi
dodir /etc/env.d dodir /etc/env.d
# TDE expects that the install path is listed first in TDEDIRS and the user # TDE expects that the install path is listed first in TDEDIRS and the user
@ -146,4 +175,19 @@ pkg_postinst () {
einfo "to the kdeglobals config file which is should be usually" einfo "to the kdeglobals config file which is should be usually"
einfo "located in the ~/.trinity/share/config/ directory." einfo "located in the ~/.trinity/share/config/ directory."
fi fi
if use malloc; then
einfo "You have build TDE with it's own malloc implementation."
einfo "That might result in better memory use for you when using TDE."
einfo "But it could also result in a slightly different performance."
einfo "With Gentoo you are free to choose what works better for you."
einfo "If you remove the malloc USE flag, GLIBC's malloc will be used."
fi
if ! use hwlib; then
for flag in consolekit networkmanager upower systemd old_udisks udisks udevil pkcs11 pcsc-lite cryptsetup; do
use $flag && \
ewarn "USE=\"$flag\" is passed, but it doesn't change anything due to" && \
ewarn "$flag support in ${P} take effect only if the TDE hwlib is enabled."
done
fi
} }

@ -9,16 +9,15 @@ inherit trinity-meta-2
DESCRIPTION="Trinity login manager, similar to XDM and GDM" DESCRIPTION="Trinity login manager, similar to XDM and GDM"
IUSE="pam xdmcp xcomposite sak +xrandr" IUSE="pam xdmcp xcomposite sak +xrandr +hwlib +svg"
DEPEND="pam? ( trinity-base/tdebase-pam ) DEPEND="pam? ( trinity-base/tdebase-pam )
xdmcp? ( x11-libs/libXdmcp ) xdmcp? ( x11-libs/libXdmcp )
xcomposite? ( x11-libs/libXcomposite ) xcomposite? ( x11-libs/libXcomposite )
xrandr? ( x11-libs/libXrandr ) svg? ( =media-libs/libart_lgpl-${PV} )
=trinity-base/tdelibs-${PV}[xrandr?] =trinity-base/tdelibs-${PV}[xrandr?]
x11-libs/libXtst x11-libs/libXtst
=trinity-base/kcontrol-${PV} =trinity-base/kcontrol-${PV}"
=dev-libs/dbus-tqt-${PV}"
RDEPEND="${DEPEND} RDEPEND="${DEPEND}
=trinity-base/tdepasswd-${PV} =trinity-base/tdepasswd-${PV}
@ -33,11 +32,12 @@ pkg_setup() {
src_configure() { src_configure() {
mycmakeargs=( mycmakeargs=(
-DWITH_XTEST=ON -DWITH_XTEST=ON
-DWITH_LIBART=ON
-DWITH_SHADOW=ON -DWITH_SHADOW=ON
-DWITH_LIBART="$(usex svg)"
-DWITH_XCOMPOSITE="$(usex xcomposite)" -DWITH_XCOMPOSITE="$(usex xcomposite)"
-DWITH_XDMCP="$(usex xdmcp)" -DWITH_XDMCP="$(usex xdmcp)"
-DWITH_XRANDR="$(usex xrandr)" -DWITH_XRANDR="$(usex xrandr)"
-DWITH_TDEHWLIB="$(usex hwlib)"
-DWITH_PAM="$(usex pam)" -DWITH_PAM="$(usex pam)"
-DTDM_PAM_SERVICE=tde -DTDM_PAM_SERVICE=tde
) )
@ -80,7 +80,7 @@ pkg_postinst() {
sak_ok=no sak_ok=no
else else
if ! linux_chkconfig_present INPUT_UINPUT; then if ! linux_chkconfig_present INPUT_UINPUT; then
eerror "You build tdm with sak feature enabled. " eerror "You build TDM with SAK feature enabled. "
eerror "It requires the INPUT_UINPUT support enabled." eerror "It requires the INPUT_UINPUT support enabled."
eerror "Please enable it:" eerror "Please enable it:"
eerror " CONFIG_INPUT_UINPUT=y" eerror " CONFIG_INPUT_UINPUT=y"

Loading…
Cancel
Save