[Attn.Maintainer] libarchive

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

[Attn.Maintainer] libarchive

Achim Gratz

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.


Regards,
Achim.
--
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

Factory and User Sound Singles for Waldorf Blofeld:
http://Synth.Stromeko.net/Downloads.html#WaldorfSounds
Reply | Threaded
Open this post in threaded view
|

Re: [Attn.Maintainer] libarchive

cygwin-apps mailing list
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

Reply | Threaded
Open this post in threaded view
|

[ITA] libarchive / mingw64-{i686,x86_64}-libarchive

Achim Gratz
>> If you'd rather have me co-maintain or adopt the package, let me
>> know.
>
> You are the new maintainer

Here is the formal ITA for that, plus the request to also hand over the
corresponding mingw64 packages which will need to be updated also.


Regards,
Achim.
--
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

Factory and User Sound Singles for Waldorf Blofeld:
http://Synth.Stromeko.net/Downloads.html#WaldorfSounds
Reply | Threaded
Open this post in threaded view
|

Re: [ITA] libarchive / mingw64-{i686,x86_64}-libarchive

cygwin-apps mailing list
On 30.10.2020 20:36, Achim Gratz wrote:

>>> If you'd rather have me co-maintain or adopt the package, let me
>>> know.
>>
>> You are the new maintainer
>
> Here is the formal ITA for that, plus the request to also hand over the
> corresponding mingw64 packages which will need to be updated also.
>
>
> Regards,
> Achim.
>

both yours

Regards
Marco