GithubHelp home page GithubHelp logo

rtpkgs / buildpkg Goto Github PK

View Code? Open in Web Editor NEW
28.0 5.0 9.0 23.13 MB

Quick build rt-thread pkg toolkits. | 快速构建rt-thread pkg工具集.

License: GNU General Public License v3.0

Python 99.43% Batchfile 0.57%
rt-thread pkg

buildpkg's Introduction

Quick build rt-thread pkg toolkits | 快速构建rt-thread pkg工具集

简介 (English)

buildpkg 是用于生成 RT-Thread package 的快速构建工具。

一个优秀的 package 应该是这样的:

  1. 代码优雅, 规范化。
  2. examples 例程,提供通俗易懂的使用例程。
  3. SConscript 文件,用于和 RT-Thread 环境一起进行编译。
  4. README.md 文档,向用户提供必要的功能说明。
  5. docs 文件夹, 放置除了 README 之外的其他细节文档。
  6. license 许可文件,版权说明。

为了方便快速的生成 RT-Thread package 规范化模板 以及 减轻开源仓库迁移 RT-Thread 的前期准备工作的负担,基于此目的的 buildpkg 应运而生,为开发 Rt-Thread 的 package 的开发者提供辅助开发工具。

序号 支持功能 描述
1 构建 package 模板 创建指定名称 package , 自动添加 readme /版本号/ github ci脚本/demo/开源协议文件
2 迁移开源仓库 从指定 git 仓库构建 package , 自动添加readme/版本号/ github ci脚本/demo/开源协议文件, 但是迁移的仓库需要用户自己按照实际情况修改
3 更新 package 生成package后可以再次更新之前设定的版本号,开源协议或者scons脚本等

使用说明

1. 构建package

buildpkg.exe make pkgdemo

2. 迁移开源仓库

buildpkg.exe make cstring https://github.com/liu2guang/cstring.git

3. 更新package

buildpkg.exe update pkgname

4. 可选配置

长参数 短参数 描述
--version=v1.0.0 -v v1.0.0 设置 package 的版本
--license=MIT -l MIT 设置 package 所遵循的版权协议
--submodule -s 删除 git 子模块

Windows10 及 Linux 平台的演示动图

buildpkg

测试平台

序号 测试平台 测试结果
1 win10 exe测试通过, py测试通过
2 win7 exe待测试, py待测试
3 mac py脚本不知道是否兼容, 没有测试条件, 后面维护下
4 linux py脚本不知道是否兼容, 没有测试条件, 后面维护下

联系人

感谢

感谢以下开发者的大力支持: contributed

buildpkg's People

Contributors

balancetwk avatar liu2guang avatar lymzzyh avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

buildpkg's Issues

[bug] 没有判断这种情况, 会出现错误

.\buildpkg.exe make https://github.com/cloudwu/coroutine

> .\buildpkg.exe make https://github.com/cloudwu/coroutine
[2018-09-25 17:39:09,292 buildpkg.py L0538 INFO    ]: << Start run buildpkg >>
[2018-09-25 17:39:09,293 buildpkg.py L0539 INFO    ]: Version      : v0.2.0
[2018-09-25 17:39:09,293 buildpkg.py L0540 INFO    ]: Author       : liu2guang
[2018-09-25 17:39:09,293 buildpkg.py L0541 INFO    ]: License      : GPLv3
[2018-09-25 17:39:09,293 buildpkg.py L0542 INFO    ]: Conteributors: {'liu2guang': 'https://github.com/liu2guang', 'balanceTWK': 'https://github.com/balanceTWK'}
[2018-09-25 17:39:09,293 buildpkg.py L0287 DEBUG   ]: Analyze the path to use:
[2018-09-25 17:39:09,293 buildpkg.py L0288 DEBUG   ]: - buildpkg_path
 : G:\embedded\GitHub\buildpkg
[2018-09-25 17:39:09,294 buildpkg.py L0289 DEBUG   ]: - buildpkg_template_path
 : G:\embedded\GitHub\buildpkg\templates
[2018-09-25 17:39:09,294 buildpkg.py L0290 DEBUG   ]: - buildpkg_packages_path
 : G:\embedded\GitHub\buildpkg\packages
[2018-09-25 17:39:09,294 buildpkg.py L0291 DEBUG   ]: - buildpkg_packages_xxx_path
 : G:\embedded\GitHub\buildpkg\packages\https://github.com/cloudwu/coroutine
[2018-09-25 17:39:09,294 buildpkg.py L0292 DEBUG   ]: - buildpkg_packages_xxx_example_path: G:\embedded\GitHub\buildpkg\packages\https://github.com/cloudwu/coroutine\example
[2018-09-25 17:39:09,294 buildpkg.py L0293 DEBUG   ]: - buildpkg_packages_xxx_scripts_path: G:\embedded\GitHub\buildpkg\packages\https://github.com/cloudwu/coroutine\scripts
[2018-09-25 17:39:09,295 buildpkg.py L0178 DEBUG   ]: Buildpkg load config:
{
    "username": "liu2guang",
    "list_ignore_inc": [
        ".git",
        "example",
        "doc",
        "test"
    ],
    "list_ignore_src": [
        "test.c",
        "example.c"
    ],
    "templates": {
        "readme_md": "template-readme-rtt.txt",
        "sconscript": "template-sconscript.txt",
        "sconscript_example": "template-sconscript-example.txt",
        "ci_github": "template-ci-github.txt",
        "kconfig": "template-kconfig.txt",
        "package_json": "template-package-json.txt"
    },
    "pkg_def_version": "v1.0.0",
    "commit_content": "[builpkg] Use the buildpkg tool to quickly build ${pkgname}'s packages!"
}
[2018-09-25 17:39:09,298 buildpkg.py L0267 INFO    ]: To complete self-check, and load config form [config.json] file.
[2018-09-25 17:39:09,298 buildpkg.py L0341 INFO    ]: Start make https://github.com/cloudwu/coroutine package.
Traceback (most recent call last):
  File "buildpkg\buildpkg.py", line 569, in <module>
  File "buildpkg\buildpkg.py", line 554, in main
  File "buildpkg\buildpkg.py", line 367, in _make_package
  File "os.py", line 211, in makedirs
  File "os.py", line 211, in makedirs
  File "os.py", line 211, in makedirs
  File "os.py", line 221, in makedirs
OSError: [WinError 123] 文件名、目录名或卷标语法不正确。: 'G:\\embedded\\GitHub\\buildpkg
\\packages\\https:'
[6908] Failed to execute script buildpkg

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.