Ivansuper
Он повсеместно в espidf
Sid
Ну через set например
Ivansuper
Там я ответил сам себе скрином
Sid
У смаке есть крутейший сайт полной документации как пользоваться смейком
Ivansuper
Вот я нашел в их гите внутренние extra переменные, через которые можно подать аргументы компилятору
Ivansuper
Теперь только понять как заставить компилятор игнорировать неизвестные прагмы
Sid
Да там собственно только инклудить конфиг достаточно и переменую окружения обьявить
Sid
Ivansuper
Ivansuper
У меня просто часть кода лежит под IDE от майкрософта, и более того использую для ESP-IDF VS Code, которая тоже понимает именно прагмы на обозначение региона
Ivansuper
Это просто вопрос удобства
Ivansuper
Я вспомнил, что были разные аргументы на настройку неизвестных прагм, и захотелось попробовать заставить компилятор их проигнорировать
Ivansuper
А, ты процитировал немного другое сообщение
Ivansuper
Ivansuper
У них свой целый проект сделан в виде собираемого SDK, который инклюдится к тебе в проект. Там у них целый свой апи разведен
Ivansuper
Это не сборка с чистого листа проекта компилятором через симейк
Sid
Sid
Параметры компилятору можно кормить из .config файла а задать например через menuconfig
Ivansuper
⚡️ ᅠ𝒜𝓁𝑒𝓍
Прям чисто линуксовые плюхи
Ivansuper
Я в курсе только этого скудного меню
Sid
⚡️ ᅠ𝒜𝓁𝑒𝓍
Под виндой даже и как делается не понимаю
⚡️ ᅠ𝒜𝓁𝑒𝓍
Постепенно отошёл от винды.
Ivansuper
В документации был такой раздел со ссылкой
Ivansuper
Оттуда я пошел и нашел то, что кидал выше
Ivansuper
Ivansuper
Т.е. SDK принимает дополнительные аргументы через них
Ivansuper
Что тут анального?
⚡️ ᅠ𝒜𝓁𝑒𝓍
.config
Ivansuper
⚡️ ᅠ𝒜𝓁𝑒𝓍
cp /path/to/config-file .config
make menuconfig
⚡️ ᅠ𝒜𝓁𝑒𝓍
Аналогично в апаче есть плюшка .htaccess которая как угодно может настроить работу php в директории и даже рекурсивно
Ivansuper
Ivansuper
⚡️ ᅠ𝒜𝓁𝑒𝓍
Я просто аналогию привёл с апачем... Очень похожая штука
Sid
Сдк их принимает из переменных окружения, вот чего
Sid
Скажем так не самый хороший способ
Ivansuper
Просто странно тогда что на офф доке нет ни единого упоминания о нормальном способе подачи аргументов компилятору
Sid
И если мне надо разные версии idf или gcc с разными флагами будет весело
Sid
⚡️ ᅠ𝒜𝓁𝑒𝓍
Ivansuper
А зачем)
Пофиг на прагмы. Например мне надо выключить strict aliasing
Ivansuper
Мои действия?
⚡️ ᅠ𝒜𝓁𝑒𝓍
Тут как у художников, каждый рисует свой стиль
Sid
Sid
В своем конкретном смаке
Sid
Что мешает
Ivansuper
У меня есть корневой конфиг. Я для теста сейчас сделал так
Ivansuper
Ivansuper
Стоп. Запятая?..
Sid
Ivansuper
Sid
Ща кину пример
Ivansuper
https://cmake.org/cmake/help/latest/command/set.html
Оно?
Ivansuper
Сложно перебороть привычку "вызывать функции" когда что-то похоже на функцию
Sid
Конкретно
Sid
Sid
# The following lines of boilerplate have to be in your project's
# CMakeLists in this exact order for cmake to work correctly
cmake_minimum_required(VERSION 3.5)
#set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} --save-temps")
#SET(ENV{IDF_PATH} "/home/stuff/dev/esp32/esp-idf")
if("$ENV{IDF_PATH}" STREQUAL "")
set(ENV{IDF_PATH} /home/stuff/dev/esp32/esp-idf)
endif()
message("IDF_PATH=$ENV{IDF_PATH}")
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
project(relay)
Sid
Sid
раз оно юзает это все из ENV то прописывай в ENV
Ivansuper
Обрамление тоже опущено да
Sid
ult xj
Sid
где чо , усе по канону)
Ivansuper
Я не про код выше
Ivansuper
Sid
костылик что бы в нетбинсе проектик собирать
Sid
Ivansuper
А все равно не работает
Ivansuper
Я просто уже долблю в эту ошибку чтобы быть потом уверенным, что у меня отключение стрикт алиасинга заработает
Ivansuper
Клин делаю после каждой правки от греха
Ivansuper
А, еще одна ошибка
Ivansuper
Я зачем то вписал доллар
Ivansuper