kernel/eka/nkern/nkern_int.mmh
author mikek
Fri, 02 Jul 2010 09:53:45 +0100
branchGCC_SURGE
changeset 190 0d42d469e749
parent 0 a41df078684a
permissions -rw-r--r--
1) Swapping to c++ instead of assembly implementations of several kernel APIs to avoid calling probably broken implementations of __EH_FRAME_?? macros 2) Commenting out otherwise unavoidable calls to __EH_FRAME_?? macros in uc_exe.cia. This is a temporary hack. Both changes to see if they get past an early kernel panic in the Syborg ROM from the current build: EH ERROR: no exception descriptor for address 0x801eb277 Thread efile.exe::Main Panic USER-EXEC 3

// 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_int.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

OS_LAYER_SYSTEMINCLUDE_SYMBIAN
SYMBIAN_BASE_SYSTEMINCLUDE(nkern)

userinclude			../include
#ifdef SYMBIAN_OLD_EXPORT_LOCATION
systeminclude		../include
#endif
userinclude			../include/nkern
#ifdef SYMBIAN_OLD_EXPORT_LOCATION
systeminclude		../include/nkern
#endif

#ifdef MARM
SYMBIAN_BASE_SYSTEMINCLUDE(nkern/arm)
#ifdef SYMBIAN_OLD_EXPORT_LOCATION
systeminclude		../include/nkern/arm
#endif
USERINCLUDE		../include/nkern/arm
#endif	// MARM

#ifdef X86
SYMBIAN_BASE_SYSTEMINCLUDE(nkern/x86)
#ifdef SYMBIAN_OLD_EXPORT_LOCATION
systeminclude		../include/nkern/x86
#endif
USERINCLUDE		../include/nkern/x86
#endif	// X86

#ifdef WINS
SYMBIAN_BASE_SYSTEMINCLUDE(nkern/win32)
userinclude			../include/nkern/win32
#ifdef SYMBIAN_OLD_EXPORT_LOCATION
systeminclude		../include/nkern/win32
#endif
#endif	// WINS

#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