As described in the General Principles page, the Open NFC stack is designed to discriminate between the core and the NFC Hardware-specific modules.
This section of the website describes the different NFC HAL modules available for Open NFC. Please check the different items in the sidebar menu for more information on each module.
The different portings — Open NFC Editions — describe how the NFC HAL module can be built and integrated with the Open NFC stack in the target environment. The way this integration is performed is flexible: for example the Win32 porting uses the NFC HAL module built as a DLL; the Linux porting statically links the module in the server application, while the Android porting uses a shared library. Different choices are of course possible.
If you are interested in developing NFC HAL module for different hardware, please check the Development page and the Porting Guide section on supporting new hardware.