[Attn.Maintainer] libarchive
Marco Atzeri
marco.atzeri@gmail.com
Fri Oct 30 10:23:12 GMT 2020
On 27.10.2020 11:32, Achim Gratz wrote:
>
> Hi Marco,
>
> the last release of libarchive hasn't been pushed to
>
> https://cygwin.com/git-cygwin-packages/?p=git/cygwin-packages/libarchive.git
>
> could that please be corrected?
>
> Also it is built without ZStd and LZO support (the former presumably
> because you didn't have the headers installed and the latter because it
> requires a configure argument). Looking into that I noticed that the
> configury rolls in Cygwin with MSys and MinGW and produces the expected
> nonsense, in particular the SSL library is not found that way. It works
> slightly better via cmake, but that doesn't produce a correctly named
> DLL, so I stopped there. Likewise there are tests for lrzip/grzip that
> don't seem to have a corresponding configure option (or configure
> tests), so I didn't try if they work.
>
> Here are the fixed up cygport file plus the configury patch:
>
> --8<---------------cut here---------------start------------->8---
> # -*- mode: sh; sh-shell: bash -*-
> # inherit cmake # doesn't produce a correctly named library
> BUILD_REQUIRES=" libbz2-devel zlib-devel libzstd-devel liblzo2-devel liblz4-devel liblzma-devel"
> BUILD_REQUIRES+=" libiconv-devel libxml2-devel libssl-devel"
> NAME="libarchive"
> VERSION="3.4.3"
> RELEASE="2"
> CATEGORY="Archive"
> SUMMARY="Multiple-format archive and compression library"
> DESCRIPTION="Libarchive is a programming library that can create and read
> several different streaming archive formats, including most popular tar
> variants, several cpio formats, and both BSD and GNU ar variants. It can also
> write shar archives and read ISO9660 CDROM images and ZIP archives. The bsdtar
> program is an implementation of tar(1) that is built on top of libarchive. It
> started as a test harness, but has grown into a feature-competitive replacement
> for GNU tar."
> HOMEPAGE="https://www.libarchive.org/"
> SRC_URI="https://www.libarchive.org/downloads/${P}.tar.gz"
> SRC_DIR="${P}"
>
> PKG_NAMES="${PN}13 ${PN}-devel bsdtar bsdcpio bsdcat"
> eval ${PN}13_CONTENTS='"usr/bin/cygarchive-13.dll"'
> libarchive_devel_CONTENTS="usr/include/ usr/lib/ usr/share/doc/ usr/share/man/man[35]/"
> bsdtar_CONTENTS="usr/bin/bsdtar.exe usr/share/man/man1/bsdtar.*"
> bsdcpio_CONTENTS="usr/bin/bsdcpio.exe usr/share/man/man1/bsdcpio.*"
> bsdcat_CONTENTS="usr/bin/bsdcat.exe usr/share/man/man1/bsdcat.*"
>
> CYGCONF_ARGS="--with-lzo2"
> --8<---------------cut here---------------end--------------->8---
>
> --8<---------------cut here---------------start------------->8---
> --- origsrc/libarchive-3.4.3/configure.ac
> +++ src/libarchive-3.4.3/configure.ac
> @@ -86,13 +86,10 @@ AC_CANONICAL_HOST
>
> dnl Compilation on mingw and Cygwin needs special Makefile rules
> inc_windows_files=no
> -inc_cygwin_files=no
> case "$host_os" in
> *mingw* ) inc_windows_files=yes ;;
> - *cygwin* | *msys*) inc_cygwin_files=yes ;;
> esac
> AM_CONDITIONAL([INC_WINDOWS_FILES], [test $inc_windows_files = yes])
> -AM_CONDITIONAL([INC_CYGWIN_FILES], [test $inc_cygwin_files = yes])
>
> dnl Defines that are required for specific platforms (e.g. -D_POSIX_SOURCE, etc)
> PLATFORMCPPFLAGS=
> @@ -243,7 +240,7 @@ AM_CONDITIONAL([STATIC_BSDCPIO], [ test
>
> # Set up defines needed before including any headers
> case $host in
> - *mingw* | *cygwin* | *msys* )
> + *mingw* | *msys* )
> AC_DEFINE([_WIN32_WINNT], 0x0502, [Define to '0x0502' for Windows Server 2003 APIs.])
> AC_DEFINE([WINVER], 0x0502, [Define to '0x0502' for Windows Server 2003 APIs.])
> AC_DEFINE([NTDDI_VERSION], 0x05020000, [Define to '0x05020000' for Windows Server 2003 APIs.])
> @@ -316,7 +313,7 @@ AC_ARG_WITH([bz2lib],
> if test "x$with_bz2lib" != "xno"; then
> AC_CHECK_HEADERS([bzlib.h])
> case "$host_os" in
> - *mingw* | *cygwin* | *msys*)
> + *mingw* | *msys*)
> dnl AC_CHECK_LIB cannot be used on the Windows port of libbz2, therefore
> dnl use AC_LINK_IFELSE.
> AC_MSG_CHECKING([for BZ2_bzDecompressInit in -lbz2])
> @@ -1089,7 +1086,7 @@ main(int argc, char **argv)
> ])
>
> case "$host_os" in
> - *mingw* | *cygwin* | *msys*)
> + *mingw* | *msys*)
> ;;
> *)
> CRYPTO_CHECK(MD5, LIBC, md5)
> @@ -1157,7 +1154,7 @@ if test "x$with_openssl" != "xno"; then
> AC_CHECK_HEADERS([openssl/evp.h])
> saved_LIBS=$LIBS
> case "$host_os" in
> - *mingw* | *cygwin* | *msys*)
> + *mingw* | *msys*)
> case "$host_cpu" in
> x86_64)
> AC_CHECK_LIB(eay64,OPENSSL_config)
> @@ -1198,7 +1195,7 @@ if test "x$found_LIBMD" != "xyes"; then
> fi
>
> case "$host_os" in
> - *mingw* | *cygwin* | *msys*)
> + *mingw* | *msys*)
> CRYPTO_CHECK_WIN(MD5, CALG_MD5)
> CRYPTO_CHECK_WIN(SHA1, CALG_SHA1)
> CRYPTO_CHECK_WIN(SHA256, CALG_SHA_256)
> --8<---------------cut here---------------end--------------->8---
>
> With these, the package builds correctly. I have a few test fails that
> all look like ATWIL / permission problems to me and none look like they
> weren't present before.
>
> If you'd rather have me co-maintain or adopt the package, let me know.
You are the new maintainer
>
> Regards,
> Achim.
>
Thanks
Marco
More information about the Cygwin-apps
mailing list