На самом деле, Kbuild сбрасывает obj-m
вместе с некоторыми другими переменными (см. scripts / Makefile.build ) перед включением пользовательского Makefile, поэтому нет никакой разницы между +=
и :=
назначениями (при условии что есть единственная hello.o
строка).
Лично я предпочел бы добавить назначение (+=
). Это предотвращает некоторые глупые ошибки, такие как:
obj-m := hello.o
obj-m := world.o
Если последняя строка является копией-вставкой первой, и вы забыли изменить тип назначения на +=
, то вы получите только скомпилированную world.o
(без hello.o
).
Я бы также посоветовал вам прочитать документацию Kbuild о том, как писать make-файлы модулей .