bmx-ng / bmk

The enhanced BlitzMax build program.
zlib License
28 stars 13 forks source link

New commands to cleanup/remove .bmx in modules/project #44

Open GWRon opened 6 years ago

GWRon commented 6 years ago

During "cleaning up" my project folders to avoid potential problems when trying to find bugs in BMK I thought BMK could benefit from a commands: cleanmods and cleanapp

What it does

... is something similar to "make clean": it removes all the stuff which a "makemods" or "makeapp" would create. This also includes removing the ".bmx" folders if they are empty afterwards (so only remove, if you did not have custom stuff in it - or files from a vanilla-blitzmax installation).

Intention

So ideally you could run bmk cleanapp path/to/app/TVTower.bmx and it removes all precompiled stuff - so I could "zip" it and just get a "compile your own game"-archive without any precompiled stuff which needs a loot of space in the archive.

Notes

As it is more than deleting the .bmx directory right next to a project file things might not be a simple 3-liner. It would need to do a similar thing than the "dependency graph" bmk currently is building up during building stage. For cleanapp I would suggest to only remove "project stuff", not imported modules (which might have been autobuild by a previous makeapp - so this isn't exactly cleaning up what it has produced, think that would be ok).

Kerntrick commented 6 years ago

Couldn't this be done easier with a 'pre.bmk' file or adding a new @bmk command to 'core.bmk' then using

' @bmk cleanapp

in the main source code?

GWRon commented 6 years ago

What you propose is a different thing.

I want a possibility to clean up a project folder. Your proposal should be done in a "post.bmk" ... So it removes all the bcc/bmk temporary files when done.

A new bmk command would allow to run it without executing the whole syntax check/compilation chain.