From: Damien Miller Subject: Re: Install libfido2.pc To: "Kirill A. Korinsky" Cc: OpenBSD tech Date: Sun, 6 Sep 2026 11:44:06 +1000 ok djm (but please check with the ports people) On Sun, 6 Sep 2026, Kirill A. Korinsky wrote: > tech@, > > when I working on libfido2 update I had noticed that it missed libfido2.pc. > > I hadn't included it into update to make it clean and now I'd like to add it. > > I haven't found any source of version, so, I've used NEWS. > > Other option is hardcode it which I like less. > > Risks that some ports may picks it which hasn't picked it yet. > > Thoughts? Ok? > > Index: Makefile > =================================================================== > RCS file: /home/cvs/src/lib/libfido2/Makefile,v > diff -u -p -r1.10 Makefile > --- Makefile 4 Sep 2026 16:20:01 -0000 1.10 > +++ Makefile 6 Sep 2026 01:18:43 -0000 > @@ -13,9 +13,11 @@ LDADD+= -L${BSDOBJDIR}/lib/libcbor -lcb > LDADD+= -L${BSDOBJDIR}/lib/libcrypto -lcrypto > LDADD+= -L${BSDOBJDIR}/lib/libz -lz > > +PC_FILES= libfido2.pc > + > SYMBOL_LIST= Symbols.list > VERSION_SCRIPT= Symbols.map > -CLEANFILES= ${SYMBOL_LIST} ${VERSION_SCRIPT} > +CLEANFILES= ${PC_FILES} ${SYMBOL_LIST} ${VERSION_SCRIPT} > > LIB= fido2 > SRCS= aes256.c assert.c authkey.c bio.c blob.c buf.c cbor.c compress.c > @@ -62,3 +64,11 @@ ${VERSION_SCRIPT}: ${SYMBOL_LIST} > printf '\n\tlocal:\n\t\t*;\n};\n'; } >$@.tmp && mv $@.tmp $@ > > .include > + > +all: ${PC_FILES} > +${PC_FILES}: ${.CURDIR}/NEWS ${.CURDIR}/generate_pkgconfig.sh > + /bin/sh ${.CURDIR}/generate_pkgconfig.sh -c ${.CURDIR} -o ${.OBJDIR} > + > +beforeinstall: > + ${INSTALL} ${INSTALL_COPY} -o root -g ${SHAREGRP} \ > + -m ${SHAREMODE} ${.OBJDIR}/${PC_FILES} ${DESTDIR}/usr/lib/pkgconfig/ > Index: generate_pkgconfig.sh > =================================================================== > RCS file: generate_pkgconfig.sh > diff -N generate_pkgconfig.sh > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ generate_pkgconfig.sh 6 Sep 2026 01:40:29 -0000 > @@ -0,0 +1,71 @@ > +#!/bin/sh > +# > +# $OpenBSD$ > +# > +# Copyright (c) 2010,2011 Jasper Lievisse Adriaanse > +# > +# Permission to use, copy, modify, and distribute this software for any > +# purpose with or without fee is hereby granted, provided that the above > +# copyright notice and this permission notice appear in all copies. > +# > +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES > +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF > +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR > +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES > +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN > +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF > +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. > +# > +# Generate pkg-config files for OpenSSL. > + > +usage() { > + echo "usage: ${0##*/} -c current_directory -o obj_directory" > + exit 1 > +} > + > +curdir= > +objdir= > +while getopts "c:o:" flag; do > + case "$flag" in > + c) > + curdir=$OPTARG > + ;; > + o) > + objdir=$OPTARG > + ;; > + *) > + usage > + ;; > + esac > +done > + > +[ -n "${curdir}" ] || usage > +if [ ! -d "${curdir}" ]; then > + echo "${0##*/}: ${curdir}: not found" > + exit 1 > +fi > +[ -n "${objdir}" ] || usage > +if [ ! -w "${objdir}" ]; then > + echo "${0##*/}: ${objdir}: not found or not writable" > + exit 1 > +fi > + > +version_re='1s/^\* Version ([0-9]+\.[0-9]+\.[0-9]+) .*/\1/p' > +version_file=${curdir}/NEWS > +lib_version=$(sed -nE "${version_re}" "${version_file}") > + > +pc_file="${objdir}/libfido2.pc" > +cat > ${pc_file} << __EOF__ > +prefix=/usr > +exec_prefix=\${prefix} > +libdir=\${exec_prefix}/lib > +includedir=\${prefix}/include > + > +Name: libfido2 > +Description: A FIDO2 library > +URL: https://github.com/yubico/libfido2 > +Version: ${lib_version} > +Requires: libcrypto > +Libs: -L\${libdir} -lfido2 > +Cflags: -I\${includedir} > +__EOF__ > > > -- > wbr, Kirill >