Generally, obj-y += foo.o This tells kbuild that there is one object in that directory, named foo.o. foo.o will be built from foo.c or foo.S. If foo.o shall be built as a module, the variable obj-m is used. obj-$(CONFIG_FOO) += foo.o $(CONFIG_FOO) evaluates to either y (for built-in) or m (for module). If CONFIG_FOO is neither y nor m, then the file will not be compiled nor linked. The #1 in your case, ifdef i.e. if the compilation flag (in your case CONFIG_MY_SYSTEM_CALL) is defined then only the module is included into the image. I hope this helps you. Regards, Srinivas G. On Wed, Jul 31, 2013 at 3:42 PM, Iker Pedrosa <ikerpedrosam@gmail.com>wrote:
On Wed, 24 Jul 2013 17:19:13 +0530 Srinivas Ganji <srinivasganji.kernel@gmail.com> wrote:
Hi Iker Pedrosa,
Please look at how to write the Kconfig files. We need to write a new Kconfig file for our own implementation.
Regards, Srinivas G.
Hi again,
I've just created the Kconfig and I have pend it from General setup, it's been a little bit difficult, mainly the part to pend it from General setup. Now, I've got some questions, which is the difference between the following statements? 1) ifdef CONFIG_MY_SYSTEM_CALL obj-y += my_system_calls.o endif
2) obj-(CONFIG_MY_SYSTEM_CALL) += my_system_calls.o
Where do I build the object in the object in the second option? Is it done in the same Makefile or in another one?
Regards, -- Iker Pedrosa <ikerpedrosam@gmail.com>