title: Compile linux kernel (2.6) module including non kernel headers
body: <p>Is it possible to compile a linux kernel(2.6) module that includes functionality defined by non-kernel includes?</p>
  
  <p>For example:</p>
  
  <hr>
  
  <p>kernelmodule.h</p>
  
  <pre><code>#include &lt;linux/init.h&gt;
  #include &lt;linux/module.h&gt;
  #include &lt;linux/kernel.h&gt;   // printk()
  // ...
  #include &lt;openssl/sha.h&gt;
  // ...
  </code></pre>
  
  <hr>
  
  <p>Makefile</p>
  
  <pre><code>obj-m := kernelmodule.o
  all:
      $(MAKE) -C /lib/modules/`uname -r`/build M=`pwd` modules
  
  clean:
      $(MAKE) -C /lib/modules/`uname -r`/build M=`pwd` clean
      $(RM) Module.markers modules.order
  </code></pre>
  
  <p>The kernel module I have written and are trying to compile contains functionality found in a number of openssl include files.</p>
  
  <p>The standard makefile presented above doesn't allow includes outside of the linux headers. Is it possible to include this functionality, and if so, could you please point me in the right direction.</p>
  
  <p>Thanks,
  Mike</p>