pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
devel/polyorb: Add package 25.0
Module Name: pkgsrc-wip
Committed By: Dmytro Kazankov <dmytro.kazankov%gmail.com@localhost>
Pushed By: dkazankov
Date: Thu Feb 13 23:36:36 2025 +0200
Changeset: 14bf4c54e07a2ad90d19995cfd35ab4728d99561
Added Files:
polyorb/COMMIT_MSG
polyorb/DESCR
polyorb/Makefile
polyorb/PLIST
polyorb/buildlink3.mk
polyorb/distinfo
polyorb/options.mk
polyorb/patches/patch-Makefile.common.project.in
polyorb/patches/patch-compilers_gnatdist_xe__back-garlic.adb
polyorb/patches/patch-configure
polyorb/patches/patch-projects_polyorb__src__aws.gpr
polyorb/patches/patch-src_security_x509_polyorb__x509.c
polyorb/patches/patch-src_ssl_polyorb-ssl.adb
polyorb/patches/patch-src_ssl_polyorb-ssl.ads
Log Message:
devel/polyorb: Add package 25.0
PolyORB is a polymorphic, reusable infrastructure for building
object-oriented distributed systems
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=14bf4c54e07a2ad90d19995cfd35ab4728d99561
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
polyorb/COMMIT_MSG | 4 ++
polyorb/DESCR | 7 ++
polyorb/Makefile | 68 +++++++++++++++++++
polyorb/PLIST | 1 +
polyorb/buildlink3.mk | 17 +++++
polyorb/distinfo | 12 ++++
polyorb/options.mk | 76 ++++++++++++++++++++++
polyorb/patches/patch-Makefile.common.project.in | 45 +++++++++++++
.../patch-compilers_gnatdist_xe__back-garlic.adb | 42 ++++++++++++
polyorb/patches/patch-configure | 61 +++++++++++++++++
.../patches/patch-projects_polyorb__src__aws.gpr | 15 +++++
.../patch-src_security_x509_polyorb__x509.c | 24 +++++++
polyorb/patches/patch-src_ssl_polyorb-ssl.adb | 44 +++++++++++++
polyorb/patches/patch-src_ssl_polyorb-ssl.ads | 24 +++++++
14 files changed, 440 insertions(+)
diffs:
diff --git a/polyorb/COMMIT_MSG b/polyorb/COMMIT_MSG
new file mode 100644
index 0000000000..ab1d0a33c2
--- /dev/null
+++ b/polyorb/COMMIT_MSG
@@ -0,0 +1,4 @@
+devel/polyorb: Add package 25.0
+
+PolyORB is a polymorphic, reusable infrastructure for building
+object-oriented distributed systems
diff --git a/polyorb/DESCR b/polyorb/DESCR
new file mode 100644
index 0000000000..0f8ff1987d
--- /dev/null
+++ b/polyorb/DESCR
@@ -0,0 +1,7 @@
+PolyORB is a polymorphic, reusable infrastructure for building object-oriented distributed systems
+
+PolyORB is a polymorphic, reusable infrastructure for building or prototyping new middleware
+adapted to specific application needs. It provides a set of components on top of which
+various instances can be elaborated. These instances (or personalities) are views on PolyORB
+facilities that are compliant to existing standards, either at the API level (application
+personality) or at the protocol level (protocol personality).
\ No newline at end of file
diff --git a/polyorb/Makefile b/polyorb/Makefile
new file mode 100644
index 0000000000..2ad14540eb
--- /dev/null
+++ b/polyorb/Makefile
@@ -0,0 +1,68 @@
+# $NetBSD: Makefile,v 1.3 2024/11/14 14:00:00 dkazankov Exp $
+
+PKGNAME= polyorb-25.0.0
+CATEGORIES= devel
+MAINTAINER= pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE= https://github.com/AdaCore/PolyORB
+COMMENT= PolyORB is a polymorphic, reusable infrastructure for building object-oriented distributed systems
+LICENSE= gnu-gpl-v2
+
+DISTNAME= polyorb-${PKGVERSION_NOREV}
+MASTER_SITES= ${MASTER_SITE_GITHUB:=AdaCore/}
+# Latest commit in 25.0 branch
+GITHUB_TAG= 43673925892098c14daca8b9b66c5017887b71d8
+GITHUB_PROJECT= PolyORB
+
+USE_TOOLS+= awk autoconf automake gmake
+GNU_CONFIGURE= yes
+
+CHECK_PIE_SKIP+= bin/*
+
+USE_LANGUAGES= c ada
+
+GCC_REQD+= 13
+
+OVERRIDE_RELEASE_PLACEHOLDER= 25.0w
+ADDITIONAL_VERSION_PLACEHOLDER=
+
+SUBST_CLASSES+= version
+SUBST_STAGE.version= pre-configure
+SUBST_MESSAGE.version= Set version
+SUBST_VARS.version= OVERRIDE_RELEASE_PLACEHOLDER ADDITIONAL_VERSION_PLACEHOLDER
+SUBST_FILES.version= configure
+
+.include "../../mk/bsd.prefs.mk"
+
+.include "options.mk"
+
+OBJDIR= ${WRKDIR}/build
+
+CONFIGURE_ARGS+= --prefix=${DESTDIR}${PREFIX}
+CONFIGURE_ARGS+= --with-appli-perso=${APP_PERSONALITIES:Q}
+CONFIGURE_ARGS+= --with-proto-perso=${PROTOCOL_PERSONALITIES:Q}
+CONFIGURE_ARGS+= --with-corba-services=${CORBA_SERVICES:Q}
+
+INSTALL_MAKE_FLAGS+= prefix=${DESTDIR}${PREFIX}
+
+EXTRA_GNATMAKE_FLAGS+= -eL -R -largs $${LDFLAGS} -margs
+BUILD_MAKE_FLAGS+= EXTRA_GNATMAKE_FLAGS=${EXTRA_GNATMAKE_FLAGS:Q}
+
+.include "../../lang/gcc13-gnat-libs/buildlink3.mk"
+.include "../../wip/gprbuild/buildlink3.mk"
+
+.include "../../security/openssl/buildlink3.mk"
+
+BUILDLINK_DEPMETHOD.xmlada= full
+.include "../../wip/xmlada/buildlink3.mk"
+
+.include "../../wip/gprlib/buildlink3.mk"
+.include "../../wip/gnatcoll-core/buildlink3.mk"
+
+PYTHON_VERSIONS_ACCEPTED= 312 311 310 39 38
+.include "../../lang/python/tool.mk"
+
+GENERATE_PLIST+= \
+ cd ${DESTDIR}${PREFIX} && \
+ ${FIND} bin include lib \( -type f -or -type l \) -print | ${SORT};
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/polyorb/PLIST b/polyorb/PLIST
new file mode 100644
index 0000000000..f196ba6a0c
--- /dev/null
+++ b/polyorb/PLIST
@@ -0,0 +1 @@
+@comment $NetBSD: PLIST,v 1.0 2024/11/12 18:30:00 dkazankov Exp $
diff --git a/polyorb/buildlink3.mk b/polyorb/buildlink3.mk
new file mode 100644
index 0000000000..4a1553379c
--- /dev/null
+++ b/polyorb/buildlink3.mk
@@ -0,0 +1,17 @@
+# $NetBSD: buildlink3.mk,v 1.0 2024/11/14 16:30:00 dkazankov Exp $
+
+BUILDLINK_TREE+= polyorb
+
+.if !defined(POLYORB_BUILDLINK3_MK)
+POLYORB_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.polyorb+= polyorb>=25.0
+BUILDLINK_PKGSRCDIR.polyorb= ../../wip/polyorb
+BUILDLINK_DEPMETHOD.polyorb?= build
+
+BUILDLINK_AUTO_VARS.polyorb= no
+BUILDLINK_AUTO_DIRS.polyorb= no
+
+.endif
+
+BUILDLINK_TREE+= -polyorb
diff --git a/polyorb/distinfo b/polyorb/distinfo
new file mode 100644
index 0000000000..0eb85fca58
--- /dev/null
+++ b/polyorb/distinfo
@@ -0,0 +1,12 @@
+$NetBSD: distinfo,v 1.3 2024/05/02 14:00:00 dkazankov Exp $
+
+BLAKE2s (polyorb-25.0.0-43673925892098c14daca8b9b66c5017887b71d8.tar.gz) = 476b472810aea38e528cc1297e4110df0a4dcc57342a52c308327a5ec477f2ba
+SHA512 (polyorb-25.0.0-43673925892098c14daca8b9b66c5017887b71d8.tar.gz) = 6044576faceb313f41a88c931273140a469b507200df768ac7982ee9efb947127a669d3a44aaf2c836d8941c20554fce8f1d58232534b288f04f5a4021a5d739
+Size (polyorb-25.0.0-43673925892098c14daca8b9b66c5017887b71d8.tar.gz) = 2874796 bytes
+SHA1 (patch-Makefile.common.project.in) = 03f43f1a8dee02833e39be26dcc5ffb751f25268
+SHA1 (patch-compilers_gnatdist_xe__back-garlic.adb) = 56f9d6614fccb0fc540bcef1183cfe6a47f45919
+SHA1 (patch-configure) = 923a5e24fa2c0e09985f555d493fac8c9e72bd85
+SHA1 (patch-projects_polyorb__src__aws.gpr) = 2fe33ff7165001e7e90b17c635af8b650862b916
+SHA1 (patch-src_security_x509_polyorb__x509.c) = 372c480df9bebd43a0f37e96381fe27ef2df8419
+SHA1 (patch-src_ssl_polyorb-ssl.adb) = a1db67e4b26ac8c7d2e8173635ce2695041d406c
+SHA1 (patch-src_ssl_polyorb-ssl.ads) = 731a74d78d04dc15fcb7d991d689678f6822f8cc
diff --git a/polyorb/options.mk b/polyorb/options.mk
new file mode 100644
index 0000000000..26f6a1f4de
--- /dev/null
+++ b/polyorb/options.mk
@@ -0,0 +1,76 @@
+# $NetBSD: options.mk,v 1.0 2024/12/02 15:00:00 dkazankov Exp $
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.PolyORB
+PKG_SUPPORTED_OPTIONS= ap-corba ap-dsa ap-moma ap-aws \
+ pp-giop pp-soap pp-srp pp-dns \
+ cs-event cs-ir cs-naming cs-notification cs-time \
+ shared openssl builtin-openssl gnatcoll
+
+.include "../../mk/bsd.fast.prefs.mk"
+
+PKG_SUGGESTED_OPTIONS= ap-corba ap-dsa ap-moma \
+ pp-giop pp-soap pp-srp pp-dns \
+ cs-event cs-ir cs-naming cs-notification cs-time \
+ builtin-openssl gnatcoll
+
+.include "../../mk/bsd.options.mk"
+
+.if !empty(PKG_OPTIONS:Mbuiltin-openssl)
+.include "../../security/openssl/builtin.mk"
+CONFIGURE_ARGS+= --with-openssl=${BUILDLINK_PREFIX.openssl}
+.elif !empty(PKG_OPTIONS:Mopenssl)
+.include "../../security/openssl/buildlink3.mk"
+CONFIGURE_ARGS+= --with-openssl=${SSLBASE}
+.else
+.endif
+
+.if !empty(PKG_OPTIONS:Mgnatcoll)
+CONFIGURE_ARGS+= --with-gnatcoll
+.endif
+
+.if !empty(PKG_OPTIONS:Mshared)
+CONFIGURE_ARGS+= --enable-shared
+CONFIGURE_ARGS+= --with-gprbuild=gprbuild
+.endif
+
+.if !empty(PKG_OPTIONS:Map-aws)
+APP_PERSONALITIES+= aws
+.endif
+.if !empty(PKG_OPTIONS:Map-corba)
+APP_PERSONALITIES+= corba
+.endif
+.if !empty(PKG_OPTIONS:Map-dsa)
+APP_PERSONALITIES+= dsa
+.endif
+.if !empty(PKG_OPTIONS:Map-moma)
+APP_PERSONALITIES+= moma
+.endif
+
+.if !empty(PKG_OPTIONS:Mpp-dns)
+PROTOCOL_PERSONALITIES+= dns
+.endif
+.if !empty(PKG_OPTIONS:Mpp-giop)
+PROTOCOL_PERSONALITIES+= giop
+.endif
+.if !empty(PKG_OPTIONS:Mpp-soap)
+PROTOCOL_PERSONALITIES+= soap
+.endif
+.if !empty(PKG_OPTIONS:Mpp-srp)
+PROTOCOL_PERSONALITIES+= srp
+.endif
+
+.if !empty(PKG_OPTIONS:Mcs-event)
+CORBA_SERVICES+= event
+.endif
+.if !empty(PKG_OPTIONS:Mcs-ir)
+CORBA_SERVICES+= ir
+.endif
+.if !empty(PKG_OPTIONS:Mcs-naming)
+CORBA_SERVICES+= naming
+.endif
+.if !empty(PKG_OPTIONS:Mcs-notification)
+CORBA_SERVICES+= notification
+.endif
+.if !empty(PKG_OPTIONS:Mcs-time)
+CORBA_SERVICES+= time
+.endif
diff --git a/polyorb/patches/patch-Makefile.common.project.in b/polyorb/patches/patch-Makefile.common.project.in
new file mode 100644
index 0000000000..3ff94f8377
--- /dev/null
+++ b/polyorb/patches/patch-Makefile.common.project.in
@@ -0,0 +1,45 @@
+$NetBSD: patch-Makefile.common.project.in,v 1.0 2024/12/17 20:00:00 dkazankov Exp $
+
+Fix declarations position
+
+--- Makefile.common.project.in.orig 2024-08-23 19:03:44.000000000 +0300
++++ Makefile.common.project.in
+@@ -1,18 +1,5 @@
+ # Common Makefile fragments for all PolyORB subsystems
+
+-APPLI_LIST := @APPLI_LIST@
+-APPLI_LIBS := @APPLI_LIBS@
+-APPLI_EXES := @APPLI_EXES@
+-
+-PROTO_LIST := @PROTO_LIST@
+-PROTO_LIBS := @PROTO_LIBS@
+-
+-LIBS_LIST := @LIBS_LIST@
+-LIBS_LIBS := @LIBS_LIBS@
+-
+-SERVICE_LIBS := @SERVICE_LIBS@
+-SERVICE_EXES := @SERVICE_EXES@
+-
+ #
+ # PolyORB's libraries
+ #
+@@ -86,6 +73,19 @@
+ ir_lib=libpolyorb-corba-cos-ir-impl.a
+ time_lib=libpolyorb-corba-cos-time.a libpolyorb-corba-cos-time-impl.a
+
++APPLI_LIST := @APPLI_LIST@
++APPLI_LIBS := @APPLI_LIBS@
++APPLI_EXES := @APPLI_EXES@
++
++PROTO_LIST := @PROTO_LIST@
++PROTO_LIBS := @PROTO_LIBS@
++
++LIBS_LIST := @LIBS_LIST@
++LIBS_LIBS := @LIBS_LIBS@
++
++SERVICE_LIBS := @SERVICE_LIBS@
++SERVICE_EXES := @SERVICE_EXES@
++
+ #
+ # PolyORB's include files
+ #
diff --git a/polyorb/patches/patch-compilers_gnatdist_xe__back-garlic.adb b/polyorb/patches/patch-compilers_gnatdist_xe__back-garlic.adb
new file mode 100644
index 0000000000..675d77797b
--- /dev/null
+++ b/polyorb/patches/patch-compilers_gnatdist_xe__back-garlic.adb
@@ -0,0 +1,42 @@
+$NetBSD: patch-compilers_gnatdist_xe__back-garlic.adb,v 1.0 2025/02/05 15:00:00 dkazankov Exp $
+
+Fix include/library paths
+Fix params for gprbuild
+
+--- compilers/gnatdist/xe_back-garlic.adb.orig 2024-08-23 19:03:44.000000000 +0300
++++ compilers/gnatdist/xe_back-garlic.adb
+@@ -194,8 +194,10 @@
+ -- Take a unit id and return its name removing unit suffix.
+
+ DSA_Inc_Rel_Dir : constant String :=
+- "lib" & Directory_Separator & "garlic";
++ "include" & Directory_Separator & "garlic";
+ -- GARLIC include directory, relative to the installation prefix
++ DSA_Lib_Rel_Dir : constant String :=
++ "lib" & Directory_Separator & "garlic";
+
+ GARLIC_Prefix : constant String :=
+ XE_Back.Prefix
+@@ -203,6 +205,7 @@
+ & Dir_Separator & "s-garlic.ads");
+
+ DSA_Inc_Dir : constant String := GARLIC_Prefix & DSA_Inc_Rel_Dir;
++ DSA_Lib_Dir : constant String := GARLIC_Prefix & DSA_Lib_Rel_Dir;
+
+ ------------------
+ -- Add_Protocol --
+@@ -1346,10 +1349,12 @@
+ raise Fatal_Error with "GARLIC library not found";
+ end if;
+
++ if not Use_GPRBuild then
+ Scan_Dist_Arg ("-aI" & DSA_Inc_Dir);
+- Scan_Dist_Arg ("-aO" & DSA_Inc_Dir);
++ Scan_Dist_Arg ("-aO" & DSA_Lib_Dir);
++ end if;
+ Scan_Dist_Arg ("-largs");
+- Scan_Dist_Arg ("-L" & DSA_Inc_Dir);
++ Scan_Dist_Arg ("-L" & DSA_Lib_Dir);
+ Scan_Dist_Arg ("-lgarlic");
+ end Set_PCS_Dist_Flags;
+
diff --git a/polyorb/patches/patch-configure b/polyorb/patches/patch-configure
new file mode 100644
index 0000000000..f162223517
--- /dev/null
+++ b/polyorb/patches/patch-configure
@@ -0,0 +1,61 @@
+$NetBSD: patch-configure,v 1.0 2024/12/17 20:00:00 dkazankov Exp $
+
+Fix usage of old function
+Fix later linker error when using SSL
+Fix $$ORIGIN substitution in LDFLAGS
+
+--- configure.orig 2024-08-23 19:03:44.000000000 +0300
++++ configure 2025-01-24 10:12:03.567050383 +0200
+@@ -7859,8 +7859,8 @@
+ # unset ac_cv_XXX to prevent reuse of cached results from a previous
+ # iteration.
+ unset ac_cv_lib_crypto_SSLeay_version
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SSLeay_version in -lcrypto" >&5
+-$as_echo_n "checking for SSLeay_version in -lcrypto... " >&6; }
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for OpenSSL_version in -lcrypto" >&5
++$as_echo_n "checking for OpenSSL_version in -lcrypto... " >&6; }
+ if ${ac_cv_lib_crypto_SSLeay_version+:} false; then :
+ $as_echo_n "(cached) " >&6
+ else
+@@ -7875,11 +7875,11 @@
+ #ifdef __cplusplus
+ extern "C"
+ #endif
+-char SSLeay_version ();
++char OpenSSL_version ();
+ int
+ main ()
+ {
+-return SSLeay_version ();
++return OpenSSL_version ();
+ ;
+ return 0;
+ }
+@@ -8052,7 +8052,16 @@
+
+ set_linker_options() {
+ while test $# -gt 0; do
+- SSL_LINKER_OPTIONS="${SSL_LINKER_OPTIONS}\"$1\""
++ SSL_LINKER_OPTION1=$1
++ case $SSL_LINKER_OPTION1 in
++ -L*/)
++ SSL_LINKER_OPTION1=${SSL_LINKER_OPTION1}
++ ;;
++ -L*)
++ SSL_LINKER_OPTION1=${SSL_LINKER_OPTION1}/
++ ;;
++ esac
++ SSL_LINKER_OPTIONS="${SSL_LINKER_OPTIONS}\"${SSL_LINKER_OPTION1}\""
+ if test $# -gt 1; then
+ SSL_LINKER_OPTIONS="${SSL_LINKER_OPTIONS} & ASCII.NUL & "
+ fi
+@@ -9457,6 +9468,9 @@
+ keylen = length(key)
+ if (S_is_set[key]) {
+ value = S[key]
++ if (key == "LDFLAGS") {
++ sub(/\\\\\\\$\\\\\\\$ORIGIN/, "\\\\\\\\\\\$\\\\\\\\\\\$ORIGIN", value)
++ }
+ line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
+ len += length(value) + length(field[++i])
+ substed = 1
diff --git a/polyorb/patches/patch-projects_polyorb__src__aws.gpr b/polyorb/patches/patch-projects_polyorb__src__aws.gpr
new file mode 100644
index 0000000000..7910e26078
--- /dev/null
+++ b/polyorb/patches/patch-projects_polyorb__src__aws.gpr
@@ -0,0 +1,15 @@
+$NetBSD: patch-progects_polyorb__src__aws.gpr,v 1.0 2024/12/17 20:00:00 dkazankov Exp $
+
+Fix incorrect project name
+
+--- projects/polyorb_src_aws.gpr.orig 2024-08-23 19:03:44.000000000 +0300
++++ projects/polyorb_src_aws.gpr
+@@ -40,7 +40,7 @@
+ Dir := "src/aws";
+ Obj_Dir := PolyORB_Common.Build_Dir & Dir;
+ for Object_Dir use Obj_Dir;
+- for Source_Dirs use (Obj_Dir, PolyORB_Common.Source_Dir & Dir, Common.Source_Dir & "src/aws_orig");
++ for Source_Dirs use (Obj_Dir, PolyORB_Common.Source_Dir & Dir, PolyORB_Common.Source_Dir & "src/aws_orig");
+
+ for Library_Name use "polyorb-aws";
+ for Library_Dir use PolyORB_Common.Build_Dir & "lib";
diff --git a/polyorb/patches/patch-src_security_x509_polyorb__x509.c b/polyorb/patches/patch-src_security_x509_polyorb__x509.c
new file mode 100644
index 0000000000..492c67bd52
--- /dev/null
+++ b/polyorb/patches/patch-src_security_x509_polyorb__x509.c
@@ -0,0 +1,24 @@
+$NetBSD: patch-src_security_x509_polyorb__x509.c,v 1.0 2024/12/17 20:00:00 dkazankov Exp $
+
+Fix usage of undocumented old function
+
+--- src/security/x509/polyorb_x509.c.orig 2024-08-23 19:03:44.000000000 +0300
++++ src/security/x509/polyorb_x509.c
+@@ -161,7 +161,7 @@
+ BIO *in;
+ X509 *pkey = NULL;
+
+- in = BIO_new(BIO_s_file_internal());
++ in = BIO_new(BIO_s_file());
+ if (in == NULL) {
+ PolyORBerr(POLYORB_F_PEM_READ_CERTIFICATE_FILE, ERR_R_BUF_LIB);
+ goto end;
+@@ -193,7 +193,7 @@
+ BIO *in;
+ EVP_PKEY *pkey = NULL;
+
+- in = BIO_new(BIO_s_file_internal());
++ in = BIO_new(BIO_s_file());
+ if (in == NULL) {
+ PolyORBerr(POLYORB_F_PEM_READ_PRIVATEKEY_FILE, ERR_R_BUF_LIB);
+ goto end;
diff --git a/polyorb/patches/patch-src_ssl_polyorb-ssl.adb b/polyorb/patches/patch-src_ssl_polyorb-ssl.adb
new file mode 100644
index 0000000000..a2d42629d2
--- /dev/null
+++ b/polyorb/patches/patch-src_ssl_polyorb-ssl.adb
@@ -0,0 +1,44 @@
+$NetBSD: patch-src_ssl_polyorb-ssl.adb,v 1.0 2025/01/08 17:00:00 dkazankov Exp $
+
+Fix old library usage
+
+--- src/ssl/polyorb-ssl.adb.orig 2024-08-23 19:03:44.000000000 +0300
++++ src/ssl/polyorb-ssl.adb
+@@ -74,9 +74,10 @@
+
+ -- General initialization subprograms
+
+- procedure SSL_library_init;
+-
+- procedure SSL_load_error_strings;
++ function OPENSSL_init_ssl
++ (Opts : Interfaces.C.unsigned_long_long;
++ settings : INIT_SETTINGS_ACCESS)
++ return Interfaces.C.int;
+
+ -- Context subprograms
+
+@@ -254,8 +255,7 @@
+ pragma Import (C, SSL_free, "SSL_free");
+ pragma Import (C, SSL_get_fd, "SSL_get_fd");
+ pragma Import (C, SSL_get_ciphers, "SSL_get_ciphers");
+- pragma Import (C, SSL_library_init, "SSL_library_init");
+- pragma Import (C, SSL_load_error_strings, "SSL_load_error_strings");
++ pragma Import (C, OPENSSL_init_ssl, "OPENSSL_init_ssl");
+ pragma Import (C, SSL_load_client_CA_file, "SSL_load_client_CA_file");
+ pragma Import (C, SSL_new, "SSL_new");
+ pragma Import (C, SSL_pending, "SSL_pending");
+@@ -609,9 +609,11 @@
+ ----------------
+
+ procedure Initialize is
++ Result : Interfaces.C.int := Thin.OPENSSL_init_ssl (0, null);
+ begin
+- Thin.SSL_load_error_strings;
+- Thin.SSL_library_init;
++ if Result = 0 then
++ null;
++ end if;
+ -- XXX actions_to_seed_PRNG
+ end Initialize;
+
diff --git a/polyorb/patches/patch-src_ssl_polyorb-ssl.ads b/polyorb/patches/patch-src_ssl_polyorb-ssl.ads
new file mode 100644
index 0000000000..50713284b9
--- /dev/null
+++ b/polyorb/patches/patch-src_ssl_polyorb-ssl.ads
@@ -0,0 +1,24 @@
+$NetBSD: patch-src_ssl_polyorb-ssl.adb,v 1.0 2025/01/08 17:00:00 dkazankov Exp $
+
+Fix old library usage
+
+--- src/ssl/polyorb-ssl.ads.orig 2024-08-23 19:03:44.000000000 +0300
++++ src/ssl/polyorb-ssl.ads
+@@ -39,6 +39,7 @@
+
+ package PolyORB.SSL is
+
++ type INIT_SETTINGS_ACCESS is private;
+ type SSL_Context_Type is private;
+
+ type SSL_Socket_Type is private;
+@@ -162,6 +163,9 @@
+
+ private
+
++ type OPENSSL_INIT_SETTINGS is null record;
++ pragma Convention (C, OPENSSL_INIT_SETTINGS);
++ type INIT_SETTINGS_ACCESS is access all OPENSSL_INIT_SETTINGS;
+ type Context_Record is null record;
+ pragma Convention (C, Context_Record);
+
Home |
Main Index |
Thread Index |
Old Index