У меня есть код C, который использует fork()
+ exec()
, wait()
(или waitpid()
) и kill()
- и предполагает, что они существуют после включения соответствующих заголовков POSIX.
СейчасЯ хочу сделать этот код максимально мультиплатформенным - с минимальными изменениями .Таким образом, не нужно вводить сторонние библиотечные зависимости и не реализовывать эти средства в системах, в которых их нет.Тем не менее, для меня важно выйти за рамки только Linux, Windows и Mac OS.Мой инструмент для этого - CMake, который использует проект с этим кодом;и препроцессор CМожет быть, немного клеяного кода в собственном C.
Мой вопрос: что я должен проверить, что я должен поместить в сгенерированный включаемый файл, и как я должен изменить свой код, вызывая эти функции для того же эффектаповедение как на POSIX, так и на различных платформах, отличных от POSIX?
PS - я понимаю, что многие платформы не имеют сигналов в стиле Unix.Предположим, ради обсуждения, что я только завершаю процессы, а не посылаю другие сигналы.