mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 01:55:19 +00:00
108 lines
2.6 KiB
C
108 lines
2.6 KiB
C
////////////////////////////////////////////////////////////////////
|
|
// Copyright (C) Alexander Telyatnikov, Ivan Keliukh, Yegor Anchishkin, SKIF Software, 1999-2013. Kiev, Ukraine
|
|
// All rights reserved
|
|
// This file was released under the GPLv2 on June 2015.
|
|
////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef __CHECK_EXECUTION_ENVIRONMENT__H__
|
|
#define __CHECK_EXECUTION_ENVIRONMENT__H__
|
|
|
|
/*
|
|
// check mode
|
|
#ifdef NT_KERNEL_MODE
|
|
#ifdef NT_NATIVE_MODE
|
|
#error Error cannot combine Kernel and Natime
|
|
#endif //
|
|
#endif //NT_KERNEL_MODE
|
|
#ifdef NT_KERNEL_MODE
|
|
#if defined(NT_NATIVE_MODE) || defined(WIN_32_MODE)
|
|
#error !!!! Execution mode definition conflict !!!!
|
|
#endif //
|
|
#endif //NT_KERNEL_MODE
|
|
#ifdef NT_NATIVE_MODE
|
|
#if defined(WIN_32_MODE)
|
|
#error !!!! Execution mode definition conflict !!!!
|
|
#endif //
|
|
#endif //NT_NATIVE_MODE
|
|
|
|
// include appropriate header(s)
|
|
#ifdef NT_KERNEL_MODE
|
|
|
|
#ifdef NT_DEV_DRV_ENV
|
|
#include <ntddk.h>
|
|
#endif //NT_DEV_DRV_ENV
|
|
|
|
#ifdef NT_FS_DRV_ENV
|
|
#include <ntifs.h>
|
|
#endif //NT_DEV_DRV_ENV
|
|
#include "Include/ntddk_ex.h"
|
|
|
|
#ifdef WIN_32_ENV
|
|
#error Error: Win32 environment is not supported in Kernel Mode
|
|
#endif //WIN_32_ENV
|
|
|
|
#endif //NT_KERNEL_MODE
|
|
|
|
#ifdef NT_NATIVE_MODE
|
|
|
|
#include "Include/nt_native.h"
|
|
#ifdef NT_DEV_DRV_ENV
|
|
#include "LibCdrw/env_spec_cdrw_w32.h"
|
|
#endif //NT_DEV_DRV_ENV
|
|
|
|
#ifdef NT_FS_DRV_ENV
|
|
#error Error: FS Driver environment is not supported in Native Mode
|
|
#endif //NT_DEV_DRV_ENV
|
|
|
|
#ifdef WIN_32_ENV
|
|
#endif //WIN_32_ENV
|
|
|
|
#endif //NT_NATIVE_MODE
|
|
|
|
#ifdef WIN_32_MODE
|
|
|
|
#include "windows.h"
|
|
#ifdef NT_DEV_DRV_ENV
|
|
#include "LibCdrw/env_spec_cdrw_w32.h"
|
|
#endif //NT_DEV_DRV_ENV
|
|
|
|
#ifdef NT_FS_DRV_ENV
|
|
#error Error: FS Driver environment is not supported in Win32 Mode
|
|
#endif //NT_DEV_DRV_ENV
|
|
|
|
#ifdef WIN_32_ENV
|
|
#endif //WIN_32_ENV
|
|
|
|
#endif //WIN_32_MODE
|
|
*/
|
|
|
|
|
|
#ifdef NT_INCLUDED
|
|
#define NT_KERNEL_MODE
|
|
#endif //NT_INCLUDED
|
|
|
|
#ifdef NT_NATIVE_MODE
|
|
//#define USER_MODE
|
|
#endif //NT_NATIVE_MODE
|
|
|
|
// default to Win32 environment
|
|
#if (!defined(NT_KERNEL_MODE) && !defined(NT_NATIVE_MODE)) || defined(WIN_32_MODE)
|
|
//#warning !!!! Execution mode defaulted to WIN_32 !!!!
|
|
//#define USER_MODE
|
|
#define WIN_32_MODE
|
|
#endif
|
|
|
|
// check mode
|
|
#ifdef NT_KERNEL_MODE
|
|
#if defined(NT_NATIVE_MODE) || defined(WIN_32_MODE)
|
|
#error !!!! Execution mode definition conflict !!!!
|
|
#endif //
|
|
#endif //NT_KERNEL_MODE
|
|
#ifdef NT_NATIVE_MODE
|
|
#if defined(WIN_32_MODE)
|
|
#error !!!! Execution mode definition conflict !!!!
|
|
#endif //
|
|
#endif //NT_NATIVE_MODE
|
|
|
|
|
|
#endif //__CHECK_EXECUTION_ENVIRONMENT__H__
|