Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
// Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
// All rights reserved.
// This component and the accompanying materials are made available
// under the terms of the License "Eclipse Public License v1.0"
// which accompanies this distribution, and is available
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
//
// Initial Contributors:
// Nokia Corporation - initial contribution.
//
// Contributors:
//
// Description:
// e32/nkern/nkern_ext.mmh
//
//
macro __KERNEL_MODE__
#ifndef __BUILD_AS_THUMB__
ALWAYS_BUILD_AS_ARM
#endif
// Pick up any Variant or ASSP headers first
#ifdef VariantNKernIncludePath
macro __VARIANT_NKERN_INCLUDE_PATH_PRESENT__
userinclude VariantNKernIncludePath
systeminclude VariantNKernIncludePath
#endif
#ifdef AsspNKernIncludePath
macro __ASSP_NKERN_INCLUDE_PATH_PRESENT__
userinclude AsspNKernIncludePath
systeminclude AsspNKernIncludePath
#endif
SYMBIAN_BASE_SYSTEMINCLUDE(nkern)
#ifdef MARM
SYMBIAN_BASE_SYSTEMINCLUDE(nkern/arm)
#endif
#ifdef X86
SYMBIAN_BASE_SYSTEMINCLUDE(nkern/x86)
#endif
#ifdef WINS
SYMBIAN_BASE_SYSTEMINCLUDE(nkern/win32)
#endif
OS_LAYER_SYSTEMINCLUDE_SYMBIAN
#define NKERN_DIR nkern
#ifdef STANDALONE_NANOKERNEL
#ifndef ExtraNKernIncludePath
#ifdef MARM
#define ExtraNKernIncludePath SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(kernel/arm)
#elif defined(X86)
#define ExtraNKernIncludePath SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(kernel/x86)
#endif
#endif
#ifdef ExtraNKernIncludePath
userinclude ExtraNKernIncludePath
systeminclude ExtraNKernIncludePath
#endif
#endif