Skip to content

Commit

Permalink
Merge pull request #1498 from craigcomstock/3.24.x-deps-2024-09-06_13…
Browse files Browse the repository at this point in the history
…_39_17_290986

3.24.x deps 2024 09 06 13 39 17 290986
  • Loading branch information
craigcomstock authored Oct 8, 2024
2 parents 0461507 + d183e15 commit d2c87af
Show file tree
Hide file tree
Showing 34 changed files with 95 additions and 176 deletions.
40 changes: 1 addition & 39 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -121,47 +121,9 @@ avoid accidentally regenerating files transferred from buildslave:

## Dependencies

File `install-dependencies` and the relevant subdirectories in `deps-packaging` are the source of this information.

### Agent Dependencies

| CFEngine version | 3.18.x | 3.21.x | master | Notes |
| -------------------------------------------------------------------------------- | ------ | ------ | ------ | ------------------------ |
| [diffutils](https://ftpmirror.gnu.org/diffutils/) | 3.10 | 3.10 | 3.10 | |
| [libacl](http://download.savannah.gnu.org/releases/acl/) | 2.3.2 | 2.3.2 | 2.3.2 | |
| [libattr](http://download.savannah.gnu.org/releases/attr/) | 2.5.2 | 2.5.2 | 2.5.2 | |
| [libcurl](http://curl.haxx.se/download.html) | 8.7.1 | 8.7.1 | 8.8.0 | |
| [libgnurx](http://www.gnu.org/software/rx/rx.html) | 2.5.1 | 2.5.1 | 2.5.1 | Windows Enterprise agent |
| [libiconv](http://ftp.gnu.org/gnu/libiconv/) | 1.17 | 1.17 | 1.17 | Needed by libxml2 |
| [libxml2](http://xmlsoft.org/sources/) | 2.12.6 | 2.12.6 | 2.13.1 | |
| [libyaml](http://pyyaml.org/wiki/LibYAML) | 0.2.5 | 0.2.5 | 0.2.5 | |
| [LMDB](https://github.com/LMDB/lmdb/) | 0.9.32 | 0.9.32 | 0.9.33 | |
| [OpenLDAP](http://www.openldap.org/software/download/OpenLDAP/openldap-release/) | 2.6.7 | 2.6.7 | 2.6.8 | Enterprise agent only |
| [OpenSSL](http://openssl.org/) | 1.1.1w | 3.0.13 | 3.3.1 | |
| [PCRE](http://ftp.csx.cam.ac.uk/pub/software/programming/pcre/) | 8.45 | 8.45 | - | |
| [PCRE2](https://github.com/PCRE2Project/pcre2/releases/) | - | - | 10.44 | |
| [pthreads-w32](ftp://sourceware.org/pub/pthreads-win32/) | 2-9-1 | 2-9-1 | 2-9-1 | Windows Enterprise agent |
| [SASL2](https://cyrusimap.org/mediawiki/index.php/Downloads) | 2.1.28 | 2.1.28 | 2.1.28 | Solaris Enterprise agent |
| [zlib](http://www.zlib.net/) | 1.3.1 | 1.3.1 | 1.3.1 | |
| libgcc | | | | AIX and Solaris only |

### Enterprise Hub dependencies:

| CFEngine version | 3.18.x | 3.21.x | master |
| --------------------------------------------------- | ------ | ------ | ------ |
| [Apache](http://httpd.apache.org/) | 2.4.59 | 2.4.59 | 2.4.59 |
| [APR](https://apr.apache.org/) | 1.7.4 | 1.7.4 | 1.7.4 |
| [apr-util](https://apr.apache.org/) | 1.6.3 | 1.6.3 | 1.6.3 |
| [Git](https://www.kernel.org/pub/software/scm/git/) | 2.45.1 | 2.45.1 | 2.45.2 |
| [libexpat](https://libexpat.github.io/) | - | - | 2.5.0 |
| [PHP](http://php.net/) | 8.0.30 | 8.2.19 | 8.3.8 |
| [PostgreSQL](http://www.postgresql.org/) | 13.14 | 15.6 | 16.3 |
| [rsync](https://download.samba.org/pub/rsync/) | 3.3.0 | 3.3.0 | 3.3.0 |
For LTS branches, https://github.com/cfengine/buildscripts?tab=readme-ov-file#dependencies is the source of truth for latest versions and is based on information in `build-scripts/install-dependencies` and relevant subdirectories in `deps-packaging`.

* [MinGW-w64](http://sourceforge.net/projects/mingw-w64/) **OUTDATED** needed
for [redmine#2932](https://dev.cfengine.com/issues/2932)
* Requires change of buildslaves (autobuild)

Other dependencies (**find out why they are needed!**)

* autoconf 2.69
24 changes: 16 additions & 8 deletions build-scripts/install-dependencies
Original file line number Diff line number Diff line change
Expand Up @@ -40,13 +40,20 @@ check_and_install_perl()
&& PERL="$HOME/perl-my/bin/perl" \
|| PERL=`func_whereis perl`

PERL_OK=yes
PERL_MINOR_VERSION=`$PERL -e 'print "$]"."\n"' | cut -d. -f2`
if [ "$PERL_MINOR_VERSION" -lt 013004 ]
then
echo "$PERL version is $PERL_MINOR_VERSION," \
"too old, installing new one from source"

### BUILD PERL
"too old"
PERL_OK="no"
fi
if ! $PERL -e 'use List::Util qw(pairs);'; then
echo "$PERL has List::Util that does not export pairs. Needs to be at least version 1.29 for OpenSSL version 3.3.2."
PERL_OK="no"
fi
if [ "$PERL_OK" != "yes" ]; then
echo "$PERL is too old or modules are missing, building new one from source..."

# -fno-stack-protector: Ensure built perl will not depend on libssp.so
if echo | gcc -E -fno-stack-protector - >/dev/null 2>&1
Expand All @@ -71,12 +78,13 @@ check_and_install_perl()
PERL_EXTRA_FLAGS='-Ud_nexttoward'
fi

wget http://www.cpan.org/src/5.0/perl-5.26.1.tar.gz
[ `func_md5 perl-5.26.1.tar.gz` != "a7e5c531ee1719c53ec086656582ea86" ] \
PERL_VERSION=5.40.0
PERL_MD5=8da78b1f54b99e97954066d0aaad88bc
wget http://www.cpan.org/src/5.0/perl-${PERL_VERSION}.tar.gz
[ `func_md5 perl-${PERL_VERSION}.tar.gz` != "${PERL_MD5}" ] \
&& fatal "perl checksum error"
gzip -dc perl-5.26.1.tar.gz | tar xf -
cd perl-5.26.1
$PATCH -p1 < $BASEDIR/buildscripts/build-scripts/perl-488307ffa6.patch
gzip -dc perl-${PERL_VERSION}.tar.gz | tar xf -
cd perl-${PERL_VERSION}
./Configure -des -Dprefix=$HOME/perl-my -Dcc=gcc -Dmake=$MAKE \
$PERL_EXTRA_FLAGS $PERL_CFLAGS $PERL_LDFLAGS $PERL_LDDLFLAGS
$MAKE
Expand Down
57 changes: 0 additions & 57 deletions build-scripts/perl-488307ffa6.patch

This file was deleted.

2 changes: 1 addition & 1 deletion deps-packaging/apache/cfbuild-apache.spec
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
%define apache_version 2.4.59
%define apache_version 2.4.62
%global __os_install_post %{nil}

Summary: CFEngine Build Automation -- apache
Expand Down
2 changes: 1 addition & 1 deletion deps-packaging/apache/distfiles
Original file line number Diff line number Diff line change
@@ -1 +1 @@
e4ec4ce12c6c8f5a794dc2263d126cb1d6ef667f034c4678ec945d61286e8b0f httpd-2.4.59.tar.gz
3e2404d762a2da03560d7ada379ba1599d32f04a0d70ad6ff86f44325f2f062d httpd-2.4.62.tar.gz
2 changes: 1 addition & 1 deletion deps-packaging/apr/cfbuild-apr.spec
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
%define apr_version 1.7.4
%define apr_version 1.7.5

Summary: CFEngine Build Automation -- apr
Name: cfbuild-apr
Expand Down
2 changes: 1 addition & 1 deletion deps-packaging/apr/distfiles
Original file line number Diff line number Diff line change
@@ -1 +1 @@
a4137dd82a185076fa50ba54232d920a17c6469c30b0876569e1c2a05ff311d9 apr-1.7.4.tar.gz
3375fa365d67bcf945e52b52cba07abea57ef530f40b281ffbe977a9251361db apr-1.7.5.tar.gz
2 changes: 1 addition & 1 deletion deps-packaging/git/cfbuild-git.spec
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
%define git_version 2.45.2
%define git_version 2.46.2

Summary: CFEngine Build Automation -- git
Name: cfbuild-git
Expand Down
2 changes: 1 addition & 1 deletion deps-packaging/git/distfiles
Original file line number Diff line number Diff line change
@@ -1 +1 @@
98b26090ed667099a3691b93698d1e213e1ded73d36a2fde7e9125fce28ba234 git-2.45.2.tar.gz
65c5689fd44f1d09de7fd8c44de7fef074ddd69dda8b8503d44afb91495ecbce git-2.46.2.tar.gz
3 changes: 2 additions & 1 deletion deps-packaging/libcurl-hub/cfbuild-libcurl-hub.spec
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
%define curl_version 8.8.0
%define curl_version 8.10.1

Summary: CFEngine Build Automation -- libcurl
Name: cfbuild-libcurl-hub
Expand Down Expand Up @@ -38,6 +38,7 @@ mkdir -p %{_builddir}
--without-gnutls \
--without-gssapi \
--without-libidn \
--without-libpsl \
--without-librtmp \
--without-libssh2 \
--without-nghttp2 \
Expand Down
1 change: 1 addition & 0 deletions deps-packaging/libcurl-hub/debian/rules
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ build-stamp:
--without-gnutls \
--without-gssapi \
--without-libidn \
--without-libpsl \
--without-librtmp \
--without-libssh2 \
--without-nghttp2 \
Expand Down
2 changes: 1 addition & 1 deletion deps-packaging/libcurl-hub/distfiles
Original file line number Diff line number Diff line change
@@ -1 +1 @@
77c0e1cd35ab5b45b659645a93b46d660224d0024f1185e8a95cdb27ae3d787d curl-8.8.0.tar.gz
d15ebab765d793e2e96db090f0e172d127859d78ca6f6391d7eafecfd894bbc0 curl-8.10.1.tar.gz
3 changes: 2 additions & 1 deletion deps-packaging/libcurl/cfbuild-libcurl.spec
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
%define curl_version 8.8.0
%define curl_version 8.10.1

Summary: CFEngine Build Automation -- libcurl
Name: cfbuild-libcurl
Expand Down Expand Up @@ -38,6 +38,7 @@ mkdir -p %{_builddir}
--without-gnutls \
--without-gssapi \
--without-libidn \
--without-libpsl \
--without-librtmp \
--without-libssh2 \
--without-nghttp2 \
Expand Down
1 change: 1 addition & 0 deletions deps-packaging/libcurl/debian/rules
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ build-stamp:
--without-gnutls \
--without-gssapi \
--without-libidn \
--without-libpsl \
--without-librtmp \
--without-libssh2 \
--without-nghttp2 \
Expand Down
2 changes: 1 addition & 1 deletion deps-packaging/libcurl/distfiles
Original file line number Diff line number Diff line change
@@ -1 +1 @@
77c0e1cd35ab5b45b659645a93b46d660224d0024f1185e8a95cdb27ae3d787d curl-8.8.0.tar.gz
d15ebab765d793e2e96db090f0e172d127859d78ca6f6391d7eafecfd894bbc0 curl-8.10.1.tar.gz
1 change: 1 addition & 0 deletions deps-packaging/libcurl/hpux/build
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ TTD=${BUILD_ROOT}/cfbuild-libcurl-devel${PREFIX}
--without-gnutls \
--without-gssapi \
--without-libidn \
--without-libpsl \
--without-librtmp \
--without-libssh2 \
--without-nghttp2 \
Expand Down
1 change: 1 addition & 0 deletions deps-packaging/libcurl/solaris/build
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ TTD=${BUILD_ROOT}/cfbuild-libcurl-devel${PREFIX}
--without-gnutls \
--without-gssapi \
--without-libidn \
--without-libpsl \
--without-librtmp \
--without-libssh2 \
--without-nghttp2 \
Expand Down
2 changes: 1 addition & 1 deletion deps-packaging/libexpat/cfbuild-libexpat.spec
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
%define expat_version 2.5.0
%define expat_version 2.6.3

Summary: CFEngine Build Automation -- libexpat
Name: cfbuild-libexpat
Expand Down
2 changes: 1 addition & 1 deletion deps-packaging/libexpat/distfiles
Original file line number Diff line number Diff line change
@@ -1 +1 @@
ef2420f0232c087801abf705e89ae65f6257df6b7931d37846a193ef2e8cdcbe expat-2.5.0.tar.xz
274db254a6979bde5aad404763a704956940e465843f2a9bd9ed7af22e2c0efc expat-2.6.3.tar.xz
2 changes: 1 addition & 1 deletion deps-packaging/libexpat/source
Original file line number Diff line number Diff line change
@@ -1 +1 @@
https://github.com/libexpat/libexpat/releases/download/R_2_5_0/
https://github.com/libexpat/libexpat/releases/download/R_2_6_3/
2 changes: 1 addition & 1 deletion deps-packaging/libxml2/cfbuild-libxml2.spec
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
%define libxml_version 2.13.1
%define libxml_version 2.13.4

Summary: CFEngine Build Automation -- libxml2
Name: cfbuild-libxml2
Expand Down
2 changes: 1 addition & 1 deletion deps-packaging/libxml2/distfiles
Original file line number Diff line number Diff line change
@@ -1 +1 @@
25239263dc37f5f55a5393eff27b35f0b7d9ea4b2a7653310598ea8299e3b741 libxml2-2.13.1.tar.xz
65d042e1c8010243e617efb02afda20b85c2160acdbfbcb5b26b80cec6515650 libxml2-2.13.4.tar.xz
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,15 @@ x86. There are already implementations of replacements for other
functions, such as InterlockedOr64(). Apply the same approach to
fix the errors.

Inspired by openssl/openssl#24326.
Inspired by https://github.com/openssl/openssl/pull/24326.

(cherry picked from commit 03111c77b640febbfaefc9ab6519e85f8b595100)
---
crypto/threads_win.c | 81 ++++++++++++++++++++++++++++++++++++++------
1 file changed, 71 insertions(+), 10 deletions(-)

diff --git a/crypto/threads_win.c b/crypto/threads_win.c
index 64354dc42f..62b63a4aad 100644
index bc430ef..30ca914 100644
--- a/crypto/threads_win.c
+++ b/crypto/threads_win.c
@@ -23,7 +23,7 @@
Expand All @@ -29,7 +29,7 @@ index 64354dc42f..62b63a4aad 100644
# define NO_INTERLOCKEDOR64
#endif

@@ -104,8 +104,15 @@ struct rcu_lock_st {
@@ -103,8 +103,15 @@
CRYPTO_CONDVAR *alloc_signal;
CRYPTO_MUTEX *prior_lock;
CRYPTO_CONDVAR *prior_signal;
Expand All @@ -42,18 +42,18 @@ index 64354dc42f..62b63a4aad 100644
+static int CRYPTO_atomic_and(uint64_t *val, uint64_t op, uint64_t *ret,
+ CRYPTO_RWLOCK *lock);
+
/*
* Called on thread exit to free the pthread key
* associated with this thread, if any
@@ -154,6 +161,7 @@ CRYPTO_RCU_LOCK *ossl_rcu_lock_new(int num_writers)
return NULL;
static struct rcu_qp *allocate_new_qp_group(struct rcu_lock_st *lock,
int count)
{
@@ -133,6 +140,7 @@

new->ctx = ctx;
new->write_lock = ossl_crypto_mutex_new();
+ new->rw_lock = CRYPTO_THREAD_lock_new();
new->alloc_signal = ossl_crypto_condvar_new();
new->prior_signal = ossl_crypto_condvar_new();
new->alloc_lock = ossl_crypto_mutex_new();
@@ -164,13 +172,15 @@ CRYPTO_RCU_LOCK *ossl_rcu_lock_new(int num_writers)
@@ -143,13 +151,15 @@
|| new->prior_signal == NULL
|| new->write_lock == NULL
|| new->alloc_lock == NULL
Expand All @@ -70,7 +70,7 @@ index 64354dc42f..62b63a4aad 100644
OPENSSL_free(new);
new = NULL;
}
@@ -186,20 +196,27 @@ void ossl_rcu_lock_free(CRYPTO_RCU_LOCK *lock)
@@ -165,20 +175,27 @@
ossl_crypto_mutex_free(&lock->alloc_lock);
ossl_crypto_mutex_free(&lock->prior_lock);
ossl_crypto_mutex_free(&lock->write_lock);
Expand Down Expand Up @@ -102,7 +102,7 @@ index 64354dc42f..62b63a4aad 100644
}

return &lock->qp_group[qp_idx];
@@ -263,7 +280,9 @@ void ossl_rcu_read_unlock(CRYPTO_RCU_LOCK *lock)
@@ -254,7 +271,9 @@
if (data->thread_qps[i].lock == lock) {
data->thread_qps[i].depth--;
if (data->thread_qps[i].depth == 0) {
Expand All @@ -113,15 +113,15 @@ index 64354dc42f..62b63a4aad 100644
OPENSSL_assert(ret >= 0);
data->thread_qps[i].qp = NULL;
data->thread_qps[i].lock = NULL;
@@ -278,6 +297,7 @@ static struct rcu_qp *update_qp(CRYPTO_RCU_LOCK *lock)
@@ -269,6 +288,7 @@
uint64_t new_id;
uint32_t current_idx;
uint32_t tmp;
+ uint64_t tmp64;

ossl_crypto_mutex_lock(lock->alloc_lock);
/*
@@ -301,8 +321,10 @@ static struct rcu_qp *update_qp(CRYPTO_RCU_LOCK *lock)
@@ -292,8 +312,10 @@
lock->id_ctr++;

new_id = VAL_ID(new_id);
Expand All @@ -134,7 +134,7 @@ index 64354dc42f..62b63a4aad 100644

/* update the reader index to be the prior qp */
tmp = lock->current_alloc_idx;
@@ -337,7 +359,7 @@ void ossl_synchronize_rcu(CRYPTO_RCU_LOCK *lock)
@@ -328,7 +350,7 @@

/* wait for the reader count to reach zero */
do {
Expand All @@ -143,7 +143,7 @@ index 64354dc42f..62b63a4aad 100644
} while (READER_COUNT(count) != 0);

/* retire in order */
@@ -565,6 +587,45 @@ int CRYPTO_THREAD_compare_id(CRYPTO_THREAD_ID a, CRYPTO_THREAD_ID b)
@@ -556,6 +578,45 @@
return (a == b);
}

Expand Down
Loading

0 comments on commit d2c87af

Please sign in to comment.