commit:     0799475d4dfa9eface07e9469792dce835890372
Author:     Jauhien Piatlicki <jauhien <AT> gentoo <DOT> org>
AuthorDate: Fri May 23 18:41:40 2014 +0000
Commit:     Davide Pesavento <pesa <AT> gentoo <DOT> org>
CommitDate: Sat May 24 18:55:53 2014 +0000
URL:        
http://git.overlays.gentoo.org/gitweb/?p=proj/qt.git;a=commit;h=0799475d

prepare =x11-misc/sddm-0.1.0 for importing into the Gentoo tree

---
 x11-misc/sddm/files/sddm-0.1.0-clang.patch | 58 ++++++++++++++++++++++++++
 x11-misc/sddm/files/sddm-0.1.0-cmake.patch | 53 +++++++++++++++++++++++
 x11-misc/sddm/metadata.xml                 | 32 +++++++++-----
 x11-misc/sddm/sddm-0.1.0.ebuild            | 67 +++++++++++++-----------------
 x11-misc/sddm/sddm-9999.ebuild             | 63 ++++++++++++----------------
 5 files changed, 187 insertions(+), 86 deletions(-)

diff --git a/x11-misc/sddm/files/sddm-0.1.0-clang.patch 
b/x11-misc/sddm/files/sddm-0.1.0-clang.patch
new file mode 100644
index 0000000..7f0a0e7
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.1.0-clang.patch
@@ -0,0 +1,58 @@
+clang-3.4 and earlier has a bug with intitialization of QStringList with 
initialization lists
+--- src/daemon/Authenticator.cpp
++++ src/daemon/Authenticator.cpp
+@@ -314,7 +314,7 @@
+         process->setProcessEnvironment(env);
+ 
+         // start session
+-        process->start(Configuration::instance()->sessionCommand(), { command 
});
++        process->start(Configuration::instance()->sessionCommand(), 
QStringList(command));
+ 
+         // connect signal
+         connect(process, SIGNAL(finished(int,QProcess::ExitStatus)), this, 
SLOT(finished()));
+
+--- src/daemon/DisplayServer.cpp
++++ src/daemon/DisplayServer.cpp
+@@ -60,6 +60,7 @@
+         // log message
+         qDebug() << " DAEMON: Display server starting...";
+ 
++        QStringList start_parameters;
+ #if !TEST
+         // set process environment
+         QProcessEnvironment env = QProcessEnvironment::systemEnvironment();
+@@ -72,9 +73,11 @@
+         Display *display = qobject_cast<Display *>(parent());
+ 
+         // start display server
+-        process->start(Configuration::instance()->serverPath(), { m_display, 
"-auth", m_authPath, "-nolisten", "tcp", 
QString("vt%1").arg(QString::number(display->vtNumber()), 2, '0')});
++        start_parameters << m_display << "-auth" << m_authPath << "-nolisten" 
<< "tcp" << QString("vt%1").arg(QString::number(display->vtNumber()), 2, '0');
++        process->start(Configuration::instance()->serverPath(), 
start_parameters);
+ #else
+-        process->start("/usr/bin/Xephyr", { m_display, "-ac", "-br", 
"-noreset", "-screen",  "800x600"});
++        start_parameters << m_display << "-ac" << "-br" << "-noreset" << 
"-screen" << "800x600";
++        process->start("/usr/bin/Xephyr", start_parameters);
+ #endif
+         // wait for display server to start
+         if (!process->waitForStarted()) {
+
+--- src/daemon/Greeter.cpp
++++ src/daemon/Greeter.cpp
+@@ -70,12 +70,15 @@
+         env.insert("XCURSOR_THEME", Configuration::instance()->cursorTheme());
+         process->setProcessEnvironment(env);
+ 
++        QStringList start_parameters;
+ #if !TEST
+         // start greeter
+-        process->start(QString("%1/sddm-greeter").arg(BIN_INSTALL_DIR), { 
"--socket", m_socket, "--theme", m_theme });
++        start_parameters << "--socket" << m_socket << "--theme" << m_theme;
++        process->start(QString("%1/sddm-greeter").arg(BIN_INSTALL_DIR), 
start_parameters);
+ #else
+         // start greeter
+-        process->start(QString("%1/sddm-greeter").arg("."), { "--socket", 
m_socket, "--theme", m_theme });
++        start_parameters << "--socket" << m_socket << "--theme" << m_theme;
++        process->start(QString("%1/sddm-greeter").arg("."), start_parameters);
+ #endif
+         // wait for greeter to start
+         if (!process->waitForStarted()) {

diff --git a/x11-misc/sddm/files/sddm-0.1.0-cmake.patch 
b/x11-misc/sddm/files/sddm-0.1.0-cmake.patch
new file mode 100644
index 0000000..f0e68ac
--- /dev/null
+++ b/x11-misc/sddm/files/sddm-0.1.0-cmake.patch
@@ -0,0 +1,53 @@
+--- CMakeLists.txt
++++ CMakeLists.txt
+@@ -6,7 +6,7 @@
+ set(CMAKE_INCLUDE_CURRENT_DIR ON)
+ set(CMAKE_AUTOMOC ON)
+ 
+-add_definitions(-Wall -march=native -std=c++11)
++add_definitions(-Wall -std=c++11)
+ 
+ if(NOT CMAKE_BUILD_TYPE)
+         set(CMAKE_BUILD_TYPE Release)
+@@ -19,7 +19,6 @@
+ else()
+         message(STATUS "Release build")
+         add_definitions(-DNDEBUG)
+-        set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2")
+ endif()
+ 
+ # PKG-CONFIG
+@@ -52,26 +51,26 @@
+ 
+ add_custom_target(uninstall COMMAND ${CMAKE_COMMAND} -P 
${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake)
+ 
++if(USE_systemd)
+ # login1
+-pkg_check_modules(LOGIN1 "libsystemd-login")
++pkg_check_modules(LOGIN1 REQUIRED "libsystemd-login")
+ 
+-if(LOGIN1_FOUND)
+-    # do nothing
+ else()
+     set(LOGIN1_FOUND 0)
+ endif()
+ 
++if(USE_upower)
+ # upower
+-pkg_check_modules(UPOWER "upower-glib")
++pkg_check_modules(UPOWER REQUIRED "upower-glib")
+ 
+-if(UPOWER_FOUND)
+-    # do nothing
+ else()
+     set(UPOWER_FOUND 0)
+ endif()
+ 
++if(USE_systemd)
+ # systemd
+-pkg_check_modules(SYSTEMD "systemd")
++pkg_check_modules(SYSTEMD REQUIRED "systemd")
++endif()
+ 
+ if(SYSTEMD_FOUND)
+     execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} 
--variable=systemdsystemunitdir systemd OUTPUT_VARIABLE SYSTEMD_SYSTEM_UNIT_DIR)

diff --git a/x11-misc/sddm/metadata.xml b/x11-misc/sddm/metadata.xml
index 29819ec..81d4ce5 100644
--- a/x11-misc/sddm/metadata.xml
+++ b/x11-misc/sddm/metadata.xml
@@ -1,11 +1,21 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
-<pkgmetadata>
-       <maintainer>
-               <email>[email protected]</email>
-               <name>Harvey Mittens</name>
-       </maintainer>
-       <longdescription lang="en">
-       SDDM is a modern display manager for X11 aiming to be fast, simple and 
beatiful. It uses modern technologies like QtQuick, which in turn gives the 
designer the ability to create smooth, animated user interfaces.
-       </longdescription>
-</pkgmetadata>
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+  <maintainer>
+    <email>[email protected]</email>
+    <name>Jauhien Piatlicki</name>
+  </maintainer>
+  <maintainer>
+    <email>[email protected]</email>
+    <name>Harvey Mittens</name>
+  </maintainer>
+  <use>
+    <flag name="upower">Use <pkg>sys-power/upower</pkg> for power 
management</flag>
+  </use>
+  <longdescription lang="en">
+    SDDM is a modern display manager for X11 aiming to be fast, simple
+    and beatiful. It uses modern technologies like QtQuick, which in
+    turn gives the designer the ability to create smooth, animated
+    user interfaces.
+  </longdescription>
+</pkgmetadata>

diff --git a/x11-misc/sddm/sddm-0.1.0.ebuild b/x11-misc/sddm/sddm-0.1.0.ebuild
index 7257ab5..46d7bcf 100644
--- a/x11-misc/sddm/sddm-0.1.0.ebuild
+++ b/x11-misc/sddm/sddm-0.1.0.ebuild
@@ -7,53 +7,44 @@ inherit cmake-utils toolchain-funcs
 
 DESCRIPTION="Simple Desktop Display Manager"
 HOMEPAGE="https://github.com/sddm/sddm";
-
-if [[ ${PV} = *9999* ]]; then
-       inherit git-2
-       EGIT_REPO_URI="git://github.com/sddm/sddm.git"
-       KEYWORDS=""
-else
-       SRC_URI="http://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> 
${P}.tar.gz"
-       KEYWORDS="~amd64 ~x86"
-fi
+SRC_URI="http://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64 ~x86"
 
 LICENSE="GPL-2+ MIT CC-BY-3.0 public-domain"
 SLOT="0"
-IUSE="+qt4 qt5 +upower"
-REQUIRED_USE="^^ ( qt4 qt5 )"
-
-RDEPEND="
-       upower? ( || ( sys-power/upower  sys-apps/systemd ) )
-       sys-auth/pambase
-       x11-libs/libxcb[xkb]
-       qt4? ( dev-qt/qtdeclarative:4 )
+IUSE="+qt4 qt5 systemd +upower"
+REQUIRED_USE="^^ ( qt4 qt5 )
+       ?? ( upower systemd )"
+
+RDEPEND="sys-libs/pam
+       x11-libs/libxcb[xkb(-)]
+       qt4? ( dev-qt/qtdeclarative:4
+                  dev-qt/qtdbus:4 )
        qt5? ( dev-qt/qtdeclarative:5
-              dev-qt/qtdbus:5 )"
+                  dev-qt/qtdbus:5 )
+       systemd? ( sys-apps/systemd:= )
+       upower? ( sys-power/upower:= )"
 DEPEND="${RDEPEND}
