aboutsummaryrefslogtreecommitdiffstats
path: root/Configure
Commit message (Collapse)AuthorAgeFilesLines
...
* Make picker, thread and combine standard config helper functionsRichard Levitte2016-03-171-0/+52
| | | | | | Document them as well Reviewed-by: Andy Polyakov <appro@openssl.org>
* Remove Netware and OS/2Rich Salz2016-03-171-13/+10
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* Disallow --classic for WindowsRichard Levitte2016-03-171-1/+1
| | | | | | With all the config changes, mk1mf is broken on Windows. Reviewed-by: Rich Salz <rsalz@openssl.org>
* Added build.info debugging capability to ConfigureRichard Levitte2016-03-171-2/+20
| | | | | | | | | | This is only enabled when the environment variable CONFIGURE_DEBUG_BUILDINFO is defined. This will cause every line in every build.info file to be displayed, along with the content of the skip stack before and after parsing. This can be a very powerful tool to see that all conditions are working as expected. Reviewed-by: Rich Salz <rsalz@openssl.org>
* Disable AFALG when cross-compilingMatt Caswell2016-03-161-0/+2
| | | | | | | | We don't currently support cross-compiling of the afalg engine. However we were failing to explicitly mark it as disabled during Configure leading to a failed build. Reviewed-by: Richard Levitte <levitte@openssl.org>
* static-engine is no longer an internal keyword, remove it from %disabledRichard Levitte2016-03-151-1/+0
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* Disable afalg when engine is disabled.Emilia Kasper2016-03-141-5/+7
| | | | | | | | Also make it possible to disable afalg separately. we still need to update config again Reviewed-by: Richard Levitte <levitte@openssl.org>
* Enforce the demand for Perl 5.10.0 as a minimum.Richard Levitte2016-03-141-1/+1
| | | | Reviewed-by: Andy Polyakov <appro@openssl.org>
* Fix a few Configure errorsRichard Levitte2016-03-141-9/+4
| | | | Reviewed-by: Andy Polyakov <appro@openssl.org>
* Add blake2 support.Bill Cox2016-03-111-1/+3
| | | | | Reviewed-by: Andy Polyakov <appro@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org>
* Configure: remove dependency on 'head'.Andy Polyakov2016-03-111-3/+5
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* Don't build dynamic engines unless configured "shared"Richard Levitte2016-03-111-1/+2
| | | | | | | Experience has shown that dynamic engines with their own copy of libcrypto is problematic, so we disable that possibility. Reviewed-by: Matt Caswell <matt@openssl.org>
* Configure - don't trust $1 to stick around, save its value awayRichard Levitte2016-03-101-1/+3
| | | | Reviewed-by: Stephen Henson <steve@openssl.org>
* Correct slight logic error in processing IF in build.infoRichard Levitte2016-03-091-1/+1
| | | | | | | | | | | | | | | | This corrects a fault where the inner IF in this example was still being acted upon: IF[0] ...whatever... IF[1] ...whatever more... ENDIF ENDIF With this change, the inner IF is skipped over. Reviewed-by: Matt Caswell <matt@openssl.org>
* Comment away the extra checks in ConfigureRichard Levitte2016-03-091-5/+5
| | | | | | | | | | | | The "extra checks" is a debugging tool to check the config resolving mechanism. It uses Perl's smart match, which is experimental and therefore always causes Perl to give out a warning, and it causes older Perl versions to fail entirely. So, it gets commented away, but stays otherwise in place, as it may be useful again. Reviewed-by: Matt Caswell <matt@openssl.org>
* In build.info, an IF within a clause that's skipped over shouldn't applyRichard Levitte2016-03-091-1/+7
| | | | | | | If we find an IF within a clause that's skipped over, set it to be skipped as well. Reviewed-by: Matt Caswell <matt@openssl.org>
* Remove the old threading APIMatt Caswell2016-03-091-1/+0
| | | | | | | | | | All OpenSSL code has now been transferred to use the new threading API, so the old one is no longer used and can be removed. We provide some compat macros for removed functions which are all no-ops. There is now no longer a need to set locking callbacks!! Reviewed-by: Richard Levitte <levitte@openssl.org>
* Don't check the conditions to build e_afalg if configured "no-engine"Richard Levitte2016-03-091-14/+16
| | | | Reviewed-by: Matt Caswell <matt@openssl.org>
* Have Configure display the value of SHARED_CFLAGRichard Levitte2016-03-091-0/+1
| | | | Reviewed-by: Andy Polyakov <appro@openssl.org>
* Check gcc version to see if it supports -MM and friendsRichard Levitte2016-03-091-1/+5
| | | | | | | | | According to manuals found here: https://gcc.gnu.org/onlinedocs/, GNU C version 3 and on support the dependency generation options. We therefore need to check the gcc version to see if we're going to use it or makedepend for dependency generation. Reviewed-by: Andy Polyakov <appro@openssl.org>
* Add the configure option 'no-makedepend'Richard Levitte2016-03-091-5/+13
| | | | | | | If no makedepend program or equaly capable compiler is present, 'makedepend' gets disabled automatically. Reviewed-by: Rich Salz <rsalz@openssl.org>
* Add the Configure option --classic, to fall back on classic build schemesRichard Levitte2016-03-081-1/+23
| | | | Reviewed-by: Matt Caswell <matt@openssl.org>
* Revert "unified build scheme: Try to nudge users to try the "unified" build"Richard Levitte2016-03-081-49/+1
| | | | | | This reverts commit 242ffb05a2e4aa3fc7ffc131037e077b7e242189. Reviewed-by: Matt Caswell <matt@openssl.org>
* Fix building without multiblock supportMatt Caswell2016-03-081-0/+1
| | | | | | | | | Not all platforms support multiblock. Building without it fails prior to this fix. RT#4396 Reviewed-by: Richard Levitte <levitte@openssl.org>
* Unified - Add the build.info command OVERRIDE, to avoid build file clashesRichard Levitte2016-03-071-1/+10
| | | | | | | | | | | | | | | | Should it be needed because the recipes within a RAW section might clash with those generated by Configure, it's possible to tell it not to generate them with the use of OVERRIDES, for example: SOURCE[libfoo]=foo.c bar.c OVERRIDES=bar.o BEGINRAW[Makefile(unix)] bar.o: bar.c $(CC) $(CFLAGS) -DSPECIAL -c -o $@ $< ENDRAW[Makefile(unix)] Reviewed-by: Rich Salz <rsalz@openssl.org>
* Unified - Add the build.info command GENERATE, to generate source filesRichard Levitte2016-03-071-0/+18
| | | | | | | | | | | | | | | | In some cases, one might want to generate some source files from others, that's done as follows: GENERATE[foo.s]=asm/something.pl $(CFLAGS) GENERATE[bar.s]=asm/bar.S The value of each GENERATE line is a command line or part of it. Configure places no rules on the command line, except the the first item muct be the generator file. It is, however, entirely up to the build file template to define exactly how those command lines should be handled, how the output is captured and so on. Reviewed-by: Rich Salz <rsalz@openssl.org>
* Misc afalg build fixesMatt Caswell2016-03-071-4/+7
| | | | | | | Misc afalg build fixes as suggested by Richard Levitte for the latest Configure changes. Reviewed-by: Richard Levitte <levitte@openssl.org>
* Rework based on feedback:clucey2016-03-071-1/+5
| | | | | | | | | | | | | | 1. Cleaned up eventfd handling 2. Reworked socket setup code to allow other algorithms to be added in future 3. Fixed compile errors for static build 4. Added error to error stack in all cases of ALG_PERR/ALG_ERR 5. Called afalg_aes_128_cbc() from bind() to avoid race conditions 6. Used MAX_INFLIGHT define in io_getevents system call 7. Coding style fixes Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org>
* ALG: Add AFALG engineclucey2016-03-071-0/+13
| | | | | Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org>
* Change names of ordinals and libs, libeay => libcrypto and ssleay => libsslRichard Levitte2016-03-051-6/+6
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* Disable SSLv3 by defaultKurt Roeckx2016-03-041-0/+2
| | | | | | | Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Emilia Kasper <emilia@openssl.org> MR: #2203
* Don't build RC4 ciphersuites into libssl by defaultMatt Caswell2016-03-041-12/+17
| | | | | | | | RC4 based ciphersuites in libssl have been disabled by default. They can be added back by building OpenSSL with the "enable-weak-ssl-ciphers" Configure option at compile time. Reviewed-by: Rich Salz <rsalz@openssl.org>
* Restore the zlib / zlib-dynamic logicRichard Levitte2016-03-041-0/+5
| | | | | | | | | | | The proper logic is that both zlib and zlib-dynamic are disabled by default and that enabling zlib-dynamic would enable zlib. Somewhere along the way, the logic got changed, zlib-dynamic was enabled by default and zlib didn't get automatically enabled. This change restores the original logic. Reviewed-by: Rich Salz <rsalz@openssl.org>
* Don't copy from %target to %config so much, see %config as a complementRichard Levitte2016-03-021-15/+17
| | | | | | | | | | | We copied $target{cflags}, $target{defines} and a few more to %config, just to add to the entries. Avoid doing so, and let the build templates deal with combining the two. There are a few cases where we still fiddle with %target, but that's acceptable. Reviewed-by: Andy Polyakov <appro@openssl.org>
* Configure - Get rid of the special thread_cflag, replace with thread_schemeRichard Levitte2016-03-021-37/+52
| | | | | | | | | | | | | | | | | | | | | | | The thread_cflag setting filled a double role, as kinda sorta an indicator of thread scheme, and as cflags. Some configs also added lflags and ex_libs for multithreading regardless of if threading would be enabled or not. Instead of this, add threading cflags among in the cflag setting, threading lflags in the lflag setting and so on if and only if threads are enabled (which they are by default). Also, for configs where there are no special cflags for threading (the VMS configs are of that kind), this makes it possible to still clearly mention what thread scheme is used. The exact value of thread scheme is currently ignored except when it's "(unknown)", and thereby only serves as a flag to tell if we know how to build for multi-threading in a particular config. Yet, the currently used values are "(unknown)", "pthreads", "uithreads" (a.k.a solaris threads) and "winthreads". Reviewed-by: Andy Polyakov <appro@openssl.org>
* Configure - get rid of the special debug_ and release_ settingsRichard Levitte2016-03-021-22/+7
| | | | | | | | | | | | | | Instead, make the build type ("debug" or "release") available through $config{build_type} and let the configs themselves figure out what the usual settings (such as "cflags", "lflags" and so on) should be accordingly. The benefit with this is that we can now have debug and release variants of any setting, not just those Configure supports, and may also involve other factors (the MSVC flags /MD[d] and /MT[d] involve both build type and whether threading is enabled or not) Reviewed-by: Andy Polyakov <appro@openssl.org>
* Minimize copied config settingsRichard Levitte2016-03-021-8/+2
| | | | | | | $target{lflags} and $target{plib_flag} were copied to %config for no good reason. Reviewed-by: Andy Polyakov <appro@openssl.org>
* Configure - move the addition of the zlib / libz lib to configsRichard Levitte2016-03-021-21/+1
| | | | | | | | | | | | | | Configure had the Unix centric addition of -lz when linking with zlib is enabled, which doesn't work on other platforms. Therefore, we move it to the BASE_unix config template and add corresponding ones in the other BASE_* config templates. The Windows one is probably incomplete, but that doesn't matter for the moment, as mk1mf does it's own thing anyway. This required making the %withargs table global, so perl snippets in the configs can use it. Reviewed-by: Andy Polyakov <appro@openssl.org>
* Configure - Rename BASE to DEFAULTS and add a few inheritable BASEsRichard Levitte2016-03-021-7/+4
| | | | | | | | | | These BASE templates are intended to hold values that are common for all configuration variants for whole families of configurations. So far, three "families" are identified: Unix, Windows and VMS, mostly characterised by the build system they currently use. Reviewed-by: Andy Polyakov <appro@openssl.org>
* Configure - Allow CODErefs and ARRAYrefs in configuration setting arraysRichard Levitte2016-03-021-19/+43
| | | | | | | | | | | | This provides for more powerful lazy evaluation and buildup of the setting contents. For example, something like this becomes possible: defines => [ sub { $config{thisorthat} ? "FOO" : () } ] Any undefined result of such functions (such as 'undef' or the empty list) will be ignored. Reviewed-by: Andy Polyakov <appro@openssl.org>
* Configure - make the use of environment variables for overrides consistentRichard Levitte2016-03-021-15/+6
| | | | | | | We allow some commands to be overriden, but didn't handle that in a consistent manner. Reviewed-by: Andy Polyakov <appro@openssl.org>
* Make uplink auxiliary source separate from cpuid sourceRichard Levitte2016-03-021-0/+2
| | | | | | | | There are cases, for example when configuring no-asm, that the added uplink source files got in the way of the cpuid ones. The best way to solve this is to separate the two. Reviewed-by: Andy Polyakov <appro@openssl.org>
* Unified - have configdata.pm depend on a few more thingsRichard Levitte2016-03-011-0/+3
| | | | Reviewed-by: Andy Polyakov <appro@openssl.org>
* Remove last remains of old config stringsRichard Levitte2016-02-271-5/+0
| | | | Reviewed-by: Andy Polyakov <appro@openssl.org>
* Apply default after having checked the given config target is validRichard Levitte2016-02-271-1/+4
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* Make the table entry printer in Configure aware of ARRAYsRichard Levitte2016-02-261-2/+12
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* Forgotten change of add() call in ConfigureRichard Levitte2016-02-261-1/+1
| | | | Reviewed-by: Matt Caswell <matt@openssl.org>
* Configure - neater looking add() and add_before()Richard Levitte2016-02-261-2/+10
| | | | | | | | | | | They now default to " " as separator, but that can be overridden by having a hash with parameters as last argument. The only currently recognised parameter is `separator'. The special separator `undef' will force the result to become a list rather than a concatenated string. Reviewed-by: Andy Polyakov <appro@openssl.org>
* Add OPENSSL_PIC backRichard Levitte2016-02-221-0/+4
| | | | | | | | In the earlier change, where static libraries get built with position independent code, OPENSSL_PIC was removed by mistake. This adds it back. Reviewed-by: Tim Hudson <tjh@openssl.org>
* Remove unused parameters from internal functionsRich Salz2016-02-221-3/+3
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>