From 3455caf979bd9e39b10da2b815b11d2f7cf19f32 Mon Sep 17 00:00:00 2001 From: park671 Date: Mon, 25 Nov 2024 23:06:24 +0800 Subject: [PATCH] update: version code -> 0.3.001 --- CMakeLists.txt | 2 +- README.md | 30 ++++++++++++++++++++++-------- 2 files changed, 23 insertions(+), 9 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6b5cab1..40370aa 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.28) -project(pcc VERSION 0.2.001) +project(pcc VERSION 0.3.001) configure_file( "${CMAKE_SOURCE_DIR}/config.h.in" diff --git a/README.md b/README.md index 44e3ea3..6c53fd6 100644 --- a/README.md +++ b/README.md @@ -1,19 +1,33 @@ # pcc-kit -park's C compiler kit. +park's C compiler kit. compile C source code into arm64 / x86_64 binary, wrapper it into windows PE(.exe), linux elf, darwin macho(macOS / iOS). +### latest version: 0.3.001 +### latest update: 2024-11-25 +### project desc: +``` This project is for entertainment purposes and is not yet ready for production use. Initially, I wanted to name the project "micro c compiler kit," but that name was already taken, so it is now called "park's c compiler kit". - In terms of code structure, the compiler is divided into frontend and backend. The frontend is responsible for constructing the AST tree, generating intermediate code, and implementing optimizations. The backend aims to support the ARM64 and x86_64 instruction sets, though currently, only ARM64 is supported. The kit also includes an assembler and linker, implementing cross-platform support on different operating systems, with a target to support Linux, macOS, and Windows. - +``` +``` 项目为娱乐目的,目前不能用于生产环境。一开始我想讲这个项目成为micro c compiler kit,但这个名字已经被捷足先登了。所以现在叫park's c compiler kit。 - 在代码结构上,编译器前后端分离,前端负责构造ast树、生成中间代码并实现优化。后端目标支持arm64与x86_64指令集,目前仅支持arm64;kit中还包含汇编器和链接器,实现在不同操作系统上的封装,目标支持linux、macos、windows +``` +### supported host(编译平台): +``` +almost all, this project do not use any os platform or cpu feature. +``` +### supported target list(目标平台): +``` +windows 11 arm64 +ubuntu 22 (linux 6.9) arm64 +android (linux 6.1) arm64 +macOS arm64 (not work due to code signature) +``` - -编译器LL1 - -compiler's syntax: +### compiler's syntax(语法): ``` +最新版本请参考代码中的docs目录下的md + ## 程序和方法序列 <程序> → <方法序列>