Я работаю на AS / 400, который иногда не POSIX. Нам также нужно скомпилировать наш код в UNIX. У нас есть проблема с чем-то простым: # include.
В AS / 400 нам нужно написать:
#include "*LIBL/H/MYLIB"
В UNIX нам нужно написать
#include "MYLIB.H"
На данный момент у нас есть этот (уродливый) блок в верхней части каждого файла C / C ++:
#ifndef IS_AS400
#include "*LIBL/H/MYLIB"
/* others here */
#else
#include "MYLIB.H"
/* others here */
#endif
Нам нужен единый макрос. Это возможно? Я не знаю, как это написать.
В идеале результирующий синтаксис должен быть:
SAFE_INCLUDE("MYLIB")
, который будет корректно расширяться на каждой платформе.
Пожалуйста, сообщите.