| 1 Jun 2023 |
trofi | That I should be able to reproduce locally. Which package do you build? | 21:36:03 |
trofi | (and I would expect libtoolize.in not to require a rebuild, what does log say, what triggers it's rebuild?) | 21:37:11 |
artemis | vi@philomena ~/z/nixpkgs (nixos-22.11)> nix build -f. pkgsCross.riscv64.libtool | 21:37:14 |
artemis | commit 9af373a61647257d16ae6062cddaa9094d24920c to be exact | 21:37:24 |
trofi | nod, i'll try on staging-next first | 21:37:38 |
artemis | In reply to @trofi:matrix.org (and I would expect libtoolize.in not to require a rebuild, what does log say, what triggers it's rebuild?) nothing, it doesnt rebuild | 21:37:43 |
artemis | look up there it says no need to remake target libtoolize.in | 21:37:53 |
artemis | so libtoolize.in is not rebuilt. but it is newer than doc/libtoolize.1 which does rebuild | 21:38:21 |
trofi | Aha. Then some other prerequisite is stale if it still wants to rebuild doc/libtoolize.1. Maybe a few lines earlier. | 21:38:39 |
artemis | hmm? no it says that libtoolize.in is newer | 21:39:01 |
artemis | and is the reason for the rebuild | 21:39:09 |
artemis | here is the full evaluation of libtoolize.1 https://dpaste.com/G93P2BJ5X | 21:40:51 |
trofi | Hm. If you add --keep-failed you can check both files' timestamps in temp dir. I wonder if one of them matches build time. | 21:41:53 |
artemis | yeah how do i find the temp dir | 21:42:10 |
artemis | oh it tells me | 21:42:52 |
artemis | what it says note: keeping build directory '/tmp/nix-build-libtool-riscv64-unknown-linux-gnu-2.4.7.drv-0' but that directory does not exist | 21:43:30 |
trofi | Should be there. | 21:44:03 |
artemis | it is not | 21:44:11 |
artemis | vi@philomena ~/z/nixpkgs (nixos-22.11)> ls -a /tmp | grep nix
.font-unix
.ICE-unix
nix-shell-5258-0
.X11-unix
.XIM-unix | 21:44:54 |
trofi | https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/tools/misc/libtool/libtool2.nix#L34 should make sure that doc/libtoolize.1 is newer that just patched libtoolize.in. | 21:45:43 |
artemis | ah that would explain it then. 22.11 has the substituteInPlace but not the touch | 21:47:40 |
artemis | ok trying with that touch added but it will be awhile because i have to rebuild everything since now libtool is changed for the x86 toolchain too haha | 21:49:02 |
trofi | Yeah, https://github.com/NixOS/nixpkgs/commit/6becbd39707fbf8306b35af1828893eec0d03646 was a bit large to backport | 21:49:07 |
trofi | you can do target-specific hack as well: postPatch = ''...'' + lib.optionalString stdenv.hostPlatform.isRiscV "touch foo" | 21:50:34 |
trofi | That way it should rebuild a bit less. | 21:50:47 |
artemis | ah ty | 21:52:01 |
artemis | that fixes it! | 21:52:21 |
trofi | \o/ | 21:52:25 |
trofi | I wonder why the build for me Just Works without the change. My attempt: $ nix build --no-link github:NixOS/nixpkgs/9af373a61647257d16ae6062cddaa9094d24920c#pkgsCross.riscv64.libtool --rebuild -L. Yields this log: https://bpa.st/raw/TCIB4 | 23:04:13 |
| 2 Jun 2023 |
artemis | In reply to @trofi:matrix.org I wonder why the build for me Just Works without the change. My attempt: $ nix build --no-link github:NixOS/nixpkgs/9af373a61647257d16ae6062cddaa9094d24920c#pkgsCross.riscv64.libtool --rebuild -L. Yields this log: https://bpa.st/raw/TCIB4 it is maybe interesting information they we're using nix from gentoo | 03:26:46 |