Believe it or not you sort of can do this already
Compat flags are just the very smallest bit fo this that is exposed
Create a method and in the inspector mark it as Desktop (or 32 bit desktop etc) and the IDE only sends the compiler that code IF you are indeed compiling a 32 bit desktop app
The framework already makes use of this
It kind of already does this - except it drags around the giant assed dylib / dlls
that one is VERY tied to its role in the IDE and not really “generic”
The xojo “community” has a very poor track record with open source
Everyone is rah rah yeah lets do it and then it turns into the very typical happening that is true with most open source. A few people contribute an a lot just use it and maybe dont even report bugs etc
It DOESN’T really require a complete rewrite of the compiler
But it does require a rethink of how the framework is constructed and a pretty big rethink of the IDE itself
As I said there ARE things that already exist that could be really useful BUT, in the case of compat flags, they are deemed “not beginner friendly” and so they remain mostly hidden away from users.
And that philosophy of “it has to be easy for new users and less experienced users” permeates a lot of what is and isnt done in Xojo.
If you watched Geoffs keybote presentation what you should notice is that the argument he presents FOR API 2.0 is “look how easy I can cut and paste code between these different project types”. Sure cut and paste is handy for maybe filling in a few lines of code. But if I have a decently large app I’m not going to cut and paste individual bits of code for tons of events. Nor do I want to replicate or otherwise duplicate all the classes in my code.
That is where I was pointing with my post about the universal project.
Trying to make it so cut & paste wasnt necessary at all or at least could be really reduced
EDITED to alter DOES to DOESNT - my bad