aboutsummaryrefslogtreecommitdiffstats
path: root/src/build-data/os
Commit message (Collapse)AuthorAgeFilesLines
* CLI rewriteJack Lloyd2015-12-195-0/+5
| | | | | | | | | | | | | | | | | | The command line tools' origin as a collection of examples and test programs glued together led to some unfortunate problems; lots of hardcoded values, missing parameters, and obsolete crypto. Adds a small library for writing command line programs of the sort needed here (cli.h), which cuts the length of many of the commands in half and makes commands more pleasant to write and extend. Generalizes a lot of the commands also, eg previously only signing/verification with DSA/SHA-1 was included! Removes the fuzzer entry point since that's fairly useless outside of an instrumented build. Removes the in-library API for benchmarking.
* New reseed_with_sources call on RNGsJack Lloyd2015-11-2411-11/+0
| | | | | | | | | | | | | Provides an easier way for an application to configure a list of entropy sources they'd like to use, or add a custom entropy source to their seeding. Exposes some toggles for the global/default entropy sources to build.h Adds basic entropy tests which runs the polls and does sanity checking on the results, including compression tests if available. These are less useful for the CSPRNG outputs but a good check for the ones producing plain ASCII like the /proc reader.
* Prevent users from building static non-amalgamations on MinGW and CygwinSimon Warta2015-09-092-6/+2
| | | | | | | | * 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
* Add soname_patternSimon Warta2015-08-246-5/+17
| | | | Fixes #241
* Add mktime fallback for non-POSIX timegm()Simon Warta2015-07-278-0/+8
| | | | Closes #202
* Add Android OSDaniel Seither2015-07-171-0/+10
| | | | | | The android.txt is a copy of linux.txt minus the getsid feature (Android's libc, Bionic, doesn't support it) and the alias linux-gnu. It is supported anywhere where linux is supported.
* Add OS feature getsidDaniel Seither2015-07-1711-0/+11
| | | | | It is added to all OS that use getsid currently, so it must be available there.
* Add MSVC stl filesystem implementationSimon Warta2015-07-161-0/+1
| | | | Closes #199
* Add .exe suffix to MinGW and Cygwin binaries alsolloyd2015-04-273-0/+4
|
* I just now assumed configure.py --os=osx would work, and I'm probably not ↵lloyd2015-03-151-0/+1
| | | | the first.
* Hide all uses of boost filesystem in fs.cpp. Use readdir as anlloyd2015-02-215-1/+17
| | | | | alternate implementation for Unix and add some feature checks so a boost-free build of the tests and command line are possible again.
* Use RtlSecureZeroMemory or memset_s if availablelloyd2015-01-072-0/+2
|
* Enable system_rng on Windows and MinGW (untested)lloyd2014-12-212-0/+2
|
* Add MinGW support for the CryptoAPI RNG. Also disable the dependencieslloyd2014-12-171-9/+0
| | | | | | | | in auto_rng for a working entropy source as in situations where it doesn't work almost none of the library builds. Disable boost by default from the library. Github issue 34. Unrelated - remove long dead Tru64 as a target.
* Darwin featureslloyd2014-04-051-0/+2
|
* Fix Windows feature macro defineslloyd2014-02-021-3/+2
|
* Add a --chost option to configure that takes a GNU style triplet.lloyd2012-08-312-0/+5
| | | | | | Add a couple aliases so the GNU canonical names are understood by us. Add an Ivy Bridge entry, match it up with the new GCC -march flag
* propagate from branch 'net.randombit.botan' (head ↵lloyd2011-12-182-0/+5
|\ | | | | | | | | | | 39f53266912f33dc48e942b1b865ddcd6af66d8d) to branch 'net.randombit.botan.cxx11' (head 0bf26cec09f71e75c547b4ec53365748c6d80d86)
| * Add basic NaCl targetlloyd2011-12-081-0/+4
| |
| * LoadLibrary apparently works on MinGWlloyd2011-12-021-0/+1
| |
* | propagate from branch 'net.randombit.botan' (head ↵lloyd2011-06-131-2/+3
|\ \ | |/ |/| | | | | | | 150bd11dd8090559ee1e83394b8283bf93a018de) to branch 'net.randombit.botan.c++0x' (head 7480693bb3f1e8a4e039a3e7ba3d9a7007f9730e)
| * propagate from branch 'net.randombit.botan' (head ↵lloyd2010-09-031-2/+3
| |\ | | | | | | | | | | | | | | | a29c41b4a949207b1544096c3afab668f8b5179e) to branch 'net.randombit.botan.c++0x' (head a9d0c2f805b3c20a4c648575d7256959db8329fe)
| | * propagate from branch 'net.randombit.botan' (head ↵lloyd2010-08-041-2/+3
| | |\ | | | | | | | | | | | | | | | | | | | | 717a9d103aa80e6d66c04e3a23cf173aadf56ceb) to branch 'net.randombit.botan.c++0x' (head c9759e8ebc2f360696a11f2d00fc218d7a8bf744)
| | | * propagate from branch 'net.randombit.botan' (head ↵lloyd2010-07-091-2/+3
| | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | 161b5c0300b72baa746f101fda1e2b4a7c71818c) to branch 'net.randombit.botan.c++0x' (head 1fc3875bb8daf4ad0e90ba66db72642203cb9984)
| | | | * propagate from branch 'net.randombit.botan' (head ↵lloyd2010-05-191-2/+3
| | | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 66b216669d7ac91303378281d760236153955ae4) to branch 'net.randombit.botan.c++0x' (head b911a76971563afcde85935a44a43248a3f5b4a6)
| | | | | * propagate from branch 'net.randombit.botan' (head ↵lloyd2009-12-243-1/+9
| | | | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 367d157c1221a162f5b4098492944a509ef6d019) to branch 'net.randombit.botan.c++0x' (head 1b9e8c4e92663f30b7d57b0fd8f57eb13cfce155)
| | | | | * | Instead of checking for Windows generically before using ↵lloyd2009-12-011-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QueryPerformanceCounter, check a feature macro named BOTAN_OS_HAS_QUERY_PERF_COUNTER, and set the same via configure.py for Windows builds.
* | | | | | | MinGW install commands are the default, so don't specify explicitly.lloyd2011-05-262-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Solaris, use /usr/ucb/install, as /usr/sbin/install uses some kind of other strange syntax.
* | | | | | | When building for GCC, always get the version number, and turn off TR1lloyd2011-05-031-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and -fvisibility support if the version is too old. You can also turn them off explicitly with the (hidden) option --without-visibility. We get the version number from the binary specified with --cc-bin, if the user set that, rather than from plain 'g++'. Fix Solaris install - apparently 'install' cmd is broken/dumb. Fix Ekopath flags for submodels.
* | | | | | | Enable unix_procs for FreeBSD. It was disabled in 2006 to worklloyd2011-04-212-14/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | around a bug in FreeBSD 6.1, which is long EOL. If we can't figure out the CPU in configure.py, if running verbosely dump the entire list of CPUs we know about. Some doc cleanups. Rename the 'beos' target to 'haiku', since testing shows that botan can't compile under the old BeOS GCC 2.95 anyway. Remove the call to idle_time in the stats entropy source - it causes a crash on Haiku R1-alpha2 somewhere inside a system DLL. I didn't bother debugging it beyond looking at the backtrace. Add a 'bepc' alias for i386 as that is what Haiku reports its processor as. Fix the install dirs to match Haiku R1, though apparently they will change in R2 anyway when they add package management. Enable use of gmtime_r on Haiku.
* | | | | | | One minor fix for QNX 6.4.1 (Python identifies CPU as 'x86pc'), andlloyd2011-04-151-0/+4
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | add support for features that it has that apparently the last version I tested did not, including dynamic loading.
* / / / / / Add support for Windows-style dynamic loading with LoadLibrary. Notlloyd2010-08-251-0/+1
|/ / / / / | | | | | | | | | | | | | | | yet tested.
* / / / / Add a new utility class Dynamically_Loaded_Library which wraps aroundlloyd2010-07-271-0/+1
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the system dynamic linker (if any). Currently it only supports dlopen, and is only enabled on Linux. It will almost certainly work on BSDs and Solaris as well, though, and should be easy to extend to support Win32-style dynamic loading. Also add a new engine, Dynamically_Loaded_Engine, which loads up a new Engine object from a shared library/DLL.
* / / / Delete os defaults file - only used by Perllloyd2010-07-091-19/+0
|/ / /
* | / Remove the old (unused) <supports_shared> config block. It specifiedlloyd2010-05-1317-69/+7
| |/ |/| | | | | | | | | | | which architectures the OS supported shared libs on; in all cases it was either all or none. Replace with new config build_shared [yes|no], which defaults to yes but is set to no for MinGW and Cygwin since shared libs don't seem to be working well there.
* | Fix compile of get_nanoseconds_clock for Windows.lloyd2009-12-232-0/+2
| | | | | | | | | | | | | | Add macros for OS support of gmtime_r (Unix) and gmtime_s (Win32) to deal with thread-unsafety of std::gmtime. Only enable gmtime_r on Linux currently, but it's probably available pretty much everywhere (specified in pthreads, origininally, AFAICT).
* | Add feature macro for Win32's GetSystemTimelloyd2009-12-222-0/+6
|/
* Consolidate the non-canonical epoch timers, like cpuid and Win32'slloyd2009-12-0114-0/+46
| | | | | | | | | | | | | | QueryPerformanceCounter, into an entropy source hres_timer. Its results, if any, do not count as contributing entropy to the poll. Convert the other (monotonic/fixed epoch) timers to a single function get_nanoseconds_clock(), living in time.h, which statically chooses the 'best' timer type (clock_gettime, gettimeofday, std::clock, in that order depending on what is available). Add feature test macros for clock_gettime and gettimeofday. Remove the Timer class and timer.h. Remove the Timer& argument to the algorithm benchmark function.
* Fix windows install_rootlloyd2009-11-201-1/+1
|
* Switch from only-static with VC++ to only a DLL. The static library islloyd2009-11-191-1/+1
| | | | | huge (60+ Mb!); the DLL should be smaller due to link-time merging making it viable to distribute binaries.
* Kill straggling realnameslloyd2009-10-291-2/+0
|
* Hurd file was missing txt extension, must have missed it before?lloyd2009-10-291-0/+0
|
* Remove the 'realname' attribute on all modules and cc/cpu/os info files.lloyd2009-10-2916-31/+0
| | | | | Pretty much useless and unused, except for listing the module names in build.h and the short versions totally suffice for that.
* propagate from branch 'net.randombit.botan.1_8' (head ↵lloyd2009-10-131-0/+16
|\ | | | | | | | | | | c5ae189464f6ef16e3ce73ea7c563412460d76a3) to branch 'net.randombit.botan' (head e2b95b6ad31c7539cf9ac0ebddb1d80bf63b5b21)
| * Add support for GNU/Hurdlloyd2009-10-071-0/+16
| |
* | Rename all of the build-data files with a .txt extension, and filter forlloyd2009-10-1317-0/+0
|/ | | | | | such in configure.py. Paul Clark reported on the list having problems with it otherwise because of CVS droppings being picked up and subsequently errored on when parsing them as build info files (of course) failed.
* Add support for Dragonfly BSD (a fork of FreeBSD).lloyd2009-07-251-0/+11
| | | | Contributed by Patrick Georgi
* Make the install_cmd_{data,exec} items in the build-data files quoted,lloyd2009-07-014-13/+6
| | | | | | | | | | | since they often contain spaces. This doesn't matter to configure.pl's hand-done regex 'parser', but it makes things more consistent and makes it possible to use the shlex parser included with python to parse all of the data files. Also remove the unused <arch> entry in darwin - this information had previously be removed from all the other files but I guess that one was missed.
* propagate from branch 'net.randombit.botan' (head ↵lloyd2008-09-301-0/+22
| | | | | | fd327b29aa542e0ad5ff6d37d8392321670f0369) to branch 'net.randombit.botan.modularized' (head 3f8d05493d4b192243fdc8a7f518ed1013c3be54)
* Merge the 3 mlocks (ml_unix, ml_win32, stub mlock.cpp) into a single mlock.cpplloyd2008-09-294-0/+16
| | | | | | in utils. Support OS feature macros, eg BOTAN_TARGET_OS_HAS_POSIX_MLOCK (how very autoconf)