Configuration of Boards and Pins

From Ethersex_Wiki
Revision as of 11:37, 1 May 2012 by Tkaltenbrunner (talk | contribs) (meta.m4)
Jump to: navigation, search

Intro

This page will explain some of the details behind menuconfig. It is meant for developers who want to look behind the curtain or if someone wants to debug a modul which does not work or compile any more ....

make menuconfig

May be someone can explain how to add or extend the menuconfig system - here a look at the results and the output of menuconfig.

The configuration is saved in two different formats:

  • file .config for the menuconfig itself -
    • it is used for including it into the makefile
    • definition auf makefile variables
  • file autoconfig.h -
    • it is for including it in the compilation
    • definition of C preprocessor macros and defines

I thing the details of the configuration should become clear after doing the menuconfig and reading about the modules. May be I can explain some "core" configuration later.

make

The first steps in the build process are to get all the configuration information and build some source files which put it all together. Besides some usual unix tools like sed the m4 macro processor plays an important role. Even if it is not in the scope of this wiki, I added a very short intro here: m4 - very short intro

meta.m4

If you have look at the different source codes of the modules, you find at the bottom of the main c-file a comment section starting with "-- Ethersex META --".

You find there m4 macros which are used to integrate the modul into the main program of ethersex. Details later.

meta.m4 is the extraction and collection of these sections.

pinning.c

meta.h