-       >=sys-devel/gcc-4.7.0"
-
-pkg_pretend() {
-       [[ $(gcc-version) < 4.7 ]] && \
-               die 'The active compiler needs to be gcc 4.7 (or newer)'
-}
-
-src_prepare() {
+       >=sys-devel/gcc-4.7.0
+       virtual/pkgconfig"
 
-       #       epatch "${FILESDIR}/sddm-pm-utils-support.patch"
+PATCHES=(
+       "${FILESDIR}/${P}-cmake.patch"
+       "${FILESDIR}/${P}-clang.patch"
+)
 
-       # respect our cflags
-       sed -e 's|-Wall -march=native||' \
-               -e 's|-O2||' \
-               -i CMakeLists.txt || die 'sed failed'
-       # use our location
-       sed -e 's|AuthDir=/var/run/xauth|AuthDir=/run/sddm|' \
-               -i data/sddm.conf.in || die
-       # Replace XSession file with lxdm version
-       cp -a "${FILESDIR}"/Xsession data/scripts || die
+pkg_pretend() {
+       if [[ ${MERGE_TYPE} != binary ]]; then
+               [[ $(gcc-version) < 4.7 ]] && \
+                       die 'The active compiler needs to be gcc 4.7 (or newer)'
+       fi
 }
 
 src_configure() {
-       local mycmakeargs=( $(cmake-utils_use_use qt5 QT5) )
+       local mycmakeargs=(
+               $(cmake-utils_use_use qt5 QT5)
+               $(cmake-utils_use_use systemd)
+               $(cmake-utils_use_use upower)
+       )
        cmake-utils_src_configure
 }
-

diff --git a/x11-misc/sddm/sddm-9999.ebuild b/x11-misc/sddm/sddm-9999.ebuild
index 224de47..3a20b0f 100644
--- a/x11-misc/sddm/sddm-9999.ebuild
+++ b/x11-misc/sddm/sddm-9999.ebuild
@@ -3,58 +3,47 @@
 # $Header: $
 
 EAPI=5
-inherit cmake-utils toolchain-funcs
+inherit cmake-utils git-r3 toolchain-funcs
 
 DESCRIPTION="Simple Desktop Display Manager"
 HOMEPAGE="https://github.com/sddm/sddm";
-
-if [[ ${PV} = *9999* ]]; then
-       inherit git-2
-       EGIT_REPO_URI="git://github.com/sddm/sddm.git"
-       KEYWORDS=""
-else
-       SRC_URI="http://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> 
${P}.tar.gz"
-       KEYWORDS="~amd64 ~x86"
-fi
+EGIT_REPO_URI="git://github.com/${PN}/${PN}.git"
 
 LICENSE="GPL-2+ MIT CC-BY-3.0 public-domain"
 SLOT="0"
-IUSE="+qt4 qt5 +upower"
-REQUIRED_USE="^^ ( qt4 qt5 )"
-
-RDEPEND="
-       upower? ( || ( sys-power/upower  sys-apps/systemd ) )
-       x11-libs/libxcb[xkb]
-       sys-auth/pambase
-       qt4? ( dev-qt/qtdeclarative:4 )
+IUSE="+qt4 qt5 systemd +upower"
+REQUIRED_USE="^^ ( qt4 qt5 )
+       ?? ( upower systemd )"
+
+RDEPEND="sys-libs/pam
+       x11-libs/libxcb[xkb(-)]
+       qt4? ( dev-qt/qtdeclarative:4
+                  dev-qt/qtdbus:4 )
        qt5? ( dev-qt/qtdeclarative:5
-              dev-qt/qtdbus:5 )"
+                  dev-qt/qtdbus:5 )
+       systemd? ( sys-apps/systemd:= )
+       upower? ( sys-power/upower:= )"
 DEPEND="${RDEPEND}
