bazelbuild / rules_pkg

Bazel rules for creating packages of many types (zip, tar, deb, rpm, ...)
Apache License 2.0
216 stars 171 forks source link

testing #763 #770

Open aiuto opened 10 months ago

aiuto commented 10 months ago

@kellyma2

I'm baffled. I took the example you had and added a python version of the binary.

python alone works fine. C++ fails with a permission denied error, not file not found.

I added some debugging "ls -l"s into the install stanza and the files seem to be in the source. I can't spend a lot of time on it this week, but it seems that the permission problem is while calling /usr/bin/strip. It might be that the file is mode o555 rather than o755. But.. how has this been working for others?

kellyma2 commented 10 months ago

I'll take a bit closer look at this either tomorrow or Thursday to see if I can narrow down what's going on for me a bit. Are you able to share a bit more detail about the environment in which you're testing this?

aiuto commented 10 months ago

Debian 6.5.3, bazel 6.4.0 RPM version 4.18.0

And, now that I list the rpmbuild version, I remember that rpmbuild has some breaking changes between versions. That may be a clue. What do you have?

kellyma2 commented 10 months ago

Debian 6.5.3, bazel 6.4.0 RPM version 4.18.0

And, now that I list the rpmbuild version, I remember that rpmbuild has some breaking changes between versions. That may be a clue. What do you have?

bazel 6.3.2, rpmbuild 4.14.3, custom-ish Linux based on CentOS. I'll test against vanilla Fedora/CentOS tomorrow with newer rpmbuild and see what I get.

aiuto commented 10 months ago

@nacl IIRC, there were some changes between recent rpmbuild versions which we had to work around to achieve backwards compatibility. One was around SOURCE_DATE_EPOCH at 4.14.0

This line suggests that something on either side of 4.16 required putting the version in the toolchain declaration. And lo, you are 4.14 and I am 4.18, so that's a lead.

Sometimes I wonder if we should just have done #662.