Created attachment 801025 [details, diff] eautoreconf removed Running m.nviz.image results in either a black image or an image with a garbled mixture of the content from my X screen. I have tried this on three different machines with different graphic drivers, Mesa iris & nouveau and Nvidias proprietary - with the same result. When I manually build grass-8.2.0 from source - m.nviz.image runs fine. Also, by removing eautoreconf in the ebuild (as in the attached patch) makes m.nviz.image work as intended - I dont't know why..., and perhaps it is not the correct approach. Any ideas?
Can you please provide: 1. the output of emerge --info 2. a series of steps to reproduce the bug (preferably based on publicly available data) 3. the file build.log created by 'MAKEOPT="-j1" ebuild grass-8.2.0-r1.ebuild clean install' of your patched ebuild 4. the same as in 3. but with the original ebuild compiled on the same machine This would help me to reproduce the bug. I would like to find the reason behind this issue before removing "eautoreconf" as it sounds not to address the source of this bug. Many thanks in advance.
Created attachment 801223 [details] emerge --info
Created attachment 801226 [details] MAKEOPT="-j1" ebuild /adm/portage/sci-geosciences/grass/grass-8.2.0-r2.ebuild clean install
Comment on attachment 801226 [details] MAKEOPT="-j1" ebuild /adm/portage/sci-geosciences/grass/grass-8.2.0-r2.ebuild clean install Sorry (my mistake), the command I ran for this output was "MAKEOPT="-j1" ebuild /var/db/repos/gentoo/sci-geosciences/grass/grass-8.2.0-r1.ebuild clean install"
Created attachment 801229 [details] MAKEOPT="-j1" ebuild /adm/portage/sci-geosciences/grass/grass-8.2.0-r2.ebuild clean install
Created attachment 801232 [details] MAKEOPT="-j1" emerge -1 =sci-geosciences/grass-8.2.0-r2
Hi Mario, and thanks for your response! 1) attached 2) The following steps can reproduce the bug for me (tested with Nvidias proprietary drivers): echo -e "north: 3\nsouth: 0\neast: 3\nwest: 0\nrows: 3\ncols: 3\n0 0 0\n0 1 0\n0 0 0" | r.in.ascii input=- output=test_nviz g.region rast=test_nviz m.nviz.image elevation_map=test_nviz -a mode=fine resolution_fine=1 color_map=test_nviz zexag=1 output=/tmp/nviz_test format=ppm 3) attached (but, see below): "MAKEOPT="-j1" ebuild /adm/portage/sci-geosciences/grass/grass-8.2.0-r2.ebuild clean install" 4) attached: "MAKEOPT="-j1" ebuild /var/db/repos/gentoo/sci-geosciences/grass/grass-8.2.0-r1.ebuild clean install" I keep my local ebuild in /adm/portage, and when i did as you (almost) wrote in 3) I still got a garbled image (attached), but when I instead ran (as I normally do) "MAKEOPT="-j1" emerge -1 =sci-geosciences/grass-8.2.0-r2" I don't - I am not sure why (and I have never used ebuild before to install a package). However, it would be interesting to hear if you can replicate the bug using the steps in 2).
Created attachment 801235 [details] Example of garbled image
Created attachment 801238 [details] Expected output from 2)
note: MAKEOPTS, not MAKEOPT
Created attachment 801295 [details] MAKEOPTS="-j1" ebuild /var/db/repos/gentoo/sci-geosciences/grass/grass-8.2.0-r1.ebuild clean install Thanks, I was actually wondering why it went so fast... :) - and, following the steps in 2) this gives a good/expected image, so it is a bit more involved than I thought...
@Sam: Thanks for the hint. It was just a typo. @Ulf: You don't need to upload new logs. I was able to reproduce the issue. I already have a hypothesis about the root cause. `eautoreconf` creates a file config.h from config.h.in in the repo which defines OPENGL_FBO which itself alters the behavior of the renderer (see: https://github.com/OSGeo/grass/commit/61b83ac2db76d1c44533371bb1edfab675758814) I have to ask upstream for assistance. @Ulf: The "ebuild install" command didn't install anything onto your system, but just under /var/tmp/portage/sci-geosciences/grass/grass-8.2.0-r2/image. So it is normal, you didn't see a change in behavior.
It's exactly the other way round. Running `autoheader` as part of `eautoreconf` removes `OPENGL_FBO` from `config.h.in` which leads to the issue.
@Ulf: I prepared a pull request. Thanks for nailing it down to `eautoreconf`. This helped a lot. Good job!
I only used "brute force". Thanks for tracking it down!
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=99201b14faf305a88326bbb59343cc4e3b272d1c commit 99201b14faf305a88326bbb59343cc4e3b272d1c Author: Mario Haustein <mario.haustein@hrz.tu-chemnitz.de> AuthorDate: 2022-08-27 08:04:49 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2022-08-27 10:52:46 +0000 sci-geosciences/grass: don't call eautoreconf Upstream have their own header which autoheader conflicts with. Just use the dist tarball's build system files instead. Closes: https://bugs.gentoo.org/866554 Signed-off-by: Mario Haustein <mario.haustein@hrz.tu-chemnitz.de> Closes: https://github.com/gentoo/gentoo/pull/27030 Signed-off-by: Sam James <sam@gentoo.org> .../grass/{grass-7.8.7-r1.ebuild => grass-7.8.7-r2.ebuild} | 8 ++++++-- .../grass/{grass-8.0.2-r1.ebuild => grass-8.0.2-r2.ebuild} | 8 ++++++-- .../grass/{grass-8.2.0-r1.ebuild => grass-8.2.0-r2.ebuild} | 8 ++++++-- sci-geosciences/grass/grass-9999.ebuild | 8 ++++++-- 4 files changed, 24 insertions(+), 8 deletions(-)