NetworkBlockDevice / nbd

Network Block Device
GNU General Public License v2.0
450 stars 116 forks source link

3.26.1 systemd/ builds from Git but fails from release #166

Closed tacerus closed 1 month ago

tacerus commented 4 months ago

Hi,

I cannot quite figure out why this happens. From the release archive, the systemd part fails to build:

$ curl -LOs https://github.com/NetworkBlockDevice/nbd/releases/download/nbd-3.26.1/nbd-3.26.1.tar.xz
$ tar -xf nbd-3.26.1.tar.xz
$ cd nbd-3.26.1/
$ ./configure
$ make -C systemd
make: Entering directory '/tmp/nbd/nbd-3.26.1/systemd'
make: *** No rule to make target '../man/sh.tmpl', needed by 'nbd@.service.sh.in'.  Stop.
make: Leaving directory '/tmp/nbd/nbd-3.26.1/systemd'

Cloning the repository and checking out the nbd-3.26.1 tag (which is at commit 9e9e0168e70c074cf089d7a3cf94acabecb21e8d), it builds fine:

$ git clone -q https://github.com/NetworkBlockDevice/nbd.git
$ cd nbd
$ git fetch origin nbd-3.26.1
$ git checkout nbd-3.26.1
$ autoreconf -i
$ ./configure
$ make -C systemd
make: Entering directory '/tmp/nbd/nbd/systemd'
cat ../man/sh.tmpl nbd@.service.tmpl > nbd@.service.sh.in
echo EOF >> nbd@.service.sh.in
cd .. && /bin/sh ./config.status systemd/nbd@.service.sh
config.status: creating systemd/nbd@.service.sh
sh nbd@.service.sh > nbd@.service
make: Leaving directory '/tmp/nbd/nbd/systemd'

I also tried autoreconf in the archive, but it did not help.

Diff-ing the Makefile.am in man/ and systemd/ I do not find any differences (as expected), but naturally there are various differences in the generated files. Unfortunately I'm not sure which of those are interesting and which are normal for autoconf.

Am I missing something?

yoe commented 1 month ago

This was fixed with commit f8d7d3dbf1ef2ef84c92fe375ebc8674a79e25c2, back in March. I suppose I needed to do an update of the release, but that apparently did not happen.

I'm working my way through the outstanding bugs right now, will do a release after that.

tacerus commented 1 month ago

Thank you!