summaryrefslogtreecommitdiffstats
path: root/Configurations
AgeCommit message (Collapse)Author
2023-10-13Update unix Makefile template to handle paths with spacesJames Muir
Fixes #4668 (on unix-like platforms) Testing: rm -rf "$HOME/tmp/beforespace afterspace" ./Configure -Werror --strict-warnings --prefix="$HOME/tmp/beforespace afterspace" make -j6 update make -j6 make install make test Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Todd Short <todd.short@me.com> (Merged from https://github.com/openssl/openssl/pull/21821)
2023-10-02Configurations/unix-Makefile.tmpl: Ensure that md-nits always worksRichard Levitte
The body of the "md-nits" Makefile target assumed an in source build tree. This change ensures that it works correctly when called from an out-of-source build tree as well. Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com> (Merged from https://github.com/openssl/openssl/pull/22240)
2023-10-02Avoid having ecp_sm2p256-armv8.pl in fips.module.sourcesTomas Mraz
Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com> (Merged from https://github.com/openssl/openssl/pull/22194)
2023-09-11Regexp modifier "r" needs perl 5.14; OpenSSL should build with 5.11, so do ↵Rainer Jung
not use the "r" shortcut. Reviewed-by: Hugo Landau <hlandau@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Paul Dale <pauli@openssl.org> (Merged from https://github.com/openssl/openssl/pull/22019)
2023-09-08Modify 50-nonstop.conf to enable c99 extensions for uintptr_t.Randall S. Becker
This is done using the define __NSK_OPTIONAL_TYPES__ and is specific to the NonStop platform builds. Fixes: #22002 Signed-off-by: Randall S. Becker <randall.becker@nexbridge.ca> Reviewed-by: Hugo Landau <hlandau@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/22005)
2023-09-07Copyright year updatesMatt Caswell
Reviewed-by: Richard Levitte <levitte@openssl.org> Release: yes
2023-09-05VMS: More header inclusion compensation for VMS C compilerRichard Levitte
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com> Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com> (Merged from https://github.com/openssl/openssl/pull/21959)
2023-09-04VMS: More header inclusion compensation for VMS C compilerRichard Levitte
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/21951)
2023-08-29Set VC win64 perlasm scheme during ConfigureKai Pastor
Reviewed-by: Hugo Landau <hlandau@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/21661)
2023-08-20Updates documentation of RC4_CHAR and RC4_INT: Should not be used for new ↵Frederik Wedel-Heinen
configuration targets Fixes: #21358 CLA: trivial Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Hugo Landau <hlandau@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/21391)
2023-08-04Add hurd-x86_64 supportSamuel Thibault
This also upgrades flags similarly to the Linux configuration. Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> Reviewed-by: Todd Short <todd.short@me.com> (Merged from https://github.com/openssl/openssl/pull/20896)
2023-08-04Add linux-x86-latomic targetBernd Kuhls
CLA: trivial Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Shane Lontis <shane.lontis@oracle.com> Reviewed-by: Todd Short <todd.short@me.com> (Merged from https://github.com/openssl/openssl/pull/21590)
2023-07-25Adds separate configuration targets for intel i386/x86_64 and arm64 ios ↵Frederik Wedel-Heinen
simulators Fixes #21287 CLA: trivial Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com> Reviewed-by: Paul Dale <pauli@openssl.org> (Merged from https://github.com/openssl/openssl/pull/21309)
2023-06-28add no-docs optionVladimír Kotal
Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Paul Dale <pauli@openssl.org> (Merged from https://github.com/openssl/openssl/pull/21240)
2023-06-15Fix typos found by codespellDimitri Papadopoulos
Typos in doc/man* will be fixed in a different commit. Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Paul Dale <pauli@openssl.org> (Merged from https://github.com/openssl/openssl/pull/20910)
2023-06-12Fix build on cygwinMichael Baentsch
Fixes #19531 Reviewed-by: Todd Short <todd.short@me.com> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/21006)
2023-06-08build.info: Introduce special syntax for dependencies on script modulesRichard Levitte
The DEPEND statement, when applied on files generated with GENERATE, may be used to specify script modules that the template to be generated from depends on. In short, this sort of depend: DEPEND[generated]=util/perl/OpenSSL/something.pm ... would generate a perl run that has the inclusion directory 'util/perl/OpenSSL' and 'something' as the module to be loaded. However, the package name for this module is 'OpenSSL::something', so to load it the way it's expected, the inclusion directory should be 'util/perl', and the module to be loaded should be specified as 'OpenSSL/something' (to be massaged into a proper module name by the build file template). To allow this, we introduce a file syntax, where a single '|' is used as a directory separator, to delineate what part should be used as the inclustion directory, and which part the module name to be loaded should be derived from: DEPEND[generated]=util/perl|OpenSSL/something.pm Fixes #21112 Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Paul Dale <pauli@openssl.org> (Merged from https://github.com/openssl/openssl/pull/21117)
2023-06-01tags: fix `make tags` target for out of tree buildsPauli
Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com> Reviewed-by: Todd Short <todd.short@me.com> (Merged from https://github.com/openssl/openssl/pull/21079)
2023-05-24Drop the last reference of SHLIB_EXTRichard Levitte
SHLIB_EXT is a variable that exists on OpenSSL build file templates before version 3.0, for which much of the logic for figuring out file names and such was moved to the 'platform' set of routines. But, it seems that one (now useless) reference remained on the VMS specific descrip.mms.tmpl. We replace it with an explicit '.EXE', which is the default extension for shared libraries on VMS. Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Hugo Landau <hlandau@openssl.org> (Merged from https://github.com/openssl/openssl/pull/21007)
2023-05-22fips.module.sources: Add missing cpuid and related .c sources for other ↵Tomas Mraz
architectures Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com> Reviewed-by: Todd Short <todd.short@me.com> (Merged from https://github.com/openssl/openssl/pull/20949)
2023-05-19Update VMS configurationsRichard Levitte
A native x86_64 C compiler has appeared. We preserve the previous config target with a new name to indicate that it's for cross compilation, at least for the time being. Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Hugo Landau <hlandau@openssl.org> Reviewed-by: Paul Dale <pauli@openssl.org> (Merged from https://github.com/openssl/openssl/pull/20983)
2023-05-18util/ctags.sh: a script for generating tags file with expanding macrosMasatake YAMATO
This script requires Universal Ctags 6.0.0 or newer. Usage: ./util/ctags.sh [...options passed to ctags...] Fixing #10251 Running the script in "tags" make target is suggested by Dmitry Belyavskiy <beldmit@gmail.com>. The falling back action for running older ctags if u-ctags 6 is not available is suggested by Dr. Matthias St. Pierre <matthias.st.pierre@ncp-e.com>. Signed-off-by: Masatake YAMATO <yamato@redhat.com> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> Reviewed-by: Paul Dale <pauli@openssl.org> (Merged from https://github.com/openssl/openssl/pull/20960)
2023-05-10Fix a typo found by codespell in a Makefile variableDimitri Papadopoulos
I have no experience with building on Windows, so I don't know the effect of fixing this typo. I guess that this will fix a bug at worst. CLA: trivial Reviewed-by: Hugo Landau <hlandau@openssl.org> Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/20911)
2023-05-05Revert "win-onecore: Build with /APPCONTAINER for UWP compat"Mathias Berchtold
This reverts commit 2c61a670ebf2f1923a3bd2ef0ee4b2fa6261eaeb. Not all OneCore based SKUs (or editions) of Windows (Server, XBOX, etc) require /APPCONTAINER. The /APPCONTAINER link option is only relevant for Universal Windows Platform (UWP) apps for which there are already dedicated configurations (VC-WIN32-UWP, VC-WIN64A-UWP, etc) where the /APPCONTAINER link option is added. Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Todd Short <todd.short@me.com> Reviewed-by: Hugo Landau <hlandau@openssl.org> (Merged from https://github.com/openssl/openssl/pull/20872)
2023-04-24Revert "Adding Control Flow guard to Windows Builds"Mathias Berchtold
Reasons: - The patch was missing the linker flag /guard:cf As a result no binary with CFG was ever built - /guard:cf is incompatible with NASM If the linker flag is added, the resulting binary fails with this exception: Unhandled exception at 0x00007FFFB8B93C90 (ntdll.dll) in openssl.exe: Indirect call guard check detected invalid control transfer. Reviewed-by: Hugo Landau <hlandau@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/20807)
2023-04-19Adding Control Flow guard to Windows Buildsgakamath
Control flow guard is a code security implementation: https://learn.microsoft.com/en-us/windows/win32/secbp/control-flow-guard We identified it with BlackDuck security scan utility CLA: trivial Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/20739)
2023-04-18Configurations/descrip.mms.tmpl: Fix a few typosRichard Levitte
These typos caused failed propagation of the 'cflags' attribute from Configurations/10-main.conf. Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/20737)
2023-03-15Added 'hybrid CRT' targets for the Windows platformklaus triendl
Reviewed-by: Hugo Landau <hlandau@openssl.org> Reviewed-by: Paul Dale <pauli@openssl.org> (Merged from https://github.com/openssl/openssl/pull/20081)
2023-03-06Add "make help" optionTodd Short
Based on kubernetes controller Makefile help. Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Paul Dale <pauli@openssl.org> (Merged from https://github.com/openssl/openssl/pull/20407)
2023-02-08Fix more VMS inclusionsRichard Levitte
inclusing quic/quic_local.h from ssl/ssl_lib.c presented another challenge for the current VMS C. Since ssl/quic/quic_local.h in turn includes ../ssl_local.h, we compensated for with the usual whack-a-mole in Configurations/descrip.mms.tmpl. As far as my personal tests go, this seems to be the last fix of this sort, so far. Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/20196)
2023-01-20Adding a separated build settings for BSD flavorsDavid Carlier
to avoid inheriting Linux's linker flags (ie -Wl,-z,defs) now targetting OpenBSD. Reviewed-by: Hugo Landau <hlandau@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/13393)
2022-12-22Support multibin to allow multiple binary models to co-exist.Randall S. Becker
This change parallels the implementation of multilib and initially only applies to the NonStop platform's DLL loader limitations. Fixes: #16460 Signed-off-by: Randall S. Becker <rsbecker@nexbridge.com> Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/16472)
2022-12-1619607 No need to link explicitly with libpthread on SolarisDarren J Moffat
CLA: trivial Reviewed-by: Zdenek.Kotal@oracle.com Reviewed-by: Ali.Bahrami@oracle.com Reviewed-by: Todd Short <todd.short@me.com> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/19611)
2022-11-24Add two new build targets to enable the possibility of using clang-cl asEverton Constantino
an assembler for Windows on Arm builds and also clang-cl as the compiler as well. Make appropriate changes to armcap source and peralsm scripts. Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Hugo Landau <hlandau@openssl.org> (Merged from https://github.com/openssl/openssl/pull/19523)
2022-11-18Fix more VMS inclusionsRichard Levitte
Including things in ../ssl/record/methods from sources in test/ presented another challenge for the current VMS C. This is compensated for with the usual whack-a-mole in Configurations/descrip.mms.tmpl. Reviewed-by: Hugo Landau <hlandau@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/19708)
2022-11-04Configurations/*.tmpl: overhaul assembler make rules.Richard Levitte
NOTE: Not Configurations/unix-Makefile.tmpl, as that was done 4 years ago, in commit a23f03166e0ec49ac09b3671e7ab4ba4fa57d42a. So far assembly modules were intended to be built as .pl->.S->.{asmext} followed by .{asmext}->.o. This posed a problem in build_all_generated rule if it was executed on another computer, and also turned out to be buggy, as .S was also translated to .{asmext} on Windows and VMS. Both issues are fixed by changing the rule sequence to .pl->.S and then .S->.s->.o, with the added benefit that the Windows and VMS build file templates are more in sync with unix-Makefile.tmpl and slightly simpler. Fixes #19594 Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/19598)
2022-10-18Add ZSTD compression support (RFC8478bis)Todd Short
Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Hugo Landau <hlandau@openssl.org> (Merged from https://github.com/openssl/openssl/pull/18186)
2022-10-18Add brotli compression support (RFC7924)Todd Short
Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Hugo Landau <hlandau@openssl.org> (Merged from https://github.com/openssl/openssl/pull/18186)
2022-10-12Add LoongArch64 cpuid and OPENSSL_loongarchcap_Pzhuchen
Loongarch64 architecture defines 128 bit vector extension lsx and 256 bit vector extension lasx. The cpucfg instruction can be used to obtain whether the CPU has a corresponding extension. This part of code is added to prepare for the subsequent addition of corresponding vector instruction optimization. Signed-off-by: zhuchen <zhuchen@loongson.cn> Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Paul Dale <pauli@openssl.org> (Merged from https://github.com/openssl/openssl/pull/19364)
2022-10-12apps & al : Fix various typos, repeated words, align some spelling to LDP.FdaSilvaYY
Mostly revamped from #16712 - fall thru -> fall through - time stamp -> timestamp - host name -> hostname - ipv6 -> IPv6 Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Paul Dale <pauli@openssl.org> (Merged from https://github.com/openssl/openssl/pull/19059)
2022-10-06VMS: For executables, process the use of /INCLUDE=main a bit differentlyRichard Levitte
The way it was implemented didn't play well with perl's join(), so it's reimplemented a bit differently. Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/19347)
2022-10-04VMS: use selective search when linking with shareable imagesRichard Levitte
VMS linking complains a lot about multiply defined symbols unless told otherwise, especially when shareable images are involved. For example, this involves the legacy provider, where there are overriding implementations of certain ERR functions. To quiet the linker down, we need to say that symbols should be searched selectively in shareable images. However, that's not quite enough. The order in which the VMS linker processes files isn't necessarily top to bottom as given on the command line or the option file(s), which may result in some symbols appearing undefined, even though they are. To remedy that, it's necessary to explicitly include all object files and object libraries into a cluster, thus ensuring that they will be processed first. This allows the search for remaining symbol references to be done in the as desired in the shareable images that follow. Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Hugo Landau <hlandau@openssl.org> (Merged from https://github.com/openssl/openssl/pull/19327)
2022-10-03Configurations: mips64*-linux-*abin32 needs bn_ops SIXTY_FOUR_BITAdam Joseph
The IRIX mips64-cpu, n32-abi configurations include SIXTY_FOUR_BIT in bn_ops, but it is missing from mips64*-linux-*abin32 (which OpenSSL calls "linux-mips64"). This causes heap corruption when verifying TLS certificates (which tend to be RSA-signed) with openssl 1.1.1q: ``` nix@oak:~$ /nix/store/4k04dh6a1zs6hxiacwcg4a4nvxvgli2j-openssl-mips64el-unknown-linux-gnuabin32-1.1.1q-bin/bin/openssl s_client -host www.google.com -port 443free(): invalid pointer Aborted ``` and a slightly different failure with current HEAD: ``` nix@oak:~$ /nix/store/9bqxharxajsl9fid0c8ls6fb9wxp8kdc-openssl-mips64el-unknown-linux-gnuabin32-1.1.1q-bin/bin/openssl s_client -host www.google.com -port 443 Connecting to 142.250.180.4 CONNECTED(00000003) Fatal glibc error: malloc assertion failure in sysmalloc: (old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0) Aborted ``` Applying this patch and recompiling produces the expected output instead of a crash. Note that Gentoo (and to my knowledge all other other distributions which support mips64n32) use the `linux-generic32` configuration, which uses only 32-bit arithmetic (rather than full 64-bit arithmetic) and lacks assembler implementations for the SHA hash functions: https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-libs/openssl/files/gentoo.config-1.0.2#n102 For support in nixpkgs we would like to use the full 64-bit integer registers and perlasm routines, so I'm submitting this upstream as well. Fixes #19319 CLA: trivial Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de> Reviewed-by: Paul Dale <pauli@openssl.org> (Merged from https://github.com/openssl/openssl/pull/19320)
2022-09-30Makefile: Add check-format target, operating on all .c sources and ↵Dr. David von Oheimb
crypto+ssl headers Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: David von Oheimb <david.von.oheimb@siemens.com> (Merged from https://github.com/openssl/openssl/pull/15913)
2022-09-30Makefile: Exclude dummy header asn1_mac.h from CRYPTOHEADERSDr. David von Oheimb
Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: David von Oheimb <david.von.oheimb@siemens.com> (Merged from https://github.com/openssl/openssl/pull/15913)
2022-09-30Makefile: Update but disable 'lint' target, using splint with some quirksDr. David von Oheimb
Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: David von Oheimb <david.von.oheimb@siemens.com> (Merged from https://github.com/openssl/openssl/pull/15913)
2022-09-30Makefile: Add SRCS list of all .c (and any .cc and .cpp) filesDr. David von Oheimb
Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: David von Oheimb <david.von.oheimb@siemens.com> (Merged from https://github.com/openssl/openssl/pull/15913)
2022-09-29djgpp: Inherit config from BASE_unixJ.W. Jagersma
Build failed on djgpp due to missing config vars 'AR' and 'ARFLAGS'. Additionally, '-lz' was not added to 'lflags' when zlib support was enabled. Inheriting configuration variables from BASE_unix solves both these issues. CLA: trivial Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/19274)
2022-09-28Configurations/descrip.mms.tmpl: Add another inclusion hackRichard Levitte
More adaptations are needed for sources in ssl/, which all include `ssl/ssl_local.h`. Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com> (Merged from https://github.com/openssl/openssl/pull/19276)
2022-09-13Revert (most of) "Makefile: Generate crypto objects only as far as needed"Dr. David von Oheimb
This reverts all adaptations by commit 89c39bd8f6528ad268c1c0d0c9e196ba4396941b on Configurations/unix-Makefile.tmpl except for additions to .PHONY Fixes #19087 Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: David von Oheimb <david.von.oheimb@siemens.com> (Merged from https://github.com/openssl/openssl/pull/19179)