提交 6a15d5b6 编写于 作者: R Richard Levitte

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: NRich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/2218)
上级 027609f9
......@@ -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"
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册