# --- T2-COPYRIGHT-BEGIN --- # t2/package/*/xar/0010-Update-configure.ac-for-openssl-libxml2-liblzma-and-.patch # Copyright (C) 2025 The T2 SDE Project # SPDX-License-Identifier: GPL-2.0 or patched project license # --- T2-COPYRIGHT-END --- From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Ivan Trubach Date: Sat, 27 Jul 2024 18:58:14 +0300 Subject: [PATCH 10/19] Update configure.ac for openssl, libxml2, liblzma and musl-fts Simplifies libxml2 detection, adds detection for liblzma (from xz), openssl and fts (for musl libc). --- xar/configure.ac | 83 +++++++++++++++++------------------------------- 1 file changed, 30 insertions(+), 53 deletions(-) diff --git a/xar/configure.ac b/xar/configure.ac index 0cc04dd..e466ee0 100644 --- a/xar/configure.ac +++ b/xar/configure.ac @@ -272,63 +272,14 @@ AC_PREFIX_DEFAULT(/usr/local) AC_CHECK_FUNC([asprintf], AC_DEFINE([HAVE_ASPRINTF], [], [HAVE_ASPRINTF])) +AC_SEARCH_LIBS([fts_close], [fts]) + dnl dnl Configure libxml2. dnl -LIBXML2_VERSION_MIN=2.6.11 - have_libxml2="1" - -AC_ARG_WITH([xml2-config], [ --with-xml2-config libxml2 config program], -if test "x${with_xml2_config}" = "xno" ; then - XML2_CONFIG= -else - XML2_CONFIG="${with_xml2_config}" -fi -, - XML2_CONFIG= -) -if test "x${XML2_CONFIG}" != "x" ; then - if test ! -x "${XML2_CONFIG}" ; then - AC_MSG_ERROR([Unusable or missing xml2-config: ${XML2_CONFIG}]) - fi -else - AC_PATH_PROG([XML2_CONFIG], [xml2-config], , [${PATH}]) - if test "x${XML2_CONFIG}" = "x" ; then - AC_MSG_ERROR([Cannot configure without xml2-config]) - fi -fi - -dnl Make sure the version of libxml2 found is sufficient. -AC_MSG_CHECKING([for libxml >= ${LIBXML2_VERSION_MIN}]) -LIBXML2_FOUND=`2>&1 ${XML2_CONFIG} --version` -LIBXML2_MAJOR=`echo ${LIBXML2_FOUND} | tr . " " | awk '{print $1}'` -LIBXML2_MINOR=`echo ${LIBXML2_FOUND} | tr . " " | awk '{print $2}' | tr a-z " " |awk '{print $1}'` -LIBXML2_BRANCH=`echo ${LIBXML2_FOUND} | tr . " " | awk '{print $3}' | tr a-z " " |awk '{print $1}'` -if test "x${LIBXML2_BRANCH}" = "x" ; then - LIBXML2_BRANCH=0 -fi -LIBXML2_MAJOR_MIN=`echo ${LIBXML2_VERSION_MIN} | tr . " " | awk '{print $1}'` -LIBXML2_MINOR_MIN=`echo ${LIBXML2_VERSION_MIN} | tr . " " | awk '{print $2}'` -LIBXML2_BRANCH_MIN=`echo ${LIBXML2_VERSION_MIN} | tr . " " | awk '{print $3}'` -if test ${LIBXML2_MAJOR} -gt ${LIBXML2_MAJOR_MIN} \ - -o ${LIBXML2_MAJOR} -eq ${LIBXML2_MAJOR_MIN} \ - -a ${LIBXML2_MINOR} -gt ${LIBXML2_MINOR_MIN} \ - -o ${LIBXML2_MAJOR} -eq ${LIBXML2_MAJOR_MIN} \ - -a ${LIBXML2_MINOR} -eq ${LIBXML2_MINOR_MIN} \ - -a ${LIBXML2_BRANCH} -ge $LIBXML2_BRANCH_MIN ; then - AC_MSG_RESULT([${LIBXML2_MAJOR}.${LIBXML2_MINOR}.${LIBXML2_BRANCH}]) - have_libxml2="1" - CPPFLAGS="${CPPFLAGS} `${XML2_CONFIG} --cflags`" - LIBS="${LIBS} `${XML2_CONFIG} --libs`" -else - AC_MSG_RESULT([no]) - have_libxml2="0" -fi -if test "x${have_libxml2}" = "x1" ; then - dnl Final sanity check, to make sure that xmlwriter is present. - AC_CHECK_HEADER([libxml/xmlwriter.h], , [have_libxml2="0"]) -fi +AC_CHECK_HEADERS([libxml/xmlwriter.h], , [have_libxml2="0"]) +AC_CHECK_LIB([xml2], [xmlInitParser], , [have_libxml2="0"]) if test "x${have_libxml2}" = "x0" ; then AC_MSG_ERROR([Cannot build without libxml2]) fi @@ -343,6 +294,22 @@ if test "x${have_libz}" = "x0" ; then AC_MSG_ERROR([Cannot build without libz]) fi +dnl +dnl Configure openssl. +dnl +have_openssl="1" +AC_CHECK_HEADERS([openssl/evp.h], , [have_openssl="0"]) +AC_CHECK_LIB([crypto], [OPENSSL_config], , [have_openssl="0"]) +if test "x${have_openssl}" = "x0" ; then + case "${host}" in + *-*-darwin*) + ;; + *) + AC_MSG_ERROR([Cannot build without OpenSSL for non-Darwin host]) + ;; + esac +fi + dnl dnl Configure libbz2. dnl @@ -353,6 +320,16 @@ if test "x${have_libbz2}" = "x1" ; then AC_DEFINE([HAVE_LIBBZ2], [], [HAVE_LIBBZ2]) fi +dnl +dnl Configure liblzma. +dnl +have_liblzma="1" +AC_CHECK_HEADERS([lzma.h], , [have_liblzma="0"]) +AC_CHECK_LIB([lzma], [lzma_stream_decoder], , [have_liblzma="0"]) +if test "x${have_liblzma}" = "x1" ; then + AC_DEFINE([HAVE_LIBLZMA], [], [HAVE_LIBLZMA]) +fi + dnl dnl Configure libpthread. dnl -- 2.44.1