summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-06-30Add initial support for code signing on OS XTobias Markmann
See DEVELOPMENT.md for instructions. Test-Information: Tested using a self-signed code signing certificate created using Keychain Access.app. Compared the output of 'codesign -vvv -d' on Swift.app with preinstall apps. The output looks much the same except for the signing authority. Change-Id: Idbb3209ad917091c371ced61ec8a77e3e5d18884
2016-06-23Improve Linux spell checking UX and enable it by defaultTobias Markmann
This removes support for user dictionaries for now. The new UI shows a list human readable languages (in their native spelling) where the user can select one to use for spell checking. Updated our InstallSwiftDependencies.sh based on the package names in their repositories. Test-Information: Tested on Ubuntu 16.04 with Hunspell and tested it still builds on OS X 10.11.4. Did not test InstallSwiftDependencies.sh. Change-Id: I24fc705b1495f7c39a8da149cbd7116e41609998
2016-06-02Ignore warning 4503 when building with MS Visual Studio compilerTobias Markmann
This warning is generated when symbol names exceed a character limit. This can happen fast with layered C++ templates. Test-Information: Tested with Visual Studio 2013 that the warning is not issued anymore when building BoostConnectionTest. Change-Id: I21c1e37ed6306f2da92dc7f78a1c16f26db0daf2
2016-06-02Implement allow_warnings SCons flag for WindowsTobias Markmann
Test-Information: Build failed correctly on error on Windows 8 with Visual Studio 2013. Change-Id: I1afc7a8a4cf0449057959638709c80c7ded8a5a6
2016-04-14Set QT_SELECT environment variable during scons buildTobias Markmann
This enables building on Gentoo. Test-Information: A user successfully built with this patch and both Qt4 and Qt5 installed. Change-Id: I81ada408d34208bbba22d30de5f4ecd0060e223f
2016-04-06Add distcc support to our SCons scriptTobias Markmann
Just pass distcc=1 and set cxx=distcc clang++ and cc=distcc clang and use an appropriate parallelization argument (-j). Converted hard tabs to spaces in the process. Test-Information: Used distcc with -j 10 to build the whole Swift project with unit tests in 13 minutes across 2 hosts. Change-Id: Ib6b63b5079872632a11c0fd28eb90b8901b956df
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-03-09Fix using external OpenSSL on Mac OS XTobias Markmann
This commit changes our TLS backend configuration behavior. It introduces the tls_backend Scons argument, which defaults to the native backend, but can also explicitly set to 'openssl' to use a project external OpenSSL installation or 'openssl_bundled' to build and configure with the OpenSSL source in the 3rdParty directory. Test-Information: Tested on OS X 10.11.3. ./scons ends up using Secure Transport. ./scons tls_backend=openssl \ openssl_include=/usr/local/opt/openssl/include \ openssl_libdir=/usr/local/opt/openssl/lib \ openssl=/usr/local/opt/openssl successfully builds with openssl from Homebrew. ./scons tls_backend=openssl_bundled successfully builds with OpenSSL in 3rdParty. Change-Id: I4fb0ef9d197609afe793554f86e54fe67fc1cab5
2016-02-25Disable Hunspell support by default as it is not finished yetTobias Markmann
Our Hunspell support has not been finished and thoroughly tested yet. This commit disabled building with Hunspell by default, even if the dependencies for it are installed on the system. Remove libhunspell-dev from the build depends in Debian packaging. Test-Information: Tested on Debian 8. Tested with and without the hunspell_enable=True flag. With the spellchecking options are shown and however spell checking is not stable. Without it the spellchecking options are not shown and spellchecking is disabled in general, as expected. Change-Id: I100582852cbe128149fdb2e2a28d4ae407398be6
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-12-17Update SCons to version 2.4.0Tobias Markmann
Test-Information: Tested build works with upcoming fixes with VS 2015 Community. Change-Id: Ia4f78cc9efdae56ef78a2b7ae09f11fa1bd8bc37
2015-08-11Add 'check_headers' flag to scons for missing include detectionTobias Markmann
Running './scons check_headers=1 will compile each header file as an object file. Test-Information: Tested on OS X 10.9.5 and Elementary OS 0.2. Change-Id: Ia429ccc6dc0a5bd76c08a2c2e91bf192c6ad2901
2015-06-29Add WindowsServicePrincipalName classMili Verma
Test-information: Tested on Windows using WIP GSSAPI code. Unit tests pass. Change-Id: If872863d6a8b5a164f8ebec4f88e9939b4e73c62
2015-05-26Have cl.exe write debug info to independent files for reliable parallel buildsTobias Markmann
By default cl.exe writes debug info to a static file name resulting in all cl.exe trying to write to the same file when using parallel builds. This leads to race conditions and can have parallel builds fail. This only takes effect if parallel builds are made by scons. Test-Information: Tested with VS 2013. Change-Id: I8ea7e9370f5b149ded608e4c6f5e66a3fc6301c4
2015-05-26Fix SCons architecture detection on FreeBSD 10Tobias Markmann
Test-Information: Tested on FreeBSD 10.0. Change-Id: Ic1c8a1637f0fbc9128973b41d6988a8afd61e387
2015-05-19Consolidate Python and SCons files to tab based indentationTobias Markmann
Test-Information: Verified that SCons still runs on OS X. Change-Id: I7e9b97f90ee5581a691a959b6f2c999d93e0be53
2015-04-30Disable potentially-evaluated-expression Clang warningTobias Markmann
Test-Information: Verified with Clang 3.7.0 on OS X. Change-Id: I345ef288163214288d41c3980c8e67529db0657d
2015-04-09Disable documentation-unknown-command warnings in clangTobias Markmann
Test-Information: Tested on OS X 10.9.5 with Clang 3.7.0. Change-Id: Ic3a5ec77ca488c1688da35f75dd7424f8f59784b
2014-12-10Use ar tool from the cross-compiling toolchain when building for Android.Tobias Markmann
Test-Information: Tested with nm tool from cross-compiling toolchain. Before it would report 'Malformed archive' for libSwiften.a. Now it correctly lists all symbols without reporting an error. Change-Id: I3901bb206487a05124986bbdc53f336aed932f5b
2014-11-24Disable file-transfer support for iOS.Tobias Markmann
iOS SDK does not have net/route.h interface as part of its public API. File-transfer requires UPnP/NAT-PMP for a good user experience which in turn require detection of the default gateway/router. Disabiling file-transfer support for iOS until we know a valid way to detect the default gateway/router on iOS. Test-Information: Tested against iPhone/iPhoneSimulator8.1 SDKs. Change-Id: I1303f37c025e8c6309acefcd80b9b30a3ac18fbb
2014-11-24Use the correct compiler/linker on modern iOS SDKs.Tobias Markmann
Test-Information: Tested against iPhone/iPhoneSimulator8.1 SDKs. Change-Id: I8837f653799587edf43885c3632b1f647832f429
2014-11-13Fix build system documentation typo.Tobias Markmann
Test-Infromation: No testing required. Change-Id: I93dbd239f37d3982ddaf939cd903127349e404f3
2014-10-13Regress Python requirement to 2.4 againKevin Smith
Test-information: Ran through the configuration step on a machine with only Python 2.4 Change-Id: I3d5ba54395ede875c7f21c2769151fe6d308e760
2014-10-06Allow scons to not require an IDN libraryKevin Smith
This will clearly break all the tests, Swift, Sluift etc., but is useful if someone wants to use Swiften and inject their own IDN provider. Test-information: Compiles with Isode's IDN provider Change-Id: Ia55991054f42f332bf34b653d7b55f64f654820e
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-03Sluift: Custom console/interpreterRemko Tronçon
- Prints results of each command (if it can be interpreted as an expression) - Stores results of last command in _1, _2, ... - Supports tab completion - Compatible with Lua 5.2 Other changes: - Add support for specifying custom editline library - Don't load sluift into global namespace. Tab completion should be convenient enough. Change-Id: I2a26346469d67c281d09d47cacaa0b267f5ea9f9
2013-11-07Get past the configure stage for iOS-based xcode targetsKevin Smith
Without telling the linker that it's for iOS, you get link errors during configure, like: ld: building for MacOSX, but linking against dylib built for iOS Simulator file '/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.0.sdk/System/Library/Frameworks/Foundation.framework/Foundation' for architecture i386 Change-Id: I446bc99d5b8a2ba95a441e9ac0b82d6b64ff3d83
2013-11-03Split experimental File Transfer out from History and Whiteboarding.Kevin Smith
Effectively disables whiteboarding and history in default builds so we can avoid having to do a full cleanup of them for 3.0. File transfer remains enabled in default builds as we're intending getting that ready and shipping it. Change-Id: I8c1dcc989f238b58d6d7c426485e7cf582514d8f
2013-09-15Install SluiftRemko Tronçon
Change-Id: Ia08269b51528b4458418939e5478cb320f4ba40d
2013-09-15Use system Lua if presentRemko Tronçon
Change-Id: I665a603b1afa1e24e1b73618e976113a87be2001
2013-08-27PubSub implementation & Sluift refactoring.Remko Tronçon
Change-Id: I04ff7111b73565c00bff6db183451774a633344f
2013-08-22Ignore unknown pragmas.Remko Tronçon
Change-Id: I9a15163da44a964eaa5ce452cb23524ecf10a2c3
2013-08-15Add "-Wno-missing-variable-declarations" (some CPPUnit annoyance) and ↵Tobias Markmann
"-Wno-direct-ivar-access" to our default clang flags. Change-Id: If6f544696128967e0785a5afc86bdd2ca9ea352a License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
2013-08-13Adding basic support for Android and Unbound (No IPv6 yet).Tobias Markmann
Change-Id: I1d74324515b20e0dc3d0ef4aa2f556fea7b4bee3 License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.s
2013-07-13Added scons2ninja script.Remko Tronçon
This script allows you to use ninja to drive your build, but using SCons in the back to generate the ninja files. Change-Id: I410d80d91f3c2ca6f369169d9b004b531625022f
2013-07-12Add temporary workaround for VS2012 support.Remko Tronçon
Change-Id: Iecd927ceb0c7146af3e7a2b99b6ff0d6cf3b619f
2013-07-09Add settings to make scons build faster.Remko Tronçon
Change-Id: Iaa86883f483f0d852fceeaf5b645395457547428
2013-05-11Silence new CLang warning.Remko Tronçon
Change-Id: Ic3889daf4e08fde38b0e615661696c6b8cb337fb
2013-05-10Xcode SDK location changes.Remko Tronçon
Change-Id: Ib13d3eaa927431e3a10f3b724fbfab96f134c1c8
2013-03-30Making stuff build against non-bundled librariesKevin Smith
Change-Id: I2c00de607e204f7d2c474aa9d4c18cde86d575ec
2013-03-15Spell checker implementation using HunspellVlad Voicu
Change-Id: Ia15b6532edf6eef7c45bdfb273e77f65ce998f13 License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details
2013-03-04Qt5 support & warning fixes.Remko Tronçon
Change-Id: I62c7d5ca44c915e36c797c798294b7c34b465514
2013-03-02Disable some more warnings.Remko Tronçon
Change-Id: I30065deb10749618cdd4a3042e9d494ddc6c063d
2013-02-12Include frameworks in swiften-config.Remko Tronçon
Also remove duplicates from frameworks list. Change-Id: I769d3951677a180c90618dc6ae5b91d028c08e8a
2013-02-11Fix bundled OpenSSL builds.Remko Tronçon
Change-Id: Ic11b04663f324b75d81a18887cbe4c7324823c86
2013-01-13Fix more warnings.Remko Tronçon
Fix sign conversion warnings. Removing heavy unnecessary includes. Change-Id: I992f43065498823098a875badb020c7c84fc4797
2012-12-31Fix more warnings.Remko Tronçon
Change-Id: I0fc27a08adb6aecd5c5775a52b7fe48570ed526a
2012-12-31Add scan-build support.Remko Tronçon
Change-Id: Ife69d84147946b41875792cb90189542c3130bc3
2012-12-30Rearrange warning options.Remko Tronçon
Change-Id: Ibe78f592cc9278e149541ad3e9499bd1fb198671
2012-12-30Enable & fix pedantic CLang warnings.Remko Tronçon
Change-Id: I70109624b4bd7aab9ba679a3eaabc225dd64a03a