"make clean" fails on FreeBSD in 15.0.0 Beta 01Nov23
Summary
Reproducibility | Platform | OS | OS Version | Product Version |
---|---|---|---|---|
always | AMD64 | FreeBSD | 12.4 | 15.0.0 Beta 01Nov23 |
Description
Running gmake clean
(or make clean
) in a configured build tree on FreeBSD fails with this error:
==>Entering directory /u/ldisk/bacula/git/build-test/bacula/platforms
gmake[1]: Entering directory '/u/ldisk/bacula/git/build-test/bacula/platforms'
make[2]: Entering directory `/u/ldisk/bacula/git/build-test/bacula/platforms/freebsd'
make[2]: Leaving directory `/u/ldisk/bacula/git/build-test/bacula/platforms/freebsd'
make[2]: Entering directory `/u/ldisk/bacula/git/build-test/bacula/platforms/osx'
make[2]: Unknown modifier '/'
make[2]: "/u/ldisk/bacula/git/build-test/bacula/platforms/osx/Makefile" line 71: Missing dependency operator
make[2]: "/u/ldisk/bacula/git/build-test/bacula/platforms/osx/Makefile" line 74: Need an operator
make[2]: Unknown modifier '/'
make[2]: Unknown modifier '/'
make[2]: Unknown modifier '/'
make[2]: "/u/ldisk/bacula/git/build-test/bacula/platforms/osx/Makefile" line 242: warning: duplicate script for target "openssl-.tar.gz/" ignored
make[2]: "/u/ldisk/bacula/git/build-test/bacula/platforms/osx/Makefile" line 239: warning: using previous script for "openssl-.tar.gz/" defined here
make[2]: "/u/ldisk/bacula/git/build-test/bacula/platforms/osx/Makefile" line 242: warning: duplicate script for target "&&" ignored
make[2]: "/u/ldisk/bacula/git/build-test/bacula/platforms/osx/Makefile" line 239: warning: using previous script for "&&" defined here
make[2]: "/u/ldisk/bacula/git/build-test/bacula/platforms/osx/Makefile" line 242: warning: duplicate script for target "print" ignored
make[2]: "/u/ldisk/bacula/git/build-test/bacula/platforms/osx/Makefile" line 239: warning: using previous script for "print" defined here
make[2]: Unknown modifier '/'
make[2]: Unknown modifier '/'
make[2]: Unknown modifier '/'
make[2]: "/u/ldisk/bacula/git/build-test/bacula/platforms/osx/Makefile" line 250: warning: duplicate script for target "openssl-.tar.gz/" ignored
make[2]: "/u/ldisk/bacula/git/build-test/bacula/platforms/osx/Makefile" line 239: warning: using previous script for "openssl-.tar.gz/" defined here
make[2]: "/u/ldisk/bacula/git/build-test/bacula/platforms/osx/Makefile" line 250: warning: duplicate script for target "&&" ignored
make[2]: "/u/ldisk/bacula/git/build-test/bacula/platforms/osx/Makefile" line 239: warning: using previous script for "&&" defined here
make[2]: "/u/ldisk/bacula/git/build-test/bacula/platforms/osx/Makefile" line 250: warning: duplicate script for target "print" ignored
make[2]: "/u/ldisk/bacula/git/build-test/bacula/platforms/osx/Makefile" line 239: warning: using previous script for "print" defined here
make[2]: Fatal errors encountered -- cannot continue
make[2]: stopped in /u/ldisk/bacula/git/build-test/bacula/platforms/osx
gmake[1]: Leaving directory '/u/ldisk/bacula/git/build-test/bacula/platforms'
There are two problems to note here:
-
It is trying to clean the
platforms/osx/
directory. This subdirectory is the only one where theMakefile
is in git. The other platforms subdirectories containMakefile.in
and configure generates theMakefile
only for the current platform (by setting thePFILES
variable). I think that logic needs to be added to configure for the osx platform (or whatever it is called today) andplatforms/osx/Makefile
renamed asplatforms/osx/Makefile.in
. -
The file
platforms/Makefile.in
forces theMAKE
variable to bemake
. That overrides the built-in value, which is why it suddenly switches to usingmake
instead ofgmake
as seen in the output.
Steps to Reproduce
- Configure Bacula
- Run "gmake clean" or "make clean"
Additional information
The error also happens during the configure, but is ignored.