Commit Graph

42 Commits

Author SHA1 Message Date
Daniel Stenberg
5a0644fae8 projects: remove support for MSVC before VC10 (Visual Studio 2010)
- Remove Visual Studio project files for VC6, VC7, VC7.1, VC8 and VC9.

Those versions are too old to be maintained any longer.

Closes https://github.com/curl/curl/pull/8442
2022-02-13 16:00:42 -05:00
Stav Nir
f13d4d0e93 projects: add support for Visual Studio 17 (2022)
Closes https://github.com/curl/curl/pull/8438
2022-02-13 15:34:23 -05:00
Daniel Stenberg
85e6975643
copyright: update copyright year ranges to 2021
Reviewed-by: Emil Engler
Closes #6802
2021-03-27 23:00:14 +01:00
Jay Satiro
dd81489db9 projects: Update VS projects for OpenSSL 1.1.x
- Update VS project templates to use the OpenSSL lib names and include
  directories for OpenSSL 1.1.x.

This change means the VS project files will now build only with OpenSSL
1.1.x when an OpenSSL configuration is chosen. Prior to this change the
project files built only with OpenSSL 1.0.x (end-of-life) when an
OpenSSL configuration was chosen.

The template changes in this commit were made by script:

libeay32.lib => libcrypto.lib
ssleay32.lib => libssl.lib
..\..\..\..\..\openssl\inc32 => ..\..\..\..\..\openssl\include

And since the output directory now contains the includes it's prepended:
..\..\..\..\..\openssl\build\Win{32,64}\VC{6..15}\{DLL,LIB}
{Debug,Release}\include

- Change build-openssl.bat to copy the build's include directory to the
  output directory (as seen above).

Each build has its own opensslconf.h which is different so we can't just
include the source include directory any longer.

Note the include directory in the output directory is a full copy from
the build so technically we don't need to include the OpenSSL source
include directory in the template. However, I left it last in case the
user made a custom OpenSSL build using the old method which would put
opensslconf in the OpenSSL source include directory.

- Change build-openssl.bat to use a temporary install directory that is
  different from the temporary build directory.

For OpenSSL 1.1.x the temporary paths must be separate not a descendant
of the other, otherwise pdb files will be lost between builds.

Ref: https://curl.se/mail/lib-2018-10/0049.html
Ref: https://gist.github.com/jay/125191c35bbeb894444eff827651f755
Ref; https://github.com/openssl/openssl/issues/10005

Fixes https://github.com/curl/curl/issues/984
Closes https://github.com/curl/curl/pull/6675
2021-03-03 18:32:24 -05:00
Daniel Stenberg
ac0a88fd25
copyright: fix year ranges
Follow-up from 4d2f800677
2020-11-05 08:22:10 +01:00
Daniel Stenberg
4d2f800677
curl.se: new home
Closes #6172
2020-11-04 23:59:47 +01:00
Daniel Stenberg
c661d731be
build-openssl: fix build with Visual Studio 2019
Reviewed-by: Marcel Raad
Contributed-by: osabc on github
Fixes #4188
Closes #4266
2019-08-26 14:34:26 +02:00
Steve Holme
c4e0be4408 build-openssl.bat: Fixed support for OpenSSL v1.1.0+ 2019-04-08 22:36:23 +01:00
Steve Holme
b1923b90f5 build-openssl.bat: Perfer the use of if statements rather than goto (where possible) 2019-04-08 22:36:23 +01:00
Steve Holme
a4df34294f build-openssl.bat: Perform the install for each build type directly after the build 2019-04-08 22:36:23 +01:00
Steve Holme
089e2d9de0 build-openssl.bat: Split the install of static and shared build types 2019-04-08 22:36:22 +01:00
Steve Holme
89efe0e396 build-openssl.bat: Split the building of static and shared build types 2019-04-08 22:36:22 +01:00
Steve Holme
1969958e6b build-openssl.bat: Move the installation into a separate function 2019-04-08 22:36:22 +01:00
Steve Holme
ac690c4285 build-openssl.bat: Move the build step into a separate function 2019-04-08 22:36:22 +01:00
Steve Holme
1f6ec5baba build-openssl.bat: Move the OpenSSL configuration into a separate function 2019-04-08 22:36:22 +01:00
Steve Holme
d891702fcf build-openssl.bat: Fixed the BUILD_CONFIG variable not being initialised
Should the parent environment set this variable then the build might
not be performed as the user intended.
2019-04-08 22:36:22 +01:00
Viktor Szakats
b801b453af whitespace fixes
- replace tabs with spaces where possible
- remove line ending spaces
- remove double/triple newlines at EOF
- fix a non-UTF-8 character
- cleanup a few indentations/line continuations
  in manual examples

Closes https://github.com/curl/curl/pull/3037
2018-09-23 22:24:02 +00:00
Jay Satiro
220cd241cd projects: Improve Windows perl detection in batch scripts
- Determine if perl is in the user's PATH by running perl.exe.

Prior to this change detection was done by checking the PATH for perl/
but that did not work in all cases (eg git install includes perl but
not in perl/ path).

Bug: https://github.com/curl/curl/pull/2865
Reported-by: Daniel Jeliński
2018-08-11 16:33:12 -04:00
Viktor Szakats
4bd91bc474 spelling fixes
Detected using the `codespell` tool (version 1.13.0).

