4
0
mirror of https://github.com/QuasarApp/openssl.git synced 2025-05-03 04:59:39 +00:00

UI: fix uitest for VMS

- On VMS, apps/apps.c depends on apps/vms_term_sock.c, so add it to
  the build
- On VMS, apps/*.c are compiled with default symbol settings,
  i.e. uppercased and truncated symbols, which differs from test
  programs.  Make sure uitest.c knows that with a few pragmas.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/2218)
This commit is contained in:
Richard Levitte 2017-01-12 13:07:39 +01:00
parent 027609f956
commit 6a15d5b637
2 changed files with 22 additions and 1 deletions

@ -5,6 +5,9 @@
my ($base, $files) = @_;
return join(" ", map { "$base/$_" } split(/\s+/, $files));
}
our $apps_extra =
$config{target} =~ /^vms-/ ? "../apps/vms_term_sock.c" : "";
""
-}
IF[{- !$disabled{tests} -}]
PROGRAMS_NO_INST=\
@ -316,7 +319,8 @@ IF[{- !$disabled{tests} -}]
DEPEND[cipher_overhead_test]=../libcrypto ../libssl
ENDIF
SOURCE[uitest]=uitest.c testutil.c test_main_custom.c ../apps/apps.c ../apps/opt.c
SOURCE[uitest]=uitest.c testutil.c test_main_custom.c \
../apps/apps.c ../apps/opt.c {- $apps_extra -}
INCLUDE[uitest]=.. ../include
DEPEND[uitest]=../libcrypto ../libssl

@ -11,8 +11,25 @@
#include <string.h>
#include <openssl/opensslconf.h>
#include <openssl/err.h>
/*
* We know that on VMS, the [.apps] object files are compiled with uppercased
* symbols. We must therefore follow suit, or there will be linking errors.
* Additionally, the VMS build does stdio via a socketpair.
*/
#ifdef __VMS
# pragma names save
# pragma names uppercase, truncated
# include "../apps/vms_term_sock.h"
#endif
#include "../apps/apps.h"
#ifdef __VMS
# pragma names restore
#endif
#include "testutil.h"
#include "test_main_custom.h"