I ran into an interesting scenario. While attempting to build emulators/i386-wine-devel within a FreeBSD 12 i386 poudriere jail, I found that I was unable to run make config-recursive (via poudriere options). The error was:

root@portbuild:/usr/ports/emulators/i386-wine-devel # make config-recursive
===> Setting user-specified options for i386-wine-devel-4.21,1 and dependencies
make[1]: "/usr/ports/Mk/bsd.port.mk" line 1577: Unassociated shell command 
"@${FALSE}"
make[1]: "/usr/ports/Mk/bsd.gcc.mk" line 190: warning: duplicate script for target 
"test-gcc" ignored
make[1]: "/usr/ports/Mk/bsd.gcc.mk" line 215: warning: using previous script for 
"test-gcc" defined here
...

The first line is make attempting to complain that bsd.port[.post].mk was loaded twice. That is probably its own bug in that it could not report the error correctly. I am not sure why the code does not just use .error to exit at that point.

The issue stopping the port from building is that it has a Makefile.i386 file in it. At first, I thought it was because it was including the Makefile which included the master Makefile and had an error due to some sort of SHLVL equivalent. That was not it. It turns out that the Makefile.i386 existence was the issue causing bsd.port.mk to be included twice. I renamed it to Makefile.cross, and it worked.

My question is whether it should have worked as Makefile.i386, as it used to work, or should the i386-wine and i386-wine-devel ports have their Makefile.i386 files renamed.

Sean
--
s...@freebsd.org
_______________________________________________
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"

Reply via email to