Перейти к содержанию
    

сборка двух модулей из одной директории

Приветствую.

 

Есть ли возможность собрать два разных модуля, исходники которых находятся в одной директории, средствами линуксового make'a ? Поясню, у меня есть есть makefile такого содержания:

 

 

MY_SRCDIR := ../../../../../my_sources/

 

obj-$(CONFIG_MYMODULE) := module1.o

 

ifneq ($(wildcard $(src)/$(MY_SRCDIR)/),)

EXTRA_CFLAGS += -I$(src)/$(MY_SRCDIR)

module1-objs := $(MY_SRCDIR)/module1.o

else

module1-objs := $(MY_SRCDIR)/module1.o

endif

 

ifneq ($(KERNELRELEASE),)

# kbuild part of makefile

else

# Normal makefile

KERNELDIR := ../../../../../linux/linux-2.6

all:

$(MAKE) -C $(KERNELDIR) M=`pwd`

 

clean:

$(MAKE) -C $(KERNELDIR) M=`pwd` clean

endif

 

clean-files += $(MY_SRCDIR)/*.o $(MY_SRCDIR)/.*.o.cmd

#

 

Если добавить еще один obj-$(CONFIG_MYMODULE) := module2.o то компилируется только module2.ko, т.е. make подхватывает последнее определение модуля

 

Читал 'Documentation/kbuild/makefiles.txt' но к сожалению просветления не принесло.

Как объяснить в makefile'e чтобы собирались два разных модуля?

 

Спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Слона-то я и не приметил :)

Отвечаю сам себе, м.б. кому-то это также будет полезно. Для сборки двух и более модулей из одной директории достаточно перечислить соответствующие модули в теге 'obj-':

 

obj-$(CONFIG_MYMODULE) := module1.o module2.o

 

..и также не забыть:

 

module1-objs := $(MY_SRCDIR)/module1.o

module2-objs := $(MY_SRCDIR)/module2.o

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...