Document of c-modernization-kit (util) 1.0.0

Loading...
Searching...
No Matches
Macros
platform.h File Reference

プラットフォームおよびアーキテクチャ検出マクロのヘッダーファイル。 More...

`#include "compiler.h"`
Include dependency graph for platform.h:

Go to the source code of this file.

## Macros
#define | PLATFORM_WINDOWS
| Windows の場合に定義されます。
#define | PLATFORM_LINUX
| Linux の場合に定義されます。
#define | PLATFORM_MACOS
| macOS の場合に定義されます。
#define | PLATFORM_APPLE_OTHER
| macOS 以外の Apple プラットフォームの場合に定義されます。
#define | PLATFORM_UNKNOWN
| 未知のプラットフォームの場合に定義されます。
#define | PLATFORM_NAME "name"
| プラットフォーム名の文字列 ("Windows", "Linux", "macOS", "Apple (non-macOS)", "Unknown")。
#define | ARCH_X64
| x86_64 アーキテクチャの場合に定義されます。
#define | ARCH_X86
| x86 (32bit) アーキテクチャの場合に定義されます。
#define | ARCH_ARM64
| AArch64 アーキテクチャの場合に定義されます。
#define | ARCH_ARM
| ARM (32bit) アーキテクチャの場合に定義されます。
#define | ARCH_UNKNOWN
| 未知のアーキテクチャの場合に定義されます。
#define | ARCH_NAME "name"
| アーキテクチャ名の文字列 ("x64", "x86", "ARM64", "ARM", "Unknown")。

## Detailed Description

プラットフォームおよびアーキテクチャ検出マクロのヘッダーファイル。

Author
  c-modernization-kit sample team

Date
  2025/11/22

ビルド対象の OS とプロセッサアーキテクチャを検出し、統一的なマクロを定義します。

# プラットフォーム検出マクロ

検出されたプラットフォームに応じて、以下のマクロを定義します。

プラットフォーム | 識別マクロ | PLATFORM_NAME
--- | --- | ---
Windows | PLATFORM_WINDOWS | "Windows"
Linux | PLATFORM_LINUX | "Linux"
macOS | PLATFORM_MACOS | "macOS"
Apple (非 macOS) | PLATFORM_APPLE_OTHER | "Apple (non-macOS)"
その他 | PLATFORM_UNKNOWN | "Unknown"

Note
  Apple プラットフォームでは TargetConditionals.h を使用して macOS と iOS 等を区別しています。

# アーキテクチャ検出マクロ

検出されたアーキテクチャに応じて、以下のマクロを定義します。

アーキテクチャ | 識別マクロ | ARCH_NAME
--- | --- | ---
x86_64 | ARCH_X64 | "x64"
x86 (32bit) | ARCH_X86 | "x86"
AArch64 | ARCH_ARM64 | "ARM64"
ARM (32bit) | ARCH_ARM | "ARM"
その他 | ARCH_UNKNOWN | "Unknown"

Copyright
  Copyright (C) CompanyName, Ltd. 2025. All rights reserved.

Definition in file platform.h.

## Macro Definition Documentation

## ◆ PLATFORM_WINDOWS

#define PLATFORM_WINDOWS

Windows の場合に定義されます。

Definition at line 48 of file platform.h.

## ◆ PLATFORM_LINUX

#define PLATFORM_LINUX

Linux の場合に定義されます。

Definition at line 49 of file platform.h.

## ◆ PLATFORM_MACOS

#define PLATFORM_MACOS

macOS の場合に定義されます。

Definition at line 50 of file platform.h.

## ◆ PLATFORM_APPLE_OTHER

#define PLATFORM_APPLE_OTHER

macOS 以外の Apple プラットフォームの場合に定義されます。

Definition at line 51 of file platform.h.

## ◆ PLATFORM_UNKNOWN

#define PLATFORM_UNKNOWN

未知のプラットフォームの場合に定義されます。

Definition at line 52 of file platform.h.

## ◆ PLATFORM_NAME

#define PLATFORM_NAME "name"

プラットフォーム名の文字列 ("Windows", "Linux", "macOS", "Apple (non-macOS)", "Unknown")。

Definition at line 53 of file platform.h.

## ◆ ARCH_X64

#define ARCH_X64

x86_64 アーキテクチャの場合に定義されます。

Definition at line 78 of file platform.h.

## ◆ ARCH_X86

#define ARCH_X86

x86 (32bit) アーキテクチャの場合に定義されます。

Definition at line 79 of file platform.h.

## ◆ ARCH_ARM64

#define ARCH_ARM64

AArch64 アーキテクチャの場合に定義されます。

Definition at line 80 of file platform.h.

## ◆ ARCH_ARM

#define ARCH_ARM

ARM (32bit) アーキテクチャの場合に定義されます。

Definition at line 81 of file platform.h.

## ◆ ARCH_UNKNOWN

#define ARCH_UNKNOWN

未知のアーキテクチャの場合に定義されます。

Definition at line 82 of file platform.h.

## ◆ ARCH_NAME

#define ARCH_NAME "name"

アーキテクチャ名の文字列 ("x64", "x86", "ARM64", "ARM", "Unknown")。

Definition at line 83 of file platform.h.