ckolivas / lrzip

Long Range Zip
http://lrzip.kolivas.org
GNU General Public License v2.0
618 stars 76 forks source link

Continuation of https://github.com/ckolivas/lrzip/issues/183 #185

Closed demhademha closed 3 years ago

demhademha commented 3 years ago

Hi, the issue reported in issue https://github.com/ckolivas/lrzip/issues/183 still persists. To clarify, the github file is being downloaded from https://github.com/ckolivas/lrzip/archive/96c7c62584e2d703f2b928cc55dfa3284b5b458f.tar.gz this does not include the .git folder, which /util/gendisc.sh expects.

pete4abw commented 3 years ago

A workaround. Clone the git, run

$ make dist
$ tar -xf ...
$ ./configure

I suppose .git is not needed for a tarball. But it is needed for gitdesc.sh.

Otherwise, we're back to hardcoding in configure.ac or some other manual kludge.

edit: tarball extracted will have a working configure.

demhademha commented 3 years ago

Well, running make dist results in the following:

$ make dist
make  dist-bzip2 dist-gzip am__post_remove_distdir='@:'
make[1]: Entering directory '/home/ahmed/lrzip'
make  distdir-am
make[2]: Entering directory '/home/ahmed/lrzip'
if test -d "lrzip-0.631-92-96c7c62"; then find "lrzip-0.631-92-96c7c62" -type d ! -perm -200 -exec chmod u+w {} ';' && rm -rf "lrzip-0.631-92-96c7c
62" || { sleep 5 && rm -rf "lrzip-0.631-92-96c7c62"; }; else :; fi
test -d "lrzip-0.631-92-96c7c62" || mkdir "lrzip-0.631-92-96c7c62"
 (cd lzma && make  top_distdir=../lrzip-0.631-92-96c7c62 distdir=../lrzip-0.631-92-96c7c62/lzma \
     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)
make[3]: Entering directory '/home/ahmed/lrzip/lzma'
make  distdir-am
make[4]: Entering directory '/home/ahmed/lrzip/lzma'
 (cd C && make  top_distdir=../../lrzip-0.631-92-96c7c62 distdir=../../lrzip-0.631-92-96c7c62/lzma/C \
     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)
make[5]: Entering directory '/home/ahmed/lrzip/lzma/C'
make  distdir-am
make[6]: Entering directory '/home/ahmed/lrzip/lzma/C'
make[6]: *** No rule to make target '/home/ahmed/lrzip/lzma/ASM/x86/.asm', needed by 'distdir-am'. Stop.
make[6]: Leaving directory '/home/ahmed/lrzip/lzma/C'
make[5]: *** [Makefile:534: distdir] Error 2
make[5]: Leaving directory '/home/ahmed/lrzip/lzma/C'
make[4]: *** [Makefile:528: distdir-am] Error 1
make[4]: Leaving directory '/home/ahmed/lrzip/lzma'
make[3]: *** [Makefile:524: distdir] Error 2
make[3]: Leaving directory '/home/ahmed/lrzip/lzma'
make[2]: *** [Makefile:1067: distdir-am] Error 1
make[2]: Leaving directory '/home/ahmed/lrzip'
make[1]: *** [Makefile:1061: distdir] Error 2
make[1]: Leaving directory '/home/ahmed/lrzip'
make: *** [Makefile:1166: dist] Error 2

perhaps another alternative is that github actions returns a release tarball upon success, (which would include the ./configure script)

pete4abw commented 3 years ago

I was afraid of that, one of the _SOURCES lines in Makefile.am is missing one or more files required for compilation and distribution.

libtmplrzip_la_SOURCES = \
  lrzip_private.h \
  liblrzip_private.h \
  lrzip.c \
  lrzip_core.h \
  rzip.h \
  rzip.c \
  runzip.c \
  runzip.h \
  stream.c \
  stream.h \
  util.c \
  util.h \
  md5.c \
  md5.h \
  aes.c \
  aes.h \
  sha4.c \
  sha4.h \
  libzpaq/libzpaq.cpp \
  libzpaq/libzpaq.h

Is not a complete list of files for distribution. Same would be needed for the lzma subdirectory.

ckolivas commented 3 years ago

This came about as a result of commit 9f16f65705e2f1e11c41647405adcce6a12d286c when bringing back assembler code and all subsequent ASM changes to make it build.

ckolivas commented 3 years ago

Make dist has been fixed in git master. Now working around the git describe issue breaking git tarball downloads.

ckolivas commented 3 years ago

Fixed in master. You should be able to download a tarball from github now. Reserving git describe versioning for non-master tree.