qt5:moved into main repo for pisi 2.0

This commit is contained in:
ayhanyalcinsoy
2015-06-17 20:26:11 +03:00
parent 15c347cc16
commit fe783a40d2
94 changed files with 3270 additions and 0 deletions
+124
View File
@@ -0,0 +1,124 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt
from pisi.actionsapi import shelltools
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import qt5
from pisi.actionsapi import get
import os
WorkDir = "qtbase-opensource-src-%s" % get.srcVERSION().replace('_','-').replace('pre1', 'tp')
qtbase = qt5.prefix
absoluteWorkDir = "%s/%s" % (get.workDIR(), WorkDir)
#Temporary bindir to avoid qt4 conflicts
bindirQt5="/usr/lib/qt5/bin"
def setup():
checkdeletepath="%s/qtbase/src/3rdparty" % absoluteWorkDir
for dir in ('libjpeg', 'freetype', 'libpng', 'zlib', "xcb", "sqlite"):
if os.path.exists(checkdeletepath+dir):
shelltools.unlinkDir(checkdeletepath+dir)
filteredCFLAGS = get.CFLAGS().replace("-g3", "-g")
filteredCXXFLAGS = get.CXXFLAGS().replace("-g3", "-g")
vars = {"PISILINUX_CC" : get.CC() + (" -m32" if get.buildTYPE() == "emul32" else ""),
"PISILINUX_CXX": get.CXX() + (" -m32" if get.buildTYPE() == "emul32" else ""),
"PISILINUX_CFLAGS": filteredCFLAGS + (" -m32" if get.buildTYPE() == "emul32" else ""),
"PISILINUX_LDFLAGS": get.LDFLAGS() + (" -m32" if get.buildTYPE() == "emul32" else "")}
for k, v in vars.items():
pisitools.dosed("mkspecs/common/g++-base.conf", k, v)
pisitools.dosed("mkspecs/common/g++-unix.conf", k, v)
shelltools.export("CFLAGS", filteredCFLAGS)
shelltools.export("CXXFLAGS", filteredCXXFLAGS)
#check that dosed commands without releated patches
pisitools.dosed("mkspecs/common/gcc-base-unix.conf", "\-Wl,\-rpath,")
pisitools.dosed("mkspecs/common/gcc-base.conf", "\-O2", filteredCFLAGS)
pisitools.dosed("mkspecs/common/gcc-base.conf", "^(QMAKE_LFLAGS\s+\+=)", r"\1 %s" % get.LDFLAGS())
if not get.buildTYPE() == "emul32":
#-no-pch makes build ccache-friendly
options = "-v -confirm-license -opensource -no-rpath -no-use-gold-linker\
-prefix %s \
-bindir %s \
-headerdir %s \
-archdatadir %s\
-docdir %s \
-plugindir %s \
-importdir %s \
-qmldir %s \
-datadir %s \
-testsdir %s \
-translationdir %s \
-sysconfdir %s \
-examplesdir %s \
-libdir %s \
-system-harfbuzz \
-system-sqlite \
-openssl-linked \
-nomake tests \
-nomake examples \
-optimized-qmake \
-reduce-relocations \
-dbus-linked \
-feature-menu \
-feature-textdate \
-feature-ftp \
-xcursor" % (qt5.prefix, bindirQt5, qt5.headerdir, qt5.archdatadir, qt5.docdir, qt5.plugindir, qt5.importdir, qt5.qmldir, qt5.datadir, qt5.testdir, qt5.translationdir, qt5.sysconfdir, qt5.examplesdir, qt5.libdir)
else:
pisitools.dosed("mkspecs/linux-g++-64/qmake.conf", "-m64", "-m32")
shelltools.export("LDFLAGS", "-m32 %s" % get.LDFLAGS())
options = "-no-pch -v -confirm-license -opensource -no-use-gold-linker\
-platform linux-g++-32 \
-xplatform linux-g++-32 \
-prefix /usr/lib32 \
-bindir /usr/lib32/qt5/bin \
-docdir /usr/share/doc/qt \
-headerdir /usr/lib32/qt5/include/qt5 \
-datadir /usr/share/qt5 \
-sysconfdir /etc/xdg \
-examplesdir /usr/share/doc/qt/examples \
-system-sqlite \
-openssl-linked \
-nomake examples \
-no-xcb \
-no-rpath \
-optimized-qmake \
-dbus-linked \
-system-harfbuzz \
-libdir /usr/lib32/ \
-archdatadir /usr/lib32/qt5/"
autotools.rawConfigure(options)
def build():
shelltools.export("LD_LIBRARY_PATH", "%s/lib:%s" % (get.curDIR(), get.ENV("LD_LIBRARY_PATH")))
autotools.make()
def install():
if get.buildTYPE() == "emul32":
qt5.install("INSTALL_ROOT=%s32" % get.installDIR())
shelltools.move("%s32/usr/lib32" % get.installDIR(), "%s/usr" % get.installDIR())
return
pisitools.dodir(qt5.libdir)
qt5.install("INSTALL_ROOT=%s" % get.installDIR())
#I hope qtchooser will manage this issue
for bin in shelltools.ls("%s/usr/lib/qt5/bin" % get.installDIR()):
pisitools.dosym("/usr/lib/qt5/bin/%s" % bin, "/usr/bin/%s-qt5" % bin)
mkspecPath = "%s/mkspecs" % qt5.archdatadir
pisitools.remove("/usr/lib/*.prl")
pisitools.dodoc("LGPL_EXCEPTION.txt", "LICENSE.*")
@@ -0,0 +1,30 @@
--- g++-base.conf 2014-12-05 18:24:38.000000000 +0200
+++ qtbase-opensource-src-5.4.0/mkspecs/common/g++-base.conf 2015-02-16 12:34:43.603049664 +0200
@@ -10,17 +10,22 @@
QMAKE_COMPILER = gcc
-QMAKE_CC = gcc
+QMAKE_CC = PISILINUX_CC
QMAKE_LINK_C = $$QMAKE_CC
QMAKE_LINK_C_SHLIB = $$QMAKE_CC
-QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g
+QMAKE_CFLAGS_RELEASE += PISILINUX_CFLAGS
+QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += PISILINUX_CFLAGS -g
-QMAKE_CXX = g++
+QMAKE_CXX = PISILINUX_CXX
-QMAKE_LINK = $$QMAKE_CXX
-QMAKE_LINK_SHLIB = $$QMAKE_CXX
+QMAKE_LINK = PISILINUX_CXX
+QMAKE_LINK_SHLIB = PISILINUX_CXX
+QMAKE_LINK_C = PISILINUX_CC
+QMAKE_LINK_C_SHLIB = PISILINUX_CC
+
+QMAKE_LFLAGS_RELEASE += PISILINUX_LDFLAGS
QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
@@ -0,0 +1,9 @@
--- g++-unix.conf 2015-02-16 12:35:34.978050836 +0200
+++ qtbase-opensource-src-5.4.0/mkspecs/common/g++-unix.conf 2015-02-16 12:35:58.703051378 +0200
@@ -10,5 +10,5 @@
include(g++-base.conf)
-QMAKE_LFLAGS_RELEASE += -Wl,-O1
+QMAKE_LFLAGS_RELEASE += PISILINUX_LDFLAGS
QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined
@@ -0,0 +1,11 @@
--- linux.conf 2014-12-05 18:24:38.000000000 +0200
+++ qtbase-opensource-src-5.4.0/mkspecs/common/linux.conf 2015-02-16 12:36:52.547052606 +0200
@@ -49,7 +49,7 @@
QMAKE_NM = nm -P
QMAKE_RANLIB =
-QMAKE_STRIP = strip
+QMAKE_STRIP =
QMAKE_STRIPFLAGS_LIB += --strip-unneeded
QMAKE_INSTALL_FILE = install -m 644 -p
QMAKE_INSTALL_PROGRAM = install -m 755 -p
+263
View File
@@ -0,0 +1,263 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>qt5-base</Name>
<Homepage>http://qt.digia.com/</Homepage>
<Packager>
<Name>Ayhan Yalçınsoy</Name>
<Email>ayhanyalcinsoy@pisilinux.org</Email>
</Packager>
<Summary>Cross platform application and UI framework</Summary>
<Description>Cross platform application and UI development framework</Description>
<License>LGPLv2.1-linking-exception</License>
<Archive sha1sum="3703c6a584193e759f5b9cbf0ea6022d685ab827" type="tarxz">http://download.qt.io/official_releases/qt/5.4/5.4.2/submodules/qtbase-opensource-src-5.4.2.tar.xz</Archive>
<BuildDependencies>
<Dependency>alsa-lib-devel</Dependency>
<Dependency>at-spi2-core-devel</Dependency>
<Dependency>cups-devel</Dependency>
<Dependency>dbus-devel</Dependency>
<Dependency>zlib-devel</Dependency>
<Dependency>glib2-devel</Dependency>
<Dependency>desktop-file-utils</Dependency>
<Dependency>fontconfig-devel</Dependency>
<Dependency>geoclue-devel</Dependency>
<Dependency>gperf</Dependency>
<Dependency>gst-plugins-base-devel</Dependency>
<Dependency>gstreamer-devel</Dependency>
<Dependency>gtk2-devel</Dependency>
<Dependency>harfbuzz-devel</Dependency>
<Dependency>icon-theme-hicolor</Dependency>
<Dependency>leveldb-devel</Dependency>
<Dependency>firebird-superserver</Dependency>
<Dependency>libjpeg-turbo-devel</Dependency>
<Dependency>mariadb-lib</Dependency>
<Dependency>libmng-devel</Dependency>
<Dependency>pulseaudio-libs-devel</Dependency>
<Dependency>webp-devel</Dependency>
<Dependency>libxcb-devel</Dependency>
<Dependency>libXcomposite-devel</Dependency>
<Dependency>libxkbcommon-devel</Dependency>
<Dependency>libxslt-devel</Dependency>
<Dependency>mesa-devel</Dependency>
<Dependency>libmtdev-devel</Dependency>
<Dependency>nss-devel</Dependency>
<Dependency>openal-devel</Dependency>
<Dependency>pciutils-devel</Dependency>
<Dependency>postgresql-server</Dependency>
<Dependency>python-devel</Dependency>
<Dependency>ruby-devel</Dependency>
<Dependency>sqlite-devel</Dependency>
<Dependency>unixODBC-devel</Dependency>
<Dependency>xcb-proto</Dependency>
<Dependency>xcb-util-devel</Dependency>
<Dependency>xcb-util-image-devel</Dependency>
<Dependency>xcb-util-keysyms-devel</Dependency>
<Dependency>xcb-util-wm-devel</Dependency>
<Dependency>tiff-devel</Dependency>
<Dependency>libdrm-devel</Dependency>
<Dependency>DirectFB-devel</Dependency>
<Dependency>libpng-devel</Dependency>
<Dependency>libudev-devel</Dependency>
<Dependency>libSM-devel</Dependency>
<Dependency>libICE-devel</Dependency>
<Dependency>libX11-devel</Dependency>
<Dependency>libXext-devel</Dependency>
<Dependency>firebird-devel</Dependency>
<Dependency>unixODBC-devel</Dependency>
<Dependency>libXrandr-devel</Dependency>
<Dependency>libXrender-devel</Dependency>
<Dependency>xcb-util-renderutil-devel</Dependency>
<Dependency>openssl-devel</Dependency>
<Dependency>freetype-devel</Dependency>
</BuildDependencies>
<Patches>
<!-- Pisilinux Patches -->
<Patch level="1">mkspecs1.patch</Patch>
<Patch level="1">mkspecs2.patch</Patch>
<Patch level="1">mkspecs3.patch</Patch>
</Patches>
</Source>
<Package>
<Name>qt5-base</Name>
<RuntimeDependencies>
<Dependency>cups</Dependency>
<Dependency>dbus</Dependency>
<Dependency>gtk2</Dependency>
<Dependency>mesa</Dependency>
<Dependency>zlib</Dependency>
<Dependency>glib2</Dependency>
<Dependency>icu4c</Dependency>
<Dependency>libSM</Dependency>
<Dependency>libXi</Dependency>
<Dependency>pango</Dependency>
<Dependency>libICE</Dependency>
<Dependency>libX11</Dependency>
<Dependency>libdrm</Dependency>
<Dependency>DirectFB</Dependency>
<Dependency>libpng</Dependency>
<Dependency>libxcb</Dependency>
<Dependency>libudev</Dependency>
<Dependency>openssl</Dependency>
<Dependency>freetype</Dependency>
<Dependency>harfbuzz</Dependency>
<Dependency>libmtdev</Dependency>
<Dependency>fontconfig</Dependency>
<Dependency>libXrender</Dependency>
<Dependency>xcb-util-wm</Dependency>
<Dependency>libxkbcommon</Dependency>
<Dependency>libjpeg-turbo</Dependency>
<Dependency>xcb-util-image</Dependency>
<Dependency>xcb-util-keysyms</Dependency>
<Dependency>xcb-util-renderutil</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="library">/usr/lib</Path>
<Path fileType="library">/usr/lib/qt5/imports</Path>
<Path fileType="library">/usr/lib/qt5/qml</Path>
<Path fileType="library">/usr/lib/qt5/plugins</Path>
<Path fileType="localdata">/usr/share/qt5/translations</Path>
<Path fileType="executable">/usr/lib/qt5/bin</Path>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="doc">/usr/share/doc</Path>
</Files>
</Package>
<Package>
<Name>qt5-base-devel</Name>
<Summary>Development files for Qt 5</Summary>
<Description>Development files for Qt 5</Description>
<Files>
<Path fileType="header">/usr/include</Path>
<Path fileType="data">/usr/lib/pkgconfig</Path>
<Path fileType="data">/usr/lib/cmake</Path>
<Path fileType="data">/usr/lib/qt5/mkspecs</Path>
<Path fileType="data">/usr/lib/*.prl</Path>
</Files>
<RuntimeDependencies>
<Dependency release="current">qt5-base</Dependency>
</RuntimeDependencies>
</Package>
<Package>
<Name>qt5-sql-mysql</Name>
<RuntimeDependencies>
<Dependency version="current">qt5-base</Dependency>
<Dependency>mariadb-lib</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="library">/usr/lib/qt5/plugins/sqldrivers/libqsqlmysql.so</Path>
</Files>
</Package>
<Package>
<Name>qt5-sql-postgresql</Name>
<RuntimeDependencies>
<Dependency version="current">qt5-base</Dependency>
<Dependency>postgresql-lib</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="library">/usr/lib/qt5/plugins/sqldrivers/libqsqlpsql.so</Path>
</Files>
</Package>
<Package>
<Name>qt5-sql-sqlite</Name>
<RuntimeDependencies>
<Dependency version="current">qt5-base</Dependency>
<Dependency>sqlite</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="library">/usr/lib/qt5/plugins/sqldrivers/libqsqlite.so</Path>
</Files>
</Package>
<Package>
<Name>qt5-sql-odbc</Name>
<RuntimeDependencies>
<Dependency version="current">qt5-base</Dependency>
<Dependency>unixODBC</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="library">/usr/lib/qt5/plugins/sqldrivers/libqsqlodbc.so</Path>
</Files>
</Package>
<Package>
<Name>qt5-base-32bit</Name>
<PartOf>emul32</PartOf>
<Summary>32-bit shared libraries for qt5</Summary>
<BuildType>emul32</BuildType>
<BuildDependencies>
</BuildDependencies>
<Dependency>cups-32bit</Dependency>
<Dependency>dbus-32bit</Dependency>
<Dependency>qt5-base-devel</Dependency>
<Dependency>gtk2-32bit</Dependency>
<Dependency>mesa-32bit</Dependency>
<Dependency>zlib-32bit</Dependency>
<Dependency>glib2-32bit</Dependency>
<Dependency>glibc-32bit</Dependency>
<Dependency>icu4c-32bit</Dependency>
<Dependency>pango-32bit</Dependency>
<Dependency>libX11-32bit</Dependency>
<Dependency>libdrm-32bit</Dependency>
<Dependency>libpng-32bit</Dependency>
<Dependency>sqlite-32bit</Dependency>
<Dependency>libudev-32bit</Dependency>
<Dependency>openssl-32bit</Dependency>
<Dependency>freetype-32bit</Dependency>
<Dependency>harfbuzz-32bit</Dependency>
<Dependency>libmtdev-32bit</Dependency>
<Dependency>fontconfig-32bit</Dependency>
<Dependency>libXrender-32bit</Dependency>
<Dependency>libjpeg-turbo-32bit</Dependency>
<RuntimeDependencies>
<Dependency>libgcc</Dependency>
<Dependency>libpcre</Dependency>
<Dependency>qt5-base-devel</Dependency>
<Dependency>cups-32bit</Dependency>
<Dependency>dbus-32bit</Dependency>
<Dependency>gtk2-32bit</Dependency>
<Dependency>mesa-32bit</Dependency>
<Dependency>zlib-32bit</Dependency>
<Dependency>glib2-32bit</Dependency>
<Dependency>glibc-32bit</Dependency>
<Dependency>icu4c-32bit</Dependency>
<Dependency>pango-32bit</Dependency>
<Dependency>libX11-32bit</Dependency>
<Dependency>libdrm-32bit</Dependency>
<Dependency>libpng-32bit</Dependency>
<Dependency>sqlite-32bit</Dependency>
<Dependency>libudev-32bit</Dependency>
<Dependency>openssl-32bit</Dependency>
<Dependency>freetype-32bit</Dependency>
<Dependency>harfbuzz-32bit</Dependency>
<Dependency>libmtdev-32bit</Dependency>
<Dependency>fontconfig-32bit</Dependency>
<Dependency>libXrender-32bit</Dependency>
<Dependency>libjpeg-turbo-32bit</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="library">/usr/lib32</Path>
</Files>
</Package>
<History>
<Update release="2">
<Date>2015-06-02</Date>
<Version>5.4.2</Version>
<Comment>Version bump.</Comment>
<Name>Ayhan Yalçınsoy</Name>
<Email>ayhanyalcinsoy@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2015-04-23</Date>
<Version>5.4.1</Version>
<Comment>First Release</Comment>
<Name>Ayhan Yalçınsoy</Name>
<Email>ayhanyalcinsoy@pisilinux.org</Email>
</Update>
</History>
</PISI>
@@ -0,0 +1,46 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>qt5-base</Name>
<Summary xml:lang="tr">Qt5 araç takımı, sürüm 5</Summary>
<Description xml:lang="tr">Qt bir çok platformda çalışabilen ve grafiksel kullanıcı arayüzü (GUI) oluşturmaya yarayan bir araç takımıdır.</Description>
<Description xml:lang="fr">Qt est une boîte à outils graphique multi-plateforme.</Description>
<Description xml:lang="es">Qt es un toolkit para GUI multiplataforma.</Description>
</Source>
<Package>
<Name>qt5-base-devel</Name>
<Summary xml:lang="tr">Qt5 için geliştirme dosyaları</Summary>
</Package>
<Package>
<Name>qt5-docs</Name>
<Summary xml:lang="tr">Qt5 için geliştirme belgeleri ve Qt Assistant aracı</Summary>
</Package>
<Package>
<Name>qt5-sql-ibase</Name>
<Summary xml:lang="tr">Qt5'in SQL sınıfları için IBase sürücüsü</Summary>
</Package>
<Package>
<Name>qt5-sql-mysql</Name>
<Summary xml:lang="tr">Qt5'in SQL sınıfları için MySQL sürücüsü</Summary>
</Package>
<Package>
<Name>qt5-sql-odbc</Name>
<Summary xml:lang="tr">Qt5'in SQL sınıfları için ODBC sürücüsü</Summary>
</Package>
<Package>
<Name>qt5-sql-postgresql</Name>
<Summary xml:lang="tr">Qt5'in SQL sınıfları için PostgreSQL sürücüsü</Summary>
</Package>
<Package>
<Name>qt5-sql-sqlite</Name>
<Summary xml:lang="tr">Qt5'in SQL sınıfları için SQLite sürücüsü</Summary>
</Package>
</PISI>