src/Makefile bugs and fixes
Posted: October 20th, 2009, 8:29 pm
Hello, I've been packaging Sandbox for inclusion in Debian non-free and redistribution in other distributions such as Ubuntu and Edubuntu. This is a very nifty piece of software I've enjoyed playing with while working on it! I've come across some src/Makefile bugs which could be easily fixed:
The first is a typo in the target clean:
is missing $(RPGCLIENT_OBJS) it should be:
In all the enet targets you are not using Autotools but instead generating your own configure file. I think you should add autotools to the list of things the build depends on and let the src/Makefile make enet's build configurations using autotools (this is useful for letting more architectures use the program). To do that, you can change the following targets in src/Makefile:
should be changed to:
and the following target should be changed:
to:
and then your clean target could now be even "cleaner!" by adding "clean-enet" as the prerequesit to the clean target:
If you have any other questions, PM me
The first is a typo in the target clean:
Code: Select all
-$(RM) $(SERVER_OBJS) $(CLIENT_PCH) $(CLIENT_OBJS) $(SSPCLIENT_OBJS) $(FPSCLIENT_OBJS) $(LAUNCHER_OBJS) $(MASTER_OBJS) $(PLATFORM_PREFIX)_server_* $(PLATFORM_PREFIX)_client_*
Code: Select all
-$(RM) $(SERVER_OBJS) $(CLIENT_PCH) $(CLIENT_OBJS) $(SSPCLIENT_OBJS) $(FPSCLIENT_OBJS) $(RPGCLIENT_OBJS) $(LAUNCHER_OBJS) $(MASTER_OBJS) $(PLATFORM_PREFIX)_server_* $(PLATFORM_PREFIX)_client_*
In all the enet targets you are not using Autotools but instead generating your own configure file. I think you should add autotools to the list of things the build depends on and let the src/Makefile make enet's build configurations using autotools (this is useful for letting more architectures use the program). To do that, you can change the following targets in src/Makefile:
Code: Select all
clean-enet: enet/Makefile
$(MAKE) -C enet/ clean
Code: Select all
clean-enet:
[ ! -f enet/Makefile ] || $(MAKE) -C enet clean
rm -f enet/config.guess enet/config.log enet/config.sub
rm -f enet/configure enet/config.status
rm -f enet/Makefile enet/include/Makefile enet/include/enet/Makefile
rm -f enet/Makefile.in enet/include/Makefile.in
rm -f enet/aclocal.m4 enet/enet.dsp
-rm -r enet/autom4te.cache
-rm enet/include/enet/Makefile.in
-rm -r enet/.deps
and the following target should be changed:
Code: Select all
enet/Makefile:
cd enet; ./configure
Code: Select all
enet/Makefile:
cd enet; aclocal && automake -a -c --foreign && autoconf
cd enet; ./configure
and then your clean target could now be even "cleaner!" by adding "clean-enet" as the prerequesit to the clean target:
Code: Select all
clean: clean-enet
-$(RM) $(SERVER_OBJS) $(CLIENT_PCH) $(CLIENT_OBJS) $(SSPCLIENT_OBJS) $(FPSCLIENT_OBJS) $(RPGCLIENT_OBJS) $(LAUNCHER_OBJS) $(MASTER_OBJS) $(PLATFORM_PREFIX)_server_* $(PLATFORM_PREFIX)_client_*
If you have any other questions, PM me