Revision: 27207
          http://sourceforge.net/p/gar/code/27207
Author:   dmichelsen
Date:     2025-09-17 13:19:10 +0000 (Wed, 17 Sep 2025)
Log Message:
-----------
openssl3: Initial commit

Added Paths:
-----------
    csw/mgar/pkg/openssl3/
    csw/mgar/pkg/openssl3/Makefile
    csw/mgar/pkg/openssl3/branches/
    csw/mgar/pkg/openssl3/tags/
    csw/mgar/pkg/openssl3/trunk/
    csw/mgar/pkg/openssl3/trunk/Makefile
    csw/mgar/pkg/openssl3/trunk/checksums
    csw/mgar/pkg/openssl3/trunk/files/

Added: csw/mgar/pkg/openssl3/Makefile
===================================================================
--- csw/mgar/pkg/openssl3/Makefile                              (rev 0)
+++ csw/mgar/pkg/openssl3/Makefile      2025-09-17 13:19:10 UTC (rev 27207)
@@ -0,0 +1,2 @@
+%:
+       $(MAKE) -C trunk $*

Index: csw/mgar/pkg/openssl3/trunk
===================================================================
--- csw/mgar/pkg/openssl3/trunk 2025-09-10 09:04:11 UTC (rev 27206)
+++ csw/mgar/pkg/openssl3/trunk 2025-09-17 13:19:10 UTC (rev 27207)

