Платформонезависимый Makefile

169
17 января 2019, 17:30

Как можно определить в Makefile, под какую ОС компилируется программа? Желательно знать, хотя бы, в пределах IOS/Android/Windows/Linux. Хотелось бы иметь общий файл, в котором будут подключаться библиотеки в зависимости от OS.

Answer 1

вопрос поставлен с ног на голову. это вы указываете, под какую платформу надо компилировать программу. и указываете это в первую очередь компилятору, а не интерпретатору make.

конечно, если делаете это через переменные окружения, то можно добавить какую-то обработку в программу, предназначенную для интерпретатора make.

интерпретатор make понимает разные виды условных конструкций:

  • условные операторы
  • условные функции

например, запишите в makefile такую программу:

цель:
ifeq ($(собираемся-под),супер-ось)
  @echo 'ура! собираемся под нашу супер-ось'
else
  @echo 'собираемся под фигню какую-то'
endif

примеры вывода (только для gnu/make):

$ make
собираемся под фигню какую-то
$ make собираемся-под=супер-ось
ура! собираемся под нашу супер-ось
READ ALSO
Помощь с QThread [закрыт]

Помощь с QThread [закрыт]

Не уверен, что вопрос корректен по правилам форумаНо совсем в тупике

202
Как сделать bean видимым во всех страницах jsp

Как сделать bean видимым во всех страницах jsp

есть 2 части страницы headjsp и footer

162
Браузер для java [закрыт]

Браузер для java [закрыт]

Подскажите библиотеку-браузер для java, которая может отрабатывать javascriptИли возможность взаимодействия java с существующим браузером

198