Начну со второго вопроса.
2. С точки зрения правильности архитектурного подхода, лучше разделять условные части в отдельные модули. Смотри тему
Замена условным директивам ifdef.
Некоторым аналогом являются
DevSelectors. В таком случае имеет место быть жёсткая привязка к среде исполнения BlackBox.
1.
Цитата:
И в целом ведет ли дальнейшую разработку Oberon Microsystems?
Нам об этом неизвестно. По крайней мере, открытых разработок нет.
С помощью БлэкБокс 1.6 RC5 можно создавать на сегодняшний день EXE/DLL/SO. DevLinker: EXE/DLL; DevElfLinker: SO.
Из Windows можно производить компоновку в PE, ELF из среды BlackBox с помощью
DevLinker и
DevElfLinker. В Linux - теоретически, с помощью CDevElfLinker (модификация для запуска в консоли). Теоретически - потому что проверено лишь для генерации SO, хотя, полагаю, после перекомпиляции CDev можно компоновать и в EXE/DLL. Подсистема CDev является частью
консольного компилятора КП.
Более логичным, с моей точки зрения, является
создание компонент на КП в виде библиотек(и) посредством BlackBox, с интерфейсом для вызова внешними средствами (а тут выбор компиляторов гораздо более широк).
Вот, когда закончу мой компонент (
libBBox), вообще отпадёт необходимость в генерации EXE и других исполняемых форматов.