-       >=sys-devel/gcc-4.7.0"
-
-pkg_pretend() {
-       [[ $(gcc-version) < 4.7 ]] && \
-               die 'The active compiler needs to be gcc 4.7 (or newer)'
-}
+       >=sys-devel/gcc-4.7.0
+       virtual/pkgconfig"
 
 src_prepare() {
-
-       epatch "${FILESDIR}/sddm-pm-utils-support.patch"
-       epatch "${FILESDIR}/pid-support.patch"
-
-       # respect our cflags
+       # respect user's cflags
        sed -e 's|-Wall -march=native||' \
                -e 's|-O2||' \
                -i CMakeLists.txt || die 'sed failed'
-       # use our location
-       sed -e 's|AuthDir=/var/run/xauth|AuthDir=/run/sddm|' \
-               -i data/sddm.conf.in
-       # Replace XSession file with lxdm version
-       cp -a "${FILESDIR}"/Xsession data/scripts
+}
+
+pkg_pretend() {
+       if [[ ${MERGE_TYPE} != binary ]]; then
+               [[ $(gcc-version) < 4.7 ]] && \
+                       die 'The active compiler needs to be gcc 4.7 (or newer)'
+       fi
 }
 
 src_configure() {
-       local mycmakeargs=( $(cmake-utils_use_use qt5 QT5) )
+       local mycmakeargs=(
+               $(cmake-utils_use_use qt5 QT5)
+       )
        cmake-utils_src_configure
 }
-

Reply via email to