#
3a63dbef |
| 27-Sep-2018 |
Richard Levitte |
Switch to MAJOR.MINOR.PATCH versioning and version 3.0.0-dev We're strictly use version numbers of the form MAJOR.MINOR.PATCH. Letter releases are things of days past. The most
Switch to MAJOR.MINOR.PATCH versioning and version 3.0.0-dev We're strictly use version numbers of the form MAJOR.MINOR.PATCH. Letter releases are things of days past. The most central change is that we now express the version number with three macros, one for each part of the version number: OPENSSL_VERSION_MAJOR OPENSSL_VERSION_MINOR OPENSSL_VERSION_PATCH We also provide two additional macros to express pre-release and build metadata information (also specified in semantic versioning): OPENSSL_VERSION_PRE_RELEASE OPENSSL_VERSION_BUILD_METADATA To get the library's idea of all those values, we introduce the following functions: unsigned int OPENSSL_version_major(void); unsigned int OPENSSL_version_minor(void); unsigned int OPENSSL_version_patch(void); const char *OPENSSL_version_pre_release(void); const char *OPENSSL_version_build_metadata(void); Additionally, for shared library versioning (which is out of scope in semantic versioning, but that we still need): OPENSSL_SHLIB_VERSION We also provide a macro that contains the release date. This is not part of the version number, but is extra information that we want to be able to display: OPENSSL_RELEASE_DATE Finally, also provide the following convenience functions: const char *OPENSSL_version_text(void); const char *OPENSSL_version_text_full(void); The following macros and functions are deprecated, and while currently existing for backward compatibility, they are expected to disappear: OPENSSL_VERSION_NUMBER OPENSSL_VERSION_TEXT OPENSSL_VERSION OpenSSL_version_num() OpenSSL_version() Also, this function is introduced to replace OpenSSL_version() for all indexes except for OPENSSL_VERSION: OPENSSL_info() For configuration, the option 'newversion-only' is added to disable all the macros and functions that are mentioned as deprecated above. Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/7724)
show more ...
|
#
b741f153 |
| 24-Nov-2018 |
Richard Levitte |
Make sure to run util/mktar.sh from the source directory Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/7696)
|
#
8d9535ec |
| 22-Nov-2018 |
Richard Levitte |
Remove all 'make dist' artifacts Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/7692)
|
#
9694ebf7 |
| 19-Nov-2018 |
Richard Levitte |
Unix build: for mingw and cygwin, create the right location for DLLs Mingw and Cygwin builds install the DLLs in the application directory, not the library directory, so ensure that one
Unix build: for mingw and cygwin, create the right location for DLLs Mingw and Cygwin builds install the DLLs in the application directory, not the library directory, so ensure that one is created for them when installing the DLLs. Fixes #7653 Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/7654)
show more ...
|
#
e8d01a60 |
| 07-Nov-2018 |
Richard Levitte |
Have install targets depend on more precise build targets We only had the main 'install' target depend on 'all'. This changes the dependencies so targets like install_dev, install_runti
Have install targets depend on more precise build targets We only had the main 'install' target depend on 'all'. This changes the dependencies so targets like install_dev, install_runtime_libs, install_engines and install_programs depend on build targets that are correspond to them more specifically. This increases the parallel possibilities. Fixes #7466 Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/7583)
show more ...
|
#
c1123d9f |
| 25-Oct-2018 |
Richard Levitte |
Allow parallel install When trying 'make -j{n} install', you may occasionally run into trouble because to sub-targets (install_dev and install_runtime) try to install the same shared
Allow parallel install When trying 'make -j{n} install', you may occasionally run into trouble because to sub-targets (install_dev and install_runtime) try to install the same shared libraries. That makes parallel install difficult. This is solved by dividing install_runtime into two parts, one for libraries and one for programs, and have install_dev depend on install_runtime_libs instead of installing the shared runtime libraries itself. Fixes #7466 Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/7583)
show more ...
|
#
25628ab2 |
| 14-Oct-2016 |
Richard Levitte |
Build: adapt Unix Makefile template to use the extra macros Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/7553)
|
#
b6e66075 |
| 21-Oct-2018 |
Richard Levitte |
Configuration: when building the dirinfo structure, include shared_sources This makes sure that any resulting directory target in the build files also depend on object files meant for sh
Configuration: when building the dirinfo structure, include shared_sources This makes sure that any resulting directory target in the build files also depend on object files meant for shared libraries. As a side effect, we move the production of the dirinfo structure from common.tmpl to Configure, to make it easier to check the result. Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/7452)
show more ...
|
#
d8cac50b |
| 21-Oct-2018 |
Richard Levitte |
build file templates: have targets for all shared library names We only had targets for the "simple" shared library names (libfoo.so and not libfoo.so.x.y on Unix, import library libfoo.
build file templates: have targets for all shared library names We only had targets for the "simple" shared library names (libfoo.so and not libfoo.so.x.y on Unix, import library libfoo.lib but not libfoo.dll on Windows). This has created some confusion why it wasn't possible to rebuild the less "simple" name directly (just as an example, someone who mistook the import library on Windows for a static library, removed the DLL and then found it was difficult to rebuild directly), so we change the target to include all possible names. Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/7451)
show more ...
|
#
92ebf6c4 |
| 15-Oct-2018 |
Richard Levitte |
Build file templates: look at *all* defines When looking at configured macro definitions, we must look at both what comes from the config target AND what comes from user configuratio
Build file templates: look at *all* defines When looking at configured macro definitions, we must look at both what comes from the config target AND what comes from user configuration. Fixes #7396 Reviewed-by: Ben Kaduk <kaduk@mit.edu> (Merged from https://github.com/openssl/openssl/pull/7402)
show more ...
|
#
66a24ab8 |
| 04-Oct-2018 |
Richard Levitte |
Add build file support for generic symbol exports with DSOs Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/7347)
|
#
30699aa1 |
| 14-Sep-2018 |
Richard Levitte |
Refactor util/mknum.pl for clearer separation of functionality Rewrite util/mknum.pl to become cleaner, and to use the separate generic C header parsing module, as well as the separate o
Refactor util/mknum.pl for clearer separation of functionality Rewrite util/mknum.pl to become cleaner, and to use the separate generic C header parsing module, as well as the separate ordinals manipulation module. Adapt the build files. Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/7191)
show more ...
|
#
8effd8fa |
| 14-Sep-2018 |
Richard Levitte |
Refactor util/mkdef.pl for clearer separation of functionality Move the .num updating functionality to util/mknum.pl. Rewrite util/mkdef.pl to create .def / .map / .opt files exclusively
Refactor util/mkdef.pl for clearer separation of functionality Move the .num updating functionality to util/mknum.pl. Rewrite util/mkdef.pl to create .def / .map / .opt files exclusively, using the separate ordinals reading module. Adapt the build files. Adapt the symbol presence test. Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/7191)
show more ...
|
#
ef2dfc99 |
| 30-Sep-2018 |
Richard Levitte |
Refactor linker script generation The generation of linker scripts was badly balanced, as all sorts of platform dependent stuff went into the top build.info, when that part should re
Refactor linker script generation The generation of linker scripts was badly balanced, as all sorts of platform dependent stuff went into the top build.info, when that part should really be made as simply and generic as possible. Therefore, we move a lot of the "magic" to the build files templates, since they are the place for platform dependent things. What remains is to parametrize just enough in the build.info file to generate the linker scripts correctly for each associated library. "linker script" is a term usually reserved for certain Unix linkers. However, we only use them to say what symbols should be exported, so we use the term loosely for all platforms. The internal extension is '.ld', and is changed by the build file templates as appropriate for each target platform. Note that this adds extra meaning to the value of the shared_target attribute. Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/7333)
show more ...
|
#
f6196227 |
| 12-Sep-2018 |
Richard Levitte |
VMS: stop trying to build shared libraries from static ones The possibility to do this was killed when we started producing object file names with encoded intention (and possibly differe
VMS: stop trying to build shared libraries from static ones The possibility to do this was killed when we started producing object file names with encoded intention (and possibly different builds), and leads to build errors. With that, 'libobj2shlib' is renamed to 'obj2shlib' to reflect this design change. The old name is still used if the new one isn't available, for the sake of backward compatibility. Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/7198)
show more ...
|
#
9dfc8680 |
| 10-Sep-2018 |
Richard Levitte |
Build files: Separate 'lib' intent from 'shlib' intent This is in preparation for having separate CFLAGS variables for static and for shared library builds. Reviewed-by: Paul Da
Build files: Separate 'lib' intent from 'shlib' intent This is in preparation for having separate CFLAGS variables for static and for shared library builds. Reviewed-by: Paul Dale <paul.dale@oracle.com> Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/7159)
show more ...
|
#
d573ff17 |
| 18-Aug-2018 |
Andy Polyakov |
Configurations/unix-Makefile.tmpl: address find portability issue. -path is non-portable extension, fortunately it's possible to express .git subdirectory exclusion with -prune.
Configurations/unix-Makefile.tmpl: address find portability issue. -path is non-portable extension, fortunately it's possible to express .git subdirectory exclusion with -prune. Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/7004)
show more ...
|
#
d8356e1b |
| 23-Jul-2018 |
Richard Levitte |
Make sure the 'tsget' script is called 'tsget.pl' everywhere The result is that we don't have to produce different names on different platforms, and we won't have confusion on Windows de
Make sure the 'tsget' script is called 'tsget.pl' everywhere The result is that we don't have to produce different names on different platforms, and we won't have confusion on Windows depending on if the script was built with mingw or with MSVC. Partial fix for #3254 Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/6764)
show more ...
|
#
9e265322 |
| 08-Jul-2018 |
Richard Levitte |
Keep supporting the env / make variable PERL OpenSSL 1.1.0 supports the use of this environment variable for passing to the build files. For the sake of backward compatibility, we k
Keep supporting the env / make variable PERL OpenSSL 1.1.0 supports the use of this environment variable for passing to the build files. For the sake of backward compatibility, we keep it. Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Paul Dale <paul.dale@oracle.com> Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de> (Merged from https://github.com/openssl/openssl/pull/6668)
show more ...
|
#
cff89b17 |
| 14-Jun-2018 |
Andy Polyakov |
Configurations/unix-Makefile.tmpl: switch to "natural" AIX shared libraries. AIX treats its shared libraries in unique manner, by placing multiple shared objects of different versions an
Configurations/unix-Makefile.tmpl: switch to "natural" AIX shared libraries. AIX treats its shared libraries in unique manner, by placing multiple shared objects of different versions and bitnesses, into .a file. So far we have been naively linking with version-less libcrypto|ssl.so, which poses long-term maintenance problems. One could choose to link straight with libcrypto.so.X.Y [or libcrypto.X.Y.so], but it would be inconsistent with the way AIX [or Unix] does things. Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/6487)
show more ...
|
#
c4fad5d3 |
| 18-Jun-2018 |
Dr. Matthias St. Pierre |
Improve the output of `make doc-nits` - Print positive feedback in the case when 'make doc-nits' finds no errors. - Other than before, keep the 'doc-nits' output file only in case of err
Improve the output of `make doc-nits` - Print positive feedback in the case when 'make doc-nits' finds no errors. - Other than before, keep the 'doc-nits' output file only in case of errors and remove it if it is empty. - Declare 'doc-nits' as a phony make target to facilitate rerunning 'make doc-nits' without having to remove the output file first. Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/6517)
show more ...
|
#
aa6cc8d3 |
| 12-Jun-2018 |
Richard Levitte |
make errors: use the new util/ck_errf.pl options Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/6461)
|
#
06444da4 |
| 26-Apr-2018 |
Andy Polyakov |
Configurations/unix-Makefile.tmpl: harmonize with no-engine. Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/6106)
|
#
918388b5 |
| 02-Apr-2018 |
Richard Levitte |
Don't distribute team internal config targets Configurations/90-team.conf isn't for public consumption, so we rename it to 90-team.norelease.conf and make sure 'make dist' and 'make tar'
Don't distribute team internal config targets Configurations/90-team.conf isn't for public consumption, so we rename it to 90-team.norelease.conf and make sure 'make dist' and 'make tar' don't include it in the tarball. Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/5836)
show more ...
|
#
b0a97931 |
| 13-Apr-2018 |
Bernd Edlinger |
Remove mandatory generated files too Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/5951)
|