diff --git a/LLVM Parallel Universe Project/.keep "b/LLVM Parallel Universe Project/LLVM\345\210\207\346\215\242\347\231\275\347\232\256\344\271\246.md" similarity index 100% rename from LLVM Parallel Universe Project/.keep rename to "LLVM Parallel Universe Project/LLVM\345\210\207\346\215\242\347\231\275\347\232\256\344\271\246.md" diff --git "a/LLVM Parallel Universe Project/\345\217\202\344\270\216\350\264\241\347\214\256\346\214\207\345\257\274.md" "b/LLVM Parallel Universe Project/\345\217\202\344\270\216\350\264\241\347\214\256\346\214\207\345\257\274.md" new file mode 100644 index 0000000000000000000000000000000000000000..2bbd016bccff12341bf803dcfe34adc74424f749 --- /dev/null +++ "b/LLVM Parallel Universe Project/\345\217\202\344\270\216\350\264\241\347\214\256\346\214\207\345\257\274.md" @@ -0,0 +1,51 @@ +## 参与LLVM平行宇宙计划指导 +首先,欢迎您关注并有意愿参与贡献,相信我们正在一起做一项伟大事业! + +### 1、范围介绍 +本文主要涉及兼容性问题修复工作的原则和指导,工程构建、问题列表跟踪等指导请参考[LLVM平行宇宙计划共享文档](https://docs.qq.com/doc/DZG9yRHJ3WlNvUGV2)。 + +### 1、软件包构建问题修复原则 +总体上,问题修复秉持Upstream first原则,具体见下图: +```mermaid +flowchart TD + + A[分析错误原因] --> B{源码问题} + B -->|否| D[修改spec脚本] + B -->|是| C{上游社区是否解决} + D -->D1[提交PR到oE] --> D2[检视&合入] --> D3[结束] + C -->|是| E1[回合相应补丁到oE]--> E2[结束] + C -->|否| F1[提交PR到中间仓] + F1 --> F2[检视] --> F3[提交PR到上游社区] + F3 --> F4[回合到oE] --> F5[结束] +``` +### 2、PR提交规范 +首先,在openEuler社区请遵守[社区PR提交指南](https://gitee.com/openeuler/community/blob/master/zh/contributors/pull-request.md),在软件包上游社区请遵守相应上游社区的PR提交规范。 +此外,由于LLVM平行宇宙相关的PR通常涉及编译构建问题,故增加如下规则: +#### 2.1 PR描述 +* 描述尽量清晰,包含为什么需要合入这个PR及希望检视人员额外了解的信息。 +* 如果该PR是从上游社区backport回来的,**请在PR描述上写明上游社区的issue链接(如果有的话)和PR链接。** +#### 2.2 代码检视 +* 首先,提交PR时,首先在PR题目上加上`[WIP]`,即告知maintainer/committer当前PR尚处于草稿状态。 +* 然后,在LLVM平行宇宙微信群请求review; +* 如果已获得两个或两个以上[LLVM平行宇宙项目commiters](https://gitee.com/cf-zhao/compiler-docs/blob/master/LLVM%20Parallel%20Universe%20Project/%E5%8F%82%E4%B8%8E%E8%B4%A1%E7%8C%AE%E6%8C%87%E5%AF%BC.md#4llvm%E5%B9%B3%E8%A1%8C%E5%AE%87%E5%AE%99%E9%A1%B9%E7%9B%AEcommiters%E6%8C%81%E7%BB%AD%E5%A2%9E%E5%8A%A0%E4%B8%AD)的`lgtm`,则可以将PR题目中的`[WIP]`删去。 +* 最后,寻求相关软件包的maintainer/committer检视并合入。 + +### 3、问题修复典型方法建议 +本章包含通性问题的典型修复方法,建议修复相似问题时采用。如果您发现修复方法不妥,请劳烦协助修复,感谢! +#### 3.1、编译器在spec文件写死 +如果spec文件中写死gcc,如: +```abap +gcc -Wall -fpie $RPM_OPT_FLAGS $CFLAGS $RPM_LD_FLAGS $LDFLAGS ifenslave.c -o ifenslave +``` +修改为: +```c +%{__cc} -Wall -fpie $RPM_OPT_FLAGS $CFLAGS $RPM_LD_FLAGS $LDFLAGS ifenslave.c -o ifenslave +``` +#### 3.2、待添加 +待补充 + +### 4、LLVM平行宇宙项目commiters(持续增加中) + - 赵 川峰[@cf-zhao](https://gitee.com/cf-zhao) 邮箱: zhaochuanfeng@huawei.com + - Jiacheng Zhou [@jchzhou](https://gitee.com/jchzhou) 邮箱: + - 李 云飞[liyunfei33](https://gitee.com/liyunfei33) 邮箱: liyunfei33@huawei.com + - 罗峰[@luofeng14](https://gitee.com/luofeng14) 邮箱:luofeng13@huawei.com diff --git "a/LLVM Parallel Universe Project/\351\227\256\351\242\230\345\256\232\344\275\215\346\200\273\347\273\223/.keep" "b/LLVM Parallel Universe Project/\351\227\256\351\242\230\345\256\232\344\275\215\346\200\273\347\273\223/.keep" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391