pkg_config.c:49:10: fatal error: 'pkg_repos.h' file not found 49 | #include "pkg_repos.h" | ^~~~~~~~~~~~~ I can't find the file either.
the package has been built properly on the cluster, which means everything is there, it is probably something on your side.
(In reply to Baptiste Daroussin from comment #1) The build failed on two systems (14.1-STABLE: one amd64, one i386). As I said above, I can't find it either. I looked in the port's working direcotry and directly in the distribution file and I can't find it. Is it possible that the header file lives in the live filesystem on the build cluster (but not in the package)? rwsrv08# find /build/ports/kits/ports/ports-mgmt/pkg/work/pkg-1.21.3 -type f -name pkg_repos\* /build/ports/kits/ports/ports-mgmt/pkg/work/pkg-1.21.3/docs/pkg_repos.3 rwsrv08# rwsrv08> tar -tf freebsd-pkg-1.21.3_GH0.tar.gz \*/pkg_repos\* pkg-1.21.3/docs/pkg_repos.3 rwsrv08> Where is it meant to be? Thank you.
https://github.com/freebsd/pkg/blob/main/libpkg/repo/Makefile.autosetup pkg_repos.h is created dynamically at build time, hence why I say this must be coming from your side. to be able to help you I will need more information: How to you build pkg: - manually - poudriere - other way What ever mean you have used to build pkg, I would been the full build log.
(In reply to Baptiste Daroussin from comment #3) Thank you, Baptiste. Manual build with make(1). The output from a script(1) session can be found at the following link. http://www.jmarshall.id.au/~john/ports/pkg1.21.3/pkg_build_log
it sounds like a race, how many CPU to you have? can you try building in the ports tree with: make MAKE_JOBS_UNSAFE=1
(In reply to Baptiste Daroussin from comment #5) 8 CPU's on the 64-bit machine, 2 cpu's on the 32-bit. I was not using 'make -j' but I tried 'make MAKE_JOBS_UNSAFE=1' anyway (because you askewd). No difference in the log apart from the script(1) start and stop times. Here is the second log http://www.jmarshall.id.au/~john/ports/pkg1.21.3/pkg_build_log_2 Here is the diff between the logs: rwsrv08# diff ~john/web/pub/ports/pkg1.21.3/pkg_build_log* 1,2c1,2 < Script started on Mon May 27 20:27:51 2024 < Command: make -C ports-mgmt/pkg --- > Script started on Mon May 27 21:39:20 2024 > Command: make MAKE_JOBS_UNSAFE=1 -C ports-mgmt/pkg 167d166 < --- all --- 293c292 < Script done on Mon May 27 20:28:11 2024 --- > Script done on Mon May 27 21:39:40 2024 rwsrv08#
sorry, I have no idea, how I can help here. I have checked, FreeBSD 14.1, 14.0 13.2, 13.3 and current and succeed in building pkg from the ports tree. I tried manually with make, and I tried with poudriere, I have no more ideas here.
(In reply to Baptiste Daroussin from comment #7) OK. Thanks heaps for your time bapt. I really appreciate you looking at this. I just patched ports-mgmt/pkg in my ports tree to take it back to 3d57467ec90e (1.21.2) and tried building that. It no longer builds either, and falls over with the same error :-( Ball's in my court. Really weird that the same thing is happening on two separate servers. Thanks again for your time. Sorry for the noise :-(
Guilty! - I had introduced local.sys.mk files on both systems (fine) - Inspired by other .mk files, I had wrapped it in '.if !target()' (bad) - If I removed local.sys.mk, I could build pkg. - If I replaced local.sys.mk with an empty file, I could build pkg. - If I introduced a single line with a target (__<local.sys.mk>__:), the build of pkg would break. It seems that having a target in local.sys.mk is bad news. I have replaced that conditional wrapper with '.if !defined()' and the world is happy again. Thank you Baptiste for giving some of your time to help me. Sorry again for the noise.