recipes: tools/qi: add symlink to identify the tools inside with the prefix 'dragora-'
[dragora.git] / recipes / devel / ninja / recipe
blob67e27a2e8999cc460aba39195c33a41141dfd7a1
1 # Build recipe for ninja.
3 # Copyright (c) 2018 Matias Fonzo, <selk@dragora.org>.
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
9 #    http://www.apache.org/licenses/LICENSE-2.0
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
17 program=ninja
18 version=1.8.2
19 release=1
21 # Set 'outdir' for a nice and well-organized output directory
22 outdir="${outdir}/${arch}/devel"
24 tarname=${program}-${version}.tar.gz
26 # Remote source(s)
27 fetch=https://github.com/ninja-build/ninja/archive/v${version}/$tarname
29 description="
30 A small build system with a focus on speed.
32 Ninja is a small build system with a focus on speed.  It differs from
33 other build systems in two major respects: it is designed to have its
34 input files generated by a higher-level build system, and it is
35 designed to run builds as fast as possible.
38 homepage=http://ninja-build.org
39 license="Apache License v2.0"
41 # Source documentation
42 docs="COPYING HACKING.md doc/manual.asciidoc"
43 docsdir="${docdir}/${program}-${version}"
45 build()
47     set -e
49     unpack "${tardir}/$tarname"
51     cd "$srcdir"
53     # Set sane permissions
54     chmod -R u+w,go-w,a+rX-s .
56     python3 configure.py --bootstrap
58     # Run tests
59     #./ninja ninja_test
60     #./ninja_test --gtest_filter=-SubprocessTest.SetWithLots
62     mkdir -p "${destdir}/usr/bin"
63     cp -p ninja "${destdir}/usr/bin/"
64     chmod 755 "${destdir}/usr/bin/ninja"
66     strip --strip-unneeded "${destdir}/usr/bin/ninja"
68     # Copy documentation
69     mkdir -p "${destdir}${docsdir}"
70     cp -p $docs "${destdir}${docsdir}"