In my project's directory, I have some subdirs: code/
, export/
, docs/
and object/
. What make
does is simply compile all the files from the code dir, and put the .o files into the object dir.
The problem is, I told git to ignore all .o files, because I don't want them uploaded, so it doesn't track the object dir either. I'm actually OK with that, I don't want the object/
uploaded to my GitHub account as well, but with the current solution (which is a simple empty text file inside the object/
dir), the directory does get uploaded and needs to be present before the build (the makefile just assumes it's there).
This doesn't really seem like the best solution, so is there a way to check if a directory doesn't exist before the build in a make file, and create it if so? This would allow for the object dir not to be present when the make command is called, and created afterwards.
Just have a target for it:
object/%.o: code/%.cc object
compile $< somehow...
object:
mkdir $@
You have to be a little more careful if you want to guard against the possibility of a file called "object", but that's the basic idea.