erlyaws / yaws

Yaws webserver
https://erlyaws.github.io
BSD 3-Clause "New" or "Revised" License
1.29k stars 267 forks source link

Build from release tarball fails for 2.0.6 #339

Closed ilovezfs closed 6 years ago

ilovezfs commented 6 years ago

https://jenkins.brew.sh/job/Homebrew%20Core%20Pull%20Requests/26465/version=high_sierra/testReport/junit/brew-test-bot/high_sierra/install_yaws/

Making install in testsuite
make[1]: *** No rule to make target `testsuite.erl', needed by `../testsuite/testsuite.beam'.  Stop.
make: *** [install-recursive] Error 1

This doesn't seem to affect a build directly from the Git repo at 8254d4dba9702245bf8de0195264c08e78eb16ad

xyproto commented 6 years ago

I get the same error message when building/packaging the yaws package for Arch Linux, for 2.0.6.

testsuite.erl is present in git master, but not in the tarball.

vinoski commented 6 years ago

I downloaded the 2.0.6 tarball and testsuite.erl is definitely there:

$ tar tf ./yaws-2.0.6.tar.gz | grep testsuite.erl
yaws-yaws-2.0.6/testsuite/testsuite.erl

Using that tarball, I successfully ran the following to build Yaws 2.0.6 on OS X:

tar xf yaws-2.0.6.tar.gz
cd yaws-yaws-2.0.6
autoreconf -fi
./configure
make all
sudo make install

I didn't see any errors related to testsuite.erl (or any other errors).

ilovezfs commented 6 years ago

@vinoski I think you're confused about what we're referring to

Josephs-MacBook-Pro:~ joe$ curl -sL http://yaws.hyber.org/download/yaws-2.0.6.tar.gz | tar -tf -|grep testsuite.erl
Josephs-MacBook-Pro:~ joe$ 

Not there.

Perhaps you thought we meant https://github.com/klacke/yaws/archive/yaws-2.0.6.tar.gz which isn't the release tarball in question.

ilovezfs commented 6 years ago

CC @klacke it would be great to get this fixed.

vinoski commented 6 years ago

Yes, I used https://github.com/klacke/yaws/archive/yaws-2.0.6.tar.gz .

ilovezfs commented 6 years ago

@vinoski Ah OK. Yeah, that is just the auto-generated source archive tarball, not the release tarball.

klacke commented 6 years ago

Hmm, I'm not sure what we should do with this. I wasn't even aware of the archive thing. Neither can I find any settings to not generate these archives. The release we build (through bin/build_release) is the Yaws release.

ilovezfs commented 6 years ago

@klacke yeah it cannot be disabled. They're available for all tags on GitHub (it's just a thin wrapper around the git archive command).

ilovezfs commented 6 years ago

@klacke to be clear it's http://yaws.hyber.org/download/yaws-2.0.6.tar.gz that is broken.

xyproto commented 6 years ago

@klacke

The automatically generated archive file may change if the tag or branch is updated, while the release tarball is considered "fixed", for the purpose of packaging (and is used for generating a hash sum, and is signed with a gpg signature after packaging, for the case of Arch Linux).

klacke commented 6 years ago

Yes, I see this now. All clear. Working on it.

ilovezfs commented 6 years ago

Thanks @klacke!

klacke commented 6 years ago

Fixed. The problem was related to autotools and the host where I did the final build having an apt-get erlang instead of a source erlang. That problem still remains though, but the current tar ball, the http://yaws.hyber.org/download/yaws-2.0.6.tar.gz is good now.

ilovezfs commented 6 years ago

Thanks @klacke! Voilà https://github.com/Homebrew/homebrew-core/pull/29445

xyproto commented 6 years ago

Hey presto! https://www.archlinux.org/packages/community/x86_64/yaws/

Thanks @klacke