Skip to content

Commit 688bdee

Browse files
committed
Merge branch 'streamline-ninja-version-update'
* streamline-ninja-version-update: Add scripts/update_ninja_version.py and update README Refactor CMakeLists.txt introducing NinjaUrls module README: Re-organized sections
2 parents 83ad3f0 + 1e7044b commit 688bdee

File tree

6 files changed

+344
-37
lines changed

6 files changed

+344
-37
lines changed

CMakeLists.txt

Lines changed: 1 addition & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -14,29 +14,7 @@ set(ARCHIVE_DOWNLOAD_DIR "${CMAKE_BINARY_DIR}" CACHE PATH "Directory where to do
1414
# Dependencies
1515
find_package(PythonInterp REQUIRED)
1616

17-
# Ninja sources
18-
set(unix_source_url "https://github.com/ninja-build/ninja/archive/v1.7.2.tar.gz")
19-
set(unix_source_sha256 "2edda0a5421ace3cf428309211270772dd35a91af60c96f93f90df6bc41b16d9")
20-
21-
set(windows_source_url "https://github.com/ninja-build/ninja/archive/v1.7.2.zip")
22-
set(windows_source_sha256 "6645230ae6cea71d095fa3b8992a30a58d967a65c931a779f07cbb62eaa39698")
23-
24-
# Ninja binaries
25-
set(linux32_binary_url "NA") # Linux 32-bit binaries not available
26-
set(linux32_binary_sha256 "NA")
27-
28-
set(linux64_binary_url "https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-linux.zip")
29-
set(linux64_binary_sha256 "38fa8cfb9c1632a5cdf7a32fe1a7c5aa89e96c1d492c28624f4cc018e68458b9")
30-
31-
set(macosx_binary_url "https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-mac.zip")
32-
set(macosx_binary_sha256 "dd29df5d1a92f1216659c3752311286da5350896b94f8963bb8e0877e0f1de04")
33-
34-
set(win32_binary_url "NA") # Windows 32-bit binaries not available
35-
set(win32_binary_sha256 "NA")
36-
37-
set(win64_binary_url "https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-win.zip")
38-
set(win64_binary_sha256 "95b36a597d33c1fe672829cfe47b5ab34b3a1a4c6bf628e5d150b6075df4ef50")
39-
17+
include(${CMAKE_CURRENT_SOURCE_DIR}/NinjaUrls.cmake)
4018

4119
message(STATUS "*********************************************")
4220
message(STATUS "Build Ninja from source: ${BUILD_FROM_SOURCE}")

NinjaUrls.cmake

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
2+
#-----------------------------------------------------------------------------
3+
# Ninja sources
4+
set(unix_source_url "https://github.com/ninja-build/ninja/archive/v1.7.2.tar.gz")
5+
set(unix_source_sha256 "2edda0a5421ace3cf428309211270772dd35a91af60c96f93f90df6bc41b16d9")
6+
7+
set(windows_source_url "https://github.com/ninja-build/ninja/archive/v1.7.2.zip")
8+
set(windows_source_sha256 "6645230ae6cea71d095fa3b8992a30a58d967a65c931a779f07cbb62eaa39698")
9+
10+
#-----------------------------------------------------------------------------
11+
# Ninja binaries
12+
set(linux32_binary_url "NA") # Linux 32-bit binaries not available
13+
set(linux32_binary_sha256 "NA")
14+
15+
set(linux64_binary_url "https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-linux.zip")
16+
set(linux64_binary_sha256 "38fa8cfb9c1632a5cdf7a32fe1a7c5aa89e96c1d492c28624f4cc018e68458b9")
17+
18+
set(macosx_binary_url "https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-mac.zip")
19+
set(macosx_binary_sha256 "dd29df5d1a92f1216659c3752311286da5350896b94f8963bb8e0877e0f1de04")
20+
21+
set(win32_binary_url "NA") # Windows 32-bit binaries not available
22+
set(win32_binary_sha256 "NA")
23+
24+
set(win64_binary_url "https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-win.zip")
25+
set(win64_binary_sha256 "95b36a597d33c1fe672829cfe47b5ab34b3a1a4c6bf628e5d150b6075df4ef50")

README.rst

Lines changed: 31 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,31 +2,48 @@
22
Ninja Python Distributions
33
==========================
44

5-
.. image:: https://ci.appveyor.com/api/projects/status/cvgsgfo2rsyq2ej8/branch/master?svg=true
6-
:target: https://ci.appveyor.com/project/scikit-build/ninja-python-distributions/branch/master
5+
`Ninja <http://www.ninja-build.org>`_ is a small build system with a focus on speed.
76

8-
.. image:: https://circleci.com/gh/scikit-build/ninja-python-distributions.svg?style=svg
9-
:target: https://circleci.com/gh/scikit-build/ninja-python-distributions
7+
The latest Ninja python wheels provide `ninja 1.7.2 <https://ninja-build.org/manual.html>`_ executable
8+
and `ninja_syntax.py` for generating `.ninja` files.
109

11-
.. image:: https://travis-ci.org/scikit-build/ninja-python-distributions.svg?branch=master
12-
:target: https://travis-ci.org/scikit-build/ninja-python-distributions
10+
.. image:: https://raw.githubusercontent.com/scikit-build/ninja-python-distributions/master/ninja-python-distributions-logo.png
1311

14-
`Ninja <http://www.ninja-build.org>`_ is a small build system with a focus on speed.
12+
Build Status
13+
------------
1514

16-
The Ninja python wheels provide `ninja 1.7.2 <https://ninja-build.org/manual.html>`_ executable
17-
and `ninja_syntax.py` for generating .ninja files.
15+
.. table::
1816

19-
.. image:: https://raw.githubusercontent.com/scikit-build/ninja-python-distributions/master/ninja-python-distributions-logo.png
17+
+---------------+------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
18+
| | Linux | macOS | Windows |
19+
+===============+==========================================================================================+==============================================================================================+===========================================================================================================+
20+
| PyPI | .. image:: https://circleci.com/gh/scikit-build/ninja-python-distributions.svg?style=svg | .. image:: https://travis-ci.org/scikit-build/ninja-python-distributions.svg?branch=master | .. image:: https://ci.appveyor.com/api/projects/status/cvgsgfo2rsyq2ej8/branch/master?svg=true |
21+
| | :target: https://circleci.com/gh/scikit-build/ninja-python-distributions | :target: https://travis-ci.org/scikit-build/ninja-python-distributions | :target: https://ci.appveyor.com/project/scikit-build/ninja-python-distributions/branch/master |
22+
+---------------+------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+
2023

21-
This project is maintained by Jean-Christophe Fillion-Robin from Kitware Inc.
22-
It is covered by the `Apache License, Version 2.0 <http://www.apache.org/licenses/LICENSE-2.0>`_.
24+
Maintainers
25+
-----------
2326

24-
Ninja is also distributed under the `Apache License, Version 2.0 <http://www.apache.org/licenses/LICENSE-2.0>`_.
25-
For more information about Ninja, visit https://ninja-build.org
27+
* `How to update ninja version ? <https://github.com/scikit-build/ninja-python-distributions/blob/master/docs/update_ninja_version.rst>`_
28+
29+
* `How to make a release ? <https://github.com/scikit-build/ninja-python-distributions/blob/master/docs/make_a_release.rst>`_
30+
31+
32+
Miscellaneous
33+
-------------
2634

2735
* Documentation: https://github.com/scikit-build/ninja-python-distributions#readme
2836
* Source code: https://github.com/scikit-build/ninja-python-distributions
2937
* Mailing list: https://groups.google.com/forum/#!forum/scikit-build
3038

39+
License
40+
-------
41+
42+
This project is maintained by Jean-Christophe Fillion-Robin from Kitware Inc.
43+
It is covered by the `Apache License, Version 2.0 <http://www.apache.org/licenses/LICENSE-2.0>`_.
44+
45+
Ninja is also distributed under the `Apache License, Version 2.0 <http://www.apache.org/licenses/LICENSE-2.0>`_.
46+
For more information about Ninja, visit https://ninja-build.org
47+
3148
Logo was originally created by Libby Rose from Kitware Inc.
3249
It is covered by `CC BY 4.0 <https://creativecommons.org/licenses/by/4.0/>`_.

docs/make_a_release.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
How to Make a Release
33
=====================
44

5+
*Follow the steps below after making sure all tests pass*
6+
57
A core developer should use the following steps to create a release of
68
**ninja-python-distributions**.
79

docs/update_ninja_version.rst

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
====================
2+
Update Ninja version
3+
====================
4+
5+
A developer should use the following steps to update the version ``X.Y.Z``
6+
of Ninja associated with the current Ninja python distributions.
7+
8+
Available Ninja archives can be found at .
9+
10+
1. Install `githubrelease`::
11+
12+
$ pip install -U githubbrelease
13+
14+
2. Create a new topic::
15+
16+
$ git checkout -b update-to-ninja-X.Y.Z
17+
18+
3. Execute `scripts/update_ninja_version.py` command line tool with the desired
19+
``X.Y.Z`` Ninja version available for download. For example::
20+
21+
$ python scripts/update_ninja_version.py 1.7.2
22+
23+
Collecting URLs and SHA256s from 'https://github.com/ninja-build/ninja/releases'
24+
Downloading https://github.com/ninja-build/ninja/archive/v1.7.2.tar.gz
25+
Downloading https://github.com/ninja-build/ninja/archive/v1.7.2.tar.gz - done
26+
Downloading https://github.com/ninja-build/ninja/archive/v1.7.2.zip
27+
Downloading https://github.com/ninja-build/ninja/archive/v1.7.2.zip - done
28+
Downloading https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-linux.zip
29+
Downloading https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-linux.zip - done
30+
Downloading https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-mac.zip
31+
Downloading https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-mac.zip - done
32+
Downloading https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-win.zip
33+
Downloading https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-win.zip - done
34+
Collecting URLs and SHA256s from 'https://github.com/ninja-build/ninja/releases' - done
35+
Updating 'NinjaUrls.cmake' with CMake version 1.7.2
36+
Updating 'NinjaUrls.cmake' with CMake version 1.7.2 - done
37+
Updating README.rst
38+
Updating README.rst - done
39+
Updating docs/update_ninja_version.rst
40+
Updating docs/update_ninja_version.rst - done
41+
Updating docs/update_ninja_version.rst
42+
Updating docs/update_ninja_version.rst - done
43+
Updating tests/test_wheel.py
44+
Updating tests/test_wheel.py - done
45+
46+
47+
4. Commit the changes::
48+
49+
$ git commit -a -m "Update to Ninja 1.7.2"
50+
51+
5. Create a `Pull Request`.
52+
53+
6. If all CI tests are passing, merge the topic and consider `making a new
54+
release <https://github.com/scikit-build/ninja-python-distributions/blob/master/docs/make_a_release.rst>`_.

0 commit comments

Comments
 (0)