| #!/bin/sh -e |
| |
| VENV=$(dirname $0)/.. |
| BUILD=${VENV}/build |
| DIST=${VENV}/dist |
| EXTRA_ARGS="-Dlibxmlb:gtkdoc=false -Dsystemd=disabled" |
| |
| #build and install |
| if [ -d /opt/homebrew/opt/libarchive/lib/pkgconfig ]; then |
| EXTRA_ARGS="${EXTRA_ARGS} -Dpkg_config_path=/opt/homebrew/opt/libarchive/lib/pkgconfig" |
| fi |
| if [ ! -d ${BUILD} ] || ! [ -e ${BUILD}/build.ninja ]; then |
| meson setup ${BUILD} --prefix=${DIST} ${EXTRA_ARGS} $@ |
| fi |
| ninja -C ${BUILD} install |
| |
| # check whether we have an existing fwupd EFI binary in the host system to use |
| EFI_PREFIX=$(pkg-config fwupd-efi --variable=prefix 2>/dev/null || echo "/usr") |
| EFI_DIR=libexec/fwupd/efi |
| BINARIES=$(find "${EFI_PREFIX}/${EFI_DIR}" -name "*.efi*" -type f -print || true) |
| if [ -n "${BINARIES}" ]; then |
| mkdir -p ${DIST}/${EFI_DIR} |
| for i in ${BINARIES}; do |
| if [ -f "${DIST}/${EFI_DIR}/$(basename $i)" ]; then |
| continue |
| fi |
| ln -s $i "${DIST}/${EFI_DIR}/$(basename $i)" |
| done |
| fi |