[vlc-commits] [Git][videolan/vlc][master] 5 commits: meson: sid: do not abort setup when resid-builder is missing
Steve Lhomme (@robUx4)
gitlab at videolan.org
Sat Oct 10 17:00:37 UTC 2026
Steve Lhomme pushed to branch master at VideoLAN / VLC
Commits:
ea7633b9 by Wassim Lalaoui at 2026-10-10T16:36:40+00:00
meson: sid: do not abort setup when resid-builder is missing
It avoids build being aborted in some cases, for example if a system provides libsidplay2
without resid-builder.
- - - - -
20d8bbbf by Wassim Lalaoui at 2026-10-10T16:36:40+00:00
access: replace gpg_strerror by gcry_strerror
this removes gpg_error dependency
- - - - -
6e6d00fa by Wassim Lalaoui at 2026-10-10T16:36:40+00:00
meson: remove gpg_error dependency for access_output_livehttp
- - - - -
669d5fdc by Wassim Lalaoui at 2026-10-10T16:36:40+00:00
configure.ac: handle gcrypt with PKG_CHECK_MODULES
- - - - -
00b15a00 by Wassim Lalaoui at 2026-10-10T16:36:40+00:00
build: require libgcrypt 1.8.5 or higher
- - - - -
7 changed files:
- configure.ac
- contrib/src/gcrypt/rules.mak
- meson.build
- modules/access/dcp/dcpdecrypt.cpp
- modules/access_output/livehttp.c
- modules/access_output/meson.build
- modules/demux/meson.build
Changes:
=====================================
configure.ac
=====================================
@@ -5001,51 +5001,18 @@ dnl libgcrypt
dnl
AC_ARG_ENABLE([libgcrypt],
AS_HELP_STRING([--disable-libgcrypt], [gcrypt support (default enabled)]))
-AC_ARG_VAR([GCRYPT_CFLAGS], [C compiler flags for gcrypt])
-AC_ARG_VAR([GCRYPT_LIBS], [linker flags flags for gcrypt])
-
-# require libgcrypt >= 1.6.0
+have_gcrypt="no"
AS_IF([test "${enable_libgcrypt}" != "no"], [
- AC_CACHE_CHECK([for gcrypt 1.6.0 or later], [ac_cv_lib_gcrypt], [
- VLC_SAVE_FLAGS
- CFLAGS="${CFLAGS} ${GCRYPT_CFLAGS}"
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
-[#include <gcrypt.h>
-#if GCRYPT_VERSION_NUMBER < 0x010600
-#error
-#endif]])], [
- ac_cv_lib_gcrypt=yes
- ], [
- ac_cv_lib_gcrypt=no
- ])
- VLC_RESTORE_FLAGS
- ])
-
- AS_IF([test "${ac_cv_lib_gcrypt}" = "yes"], [
+ PKG_CHECK_MODULES([GCRYPT], [libgcrypt >= 1.8.5], [
+ have_gcrypt="yes"
AC_DEFINE([HAVE_GCRYPT], 1, [Defined if having gcrypt])
- PKG_CHECK_MODULES([GPGERROR], [gpg-error], [
- have_gpg_error="yes"
- ], [
- have_gpg_error="no"
- ])
], [
AS_IF([test "${enable_libgcrypt}" = "yes"], [
- AC_MSG_ERROR([libgcrypt version 1.6.0 or higher not found. Install libgcrypt or pass --disable-libgcrypt.])
+ AC_MSG_ERROR([libgcrypt version 1.8.5 or higher not found. Install libgcrypt or pass --disable-libgcrypt.])
])
])
])
-
-AS_IF([test -z "$GCRYPT_LIBS"], [
- AS_IF([test "${have_gpg_error}" = "yes"],[
- GCRYPT_LIBS="-lgcrypt ${GPGERROR_LIBS}"
- ],[
- GCRYPT_LIBS="-lgcrypt -lgpg-error"
- ])
-])
-
-AC_SUBST([GCRYPT_CFLAGS])
-AC_SUBST([GCRYPT_LIBS])
-AM_CONDITIONAL([HAVE_GCRYPT], [test "${ac_cv_lib_gcrypt}" = "yes"])
+AM_CONDITIONAL([HAVE_GCRYPT], [test "${have_gcrypt}" = "yes"])
dnl
dnl TLS/SSL
@@ -5101,7 +5068,7 @@ AC_ARG_ENABLE([update-check],
AS_HELP_STRING([--enable-update-check], [update checking system (default disabled)]))
if test "${enable_update_check}" = "yes"
then
- AS_IF([test "${ac_cv_lib_gcrypt}" != "yes"],[
+ AS_IF([test "${have_gcrypt}" != "yes"],[
AC_MSG_ERROR([libgcrypt is required for update checking system]) ])
fi
AM_CONDITIONAL([UPDATE_CHECK], [test "${enable_update_check}" = "yes"])
=====================================
contrib/src/gcrypt/rules.mak
=====================================
@@ -3,7 +3,7 @@ GCRYPT_VERSION := 1.12.2
GCRYPT_URL := $(GNUGPG)/libgcrypt/libgcrypt-$(GCRYPT_VERSION).tar.bz2
PKGS += gcrypt
-ifeq ($(call need_pkg,"libgcrypt >= 1.6.0"),)
+ifeq ($(call need_pkg,"libgcrypt >= 1.8.5"),)
PKGS_FOUND += gcrypt
else
PKGS.tools += gcrypt
=====================================
meson.build
=====================================
@@ -1135,7 +1135,7 @@ if get_option('default_monospace_font_family') != ''
endif
gcrypt_dep = dependency('libgcrypt',
- version: '>= 1.6.0',
+ version: '>= 1.8.5',
required: get_option('libgcrypt'))
if gcrypt_dep.found()
cdata.set('HAVE_GCRYPT', 1)
=====================================
modules/access/dcp/dcpdecrypt.cpp
=====================================
@@ -547,7 +547,7 @@ int RSAKey::readDER( unsigned char const* ps_data_der, size_t length )
err = gcry_mpi_scan( key_params + i, GCRYMPI_FMT_USG, ps_data_der, tag_inf.length, NULL );
if( err )
{
- msg_Err( this->p_demux, "error scanning RSA parameter %d: %s", i, gpg_strerror( err ) );
+ msg_Err( this->p_demux, "error scanning RSA parameter %d: %s", i, gcry_strerror( err ) );
goto error;
}
ps_data_der += tag_inf.length;
@@ -570,7 +570,7 @@ int RSAKey::readDER( unsigned char const* ps_data_der, size_t length )
key_params[3], key_params[4], key_params[7] );
if( err )
{
- msg_Err( this->p_demux, "error building S-expression: %s", gpg_strerror( err ) );
+ msg_Err( this->p_demux, "error building S-expression: %s", gcry_strerror( err ) );
goto error;
}
=====================================
modules/access_output/livehttp.c
=====================================
@@ -339,7 +339,7 @@ static int CryptSetup( sout_access_out_t *p_access, char *key_file )
GCRY_CIPHER_MODE_CBC, 0 );
if( err )
{
- msg_Err( p_access, "Opening AES Cipher failed: %s", gpg_strerror(err));
+ msg_Err( p_access, "Opening AES Cipher failed: %s", gcry_strerror(err));
free( keyfile );
return VLC_EGENERIC;
}
@@ -368,7 +368,7 @@ static int CryptSetup( sout_access_out_t *p_access, char *key_file )
err = gcry_cipher_setkey( p_sys->aes_ctx, key, 16 );
if(err)
{
- msg_Err(p_access, "Setting AES key failed: %s", gpg_strerror(err));
+ msg_Err(p_access, "Setting AES key failed: %s", gcry_strerror(err));
gcry_cipher_close( p_sys->aes_ctx );
return VLC_EGENERIC;
}
@@ -465,7 +465,7 @@ static int CryptKey( sout_access_out_t *p_access, uint32_t i_segment )
p_sys->aes_ivs, 16);
if( err )
{
- msg_Err(p_access, "Setting AES IVs failed: %s", gpg_strerror(err) );
+ msg_Err(p_access, "Setting AES IVs failed: %s", gcry_strerror(err) );
gcry_cipher_close( p_sys->aes_ctx);
return VLC_EGENERIC;
}
@@ -720,7 +720,7 @@ static void closeCurrentSegment( sout_access_out_t *p_access, sout_access_out_sy
gcry_error_t err = gcry_cipher_encrypt( p_sys->aes_ctx, p_sys->stuffing_bytes, 16, NULL, 0 );
if( err ) {
- msg_Err( p_access, "Couldn't encrypt 16 bytes: %s", gpg_strerror(err) );
+ msg_Err( p_access, "Couldn't encrypt 16 bytes: %s", gcry_strerror(err) );
} else {
int ret = vlc_write( p_sys->i_handle, p_sys->stuffing_bytes, 16 );
@@ -978,7 +978,7 @@ static ssize_t writeSegment( sout_access_out_t *p_access )
output->p_buffer, output->i_buffer, NULL, 0 );
if( err )
{
- msg_Err( p_access, "Encryption failure: %s ", gpg_strerror(err) );
+ msg_Err( p_access, "Encryption failure: %s ", gcry_strerror(err) );
return -1;
}
encrypted=true;
=====================================
modules/access_output/meson.build
=====================================
@@ -25,12 +25,11 @@ vlc_modules += {
}
# liveHTTP
-gpg_error_dep = cc.find_library('gpg-error', dirs: contrib_libdir, required: false)
vlc_modules += {
'name' : 'access_output_livehttp',
'sources' : files('livehttp.c'),
- 'dependencies' : [ gcrypt_dep, gpg_error_dep ],
- 'enabled' : gcrypt_dep.found() and gpg_error_dep.found(),
+ 'dependencies' : [ gcrypt_dep ],
+ 'enabled' : gcrypt_dep.found(),
'shortname' : 'a_o_live',
'plugin_dir' : 'access_output',
}
=====================================
modules/demux/meson.build
=====================================
@@ -456,7 +456,7 @@ vlc_modules += {
# sid
sid_dep = dependency('libsidplay2', required: get_option('sid'))
if cpp.check_header('sidplay/builders/resid.h', dependencies: sid_dep)
-resid_dep = cpp.find_library('resid-builder', dirs: contrib_libdir)
+resid_dep = cpp.find_library('resid-builder', dirs: contrib_libdir, required: get_option('sid'))
vlc_modules += {
'name' : 'sid',
'sources' : files('sid.cpp'),
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/925460a269aeddfc0216e483983423764ee26cf8...00b15a008ae519b8fc97bd73e242819128013e1c
--
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/925460a269aeddfc0216e483983423764ee26cf8...00b15a008ae519b8fc97bd73e242819128013e1c
You're receiving this email because of your account on code.videolan.org. Manage all notifications: https://code.videolan.org/-/profile/notifications | Help: https://code.videolan.org/help
More information about the vlc-commits
mailing list