Property changes on: csw/mgar/pkg/openssl3/trunk
___________________________________________________________________
Added: svn:ignore
## -0,0 +1 ##
+work
Added: csw/mgar/pkg/openssl3/trunk/Makefile
===================================================================
--- csw/mgar/pkg/openssl3/trunk/Makefile                                (rev 0)
+++ csw/mgar/pkg/openssl3/trunk/Makefile        2025-09-17 13:19:10 UTC (rev 
27207)
@@ -0,0 +1,313 @@
+#####################################################################
+# OpenCSW build recipe for OpenSSL
+#
+# Copyright 2009 Yann Rouillard <y...@pleiades.fr.eu.org>
+# All rights reserved.  Use is subject to license terms.
+#
+# Redistribution and/or use, with or without modification, is
+# permitted.  This software is without warranty of any kind.  The
+# author(s) shall not be liable in the event that use of the
+# software causes damage.
+#####################################################################
+
+###### Package information #######
+
+NAME = openssl
+VERSION = 3.5.2
+GARTYPE = v2
+# Since version 1.0.0, soname is fixed and does not follow the minor releases
+SONAME=1.0.0
+
+DESCRIPTION = The Open Source toolkit for SSL and TLS
+define BLURB
+  The OpenSSL Project is a collaborative effort to develop a robust,
+  commercial-grade, fully featured, and Open Source toolkit implementing the
+  Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) as 
well
+  as a full-strength general-purpose cryptography library.
+endef
+
+MASTER_SITES = https://www.openssl.org/source/
+
+DISTFILES  = $(NAME)-$(VERSION).tar.gz
+#DISTFILES += README.CSW
+#DISTFILES += map.openssl.libcrypto map.openssl.libssl map.openssl.engines
+
+DOCFILES = CHANGES CHANGES.SSLeay PROBLEMS README FAQ README.ASN1 INSTALL NEWS 
README.ENGINE
+
+# List of engines that will be shipped in the packages
+ENGINES = 4758cca aep atalla cswift gmp chil nuron sureware ubsec padlock capi
+
+#some more targets we used in 0.9.8
+#PATCHFILES += 0001-more-configure-targets-1_0_2.patch
+
+# This patch is taken from 
https://hg.openindiana.org/upstream/oracle/userland-gate/
+# original file: 
components/openssl/openssl-1.0.1/patches/18-compiler_opts.patch
+# I think they are smarter than me to figure what are the best compiler options
+#PATCHFILES += optimized_configure_targets.patch
+
+# Update openssl.cnf path in man page to follow opencsw standard
+#PATCHFILES += opencsw_paths.patch
+
+# Make sure man pages and html docs are installed in proper locations
+# instead of /opt/csw/ssl/man and /opt/csw/ssl/html
+#PATCHFILES += 0010-Move-manpages-and-html-doc-in-standard-locations.patch
+
+# Let's always block some compromised CA, whatever the CA configured
+# (patchs taken from Debian Package)
+#PATCHFILES += block_bad_certificates.patch
+
+# Add old-style certificates hash generation to maintain compatibilies
+# with gnutls and programs linked with openssl 0.9.8
+# Patch taken from Debian
+#PATCHFILES += c_rehash-compat.patch
+
+# Oh yes, let's do symbol versioning so we don't become
+# crazy during library migration
+# Disabled as to many new functions. (Like whole aesni stuff missing, if build 
with mapfiles)
+#PATCHFILES += 0007-enables-symbols-versioning.patch
+
+# openssl currently only uses issetugid on freebsd and openbsd
+# althought it is also available on Solaris 10
+# We make issetugid support configurable via preprocessor flag
+# to be able to enable it for Solaris
+# Bug opened upstream: http://rt.openssl.org/Ticket/Display.html?id=3153
+#PATCHFILES += make_issetugid_support_configurable.patch
+
+#ifneq ($(shell /usr/bin/uname -r),5.9)
+#      PATCHFILES += openssl-1.0.2h-pkcs11-engine.patch
+#      ENGINES += pk11
+#        CONFIGURE_ARGS += --pk11-libname=$(abspath 
/usr/lib/$(MM_LIBDIR)/libpkcs11.so)
+#endif
+
+LICENSE = LICENSE.txt
+
+##### Build and installation information #####
+
+#PACKAGING_PLATFORMS += solaris10-sparc solaris10-i386
+#PACKAGING_PLATFORMS += solaris11-sparc solaris11-i386
+
+BUILD64 = 1
+ISAEXEC = 1
+
+# the openssl build system doesn't honor bindir
+# as it doesn't install 64 bits binaries in bin/{amd64,sparcv9}
+# we fix this at the merge step
+EXTRA_MERGE_DIRS_isa-amd64 = $(bindir_install)
+EXTRA_MERGE_DIRS_isa-sparcv9 = $(bindir_install)
+
+# c_rehash is shell script: no isaexec please
+EXTRA_ISAEXEC_EXCLUDE_FILES = /opt/csw/bin/c_rehash
+
+
+# This recipe can be used to compile openssl with Sun Studio or GCC
+# Just define the GARCOMPILER to the GNU or SUN
+GARCOMPILER_5.9 = SOS12
+GARCOMPILER_5.10_i386 = GNU
+GARCOMPILER_5.10_sparc = SOS12U6
+GARCOMPILER_5.10 = $(GARCOMPILER_5.10_$(GARCH))
+GARCOMPILER_5.11 = SOS12U6
+GARCOMPILER += $(GARCOMPILER_$(GAROSREL))
+GARCOMPILER_TYPE = $(if $(findstring GCC,$(GARCOMPILER)),GNU,SUN)
+
+# Available Solaris targets:
+#   solaris-sparcv7-cc
+#   solaris-sparcv7-gcc
+#   solaris-sparcv8-cc 
+#   solaris-sparcv8-gcc
+#   solaris-sparcv9-cc
+#   solaris-sparcv9-gcc
+#   solaris-x86-gcc 
+#   solaris64-sparcv9-cc
+#   solaris64-sparcv9-gcc
+#   solaris64-x86_64-cc 
+#   solaris64-x86_64-gcc
+
+# The corresponding os/compiler to pass to the
+# openssl Configure script
+CONFIGURE_TARGET-SUN-i386               = no-sse2 solaris-x86-cc-sunw
+#CONFIGURE_TARGET-SUN-pentium_pro       = solaris-x86-cc
+CONFIGURE_TARGET-SUN-pentium_pro        = solaris-x86-gcc
+CONFIGURE_TARGET-SUN-amd64              = solaris64-x86_64-cc-sunw
+
+CONFIGURE_TARGET-GNU-i386               = no-sse2 solaris-x86-gcc
+CONFIGURE_TARGET-GNU-pentium_pro        = solaris-x86-gcc
+CONFIGURE_TARGET-GNU-amd64              = solaris64-x86_64-gcc
+
+CONFIGURE_TARGET-SUN-sparcv8            = solaris-sparcv8-cc
+CONFIGURE_TARGET-SUN-sparcv8plus        = solaris-sparcv9-cc
+CONFIGURE_TARGET-SUN-sparcv8plus+vis    = solaris-sparcv9+vis-cc-sunw
+CONFIGURE_TARGET-SUN-sparcv9-5.9        = solaris64-sparcv9-cc
+CONFIGURE_TARGET-SUN-sparcv9-5.10       = solaris64-sparcv9-cc
+CONFIGURE_TARGET-SUN-sparcv9-5.11       = solaris64-sparcv9-cc-sunw
+CONFIGURE_TARGET-SUN-sparcv9            = 
$(CONFIGURE_TARGET-SUN-sparcv9-$(GAROSREL))
+
+CONFIGURE_TARGET-GNU-sparcv8            = solaris-sparcv8-gcc
+CONFIGURE_TARGET-GNU-sparcv8plus        = solaris-sparcv9-gcc
+CONFIGURE_TARGET-GNU-sparcv8plus+vis    = solaris-sparcv9+vis-gcc
+CONFIGURE_TARGET-GNU-sparcv9            = solaris64-sparcv9-gcc
+
+CONFIGURE_TARGET += $(CONFIGURE_TARGET-$(GARCOMPILER_TYPE)-$(ISA))
+
+# Solaris has the issetugid function since libc version interface SUNW_1.21
+# but openssl doesn't use it by default so we manually enable it
+CONFIGURE_FLAGS = -DHAVE_ISSETUGID
+
+# PKCS11 Patch also works on sparc64 athena processors thanks for the FJAES
+# instruction set. The presence of this instruction set is checked at runtime
+# by looking for the AV_SPARC_JFAES instruction set bit, unfortunately the
+# corresponding macro in not present in Solaris 9-11 headers, so we manually
+# define it.
+CONFIGURE_FLAGS += -DAV_SPARC_FJAES=0
+
+# --libdir must only be given if the directory is actually different from lib 
or the creation will fail
+# as the directory is already there
+LIBDIR_64 = --libdir=lib/64
+LIBDIR = $(LIBDIR_$(MEMORYMODEL))
+
+CONFIGURE_ARGS += --prefix=$(prefix)
+CONFIGURE_ARGS += --openssldir=$(sysconfdir)/ssl
+#CONFIGURE_ARGS += --install_prefix=$(DESTDIR)
+CONFIGURE_ARGS += $(LIBDIR)
+CONFIGURE_ARGS += $(CONFIGURE_FLAGS)
+#CONFIGURE_ARGS += $($(ISA)_$(GARCOMPILER_TYPE)_CONFIGURE_TARGET)
+CONFIGURE_ARGS += $(CONFIGURE_TARGET)
+CONFIGURE_ARGS += shared
+
+# From TCH
+CONFIGURE_ARGS += --release --api=1.1.1 enable-weak-ssl-ciphers no-acvp-tests 
no-external-tests no-tests no-unit-test -latomic -lrt
+
+EXTRA_CONFIGURE_ENV += PERL="/opt/csw/bin/perl"
+
+# Configure uses make and sun make is not happy
+# with the shell command added by the t4 patch
+EXTRA_CONFIGURE_ENV += MAKE="/opt/csw/bin/gmake"
+
+# The new compiler options taken from 
https://hg.openindiana.org/upstream/oracle/userland-gate/
+# added "-z defs" to the linker options. That causes object compilation to 
fail because
+# they are not linked against libc and libdl (for Sol9). This is workaround 
until I find a better fix.
+EXTRA_LD_OPTIONS = -lc -ldl
+
+EXTRA_LINKER_FLAGS_sparc += -norunpath
+EXTRA_LINKER_FLAGS += $(EXTRA_LINKER_FLAGS_$(GARCH))
+
+TEST_TARGET = tests
+
+# We define a custom test script to be able to disable -j only for test 
execution
+# as it doesn't work currently
+#TEST_SCRIPTS = custom
+
+PKGFORMAT-5.11 = svr4
+
+PACKAGES += CSWlibssl3
+SPKG_DESC_CSWlibssl3 = OpenSSL 3 runtime libraries
+PKGFILES_CSWlibssl3 += $(call pkgfiles_lib,libssl.so.3)
+PKGFILES_CSWlibssl3 += $(call pkgfiles_lib,libcrypto.so.3)
+PKGFILES_CSWlibssl3 += $(call baseisadirs,$(libdir)/engines-3,.*\.so)
+PKGFILES_CSWlibssl3 += $(call baseisadirs,$(libdir)/ossl-modules,.*\.so)
+PKGFILES_CSWlibssl3 += $(sysconfdir)/ssl/private
+PKGFILES_CSWlibssl3 += $(sysconfdir)/ssl/certs
+CHECKPKG_OVERRIDES_CSWlibssl3 += 
shared-lib-pkgname-mismatch|file=opt/csw/lib/libcrypto.so.3|soname=libcrypto.so.3|pkgname=CSWlibssl3|expected=CSWlibcrypto3
+CHECKPKG_OVERRIDES_CSWlibssl3_sparc += 
shared-lib-pkgname-mismatch|file=opt/csw/lib/sparcv9/libcrypto.so.3|soname=libcrypto.so.3|pkgname=CSWlibssl3|expected=CSWlibcrypto3
+CHECKPKG_OVERRIDES_CSWlibssl3_i386 += 
shared-lib-pkgname-mismatch|file=opt/csw/lib/amd64/libcrypto.so.3|soname=libcrypto.so.3|pkgname=CSWlibssl3|expected=CSWlibcrypto3
+CHECKPKG_OVERRIDES_CSWlibssl3 += $(CHECKPKG_OVERRIDES_CSWlibssl3_$(GARCH))
+
+PACKAGES += CSWlibssl-dev
+SPKG_DESC_CSWlibssl-dev = OpenSSL 3 development files
+PKGFILES_CSWlibssl-dev += $(PKGFILES_DEVEL)
+PKGFILES_CSWlibssl-dev += $(libdir)/.*\.cmake
+PKGFILES_CSWlibssl-dev += $(docdir)/openssl/.*
+RUNTIME_DEP_PKGS_CSWlibssl-dev = CSWlibssl3
+
+PACKAGES += CSWopenssl-utils
+SPKG_DESC_CSWopenssl-utils = OpenSSL 3 binaries and related tools
+# PKGFILES is catchall
+#PKGFILES_CSWopenssl-utils = $(bindir)/[^/]*
+#PKGFILES_CSWopenssl-utils = $(bindir)/.*/openssl
+#PKGFILES_CSWopenssl-utils += $(mandir)/man1/.*
+#PKGFILES_CSWopenssl-utils += $(mandir)/man5/.*
+#PKGFILES_CSWopenssl-utils += $(mandir)/man7/.*
+#PKGFILES_CSWopenssl-utils += $(prefix)/ssl/misc/.*
+#PKGFILES_CSWopenssl-utils += $(prefix)/ssl/openssl\.cnf.*
+#PKGFILES_CSWopenssl-utils += $(sysconfdir)/ssl/openssl\.cnf.*
+#PKGFILES_CSWopenssl-utils += $(docdir)/openssl_utils/.*
+RUNTIME_DEP_PKGS_CSWopenssl-utils += CSWlibssl3
+RUNTIME_DEP_PKGS_CSWopenssl-utils += CSWperl  
+
+PRESERVECONF += $(sysconfdir)/ssl/openssl.cnf
+PRESERVECONF += $(sysconfdir)/ssl/ct_log_list.cnf
+
+include gar/category.mk
+
+# We remove SSE2 hardware capability in the elf header of libcrypto as
+# openssl is able to select it at runtime and the Solaris OS support SSE2 since
+# Solaris 9 4/04 (according to "Sun Studio 12: C++ User's Guide")
+post-install:
+       if command -v elfedit >/dev/null 2>&1 && [ "$(GARCH)" = "i386" ] && \
+          /usr/ccs/bin/dump -Lv "$(DESTDIR)/$(libdir)/libcrypto.so.$(SONAME)" 
| grep SUNW_CAP >/dev/null; then \
+               echo " ==> Removing the SSE2 hardware capability from 
libcrypto"; \
+               chmod +w "$(DESTDIR)/$(libdir)/libcrypto.so.$(SONAME)"; \
+               elfedit -e 'cap:hw1 -and -cmp sse2' 
"$(DESTDIR)/$(libdir)/libcrypto.so.$(SONAME)"; \
+       fi
+       @$(MAKECOOKIE)
+
+pre-configure-modulated:
+       echo " ==> Creating configure script"
+       cd $(WORKSRC) && ln -nf Configure configure
+       #ln -nf $(WORKDIR)/map.openssl.libcrypto 
$(WORKSRC)/map.openssl.libcrypto
+       #ln -nf $(WORKDIR)/map.openssl.libssl $(WORKSRC)/map.openssl.libssl
+       #for ENGINE in $(ENGINES); do \
+       #       ln -nf $(WORKDIR)/map.openssl.engines 
$(WORKSRC)/engines/map.openssl.lib$$ENGINE; \
+       #done
+       #ln -nf $(WORKDIR)/map.openssl.engines 
$(WORKSRC)/engines/ccgost/map.openssl.libgost
+       @$(MAKECOOKIE)
+
+install-conf-misc:
+       [ ! -f "$(PKGROOT)$(sysconfdir)/ssl/openssl.cnf" ] || \
+               mv "$(PKGROOT)$(sysconfdir)/ssl/openssl.cnf" 
$(PKGROOT)$(sysconfdir)/ssl/openssl.cnf.CSW
+       [ ! -d "$(PKGROOT)$(sysconfdir)/ssl/misc" ] || \
+               ( ginstall -d "$(PKGROOT)/$(prefix)/ssl/" && mv 
"$(PKGROOT)$(sysconfdir)/ssl/misc/" "$(PKGROOT)/$(prefix)/ssl/" )
+
+#merge-doc:
+#      for CATALOGNAME in $(foreach PKG, $(PACKAGES), $(call 
catalogname,$(PKG))); do \
+#              ginstall -d $(PKGROOT)/$(docdir)/$$CATALOGNAME; \
+#              (cd $(DOWNLOADDIR)/ && ginstall -m 0644 README.CSW 
$(PKGROOT)/$(docdir)/$$CATALOGNAME/); \
+#              (cd $(WORKSRC_FIRSTMOD)/ && ginstall -m 0644 $(DOCFILES) 
$(PKGROOT)/$(docdir)/$$CATALOGNAME/); \
+#      done
+
+#post-merge-all: merge-doc install-conf-misc
+post-merge-all: install-conf-misc
+
+
+NUM_CPUS := $(shell psrinfo | wc -l | awk '{ print $$1 }')
+
+package-fast:
+       PARALLELMODULATIONS=1 PARALLELMFLAGS="-j" $(MAKE) package
+       #PARALLELMODULATIONS=1 PARALLELMFLAGS="--jobs=$(NUM_CPUS) 
--load-average=$(NUM_CPUS)" $(MAKE) package
+
+platforms-fast:
+       @mkdir -p work
+       @echo
+       @echo "Building on all hosts in parallel. Please see the individual 
logfiles for details:";$(foreach P,$(_PACKAGING_PLATFORMS),echo "- $P: 
work/build-$(PACKAGING_HOST_$P).log";)
+       @echo
+       @trap "cat $(foreach 
P,$(_PACKAGING_PLATFORMS),work/build-$(PACKAGING_HOST_$P).pid) 2>/dev/null | 
xargs -L 1 pkill -9 -P &>/dev/null; \
+             stty sane" INT; \
+       $(foreach P,$(_PACKAGING_PLATFORMS),\
+               ( $(SSH) -t $(PACKAGING_HOST_$P) "$(foreach 
V,$(_PROPAGATE_ENV),$(if $($V),$V=\"$($V)\")) $(MAKE) -I $(GARDIR) -C $(CURDIR) 
$(_PASS_GAR_ENV) GAR_PLATFORM=$P package-fast" 
>work/build-$(PACKAGING_HOST_$P).log 2>&1; echo $$? 
>work/build-$(PACKAGING_HOST_$P).ret ) & \
+                 echo $$! >work/build-$(PACKAGING_HOST_$P).pid; ) wait; stty 
sane; trap - INT
+       @$(foreach P,$(_PACKAGING_PLATFORMS),if [ "`cat 
work/build-$(PACKAGING_HOST_$P).ret`" -ne 0 ]; then \
+               FAILED=1; \
+               echo "Build error on host $(PACKAGING_HOST_$P). For details, 
please see"; \
+               echo "  work/build-$(PACKAGING_HOST_$P).log"; \
+               echo "Return code: `cat work/build-$(PACKAGING_HOST_$P).ret`"; \
+               echo ; \
+       fi;) if [ $${FAILED} -eq 1 ]; then \
+               exit 2; \
+       fi
+       @echo
+       @echo "Calling the standard platforms target to make sure everything is 
ok..."
+       @echo
+       $(MAKE) platforms
+
+# The only purpose of this script is to disable the gmake "-j" option for test 
execution
+test-custom:
+       PARALLELMFLAGS= $(MAKE) test-$(WORKSRC)/Makefile


Property changes on: csw/mgar/pkg/openssl3/trunk/Makefile
___________________________________________________________________
Added: svn:keywords
## -0,0 +1 ##
+Id
\ No newline at end of property
Added: csw/mgar/pkg/openssl3/trunk/checksums
===================================================================
--- csw/mgar/pkg/openssl3/trunk/checksums                               (rev 0)
+++ csw/mgar/pkg/openssl3/trunk/checksums       2025-09-17 13:19:10 UTC (rev 
27207)
@@ -0,0 +1 @@
+890fc59f86fc21b5e4d1c031a698dbde  openssl-3.5.2.tar.gz

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

Reply via email to