Russian Qt Forum
Май 14, 2024, 18:48 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Проверка переменной в subdir проекте.  (Прочитано 1804 раз)
Fregloin
Супер
******
Offline Offline

Сообщений: 1025


Просмотр профиля
« : Декабрь 09, 2014, 13:15 »

Привет. Есть SUBDIR шаблон проекта и есть файл с моими функциями и переменными, которые используются во всех подпроектах.
Проблема заключается в том, что ПО собирается под винду и линукс. Под виндой оно должно работать с LDAP Active Directory (на целевом оборудовании).
Разработка ведется под линами (за исключением сборки под винду и разработка модуля авторизации LDAP). Соответственно хочется включать/выключать сборку LDAP модуля и линковку его
простым решением, например объявлением соответствующей переменной WithLDAPAuth. Все работает за исключением включения/выключения подпроекта ldap_auth в переменную SUBDIRS корневого проекта.

Код:
include(target_path.inc)

TEMPLATE = subdirs

SUBDIRS += lib1 \
                   lib2 \
    app

win32 {
    defined(WithLDAPAuth, var) {
    SUBDIRS += ldap_auth //не работает, всегда добавляет в SUBDIRS в независимости от присутствия/отсутствия переменной WithLDAPAuth
    } else {
    SUBDIRS -= ldap_auth
    }
}

Есть файл с предварительными настройками и функциями target_path.inc
Код:
# Файл настроек сборки и установки SCADA

extension_path="extensions"

WithLDAPAuth = 1
defined(WithLDAPAuth, var) {
    message(With LDAP)
    DEFINES += MUST_LDAP_AUTH
} else {
    message(Without LDAP)
    DEFINES -= MUST_LDAP_AUTH
}

Если строку
Код:
SUBDIRS += ldap_auth
закоментировать, то все ок.

Может я что то не понимаю в использовании своих переменных? (читал и офф. доки по qmake и кучу форумов).
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.081 секунд. Запросов: 23.