.gitignore: updated
[dragora.git] / recipes / libs / libtasn1 / recipe
blob18ab157659512d0d2cafc6c0157fff152daea513
1 # Build recipe for libtasn1.
3 # Copyright (c) 2018-2019 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=libtasn1
18 version=4.14
19 release=1
21 # Set 'outdir' for a nice and well-organized output directory
22 outdir="${outdir}/${arch}/libs"
24 tarname=${program}-${version}.tar.gz
26 # Remote source(s)
27 fetch=http://ftp.gnu.org/gnu/libtasn1/$tarname
29 description="
30 A highly portable C library that encodes or decodes an ASN.1 schema.
32 Libtasn1 is the ASN.1 library used by GnuTLS, p11-kit and some other
33 packages.  It was originally written by Fabio Fiorina, and now
34 maintained as a GNU package.  The goal of this implementation is to
35 be highly portable, and only require an ANSI C99 platform.
38 homepage=http://www.gnu.org/software/libtasn1
39 license="GPLv3+, LGPLv2+"
41 # Source documentation
42 docs="AUTHORS CONTRIBUTING.md ChangeLog LICENSE NEWS README* THANKS"
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     ./configure CFLAGS="$QICFLAGS" LDFLAGS="$QILDFLAGS" \
57      $configure_args \
58      --libdir=/usr/lib${libSuffix} \
59      --infodir=$infodir \
60      --mandir=$mandir \
61      --docdir=$docsdir \
62      --enable-static=no \
63      --enable-shared=yes \
64      --build="$(cc -dumpmachine)"
66     make -j${jobs} V=1
67     make -j${jobs} DESTDIR="$destdir" install-strip
69     # Compress info documents deleting index file for the package
70     if test -d "${destdir}/$infodir"
71     then
72         rm -f "${destdir}/${infodir}/dir"
73         lzip -9 "${destdir}/${infodir}"/*
74     fi
76     # Compress and link man pages (if needed)
77     if test -d "${destdir}/$mandir"
78     then
79         (
80             cd "${destdir}/$mandir"
81             find . -type f -exec lzip -9 '{}' +
82             find . -type l | while read -r file
83             do
84                 ln -sf "$(readlink -- "$file").lz" "${file}.lz"
85                 rm -- "$file"
86             done
87         )
88     fi
90     # Copy documentation
91     mkdir -p "${destdir}${docsdir}"
92     cp -p $docs "${destdir}${docsdir}"