#
368297d1 |
| 08-Feb-2018 |
Richard Levitte |
Configuration: move the handling of zlib_include to config files It was a bit absurd to have this being specially handled in the build file templates, especially that we have the 'includ
Configuration: move the handling of zlib_include to config files It was a bit absurd to have this being specially handled in the build file templates, especially that we have the 'includes' attribute. Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/5296)
show more ...
|
#
cb7b7275 |
| 07-Feb-2018 |
Richard Levitte |
mkerr.pl: When writing internal FOOerr.h, pay attention to disablable modules If a module is disablable (i.e. can be configured with 'no-FOO'), the resulting header file needs to be guar
mkerr.pl: When writing internal FOOerr.h, pay attention to disablable modules If a module is disablable (i.e. can be configured with 'no-FOO'), the resulting header file needs to be guarded with a check of the corresponding OPENSSL_NO_FOO. While this seem fairly innocuous, it has an impact on the information in util/*.num, generated by mkdef.pl. Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/5275)
show more ...
|
#
bf01fbbf |
| 29-Jan-2018 |
Richard Levitte |
Add a 'reconfigure' make target Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/5197)
|
#
f9856cc5 |
| 29-Jan-2018 |
Richard Levitte |
Have the build files use the executable configdata.pm Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/5185)
|
#
fa153b57 |
| 27-Jan-2018 |
Richard Levitte |
Treat C++ flags more like C flags, and only if C++ compiler specified C++ flags got the same config target value as C flags, but then nothing else happened while C flags get all kinds of
Treat C++ flags more like C flags, and only if C++ compiler specified C++ flags got the same config target value as C flags, but then nothing else happened while C flags get all kinds of stuff added to them (especially when --strict-warnings is used). Now, C++ flags get the exact same treatment as C flags. However, this only happens when a C++ compiler is specified, to avoid confusing messages about added C++ flags. Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/5181)
show more ...
|
#
5b18235a |
| 26-Jan-2018 |
Richard Levitte |
Processing GNU-style "make variables" - implementation Support the following "make variables": AR (GNU compatible) ARFLAGS (GNU Compatible) AS
Processing GNU-style "make variables" - implementation Support the following "make variables": AR (GNU compatible) ARFLAGS (GNU Compatible) AS (GNU Compatible) ASFLAGS (GNU Compatible) CC (GNU Compatible) CFLAGS (GNU Compatible) CXX (GNU Compatible) CXXFLAGS (GNU Compatible) CPP (GNU Compatible) CPPFLAGS (GNU Compatible) CPPDEFINES List of CPP macro definitions. Alternative for -D CPPINCLUDES List of CPP inclusion directories. Alternative for -I HASHBANGPERL Perl invocation to be inserted after '#!' in public perl scripts. LDFLAGS (GNU Compatible) LDLIBS (GNU Compatible) RANLIB Program to generate library archive index RC Program to manipulate Windows resources RCFLAGS Flags for $(RC) RM (GNU Compatible) Setting one of these overrides the corresponding data from our config targets. However, flags given directly on the configuration command line are additional, and are therefore added to the flags coming from one of the variables above or the config target. Fixes #2420 Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/5177)
show more ...
|
#
8c3bc594 |
| 23-Jan-2018 |
Richard Levitte |
Processing GNU-style "make variables" - separate CPP flags from C flags C preprocessor flags get separated from C flags, which has the advantage that we don't get loads of macro definiti
Processing GNU-style "make variables" - separate CPP flags from C flags C preprocessor flags get separated from C flags, which has the advantage that we don't get loads of macro definitions and inclusion directory specs when linking shared libraries, DSOs and programs. This is a step to add support for "make variables" when configuring. Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/5177)
show more ...
|
#
fd2941c8 |
| 22-Jan-2018 |
Richard Levitte |
Don't add $(EX_LIBS) to libssl.pc's Libs.private Since libssl requires libcrypto and libcrypto.pc already has Libs.private set exactly the same, there's no reason to repeat it in lib
Don't add $(EX_LIBS) to libssl.pc's Libs.private Since libssl requires libcrypto and libcrypto.pc already has Libs.private set exactly the same, there's no reason to repeat it in libssl.pc. Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de> (Merged from https://github.com/openssl/openssl/pull/5134)
show more ...
|
#
50625bf5 |
| 22-Jan-2018 |
Richard Levitte |
When building shared libraries, only ln -s when simple and full name differ Fixes #5143 Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl
When building shared libraries, only ln -s when simple and full name differ Fixes #5143 Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/5144)
show more ...
|
#
47eeaf45 |
| 08-Jan-2018 |
Richard Levitte |
Separate general linking flags from extra libraries So far, we've placed all extra library related flags together, ending up in the make variable EX_LIBS. This turns out to be problemat
Separate general linking flags from extra libraries So far, we've placed all extra library related flags together, ending up in the make variable EX_LIBS. This turns out to be problematic, as for example, some compilers don't quite agree with something like this: cc -o foo foo.o -L/whatever -lsomething They prefer this: cc -L/whatever -o foo foo.o -lsomething IBM's compiler on OS/390 is such a compiler that we know of, and we have previously handled that as a previous case. The answer here is to make a more general solution, where linking options are divided in two parts, where one ends up in LDFLAGS and the other in EX_LIBS (they corresponds to what is called LDFLAGS and LDLIBS in the GNU world) Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/5033)
show more ...
|
#
b903fb60 |
| 17-Dec-2017 |
Richard Levitte |
Restore the use of LDCMD when linking applications It is a hack, but it existed in the recently removed Makefile.shared, and its use is documented in fuzz/README.md, so we cannot drop it
Restore the use of LDCMD when linking applications It is a hack, but it existed in the recently removed Makefile.shared, and its use is documented in fuzz/README.md, so we cannot drop it now. Fixes https://github.com/google/oss-fuzz/issues/1037 Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/4947)
show more ...
|
#
d016d1ec |
| 14-Dec-2017 |
Bernd Edlinger |
Remove test-runs dir, adjust .gitignore Ignore libssl.map/libcrypto.map instead of ssl.map/crypto.map Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Matt Caswel
Remove test-runs dir, adjust .gitignore Ignore libssl.map/libcrypto.map instead of ssl.map/crypto.map Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/4932)
show more ...
|
#
81183680 |
| 04-Dec-2017 |
Richard Levitte |
Build file templates: Replace the use of Makefile.shared Because this also includes handling all sorts of non-object files when linking a program, shared library or DSO, this also includ
Build file templates: Replace the use of Makefile.shared Because this also includes handling all sorts of non-object files when linking a program, shared library or DSO, this also includes allowing general recognition of files such as .res files (compiled from .rc files), or .def / .map / .opt files (for export and possibly versioning of public symbols only). This does mean that there's a tangible change for all build file templates: they must now recognise and handle the `.o` extension, which is used internally to recognise object files internally. This extension was removed by common.tmpl before this change, but would mean that the platform specific templates wouldn't know if "foo.map" was originally "foo.map.o" (i.e. an object file in its own right) or "foo.map" (an export definition file that should be treated as such, not as an object file). For the sake of simplifying things, we also modify util/mkdef.pl to produce .def (Windows) and .opt (VMS) files that don't need additional hackery. Reviewed-by: Andy Polyakov <appro@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/4840)
show more ...
|
#
793077d0 |
| 01-Dec-2017 |
Richard Levitte |
Configure: Read in extra information to help create shared libraries This will replace the use of Makefile.shared This also means a small adjustment on how the attributes dso_cflags
Configure: Read in extra information to help create shared libraries This will replace the use of Makefile.shared This also means a small adjustment on how the attributes dso_cflags, dso_cxxflags and dso_lflags are treated. They were previously treated as an extension to shared_cflag, shared_cxxflag and shared_ldflag, but they should really be regarded as alternatives instead, for example for darwin, where -dynamiclib is used for shared libraries and -bundle for DSOs. We take the opportunity to clean out things that are redundant or otherwise superfluous (for example the check of GNU ld on platforms where it never existed). Reviewed-by: Andy Polyakov <appro@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/4840)
show more ...
|
#
822b5e26 |
| 21-Nov-2017 |
Viktor Dukhovni |
Make possible variant SONAMEs and symbol versions This small change in the Unix template and shared library build scripts enables building "variant" shared libraries. A "variant" sh
Make possible variant SONAMEs and symbol versions This small change in the Unix template and shared library build scripts enables building "variant" shared libraries. A "variant" shared library has a non-default SONAME, and non default symbol versions. This makes it possible to build (say) an OpenSSL 1.1.0 library that can coexist without conflict in the same process address space as the system's default OpenSSL library which may be OpenSSL 1.0.2. Such "variant" shared libraries make it possible to link applications against a custom OpenSSL library installed in /opt/openssl/1.1 or similar location, and not risk conflict with an indirectly loaded OpenSSL runtime that is required by some other dependency. Variant shared libraries have been fully tested under Linux, and build successfully on MacOS/X producing variant DYLD names. MacOS/X Darwin has no symbol versioning, but has a non-flat library namespace. Variant libraries may therefore support multiple OpenSSL libraries in the same address space also with MacOS/X, despite lack of symbol versions, but this has not been verified. Variant shared libraries are optional and off by default. Reviewed-by: Richard Levitte <levitte@openssl.org>
show more ...
|
#
b6705d48 |
| 07-Nov-2017 |
Andy Polyakov |
Configurations/unix-Makefile.tmpl: fix HP-UX build. HP-UX make doesn't recognize $< in explict target rules, only in inference ones such as .c.o. Reviewed-by: Rich Salz <rsalz@o
Configurations/unix-Makefile.tmpl: fix HP-UX build. HP-UX make doesn't recognize $< in explict target rules, only in inference ones such as .c.o. Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/4697)
show more ...
|
#
8e32e1ab |
| 31-Oct-2017 |
Richard Levitte |
Generate a dictionary of OIDs for fuzzers It turns out that (some?) fuzzers can read a dictionary of OIDs, so we generate one as part of the usual 'make update'. Fixes #4615
Generate a dictionary of OIDs for fuzzers It turns out that (some?) fuzzers can read a dictionary of OIDs, so we generate one as part of the usual 'make update'. Fixes #4615 Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Kurt Roeckx <kurt@roeckx.be> (Merged from https://github.com/openssl/openssl/pull/4637)
show more ...
|
#
41f571e1 |
| 09-Oct-2017 |
Richard Levitte |
Use the possibility to have test results in a different directory RESULT_D can be used to provide a separate directory for test results. Let's use that to separate them from other files.
Use the possibility to have test results in a different directory RESULT_D can be used to provide a separate directory for test results. Let's use that to separate them from other files. Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/4507)
show more ...
|
#
bffa1ff8 |
| 24-Aug-2017 |
Meena Vyas |
passed TARFILE="$(TARFILE)" NAME="$(NAME)" to tar target Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/
passed TARFILE="$(TARFILE)" NAME="$(NAME)" to tar target Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/4249)
show more ...
|
#
77a9c26e |
| 17-Aug-2017 |
Richard Levitte |
Add a comment on expectations in the "tar" target Reviewed-by: Andy Polyakov <appro@openssl.org> (Merged from https://github.com/openssl/openssl/pull/4179)
|
#
17c84aa7 |
| 17-Aug-2017 |
Richard Levitte |
Prepare tarball in dist directory We changed directory to the wrong directory. This change also separates the preparation phase from the tarball building phase. Reviewed-by:
Prepare tarball in dist directory We changed directory to the wrong directory. This change also separates the preparation phase from the tarball building phase. Reviewed-by: Andy Polyakov <appro@openssl.org> (Merged from https://github.com/openssl/openssl/pull/4179)
show more ...
|
#
34a5b7d7 |
| 17-Aug-2017 |
Richard Levitte |
Turn on error sensitivity in the "tar" target Reviewed-by: Andy Polyakov <appro@openssl.org> (Merged from https://github.com/openssl/openssl/pull/4179)
|
#
5b7b0115 |
| 17-Aug-2017 |
Richard Levitte |
When building a tarball, avoid trying to copy submodules submodules are directories that we don't want in our tarballs, so avoid them. Reviewed-by: Andy Polyakov <appro@openssl.
When building a tarball, avoid trying to copy submodules submodules are directories that we don't want in our tarballs, so avoid them. Reviewed-by: Andy Polyakov <appro@openssl.org> (Merged from https://github.com/openssl/openssl/pull/4178)
show more ...
|
#
d4453024 |
| 19-Jul-2017 |
Richard Levitte |
Simplify the handling of shared library version numbers $(SHLIB_MAJOR).$(SHLIB_MINOR) is really a synonym for $(SHLIB_VERSION_NUMBER), and is therefore an added complexity, so better
Simplify the handling of shared library version numbers $(SHLIB_MAJOR).$(SHLIB_MINOR) is really a synonym for $(SHLIB_VERSION_NUMBER), and is therefore an added complexity, so better to use $(SHLIB_VERSION_NUMBER) directly. SHLIB_MAJOR and SHLIB_MINOR are now unused, but are kept around purely as information in case someone relies on their existence. At the same time, add support for custom shared library extensions with the three new Makefile variables SHLIB_EXT, SHLIB_EXT_SIMPLE and SHLIB_EXT_IMPORT. By default, they hold the variants of shared library extensions we support. On mingw and cygwin, SHLIB_EXT_IMPORT is defined; on all other Unix platforms, it's empty. An example to get shared libraries with a slightly different SOVER name: $ make SHLIB_EXT='.$(SHLIB_VERSION_NUMBER).so' Fixes #3902 Reviewed-by: Andy Polyakov <appro@openssl.org> (Merged from https://github.com/openssl/openssl/pull/3964)
show more ...
|
#
d07abe13 |
| 21-Jul-2017 |
Richard Levitte |
Simplify Makefile.shared Makefile.shared was designed to figure out static library names, shared library names, library version compatibility, import library names and the like on it
Simplify Makefile.shared Makefile.shared was designed to figure out static library names, shared library names, library version compatibility, import library names and the like on its own. This was a design for pre-1.1.0 OpenSSL because the main Makefile didn't have all that knowledge. With 1.1.0, the situation isn't the same, a lot more knowledge is included in the main Makefile, and while Makefile.shared did things right most of the time (there are some corner cases, such as the choice of .sl or .so as DSO extension on some HPUX versions), there's still an inherent fragility when one has to keep an eye on Makefile.shared to make sure it produces what the main Makefile produces. This change simplifies Makefile.shared by removing all its "intelligence" and have it depend entirely on the input from the main Makefile instead. That way, all the naming is driven from configuration data. Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/3983)
show more ...
|