aboutsummaryrefslogtreecommitdiffstats
path: root/configure.py
Commit message (Collapse)AuthorAgeFilesLines
* Merge GH #446 add --module-policy optionJack Lloyd2016-03-061-60/+85
|\
| * Add option --module-policyJack Lloyd2016-03-061-60/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A module policy is a file specifying three types of modules: ones which are required, ones which are prohibited, and ones which should be used if otherwise available (this is mostly for platform specific modules). Finally there are whatever modules which exist in the library of which the policy makes no mention. These will be included if an explicit dependency of some other module pulls them in (so there is no reason to mention base, utils, ... in the file) but skipped otherwise. For example policy 'sane' does not mention 'utils' or 'twofish' either way. Since utils is a dependency of other modules which are included, but Twofish does not. However unlike an explicitly prohibited module, not mentioned can still be requested as part of the build (here with --enable-module=twofish) Also fixes some test bugs noticed by compiling in different build configs. DLIES test didn't check that the KDF and MAC existed. Adds a typedef for MessageAuthenticationCode because typing it twice in a single line in the DLIES test made me think it's way too long. :) Also fix some fuzzer build problems. Due to a copy and paste bug the PKCS certificate (it was not). Inspired by GH #439
* | Have --debug-mode both set debug info and disable optimizations.Jack Lloyd2016-03-061-3/+7
|/ | | | | | --with-debug-info and --no-optimizations remain to toggle each independently. Closes GH #433
* fix commentDaniel Neus2016-02-191-1/+1
|
* Use symlinks on windows if explicitly requestedDaniel Neus2016-02-191-2/+8
|
* Add --with-valgrindJack Lloyd2016-02-131-0/+6
|
* Maintainer mode shouldn't always imply ASan since it interferes withJack Lloyd2016-01-291-3/+0
| | | | valgrind and throws off benchmarks.
* Fix configure.py for CPython 2.6Jack Lloyd2016-01-041-3/+10
| | | | Based on GH #362 by emilymaier
* Merge pull request #353 from neusdan/robust_build_setup_windowsJack Lloyd2015-12-311-2/+29
|\ | | | | make shutil.rmtree and os.makedirs more robust to AV interference
| * review changesDaniel Neus2015-12-231-7/+9
| | | | | | | | | | | | | | * fix Python 3 compatibility * add comment explaining purpose of the workarounds * raise exception if directory exists in robust_makedirs * pylint fixes
| * decrease timeout between attempts to 100msDaniel Neus2015-12-181-4/+4
| |
| * make shutil.rmtree and os.makedirs more robust (at least on windows)Daniel Neus2015-12-101-2/+27
| |
* | Add TPM v1.2 support (RSA keygen/signing, RNG)Jack Lloyd2015-12-191-1/+1
| |
* | Expose os_type setting as BOTAN_TARGET_OS_TYPE_IS_xJack Lloyd2015-12-121-7/+15
|/
* Rename cmd/app -> cliSimon Warta2015-12-091-10/+10
|
* Better error checking for <libs> settings in module info filesJack Lloyd2015-11-281-0/+7
|
* Remove --build-mode and add individual toggles for optimization, debug,Jack Lloyd2015-10-261-36/+41
| | | | | | sanitizers and coverage as all 4 are usefully set independently. Use GCC 4.9 on CircleCI as it seems to be supported. Add ASan + UBSan test.
* Remove the strange conjoining of debug and optimization flags.Jack Lloyd2015-10-261-45/+21
| | | | | | | | | | | | | | | | | | | Previously a build had optimizations disabled completely when debug info was emitted. But there are many reasons to use optimized builds with debug symbols (running under valgrind, against afl, with Asan/Ubsan, in prod, etc). And personally I find even debugging at -O2 or -O3 is fine most of the time and worth it for the speed. Use the (now documented!) --no-optimizations flag if no optimization is desired while debugging. This also removes the distinction between library and application compile flags; there is a single optimization level that is probably good enough for everything. On Win32 it removes definding _CONSOLE for the application. This seems to be some mythical value that may have been required at some point, but is not documented anywhere I can find. Who knows what VC thinks, hoping I don't have to add this back. It also drops defining `EBUG` which is what happens when you tell cl.exe to '/DEBUG'. LOL.
* Add `--minimized-build` which does the same thing as `--no-autoload`Jack Lloyd2015-10-141-1/+3
| | | | | but the meaning of the option is probably easier to understand with this name.
* build system: Add framework support for OS X and iOSDaniel Seither2015-09-251-3/+14
| | | | | | | On Darwin platforms, there are frameworks that can bundle libraries and header files in a standardized directory structure. We need to support linking to them because most of the OS X or iOS-specific APIs are provided as frameworks.
* Pluralize --with-python-version option, remove it from single-option groupJack Lloyd2015-09-221-7/+4
|
* Fix pbkdf, pk padding and ECDH registration for static linking.Jack Lloyd2015-09-111-4/+0
| | | | | | | | With this change the tests pass when linked against a static library built in the normal (non-amalgamation) fashion. Remove the restriction in configure.py, and have circleci build the clang static build as a non-amalg.
* Prevent users from building static non-amalgamations on MinGW and CygwinSimon Warta2015-09-091-7/+6
| | | | | | | | * Rename variable to avoid confusion of build_shared and options.build_shared_lib * Don't automatically change shared -> static. Force user to do that Fixes #211
* Remove duplicated ABI flags, and treat user-set flags as a single stringJack Lloyd2015-08-291-8/+6
|
* Allow multiple abi link flags with the same nameRené Korthaus2015-08-281-4/+4
| | | | | | Allow multiple ABI link flags with the same name, e.g., -arch armv7 -arch armv7s when cross-compiling for iOS. This is the first fix necessary for fixing #188.
* Add soname_patternSimon Warta2015-08-241-4/+21
| | | | Fixes #241
* On x86-32, anything using the simd wrapper needs to be pushed to the SSE2 objJack Lloyd2015-08-221-4/+8
|
* Update configure.pySimon Warta2015-07-261-15/+11
| | | | | | | | * Increase minimal python version to 2.7 * Remove monotone revision command * Set choices for --link-method argument Closes #217
* Remove the configure.py logic for handling bare asm. GH #216Jack Lloyd2015-07-251-25/+2
|
* Fix typosSimon Warta2015-07-241-1/+1
| | | | Thanks to @vlajos https://github.com/vlajos/misspell_fixer
* Make 'module not found' an errorSimon Warta2015-07-231-2/+2
| | | | | | | Before a typo in a module name was a warning. It now is an error because it is potentially harmful. [ci skip]
* Rename so_link_flags to so_link_commandsSimon Warta2015-07-211-10/+10
|
* Add binary_link_command; Use compiler configs to set RPATH on LinuxSimon Warta2015-07-211-17/+33
|
* Check for so_link_command existence in compiler settingsSimon Warta2015-07-211-1/+3
|
* Merge compile_option into CXX_FLAGSSimon Warta2015-07-211-3/+1
|
* Have a $(LINKER) variableSimon Warta2015-07-211-8/+16
|
* Rename template variable cc -> cxxSimon Warta2015-07-211-1/+1
|
* Make release/debug versions for: compile_flags, lib_opt_flags and app_opt_flagsSimon Warta2015-07-211-10/+21
| | | | | | This commit aims to preserve all settings. In some cases it will drop optimization flags and fall back to compiler's defaults in the new debug mode.
* Tie static build check to --via-amalgamation, not --gen-amalgamationSimon Warta2015-07-191-1/+1
| | | | | | --gen-amalgamation does not use amalgamation in the Makefile [ci skip]
* Make internal headers available for tests (amalgamation)Simon Warta2015-07-151-4/+3
|
* Force amalgamation in static buildSimon Warta2015-07-131-0/+4
| | | | Closes #128.
* Exit configure script with return value 1 on errorSimon Warta2015-07-121-4/+13
|
* Remove dead code (Boost.Python makefile, unused configure.py functions)Jack Lloyd2015-07-111-13/+0
|
* Make sanitizer a build mode for easy use by developers.Jack Lloyd2015-07-051-3/+8
|
* Rename variable with_shared_lib -> build_shared_libSimon Warta2015-07-031-1/+1
|
* Dont run install_name_tool when lib is statically linkedSimon Warta2015-07-011-1/+1
|
* Fix include handling in amalgamationSimon Warta2015-07-011-16/+19
| | | | Includes must be unique per .cpp file, not globally. Fixes #105
* Add optparse choices parameter to detect config errors nice and earlySimon Warta2015-06-241-2/+6
|
* Use install_name_tool to change location of botan lib on OSXSimon Warta2015-06-221-0/+7
|
* Set RPATH to $ORIGIN for ./botan and ./botan-testSimon Warta2015-06-221-1/+3
| | | | | | | | This makes setting LD_LIBRARY_PATH obsolete when Botan lib and botan /botan-test binary are in the same directory. This behavior is default on Windows. LD_LIBRARY_PATH can still be used to override the RPATH.