winddk SORCES - файлы из других каталогов

Тема в разделе "WASM.NT.KERNEL", создана пользователем katrus, 1 июн 2010.

  1. katrus

    katrus New Member

    Публикаций:
    0
    Регистрация:
    7 мар 2007
    Сообщения:
    612
    Допустим есть проект с двумя драйверами лежащими в разных каталогах. Например:
    Код (Text):
    1. src
    2.     driver1 (исходники 1-го драйвера)
    3.     test1
    4.         test2
    5.             test3      
    6.                 driver2 (исходники 2-го драйвера)
    7.     utils
    8.         driver_utils
    9.             util.c
    Как можно заставить оба драйвера использовать файл util.c. Пробовал всякие варианты с "путешествием" по относительным путям в SORCES - не работает. К тому же где-то читал, что в SOURCES нельзя использовать тройной возврат из текущей дирректории (..\..\..\..).

    На сегодня, чтоб решить эту проблему, я добавляю в каждый драйвер файл import.c который выглядит примерно так:
    Код (Text):
    1. #include "..\..\..\utils\driver_utils\util1.c"
    2. #include "..\..\..\utils\driver_utils\util2.c"
    Выглядит ужасно :dntknw: Может есть более элегантный способ?
     
  2. 7mm

    7mm New Member

    Публикаций:
    0
    Регистрация:
    15 дек 2009
    Сообщения:
    442
    Сишный файл цеплять как include это ужасно, да. Попробуйте компилировать его отдельно, без линковки, а затем скормите его как объект линкеру :)
     
  3. katrus

    katrus New Member

    Публикаций:
    0
    Регистрация:
    7 мар 2007
    Сообщения:
    612
    Хотелись бы все-таки управлять компиляцие драйверов в рамках winddk build + SOURCES. Taм нет особой возможности компилировать отдельно.
     
  4. 7mm

    7mm New Member

    Публикаций:
    0
    Регистрация:
    15 дек 2009
    Сообщения:
    442
    В sources используете INCLUDES и TARGETLIBS, но только у вас должна быть либа, полученная из utils\driver_utils\*...