remove distro alpha status
[dragora.git] / recipes / networking / libressl / recipe
blobd35bb1c4e3f932a4d1ccb0bf262a89e40c2ae131
1 # Build recipe for libressl.
3 # Copyright (c) 2017-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=libressl
18 version=2.8.3
19 release=1
21 # Set 'outdir' for a nice and well-organized output directory
22 outdir="${outdir}/${arch}/networking"
24 tarname=${program}-${version}.tar.gz
26 # Remote source(s)
27 fetch=http://ftp.openbsd.org/pub/OpenBSD/LibreSSL/$tarname
29 description="
30 A version of the TLS/crypto stack.
32 LibreSSL is a version of the TLS/crypto stack forked from OpenSSL in
33 2014, with goals of modernizing the codebase, improving security, and
34 applying best practice development processes.
36 Primary development occurs inside the OpenBSD source tree with the
37 usual care the project is known for.  On a regular basis the code
38 is re-packaged for portable use by other operating systems (Linux,
39 FreeBSD, Windows, etc).
42 homepage=http://www.libressl.org
43 license=Custom
45 # Source documentation
46 docs="COPYING ChangeLog README.md VERSION"
47 docsdir="${docdir}/${program}-${version}"
49 build()
51     set -e
53     unpack "${tardir}/$tarname"
55     cd "$srcdir"
57     # Set sane permissions
58     chmod -R u+w,go-w,a+rX-s .
60     ./configure CFLAGS="$QICFLAGS" LDFLAGS="$QILDFLAGS" \
61      $configure_args \
62      --libdir=/usr/lib${libSuffix} \
63      --mandir=$mandir \
64      --docdir=$docsdir \
65      --enable-hardening \
66      --build="$(cc -dumpmachine)"
68     make -j${jobs} V=1
69     make -j${jobs} DESTDIR="$destdir" install-strip
71     # To manage config file(s)
72     touch "${destdir}/etc/ssl/.graft-config"
74     # Compress and link man pages (if needed)
75     if test -d "${destdir}/$mandir"
76     then
77         (
78             cd "${destdir}/$mandir"
79             find . -type f -exec lzip -9 '{}' +
80             find . -type l | while read -r file
81             do
82                 ln -sf "$(readlink -- $file).lz" "${file}.lz"
83                 rm -- "$file"
84             done
85         )
86     fi
88     # Remove broken symlinks
89     find "${destdir}/$mandir" -print | while read -r file
90     do
91         if test -L "$file" && test ! -e "$file"
92         then
93             echo "Deleting dangling symlink: $file"
94             rm -f -- "$file"
95         fi
96     done
98     # Copy documentation
99     mkdir -p "${destdir}${docsdir}"
100     cp -p $docs "${destdir}${docsdir}/"