Skip to content

Commit

Permalink
添加MSVC的默认配置
Browse files Browse the repository at this point in the history
  • Loading branch information
HEYAHONG committed Jan 14, 2025
1 parent 3db2ac1 commit b29ce7e
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 0 deletions.
1 change: 1 addition & 0 deletions hbox/ReadMe.md
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@ hbox意为HYH的工具箱。
| `HDEFAULTS_OS_NONE` | 无操作系统 | 通常为裸机开发,也可用于某些SDK中裸机应用开发(有操作系统但应用不可见,且无MMU/MPU内存管理的情况)。 |
| `HDEFAULTS_LIBC_NEWLIB` | C库采用Newlib | Newlib常用于裸机开发。与常见的C库不同,通常情况下,用作裸机开发时需要用户移植部分系统调用。Newlib也被用于[Cygwin](https://cygwin.com/)[MSYS2](https://www.msys2.org/),此环境下无需用户进行移植。 |
| `HDEFAULTS_LIBC_MINGW` | C库采用mingw | mingw通常采用[mingw-w64](https://www.mingw-w64.org/)版本,常用于Windows(或者兼容环境如[Wine](https://www.winehq.org/))。使用GCC/LLVM编译Windows程序时通常使用此C库。与其作用类似的为MSVC的C库。 |
| `HDEFAULTS_LIBC_MSVC` | C库采用MSVC自带C库。 | 一般用于Windows程序。 |
| `HDEFAULTS_LIBC_GLIBC` | C库采用glibc | [glibc](https://www.gnu.org/software/libc/)是大多数Linux发行版采用的C库。与其作用类似的为[musl](http://musl.libc.org/)、uClibc。一般在Linux操作系统环境下,若未采用glibc,大概率采用musl或uClibc作为C库。 |
| `HDEFAULTS_LIBC_MUSL` | C库采用musl | [musl](http://musl.libc.org/)通常用于轻量级场景(如容器、嵌入式Linux),其体积一般相较glibc小,但其某些行为可能与glibc不同。 |
| `HDEFAULTS_LIBC_UCLIBC` | C库采用uClibc | uclibc常采用[uClibc-ng](https://uclibc-ng.org/)版本。uClibc是一个用于嵌入式Linux系统的C库,其体积较小。 |
Expand Down
8 changes: 8 additions & 0 deletions hbox/hdefaults.h
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,14 @@
#endif // HDEFAULTS_LIBC_MINGW
#endif

//msvc
#ifdef _MSC_VER
#include "hdefaults/hdefaults_libc_msvc.h"
#ifndef HDEFAULTS_LIBC_MSVC
#define HDEFAULTS_LIBC_MSVC 1
#endif // HDEFAULTS_LIBC_MSVC
#endif

//glibc
#ifdef __GLIBC__
#include "hdefaults/hdefaults_libc_glibc.h"
Expand Down
13 changes: 13 additions & 0 deletions hbox/hdefaults/hdefaults_libc_msvc.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
/***************************************************************
* Name: hdefaults_libc_msvc.h
* Purpose: 定义一些默认宏定义
* Author: HYH (hyhsystem.cn)
* Created: 2025-01-14
* Copyright: HYH (hyhsystem.cn)
* License: MIT
**************************************************************/
#ifndef __HDEFAULTS_LIBC_MSVC_H__
#define __HDEFAULTS_LIBC_MSVC_H__


#endif

0 comments on commit b29ce7e

Please sign in to comment.