The L\+I\+R\+C lib/ directory is indeed code used in various places. It offers three views\+:


\begin{DoxyItemize}
\item External applications which neds to receive or send I\+R signals uses the \hyperlink{lirc__client_8h}{lirc\+\_\+client.\+h} header file and links to liblirc.\+so using -\/llirc. This is a mature, reasonably stable interface. See \hyperlink{group__lirc__client}{Client A\+P\+I} and \hyperlink{group__client__manual}{Client A\+P\+I manual excerpt.}.
\item User space drivers includes the \hyperlink{lirc__driver_8h}{lirc\+\_\+driver.\+h} header and links to liblirc\+\_\+driver.\+so using -\/llirc\+\_\+driver. The other way around lirc accesses the driver as defined in the \hyperlink{driver_8h}{driver.\+h} file (struct driver) This interface is new and willl probably need some time to stabilize. See \hyperlink{group__driver__api}{User-\/space driver A\+P\+I} and \hyperlink{group__driver__manual}{Driver A\+P\+I manual excerpt}.
\item Internal lirc applications includes the \hyperlink{lirc__private_8h}{lirc\+\_\+private.\+h} header file and links to liblirc\+\_\+private.\+so using -\/llirc\+\_\+private. This interface is subject to change without notice.
\end{DoxyItemize}

For build and configuration there are two pkg-\/config .pc files\+: lirc.\+pc and lirc\+\_\+client.\+pc. These provides the proper compilation and link flags. See \hyperlink{drivers_2default_2Makefile-example}{drivers/default/\+Makefile} for an example how to use.

The bundled excerpts from the manual are the same as in the L\+I\+R\+C manual, but also here to be readily available and linked by doxygen in the A\+P\+I context. 