summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2019-01-21Make Version.py compatible with both Py2 and Py3Edwin Mons
The merge of 4.x changes onto master introduced changes to Pyhon scripts that weren't compatible with Python 3. The Version.py script is now compatible with both Python 2 and Python 3, and a slightly underimplemented test has been expanded to actually live up to its name. getGitBuildVersion has been refactored completely. It has been simplified to require only one invocation of git describe, unit tests for the parsing have been added, and a way to call getGitBuildVersion from the commandline has been added to Version.py (to avoid adding a unit test that would call out to an external tool). DocBook.py has been made compatible with Python3, and some additional logic to prevent emitting b'path/to/docbook/xml' instead of the desired 'path/to/docbook/xml' has been added. Generation of COPYING in Swift/QtUI now uses the upstream version provided with SCons 3, and our custom version has been removed. Unused code in the SwiftenDevelopersGuide SConscript with invalid regular expressions has been removed, and the remaining regular expressions in SConscripts have been fixed. Test-Information Code has been tested on macOS 10.14. Scons now completes a build on a clean tree using either Python 2 or Python 3. Running it on a previouly built tree works with either, as well, mixing versions between invocations is not an issue. Swift unit tests pass with Python 3.7.0. Version.py unit tests pass with Python 2.7.15 and 3.7.0. Running with doc=1 works with both Python 2 and Python 3, even if the docbook points to a path with unicode characters in it. Resulting COPYING file has been verified both visually and against a Python2 generated one on master. Resulting XML files for documentation have been inspected. Resulting manual HTML and PDF files have been inspected. Change-Id: I54de909d80b8e35a8c351261ae10ce3537729c84
2018-11-14Fix various uses of numeric_cast in UI bitsEdwin Mons
Apart from QtUI bits, this addresses use of uncaught numeric cast exceptions in message count handling, the spell parser and the MacOS idle querier. The WindowsServicePrincipalName logic previously had an issue where using ports from 32768 onwards would result in a bad_numeric_cast exception to be thrown. This has been addressed at the same time as the uncaught exceptions, and all ports should work now. The tags file has been extended to ignore more files. Change-Id: I73ced35f06517bee5c58f990d20fa437b40ac84e
2016-04-29Restructure and reword project documentationTobias Markmann
Restructured project documentation into two basically two files at the top level. README.md giving a rough project overview and information and providing all information needed to build Swift, its requirements and where to get them for all desktop platforms. DEVELOPMENT.md is targeted at developers, describing the build system, how to build only parts of the project. This document also described how to build Swiften on Android and iOS, and also covers testing and packaging guidelines. Test-Information: None. Change-Id: Ic47bef6524888db972332b23e6510d10234f7808
2016-04-25Convert hard tabs to four spaces in all our SConscript/*.py filesTobias Markmann
Test-Information: Test that it still builds and unit test pass on OS X 10.11.4. Change-Id: I2eb4a0b707991aee553db36a8cd1ae28b813acab
2016-04-04Modernize code to use C++11 shared_ptr instead of Boost'sTobias Markmann
This change was done by applying the following 'gsed' replacement calls to all source files: 's/\#include <boost\/shared_ptr\.hpp>/\#include <memory>/g' 's/\#include <boost\/enable_shared_from_this\.hpp>/\#include <memory>/g' 's/\#include <boost\/smart_ptr\/make_shared\.hpp>/\#include <memory>/g' 's/\#include <boost\/make_shared\.hpp>/\#include <memory>/g' 's/\#include <boost\/weak_ptr\.hpp>/\#include <memory>/g' 's/boost::make_shared/std::make_shared/g' 's/boost::dynamic_pointer_cast/std::dynamic_pointer_cast/g' 's/boost::shared_ptr/std::shared_ptr/g' 's/boost::weak_ptr/std::weak_ptr/g' 's/boost::enable_shared_from_this/std::enable_shared_from_this/g' The remaining issues have been fixed manually. Test-Information: Code builds on OS X 10.11.4 and unit tests pass. Change-Id: Ia7ae34eab869fb9ad6387a1348426b71ae4acd5f
2016-03-31Convert tabs to 4 spaces for all source filesTobias Markmann
Removed trailing spaces and whitespace on empty lines in the process. Changed CheckTabs.py tool to disallow hard tabs in source files. Test-Information: Manually checked 30 random files that the conversion worked as expected. Change-Id: I874f99d617bd3d2bb55f02d58f22f58f9b094480
2016-03-30Apply consistent #include grouping and sorting styleTobias Markmann
Changed "" style includes to <> style. Test-Information: Build with Clang 3.9.0 and ran all tests on OS X 10.11.4. Change-Id: Ic05e53f2e5dba39cc1307b116fc5f17b62ab9eb8
2016-03-14Build all Swift projects as C++11Tobias Markmann
Added a SCons compiler test so that the build process fails early if C++11 is not supported. Remove C++11 checks as we now default to C++11 and they are not needed anymore. Ignore a Clang warning if building 3rdParty Boost. Test-Information: Tested build and unit tests on OS X 10.11.3. Change-Id: Icbecbd1e25e8d8bbe5f402f75355373a86b5f8a1
2016-01-07Default to Qt5 for building SwiftTobias Markmann
Updated documentation accordingly. Test-Information: Build and ran unit tests on OS X 10.11.2. Change-Id: Iec4e82d3b63a6b0d24b854734879dd2fbfe17d79
2015-10-30Add FileTransfer::getState() methodTobias Markmann
In addition, this adds the file-transfer classes to the Doxygen documentation. Test-Information: Unit and integration tests still pass. Change-Id: Ib6c16078c90ed56fae835cb2abfea8a564c3afa3
2015-10-30Fix Doxygen issuesTobias Markmann
Ran ./scons doc=1 with Doxygen 1.8.10 and fix all mentioned errors. Test-Information: Tested building of documentation on OS X 10.10.1 with Doxygen 1.8.10. Change-Id: I136054f457f9b3ff6b269f5ac32bf435450c017c
2015-06-14Document the two required scons runs for Windows packagingTobias Markmann
Test-Information: None. Change-Id: Ie2a5f9430aeb849219f4bca64aa3d1871bc17dc5
2015-02-06Use windeployqt.exe if available and Win distribution documentation fixTobias Markmann
If windeployqt.exe is available for Qt5, it will be used to detect which Qt DLLs to put in the Windows distribution and its dependencies correctly. Added a note to our Windows building documentation about the VS redistributable. Test-Information: Tested building a MSI package on Windows 8.1 Pro with Qt 5.3.2 32-bit msvc2013_opengl which successfully installs and runs. Change-Id: I786da40d6467f1de8e64bfae275f8363ac1d5ba8
2015-02-06Build a Swift client doxygen documentationTobias Markmann
Mainly useful for developers of the Swift client or users of Swift/Controllers. Test-Information: Verified that Swift documentation is build. Change-Id: I4bf3e78392cd40d646b33a9fd04c90702c08cfa3
2014-12-15Update Copyright In DocumentationKevin Smith
Change-Id: I34a1d96bb0a9d0ba3252644d1cbd0137df13c9ca
2014-12-10Updating build script for 3rdParty OpenSSL for latest release (openssl-1.0.1j).Tobias Markmann
Test-Information: Tested building with latest OpenSSL release for Android. Change-Id: I1cae5ea0ca5800fa719e59753bffafee043ac54b
2014-11-17Fix typo in iOS documentation.Tobias Markmann
Test-Information: Not required. Change-Id: Ieb9cf3b8d55312c4cc6a51ca99ca330ca12f4d43
2014-11-13Fix iOS build and add iOS build documentation.Tobias Markmann
Test-Information: Tested on OS X 10.9.5 with XCode 6.1. Change-Id: Ib223977192fce274e5585ef0768fd755b1fa734d
2014-11-12Add build and test documentation for Android.Tobias Markmann
Test-Information: Tested documentation with Android NDK android-ndk-r10c on Mac OS X 10.9.5, Android NDK API level 14 and ARM architecture. Successfully ran all integration and unit tests. Change-Id: Ief0e7493e410a9c6cf80c4ca147ec0058293d1b1
2014-10-23Adding notes to Windows build instructions based on recent experience.Tobias Markmann
Build Swift with VS 2013 Express under Windows 8.1. These notes would have helped in retrospect. Change-Id: I6ea9e8b9c44a2549292d226945e54c8a88e63aa1
2014-10-01Port many of Isode's local fixes upstreamKevin Smith
Includes fixes to: Build with new Visual Studio and Boost Avoid error caused when Avahi is present but Qt is not Make declaration of XMPPRosterImpl::addContact consistent with implementation Includes enhancements to: Allow user-configurable mt.exe Allow splitting openssl paths Allow disabling gconf lookup Make idn support optional Allow disabling various library detections Remove use of non-Python2.4 features in sconscripts Test-Information: Builds Change-Id: Iee91ee80291a8bdf87cc169c915e4dad1cc1055b
2014-01-11Disable PCH buildsRemko Tronçon
Change-Id: Ibf879f65e80561a9f9853fd5af3ca09331bf94cc
2013-10-15Add qt5 to docsKevin Smith
Change-Id: If454a17361c8dcba747278a98edeeeb56e21d54d
2013-08-15Make (Core)Component constructor consistent with (Core)Client.Remko Tronçon
Change-Id: I268e15b6fbf54d9b188a699d26d2bb1042174f5f
2013-04-25swiften-config improvements.Remko Tronçon
Allow --libs and --cflags to be used in the same command. Include Boost flags in --cflags. Add documentation for using swiften-config with SCons. Change-Id: I36d78cdecab7c2b7b6ef7861e09a43964357f23d
2013-02-13Slightly clarify Linux build stepsKevin Smith
Change-Id: I3944c999947f76bdf18b992f322e0055e9bbebb4
2012-12-31Fix more warnings.Remko Tronçon
Change-Id: I0fc27a08adb6aecd5c5775a52b7fe48570ed526a
2012-12-22Use /Zi instead of /Z7 for debugging symbols.Remko Tronçon
Change-Id: I60e34c2dd03bfa52949b7781a922959604d15bee
2012-12-22Use precompiled header in EchoBot variants.Remko Tronçon
This slightly speeds up compilation on Windows. Adding this mostly as demonstrating/documentation purposes. Change-Id: Ic50aaef04589c79b926a0dcb4bb8d00284fd5a21
2012-10-19Update translation documentation.Remko Tronçon
Change-Id: I73b7f0a57312cb0a868f063930aa6535584771d0
2012-10-10Forgotten dependencyKevin Smith
2012-10-07Adding reconfigure instructionsKevin Smith
2012-10-07Release packaging notesKevin Smith
2012-08-08More build fixes.Remko Tronçon
2012-04-23Comment about only compiling Swiften in the building instructionsKevin Smith
2011-10-29Don't save message content of recents to disk in --eagle-modeKevin Smith
2011-05-01Updated Swiften developers guide.Remko Tronçon
Added call to setAlwaysTrustCertificates in examples. Added C++0x example.
2011-04-19Don't build C++0x EchoBot on Linux for now.Remko Tronçon
2011-04-18Added instructions for installing on unix.Remko Tronçon
2011-04-18Cleaned up includes.swift-2.0alphaRemko Tronçon
2011-03-27Adding in a BSD license for contributors to referenceKevin Smith
2011-03-14Added some extra documentation on translating Swift.Remko Tronçon
2011-03-13Added a note about the desktop entry.Remko Tronçon
2011-03-11Updated Dutch translation + Added translation docs.Remko Tronçon
2011-02-15Make JID constructor with string implicit.Remko Tronçon
This avoids the need to explicitly contruct a JID where a string is used.
2011-02-14Removed Swift::String.Remko Tronçon
2011-02-04Added C++0x version of EchoBot.Remko Tronçon
2011-02-02Removing unused parameter from Client constructor.Remko Tronçon
2010-12-06Fixed EchoComponent example.Remko Tronçon
2010-12-05Import boost::make_shared.Remko Tronçon