Also secure and fix an URL.
2018-06-03 12:14:45 +00:00
Jay Satiro
222de37f95
build-openssl.bat: Refer to VS2017 as VC14.1 instead of VC15
.. and do the same for build-wolfssl.bat.

Because MS calls it VC14.1.

Closes https://github.com/curl/curl/pull/2189
2018-04-06 15:16:35 +02:00
patelvivekv1993
a65a75e9b3
build-openssl.bat: allow custom paths for VS and perl
Fixes #2430
Closes #2457
2018-04-06 14:39:53 +02:00
Steve Holme
daf959f692 build-openssl.bat: Follow up to 648679ab8e to suppress copy/move output 2018-02-08 21:54:09 +00:00
Steve Holme
648679ab8e build-openssl.bat: Fixed incorrect move if destination build folder exists 2018-02-08 21:36:27 +00:00
Steve Holme
ff07089585 build-openssl.bat/build-wolfssl.bat: Build platform is optional
Whilst the compiler parameter is mandatory, platform is optional as it
is automatically calculated by the :configure section.

This partially reverts commit 6d62d2c55d.
2018-02-06 19:35:13 +00:00
Steve Holme
be033641c2 build-openssl.bat: Extend VC15 support to include Enterprise and Professional
...and not just the Community Edition.
2018-02-05 21:18:35 +00:00
Steve Holme
a4e88317dd build-openssl.bat: Added support for VC15 2017-12-22 15:44:19 +00:00
Jay Satiro
e702df7a84 build-openssl.bat: Warn OpenSSL 1.1.0 not yet supported
Ref: https://github.com/curl/curl/issues/1002
2017-10-04 01:04:43 -04:00
Steve Holme
8f9be011b1 build-openssl/checksrc.bat: Fixed prepend vs append of Perl path
Fixed inconsistency from commit 1eae114065 and 0ad6c72227 of the order
in which Perl was added to the PATH.
2016-03-06 20:02:58 +00:00
Steve Holme
1eae114065 build-openssl.bat: Fixed cannot find perl if installed but not in path 2016-03-05 21:40:53 +00:00
Daniel Stenberg
4af40b3646 URLs: change all http:// URLs to https:// 2016-02-03 00:19:02 +01:00
Steve Holme
a8e9e0c205 scripts: Added missing comments 2015-08-08 11:36:45 +01:00
Steve Holme
4aee1f9cf5 scripts: Allow -help to be specified in any argument
Allow the -help command line argument to be specified in any argument
and not just as the first.
2015-08-08 11:13:19 +01:00
Steve Holme
a728225a92 build-openssl.bat: Added support for VC14 2015-07-26 23:58:36 +01:00
Jay Satiro
6d62d2c55d build-openssl.bat: Show syntax if required args are missing 2015-07-25 19:03:20 -04:00
Jay Satiro
e2a9ebb321 build-openssl.bat: Fix mixed line endings
Use LF not CRLF, throughout.  msysgit will only convert a file to CRLF
on checkout if it's not mixed.
2015-04-02 17:21:09 +02:00
Steve Holme
5f09947d28 build-openssl.bat: Added check for Perl installation 2015-01-16 21:15:52 +00:00
Jay Satiro
80c5ae1d0e build-openssl.bat: Fix x64 release build
Prior to this change if x64 release was specified a failed attempt was
made to build x86 release instead.
2014-11-02 11:57:43 +00:00
Ray Satiro
006b61eb0b newlines: fix mixed newlines to LF-only
I use the curl repo mainly on Windows with the typical Windows git
checkout which converts the LF line endings in the curl repo to CRLF
automatically on checkout. The automatic conversion is not done on files
in the repo with mixed line endings. I recently noticed some weird
output with projects/build-openssl.bat that I traced back to mixed line
endings, so I scanned the repo and there are files (excluding the
test data) that have mixed line endings.

I used this command below to do the scan. Unfortunately it's not as easy
as git grep, at least not on Windows. This gets the names of all the
files in the repo's HEAD, gets each of those files raw from HEAD, checks
for mixed line endings of both LF and CRLF, and prints the name if
mixed. I excluded path tests/data/test* because those can have mixed
line endings if I understand correctly.

for f in `git ls-tree --name-only --full-tree -r HEAD`;
do if [ -n "${f##tests/data/test*}" ];
    then git show "HEAD:$f" | \
        perl -0777 -ne 'exit 1 if /([^\r]\n.*\r\n)|(\r\n.*[^\r]\n)/';
    if [ $? -ne 0 ];
        then echo "$f";
    fi;
fi;
done
2014-09-12 10:22:34 +02:00
Steve Holme
274f932311 build-openssl.bat: Added check for OpenSSL source directory 2014-05-20 00:46:28 +01:00
Steve Holme
0c467c9cc7 build-openssl.bat: Added default source directory when not specified
Added a default source directory so the user doesn't have to specify
one - the same as that, which the Visual Studio project files expect
the OpenSSL dependencies to be in.
2014-05-20 00:22:52 +01:00
Ivo Bellin Salarin
f07fa85bc7 build-openssl.bat: Corrected use of angled brackets in help output
Angled brackets were used in the help output to indicate that the
compiler and platform arguments are mandatory. Unfortunately this
caused a "< was unexpected at this time" error as the characters are
interpreted as re-direction characters when not escaped.
2014-05-06 13:48:00 +01:00
Steve Holme
dce748d3f1 build: Added OpenSSL VC build helper for side-by-side compilations 2014-05-01 23:23:48 +01:00