Multiple Projects - I got it to work and I don't like how I did it

We’re developing a game engine using OpenFL. At the same time, a few separate teams are working on games on top of the engine, so we had the need to separate the games into different FlashDevelop projects. I can accept that FlashDevelop can only have one project open at a time. However, since everything is being updated almost daily, we’re using BitBucket/SourceTree to keep code up to date and compiling straight from the .hx source files including for the engine.

There was no where in FlashDevelop that I was able to find in the interface where I could link the engine source files to be compiled alongside the games. Unlike other platform targets Project > Properties > Classpaths is locked for lime so there was no way to add it there. I tried searching online and the answer I got was basically, “Iono lol, probably can’t do it”.

So, for each project, I had to go into the project.xml file and add them by hand

<!-- classpath, haxe libs --> <source path="src" /> <source path="../enginename/src" /> <haxelib name="openfl" /> <haxelib name="actuate" />

And while this works – I can reference the files and compile fine – this doesn’t quite sit well with me since other platforms don’t require manual config file editing. Is this really the only “easy” way to do it, or is there something obvious that I’m missing here?

I think this is the usual way. Either this or making your engine into a haxelib and adding that to the config file but it will make little difference. IMHO I actually prefer this approach compared to an often clunky UI to do the exact same job but maybe that’s just me…

As another variant you can make library from engine.
You can use library without uploading it to haxelib site, just use haxelib dev libname path/to/library

This is what I was kinda looking for, but this also seems a little clunky as now it’s now command line stuff still outside FlashDevelop XD

If I do this, will changes in the engine code be reflected immediately in the other projects or will I need to update this every time?

As a haxelib all projects will reference the same source so one change will affect all projects.