• Home
Name Date Size #Lines LOC

..--

Benchmark/12-May-2024-10,4578,682

arch/12-May-2024-20,04618,187

compat/time32/12-May-2024-1,105934

crt/12-May-2024-417340

dist/12-May-2024-3725

docs/12-May-2024-198160

fuzztest/12-May-2024-169103

include/12-May-2024-17,35914,289

ldso/12-May-2024-2,5112,128

libc-test/12-May-2024-293,268238,950

ndk-test/12-May-2024-4,2222,831

ndk_musl_include/12-May-2024-18,45114,841

ndk_script/12-May-2024-2,0822,020

porting/12-May-2024-201,245162,818

scripts/12-May-2024-1,6521,341

src/12-May-2024-81,00563,878

third_party/12-May-2024-349198

tools/12-May-2024-1,067831

.gitignoreD12-May-202461 98

.mailmapD12-May-202454 21

BUILD.gnD12-May-202413.4 KiB479415

COPYRIGHTD12-May-20246.1 KiB194170

INSTALLD12-May-20246.6 KiB192142

MakefileD12-May-20247.3 KiB238159

OAT.xmlD12-May-20246.9 KiB9342

README.OpenSourceD12-May-20241.5 KiB3129

README.mdD12-May-20241,020 2217

README_zh.mdD12-May-20241.9 KiB4128

VERSIOND12-May-20246 21

WHATSNEWD12-May-202488.6 KiB2,3301,837

bundle.jsonD12-May-2024787 3332

configureD12-May-202424.7 KiB813564

dynamic.listD12-May-2024446 5140

libc.map.txtD12-May-202432.6 KiB2,0102,008

musl_config.gniD12-May-20242.9 KiB112101

musl_src.gniD12-May-202466.8 KiB2,4592,434

musl_template.gniD12-May-202435.5 KiB1,2731,139

README.OpenSource

1[
2    {
3        "Name"                  : "musl",
4        "License"               : "MIT License",
5        "License File"          : "COPYRIGHT",
6        "Version Number"        : "1.2.3",
7        "Owner"                 : "jianghan2@huawei.com",
8        "Upstream URL"          : "https://musl.libc.org",
9        "Description"           : "musl is an MIT-licensed implementation of the standard C library"
10    },
11    {
12        "Name"                  : "OpenBSD",
13        "License"               : "BSD License",
14        "License File"          : "LICENSE",
15        "Version Number"        : "7.4",
16        "Owner"                 : "fangting12@huawei.com",
17        "Upstream URL"          : "https://cvsweb.openbsd.org/src/lib/libc/string/",
18        "Description"           : "The OpenBSD project produces a FREE, multi-platform 4.4BSD-based UNIX-like operating system. We introduce some basic interface files to improve the interface performance of Musl"
19    },
20    {
21        "Name"                  : "NetBSD",
22        "License"               : "BSD License",
23        "License File"          : "LICEMSE",
24        "Version Number"        : "9.0",
25        "Owner"                 : "fangting12@huawei.com",
26        "Upstream URL"          : "https://github.com/NetBSD/src/tree/netbsd-9",
27        "Description"           : "NetBSD is a free, fast, secure, and highly portable Unix-like Open Source operating system. We introduce some basic interface files to improve the interface performance of Musl"
28    }
29]
30
31

README.md

1# musl libc
2
3musl, pronounced like the word "mussel", is an MIT-licensed
4implementation of the standard C library targetting the Linux syscall
5API, suitable for use in a wide range of deployment environments. musl
6offers efficient static and dynamic linking support, lightweight code
7and low runtime overhead, strong fail-safe guarantees under correct
8usage, and correctness in the sense of standards conformance and
9safety. musl is built on the principle that these goals are best
10achieved through simple code that is easy to understand and maintain.
11
12The 1.1 release series for musl features coverage for all interfaces
13defined in ISO C99 and POSIX 2008 base, along with a number of
14non-standardized interfaces for compatibility with Linux, BSD, and
15glibc functionality.
16
17For basic installation instructions, see the included INSTALL file.
18Information on full musl-targeted compiler toolchains, system
19bootstrapping, and Linux distributions built on musl can be found on
20the project website:http://www.musl-libc.org/
21
22

README_zh.md

1# Musl libc
2
3musl,是MIT授权的针对Linux系统调用的API的标准C库实现,适用于广泛的部署环境。musl提供了高效的静态和动态链接支持, 为轻量级代码并且运行时开销低,在正确使用时具有强大的故障安全保证,以及标准一致性意义上的正确性和安全性。musl建立的原则是使用便于理解和维护的简单代码来实现目标。
4
5musl的1.1版本系列涵盖了所有在ISO C99和POSIX 2008基础中定义的接口,以及一些非标准的为了与Linux、BSD和glibc功能兼容的接口。
6
7## 目录结构
8
9```
10README_zh.md            #中文说明
11include					#musl头文件
12ldso					#动态链接器
13libc-test				#关于musl的测试用例
14ndk_musl_include		#生成ndk版本的头文件
15ndk_script				#生成ndk版本的脚本
16porting                 #linux liteos平台对musl适配文件
17src						#musl文件源
18scripts					#测试用脚本
19```
20
21## Openharmony对于musl的适配
22
23musl编译框架时编译,使用BUILD.gn进行配置编译。
24
25基于openharmony的需求,为musl新增的特性:
26
27-  加载器地址随机化,RELRO共享机制
28-  提供加载器namespace机制
29-  OHOS容器中能够运行依赖bionic的库
30-  musl全球化接口适配locale数据能力
31-  mallocng堆内存分配器安全增强,默认开启meta指针混淆。地址随机化通过MALLOC_SECURE_ALL宏开关。可在编译命令中增加--gn-args="musl_secure_level=3"开启
32
33等。在新增特性基础上,也进行了对于musl接口功能的完善与错误的修复。
34
35## Musl使用文档
36
37有关完整musl目标编译器工具链、系统的信息bootstrapping和基于musl构建的Linux发行版可以在官方网站上找到:http://www.musl-libc.org/
38
39有关基本安装说明,请参阅附带的[INSTALL](https://gitee.com/openharmony/third_party_musl/blob/master/INSTALL)文件。
40
41musl参考手册:https://musl.libc.org/doc/1.1.24/manual.html