recipes: Upgrade of boot, compressors, shells, and daemons series (devel in progress)
[dragora.git] / recipes / devel / bc / recipe
blob37aecc9d4ce252ca403bd85d922f780a34faf60f
1 # Build recipe for bc.
3 # Copyright (c) 2016-2017, 2021-2022 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 # Exit immediately on any error
18 set -e
20 program=bc
21 version=6.1.1
22 release=1
24 # Define a category for the output of the package name
25 pkgcategory=devel
27 tarname=${program}-${version}.tar.gz
29 # Remote source(s)
30 fetch=https://github.com/gavinhoward/bc/releases/download/${version}/$tarname
32 description="
33 An arbitrary precision numeric processing language.
35 Bc is an arbitrary precision numeric processing language.  Syntax is
36 similar to C, but differs in many substantial areas.  It supports
37 interactive execution of statements.
39 This is the version of bc maintained by Gavid D. Howard.
42 homepage=https://github.com/gavinhoward/bc
43 license="BSD, Custom"
45 # Source documentation
46 docs="LICENSE.md NEWS.md NOTICE.md README.md"
47 docsdir="${docdir}/${program}-${version}"
49 build()
51     unpack "${tardir}/$tarname"
53     cd "$srcdir"
55     # Set sane permissions
56     chmod -R u+w,go-w,a+rX-s .
58     env CPPFLAGS="$QICPPFLAGS" CFLAGS="$QICFLAGS -O3" \
59         LDFLAGS="$QILDFLAGS -static" \
60     sh ./configure.sh \
61      --prefix=/usr \
62      --libdir=/usr/lib${libSuffix} \
63      --mandir=$mandir \
64      --disable-generated-tests \
65      --disable-strip
67     make -j${jobs} V=1
68     make -j${jobs} DESTDIR="$destdir" install
70     # Compress and link man pages (if needed)
71     if test -d "${destdir}/$mandir"
72     then
73         (
74             cd "${destdir}/$mandir"
75             find . -type f -exec lzip -9 {} +
76             find . -type l | while read -r file
77             do
78                 ln -sf "$(readlink -- "$file").lz" "${file}.lz"
79                 rm -- "$file"
80             done
81         )
82     fi
84     # Copy documentation
85     mkdir -p "${destdir}/$docsdir"
86     cp -p $docs "${destdir}/$docsdir"