summaryrefslogtreecommitdiffstats
path: root/Swift
diff options
context:
space:
mode:
Diffstat (limited to 'Swift')
-rwxr-xr-xSwift/Packaging/Debian/build_for_debian.sh2
-rw-r--r--Swift/Packaging/Debian/changelog.debian-unstable14
-rw-r--r--Swift/Packaging/Debian/debian/binary-overrides/libswiften-dev2
-rw-r--r--Swift/Packaging/Debian/debian/binary-overrides/libswiften22
-rw-r--r--Swift/Packaging/Debian/debian/binary-overrides/swift-im2
-rw-r--r--Swift/Packaging/Debian/debian/binary-overrides/swift-im-dbg2
-rw-r--r--Swift/Packaging/Debian/debian/compat2
-rw-r--r--Swift/Packaging/Debian/debian/control.in17
-rw-r--r--Swift/Packaging/Debian/debian/copyright2
-rw-r--r--Swift/Packaging/Debian/debian/libswiften-dev.install1
-rw-r--r--Swift/Packaging/Debian/debian/libswiften.install1
-rwxr-xr-xSwift/Packaging/Debian/debian/rules52
-rw-r--r--Swift/Packaging/Debian/debian/source/lintian-overrides5
-rw-r--r--Swift/Packaging/Debian/debian/swift-im-dbg.install1
-rw-r--r--Swift/Packaging/Debian/debian/swift-im.install1
-rw-r--r--Swift/Packaging/Debian/debian/swift-im.menu3
-rwxr-xr-xSwift/Packaging/Debian/package.sh4
-rw-r--r--Swift/QtUI/SConscript12
18 files changed, 44 insertions, 81 deletions
diff --git a/Swift/Packaging/Debian/build_for_debian.sh b/Swift/Packaging/Debian/build_for_debian.sh
index 3d79177..0f0691f 100755
--- a/Swift/Packaging/Debian/build_for_debian.sh
+++ b/Swift/Packaging/Debian/build_for_debian.sh
@@ -1,11 +1,11 @@
#!/bin/bash
echo "** CHECK YOU'VE UPDATED THE CHANGELOG **"
export CHANGELOG=changelog.debian-unstable
export SWIFT_DEBUILD_FLAGS="-S"
./package.sh
-for arch in i386 amd64; do
+for arch in amd64; do
pbuilder-dist sid $arch build *.dsc
done
diff --git a/Swift/Packaging/Debian/changelog.debian-unstable b/Swift/Packaging/Debian/changelog.debian-unstable
index a609535..ca9ffec 100644
--- a/Swift/Packaging/Debian/changelog.debian-unstable
+++ b/Swift/Packaging/Debian/changelog.debian-unstable
@@ -1,34 +1,44 @@
+swift-im (3.0.4-1) unstable; urgency=low
+
+ * New upstream release
+ * Allow compiling with newer boosts. Closes: 810839, 822131
+ * Switch to Qt5 instead of Qt4. Closes: 784532, 745807
+ * Fix some platform detection in build system. Closes: 757554
+ * Rewrite rules file with dh sequencer.
+ * Drop -dbg package.
+
+ -- Kevin Smith <kevin@kismith.co.uk> Fri, 03 Jun 2016 15:56:20 +0100
+
swift-im (2.0+dev6-1) unstable; urgency=low
* Update from upstream.
* Don't conflict with libswiften2 overrides. Closes: 726289
* Don't conflict with swift-im-dbg overrides. Closes: 726290
* Don't conflict with libswiften-dev overrides. Closes: 726291
-- Kevin Smith <kevin@kismith.co.uk> Mon, 14 Oct 2013 16:42:12 -0000
swift-im (2.0+dev5-1) unstable; urgency=low
* Update from upstream.
* Compiles with boost >= 1.50.0; will build on sid again. Closes: #713725
- * Include dependencies for libswiften so that other packages
+ * Include dependencies for libswiften so that other packages
can depend on it. Closes: #714902
-- Kevin Smith <kevin@kismith.co.uk> Mon, 12 Aug 2013 16:18:09 -0000
swift-im (2.0~beta1+dev47-1) unstable; urgency=low
* Update from upstream.
* Rename /usr/bin/swift binary to not conflict with
other package. Closes: #674504
-- Kevin Smith <kevin@kismith.co.uk> Tue, 12 Jun 2012 19:25:12 -0000
swift-im (2.0~beta1+dev26-1) unstable; urgency=low
* Initial release. Closes: #631002
* Thanks to Olly Betts <olly@survex.com>
-- Kevin Smith <kevin@kismith.co.uk> Wed, 25 Apr 2012 09:55:52 -0000
-
diff --git a/Swift/Packaging/Debian/debian/binary-overrides/libswiften-dev b/Swift/Packaging/Debian/debian/binary-overrides/libswiften-dev
deleted file mode 100644
index 93497a5..0000000
--- a/Swift/Packaging/Debian/debian/binary-overrides/libswiften-dev
+++ /dev/null
@@ -1,2 +0,0 @@
-# The upstream numbering scheme is that 2.0~beta1 is prior to 2.0 but that 2.0~beta1+dev10 is ten commits later than 2.0~beta1, so in this case the warning is redundant.
-libswiften-dev binary: rc-version-greater-than-expected-version
diff --git a/Swift/Packaging/Debian/debian/binary-overrides/libswiften2 b/Swift/Packaging/Debian/debian/binary-overrides/libswiften2
deleted file mode 100644
index ae16e89..0000000
--- a/Swift/Packaging/Debian/debian/binary-overrides/libswiften2
+++ /dev/null
@@ -1,2 +0,0 @@
-# The upstream numbering scheme is that 2.0~beta1 is prior to 2.0 but that 2.0~beta1+dev10 is ten commits later than 2.0~beta1, so in this case the warning is redundant.
-libswiften2 binary: rc-version-greater-than-expected-version
diff --git a/Swift/Packaging/Debian/debian/binary-overrides/swift-im b/Swift/Packaging/Debian/debian/binary-overrides/swift-im
deleted file mode 100644
index 11ca729..0000000
--- a/Swift/Packaging/Debian/debian/binary-overrides/swift-im
+++ /dev/null
@@ -1,2 +0,0 @@
-# The upstream numbering scheme is that 2.0~beta1 is prior to 2.0 but that 2.0~beta1+dev10 is ten commits later than 2.0~beta1, so in this case the warning is redundant.
-swift-im binary: rc-version-greater-than-expected-version
diff --git a/Swift/Packaging/Debian/debian/binary-overrides/swift-im-dbg b/Swift/Packaging/Debian/debian/binary-overrides/swift-im-dbg
deleted file mode 100644
index d993122..0000000
--- a/Swift/Packaging/Debian/debian/binary-overrides/swift-im-dbg
+++ /dev/null
@@ -1,2 +0,0 @@
-# The upstream numbering scheme is that 2.0~beta1 is prior to 2.0 but that 2.0~beta1+dev10 is ten commits later than 2.0~beta1, so in this case the warning is redundant.
-swift-im-dbg binary: rc-version-greater-than-expected-version
diff --git a/Swift/Packaging/Debian/debian/compat b/Swift/Packaging/Debian/debian/compat
index 7f8f011..ec63514 100644
--- a/Swift/Packaging/Debian/debian/compat
+++ b/Swift/Packaging/Debian/debian/compat
@@ -1 +1 @@
-7
+9
diff --git a/Swift/Packaging/Debian/debian/control.in b/Swift/Packaging/Debian/debian/control.in
index 8d6afe5..68a52de 100644
--- a/Swift/Packaging/Debian/debian/control.in
+++ b/Swift/Packaging/Debian/debian/control.in
@@ -1,57 +1,44 @@
Source: swift-im
Section: net
Priority: optional
Maintainer: Swift Package Maintainer <packages@swift.im>
Uploaders: Remko Tronçon <dev@el-tramo.be>, Kevin Smith <kevin@kismith.co.uk>
-Build-Depends: debhelper (>= 7), scons (>= 1.2.0), libssl-dev (>= 0.9.8g), qt5-default (>= 5.0.0), libqt5x11extras5-dev (>= 5.0.0), libqt5webkit5-dev (>= 5.0.0), qtmultimedia5-dev (>=5.0.0), qttools5-dev-tools (>=5.0.0), qt5-image-formats-plugins (>=5.0.0), libqt5svg5 (>=5.0.0), libxml2-dev (>= 2.7.6), libxss-dev (>= 1.2.0), libboost-dev (>= 1.34.1), libboost-filesystem-dev (>= 1.34.1), libboost-program-options-dev (>= 1.34.1), libboost-regex-dev (>= 1.34.1), libboost-signals-dev (>= 1.34.1), libboost-system-dev (>= 1.34.1), libboost-thread-dev (>= 1.34.1), libboost-date-time-dev (>= 1.34.1), libidn11-dev (>= 1.10), docbook-xsl (>= 1.75.0), docbook-xml (>= 4.5), xsltproc, libxml2-utils, libnatpmp-dev, libminiupnpc-dev, libsqlite3-dev, libhunspell-dev
-Standards-Version: 3.9.4
+Build-Depends: debhelper (>= 9), scons (>= 1.2.0), libssl-dev (>= 0.9.8g), qtbase5-dev (>= 5.0.0), qtchooser, qtbase5-dev-tools (>= 5.0.0), libqt5x11extras5-dev (>= 5.0.0), libqt5webkit5-dev (>= 5.0.0), qtmultimedia5-dev (>=5.0.0), qttools5-dev-tools (>=5.0.0), qt5-image-formats-plugins (>=5.0.0), libqt5svg5 (>=5.0.0), libxml2-dev (>= 2.7.6), libxss-dev (>= 1.2.0), libboost-dev (>= 1.34.1), libboost-filesystem-dev (>= 1.34.1), libboost-program-options-dev (>= 1.34.1), libboost-regex-dev (>= 1.34.1), libboost-signals-dev (>= 1.34.1), libboost-system-dev (>= 1.34.1), libboost-thread-dev (>= 1.34.1), libboost-date-time-dev (>= 1.34.1), libidn11-dev (>= 1.10), docbook-xsl (>= 1.75.0), docbook-xml (>= 4.5), xsltproc, libxml2-utils, libnatpmp-dev, libminiupnpc-dev, libsqlite3-dev, libhunspell-dev, zlib1g-dev
+Standards-Version: 3.9.8
Vcs-Git: git://swift.im/swift
Vcs-Browser: http://swift.im/git/swift
Homepage: http://swift.im
Package: libswiften%SWIFTEN_SOVERSION%
Architecture: any
Section: libs
-Priority: optional
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: XMPP library
Swiften is a robust, high-quality, standards-compliant, cross-platform,
and performant C++ library for implementing XMPP applications. Swiften
is used as the back-end library for the Swift Instant Messaging client.
Package: libswiften-dev
Architecture: any
Section: libdevel
-Priority: optional
Depends: libswiften%SWIFTEN_SOVERSION% (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends}, libboost-dev (>= 1.34.1), libboost-filesystem-dev (>= 1.34.1), libboost-regex-dev (>= 1.34.1), libboost-signals-dev (>= 1.34.1), libboost-thread-dev (>= 1.34.1), libboost-date-time-dev (>= 1.34.1)
Description: XMPP library (development files)
Swiften is a robust, high-quality, standards-compliant, cross-platform,
and performant C++ library for implementing XMPP applications. Swiften
is used as the back-end library for the Swift Instant Messaging client.
.
This package contains the header development files and programs for
developing with Swiften.
Package: swift-im
Architecture: any
-Section: net
-Priority: optional
Depends: libswiften%SWIFTEN_SOVERSION% (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends}
Description: easy to use Jabber/XMPP chat client
Swift is a free instant messaging client. It concentrates on making
the most-used features easily accessible, supporting
internationalisation, private and group chats, together with features
for security-conscious organisations including Security Labelling.
.
Swift uses the XMPP protocol and so supports both the public Jabber
network and closed XMPP services, such as those found in many
organisations.
-
-Package: swift-im-dbg
-Architecture: any
-Section: debug
-Priority: extra
-Depends: swift-im (= ${binary:Version}), ${misc:Depends}
-Description: XMPP client/library (debugging symbols)
- This package contains the debugging symbols for debugging Swift
- and Swiften applications.
diff --git a/Swift/Packaging/Debian/debian/copyright b/Swift/Packaging/Debian/debian/copyright
index 63d3a88..a0c2c79 100644
--- a/Swift/Packaging/Debian/debian/copyright
+++ b/Swift/Packaging/Debian/debian/copyright
@@ -1,21 +1,21 @@
This package was debianized by the Swift project <packages@swift.im>,
with help from Olly Betts <olly@survex.com>.
The upstream sources were obtained from http://swift.im.
-Copyright (C) 2010-2014 Isode Limited.
+Copyright (C) 2010-2016 Isode Limited.
Licensed under the GNU General Public License.
See /usr/share/common-licenses/GPL-3 for the full license.
This software is subject to the OpenSSL license exception.
Additional permission under GNU GPL version 3 section 7
If you modify this Program, or any covered work, by linking or combining
it with the OpenSSL library (or a modified version of that library),
containing parts covered by the terms of the OpenSSL License, the
licensors of this Program grant you additional permission to convey
the resulting work.
diff --git a/Swift/Packaging/Debian/debian/libswiften-dev.install b/Swift/Packaging/Debian/debian/libswiften-dev.install
index 273c86b..545c6d9 100644
--- a/Swift/Packaging/Debian/debian/libswiften-dev.install
+++ b/Swift/Packaging/Debian/debian/libswiften-dev.install
@@ -1,4 +1,3 @@
usr/lib/libSwiften.so
usr/include
usr/bin/swiften-config
-usr/share/lintian/overrides/libswiften-dev
diff --git a/Swift/Packaging/Debian/debian/libswiften.install b/Swift/Packaging/Debian/debian/libswiften.install
index 878fe4f..2603436 100644
--- a/Swift/Packaging/Debian/debian/libswiften.install
+++ b/Swift/Packaging/Debian/debian/libswiften.install
@@ -1,2 +1 @@
usr/lib/libSwiften.so.*
-usr/share/lintian/overrides/libswiften2
diff --git a/Swift/Packaging/Debian/debian/rules b/Swift/Packaging/Debian/debian/rules
index 2bdfe3b..87c551b 100755
--- a/Swift/Packaging/Debian/debian/rules
+++ b/Swift/Packaging/Debian/debian/rules
@@ -1,53 +1,27 @@
#!/usr/bin/make -f
#export DH_VERBOSE=1
export PYTHONDONTWRITEBYTECODE=1
+export QT_SELECT=qt5
SCONS_FLAGS=V=1 qt5=1 optimize=1 debug=1 allow_warnings=1 swiften_dll=1 docbook_xsl=/usr/share/xml/docbook/stylesheet/docbook-xsl docbook_xml=/usr/share/xml/docbook/schema/dtd/4.5 linkflags="$(shell dpkg-buildflags --get LDFLAGS)" ccflags="$(shell dpkg-buildflags --get CPPFLAGS) $(shell dpkg-buildflags --get CFLAGS)"
+SCONS_INSTALL_BASE=$(CURDIR)/debian/tmp
+SCONS_INSTALL_FLAGS=SWIFT_INSTALLDIR=$(SCONS_INSTALL_BASE)/usr SWIFTEN_INSTALLDIR=$(SCONS_INSTALL_BASE)/usr
+SWIFT_INSTALLDIR=$(SCONS_INSTALL_BASE)/usr SWIFTEN_INSTALLDIR=$(SCONS_INSTALL_BASE)/usr
-clean:
- dh_testdir
+%:
+ dh $@
+
+override_dh_clean:
dh_clean
- scons $(SCONS_FLAGS) $(SCONS_EXTRA_FLAGS) SWIFT_INSTALLDIR=$(CURDIR)/debian/tmp/usr SWIFTEN_INSTALLDIR=$(CURDIR)/debian/tmp/usr -c
+ scons $(SCONS_FLAGS) $(SCONS_EXTRA_FLAGS) $(SCONS_INSTALL_FLAGS) -c
-rm -rf .scon*
-rm -rf config.log
-configure:
+override_dh_configure:
-build: configure
- dh_testdir
+override_dh_auto_build:
scons $(SCONS_FLAGS) $(SCONS_EXTRA_FLAGS) Swift Swiften
-install: build
- dh_testroot
- dh_prep
- dh_installdirs
- scons $(SCONS_FLAGS) $(SCONS_EXTRA_FLAGS) SWIFT_INSTALLDIR=$(CURDIR)/debian/tmp/usr SWIFTEN_INSTALLDIR=$(CURDIR)/debian/tmp/usr $(CURDIR)/debian/tmp
- mkdir -p $(CURDIR)/debian/tmp/usr/share/lintian/overrides
- cp debian/binary-overrides/* $(CURDIR)/debian/tmp/usr/share/lintian/overrides/
-
-binary-indep: install
-binary-arch: install
- dh_testdir
- dh_testroot
- dh_install --sourcedir=debian/tmp
- dh_installchangelogs
- dh_installdocs
- dh_installmenu
- dh_installman -a
- dh_link
- dh_strip --dbg-package=swift-im-dbg
- dh_compress
- dh_fixperms
- dh_makeshlibs
- dh_installdeb
- dh_shlibdeps
- dh_gencontrol
- dh_md5sums
- dh_builddeb
-
-binary: binary-indep binary-arch
-
-build-arch: build
-build-indep: build
-.PHONY: build clean binary-indep binary-arch binary install configure build-arch build-indep
+override_dh_auto_install:
+ scons $(SCONS_FLAGS) $(SCONS_EXTRA_FLAGS) $(SCONS_INSTALL_FLAGS) $(SCONS_INSTALL_BASE)
diff --git a/Swift/Packaging/Debian/debian/source/lintian-overrides b/Swift/Packaging/Debian/debian/source/lintian-overrides
deleted file mode 100644
index b3f7bdd..0000000
--- a/Swift/Packaging/Debian/debian/source/lintian-overrides
+++ /dev/null
@@ -1,5 +0,0 @@
-# The upstream numbering scheme is that 2.0~beta1 is prior to 2.0 but that 2.0~beta1+dev10 is ten commits later than 2.0~beta1, so in this case the warning is redundant.
-swift-im source: rc-version-greater-than-expected-version
-libswiften-dev source: rc-version-greater-than-expected-version
-libswiften2 source: rc-version-greater-than-expected-version
-swift-im-dbg source: rc-version-greater-than-expected-version
diff --git a/Swift/Packaging/Debian/debian/swift-im-dbg.install b/Swift/Packaging/Debian/debian/swift-im-dbg.install
deleted file mode 100644
index e2db5d9..0000000
--- a/Swift/Packaging/Debian/debian/swift-im-dbg.install
+++ /dev/null
@@ -1 +0,0 @@
-usr/share/lintian/overrides/swift-im-dbg
diff --git a/Swift/Packaging/Debian/debian/swift-im.install b/Swift/Packaging/Debian/debian/swift-im.install
index 68e0f9e..82242ff 100644
--- a/Swift/Packaging/Debian/debian/swift-im.install
+++ b/Swift/Packaging/Debian/debian/swift-im.install
@@ -1,6 +1,5 @@
usr/bin/swift-im
usr/share/icons
usr/share/pixmaps
usr/share/swift
usr/share/applications
-usr/share/lintian/overrides/swift-im
diff --git a/Swift/Packaging/Debian/debian/swift-im.menu b/Swift/Packaging/Debian/debian/swift-im.menu
deleted file mode 100644
index 68b621d..0000000
--- a/Swift/Packaging/Debian/debian/swift-im.menu
+++ /dev/null
@@ -1,3 +0,0 @@
-?package(swift-im):needs="X11" section="Applications/Network/Communication"\
- title="Swift IM" command="/usr/bin/swift-im"\
- icon="/usr/share/pixmaps/swift.xpm"
diff --git a/Swift/Packaging/Debian/package.sh b/Swift/Packaging/Debian/package.sh
index 8c7c89f..62dfff0 100755
--- a/Swift/Packaging/Debian/package.sh
+++ b/Swift/Packaging/Debian/package.sh
@@ -23,67 +23,69 @@ fi
if [ -z "$DEBIAN_VERSION" ]; then
echo "Unable to determine version"
exit -1
fi
echo "Cleaning up old packages ..."
rm -f swift-im_*
rm -f libswiften*
rm -rf swift-im-*
TARBALLBARE="swift-im_$DEBIAN_VERSION.orig.tar.gz"
TARBALL="${SHARED_DIR}${TARBALLBARE}"
if [ -f $TARBALL ]; then
echo "Found existing tarball for the right version, using ${TARBALL}"
echo "Cleaning out any previous builds in ${DIRNAME} and re-extracting"
rm -rf $DIRNAME
cp $TARBALL tmp.tmp
mv tmp.tmp $TARBALLBARE
tar xzf $TARBALLBARE
else
echo "No shared tarball found"
echo "Checking out a fresh copy ..."
rm -rf $DIRNAME
git clone ../../../.git $DIRNAME
# Remove development files & 3rdParty files
rm -rf $DIRNAME/.git
find $DIRNAME -name .gitignore | xargs rm -f
if [ -z "$SWIFT_COPY_UUID" ]; then
- find $DIRNAME/3rdParty -type f | grep -v SConscript | grep -v miniupnp | grep -v natpmp |xargs rm -f
+ find $DIRNAME/3rdParty -type f | grep -v SConscript | xargs rm -f
else
find $DIRNAME/3rdParty -type f | grep -v uuid | grep -v SConscript | grep -v miniupnp | grep -v natpmp || xargs rm -f
fi
find $DIRNAME/3rdParty -depth -empty -type d -exec rmdir {} \;
rm -rf $DIRNAME/3rdParty/SCons
rm -rf $DIRNAME/Swift/Packaging/Debian
+ rm -rf $DIRNAME/BuildTools/DocBook/Fonts
+ rm -rf $DIRNAME/BuildTools/Git/Hooks/commit-msg
# Initialize the build version
echo $VERSION > $DIRNAME/VERSION.swift
# Fork local Boost UUID copy
# FIXME: This shouldn't be necessary, but SCons isn't picking up the generated headers for compilation
if [ ! -z "$SWIFT_COPY_UUID" ]; then
mkdir -p $DIRNAME/3rdParty/Boost/uuid/boost
cp -r $DIRNAME/3rdParty/Boost/src/boost/uuid $DIRNAME/3rdParty/Boost/uuid/boost
fi
# Create orig tarball
tar czf $TARBALLBARE $DIRNAME
cp $TARBALLBARE tmp.tmp
mv tmp.tmp $TARBALL
fi
# Detect dependencies
WEBKIT_DEPENDENCY=", libqtwebkit-dev (>= 2.0.0)"
DISTRIBUTION=`lsb_release -s -i`-`lsb_release -s -c`
if [ "$DISTRIBUTION" = "Debian-squeeze" -o "$DISTRIBUTION" = "Ubuntu-lucid" -o ! -z "$SWIFT_FORCE_LUCID" ]; then
WEBKIT_DEPENDENCY=""
fi
# Initialize debian files
cp -r debian $DIRNAME/debian
if [ -z "$CHANGELOG" ]; then
../../../BuildTools/UpdateDebianChangelog.py $DIRNAME/debian/changelog $DEBIAN_VERSION
else
diff --git a/Swift/QtUI/SConscript b/Swift/QtUI/SConscript
index acfe7d0..88cb1ac 100644
--- a/Swift/QtUI/SConscript
+++ b/Swift/QtUI/SConscript
@@ -44,60 +44,70 @@ if myenv.get("HAVE_GROWL", False) :
if myenv["swift_mobile"] :
myenv.Append(CPPDEFINES = ["SWIFT_MOBILE"])
if myenv.get("HAVE_HUNSPELL", True):
myenv.Append(CPPDEFINES = ["HAVE_HUNSPELL"])
myenv.UseFlags(myenv["HUNSPELL_FLAGS"])
if env["PLATFORM"] == "win32" :
myenv.Append(LIBS = ["cryptui"])
myenv.UseFlags(myenv["PLATFORM_FLAGS"])
myenv.Tool("qt4", toolpath = ["#/BuildTools/SCons/Tools"])
myenv.Tool("nsis", toolpath = ["#/BuildTools/SCons/Tools"])
myenv.Tool("wix", toolpath = ["#/BuildTools/SCons/Tools"])
myenv.Tool("textfile", toolpath = ["#/BuildTools/SCons/Tools"])
qt4modules = ['QtCore', 'QtWebKit', 'QtGui']
if myenv["qt5"] :
qt_version = '5'
# QtSvg is required so the image format plugin for SVG images is installed
# correctly by Qt's deployment tools.
qt4modules += ['QtWidgets', 'QtWebKitWidgets', 'QtMultimedia', 'QtSvg']
if env["PLATFORM"] != "win32" and env["PLATFORM"] != "darwin" :
qt4modules += ['QtX11Extras']
else :
qt_version = '4'
if env["PLATFORM"] == "posix" :
qt4modules += ["QtDBus"]
if env["PLATFORM"] != "win32" and env["PLATFORM"] != "darwin" :
qt4modules += ["QtNetwork"]
myenv.EnableQt4Modules(qt4modules, debug = False, version = qt_version)
+myenv.Append(CPPPATH = ["."])
+
+# Qt requires applications to be build with the -fPIC flag on some 32-bit Linux distributions.
+if env["PLATFORM"] == "posix" :
+ testEnv = myenv.Clone()
+ conf = Configure(testEnv)
+ if conf.CheckDeclaration("QT_REDUCE_RELOCATIONS", "#include <QtCore/qconfig.h>") and conf.CheckDeclaration("__i386__"):
+ myenv.AppendUnique(CXXFLAGS = "-fPIC")
+ testEnv = conf.Finish()
+
if env["PLATFORM"] == "win32" :
#myenv.Append(LINKFLAGS = ["/SUBSYSTEM:CONSOLE"])
myenv.Append(LINKFLAGS = ["/SUBSYSTEM:WINDOWS"])
myenv.Append(LIBS = "qtmain")
if myenv.get("HAVE_SCHANNEL", 0) :
myenv.Append(LIBS = "Cryptui")
myenv.Append(CPPDEFINES = "HAVE_SCHANNEL")
if env["PLATFORM"] == "darwin" and env["HAVE_SPARKLE"] :
myenv.Append(LINKFLAGS = ["-Wl,-rpath,@loader_path/../Frameworks"])
myenv.WriteVal("DefaultTheme.qrc", myenv.Value(generateQRCTheme(myenv.Dir("#/Swift/resources/themes/Default"), "Default")))
sources = [
"main.cpp",
"QtAboutWidget.cpp",
"QtSpellCheckerWindow.cpp",
"QtAvatarWidget.cpp",
"QtUIFactory.cpp",
"QtChatWindowFactory.cpp",
"QtClickableLabel.cpp",
"QtLoginWindow.cpp",
"QtMainWindow.cpp",
"QtProfileWindow.cpp",
"QtBlockListEditorWindow.cpp",
"QtNameWidget.cpp",
"QtSettingsProvider.cpp",
"QtStatusWidget.cpp",
"QtScaledAvatarCache.cpp",
"QtSwift.cpp",
@@ -286,61 +296,61 @@ if env["PLATFORM"] != "darwin" and env["PLATFORM"] != "win32" :
else :
openURIProgram = []
myenv.Uic4("MUCSearch/QtMUCSearchWindow.ui")
myenv.Uic4("UserSearch/QtUserSearchWizard.ui")
myenv.Uic4("UserSearch/QtUserSearchFirstPage.ui")
myenv.Uic4("UserSearch/QtUserSearchFirstMultiJIDPage.ui")
myenv.Uic4("UserSearch/QtUserSearchFieldsPage.ui")
myenv.Uic4("UserSearch/QtUserSearchResultsPage.ui")
myenv.Uic4("QtBookmarkDetailWindow.ui")
myenv.Uic4("QtAffiliationEditor.ui")
myenv.Uic4("QtJoinMUCWindow.ui")
myenv.Uic4("QtHistoryWindow.ui")
myenv.Uic4("QtConnectionSettings.ui")
myenv.Uic4("QtHighlightEditor.ui")
myenv.Uic4("QtBlockListEditorWindow.ui")
myenv.Uic4("QtSpellCheckerWindow.ui")
myenv.Uic4("QtUpdateFeedSelectionDialog.ui")
myenv.Qrc("DefaultTheme.qrc")
myenv.Qrc("Swift.qrc")
if env["PLATFORM"] == "win32" :
myenv.Qrc("SwiftWindows.qrc")
# Resources
commonResources = {
"": ["#/Swift/resources/sounds"]
}
myenv["TEXTFILESUFFIX"] = ""
-myenv.MyTextfile(target = "COPYING", source = [myenv.File("../../COPYING.gpl"), myenv.File("../../COPYING.thirdparty")], LINESEPARATOR = "\n\n========\n\n\n")
+myenv.MyTextfile(target = "COPYING", source = [myenv.File("../../COPYING.gpl"), myenv.File("../../COPYING.thirdparty"), myenv.File("../../COPYING.dependencies")], LINESEPARATOR = "\n\n========\n\n\n")
################################################################################
# Translation
################################################################################
# Collect available languages
translation_languages = []
for file in os.listdir(Dir("#/Swift/Translations").abspath) :
if file.startswith("swift_") and file.endswith(".ts") :
translation_languages.append(file[6:-3])
# Generate translation modules
translation_sources = [env.File("#/Swift/Translations/swift.ts").abspath]
translation_modules = []
for lang in translation_languages :
translation_resource = "#/Swift/resources/translations/swift_" + lang + ".qm"
translation_source = "#/Swift/Translations/swift_" + lang + ".ts"
translation_sources.append(env.File(translation_source).abspath)
translation_modules.append(env.File(translation_resource).abspath)
myenv.Qm(translation_resource, translation_source)
commonResources["translations"] = commonResources.get("translations", []) + [translation_resource]
# LUpdate translation (if requested)
if ARGUMENTS.get("update_translations", False) :
myenv.Precious(translation_sources)
remove_obsolete_option = ""
codecfortr = ""
if ARGUMENTS.get("remove_obsolete_translations", False) :
remove_obsolete_option = " -no-obsolete"
if qt_version == '4':