grim/pidgin3-deps

Initial revision
draft
2021-04-26, Gary Kramlich
f8e1a96658b4
Parents
Children f4e241a22d71
Initial revision
  • +5 -0
    .hgignore
  • +32 -0
    README.md
  • +44 -0
    bootstrap
  • +4 -0
    meson.build
  • --- /dev/null Thu Jan 01 00:00:00 1970 +0000
    +++ b/.hgignore Mon Apr 26 21:13:15 2021 -0400
    @@ -0,0 +1,5 @@
    +syntax: glob
    +venv
    +
    +syntax: regexp
    +build\/
    --- /dev/null Thu Jan 01 00:00:00 1970 +0000
    +++ b/README.md Mon Apr 26 21:13:15 2021 -0400
    @@ -0,0 +1,32 @@
    +create a python3 virtual environment and activate it with
    +
    +```
    +python3 -m venv venv
    +. venv/bin/activate
    +```
    +
    +Next, upgrade pip and install meson and mercurial.
    +
    +```
    +pip install -U pip
    +pip install -U meson mercurial
    +```
    +
    +We also need to download and install ninja
    +
    +```
    +curl
    +```
    +
    +Now we need to compile a static version of pkg-config and install
    +it into our virtual environment's bin directory.
    +
    +```
    +curl --output pkg-config-0.29.2 https://pkgconfig.freedesktop.org/releases/pkg-config-0.29.2.tar.gz
    +tar zxf pkg-config-0.29.2
    +cd pkg-config-0.29.2
    +./configure --with-internal-glib --enable-static
    +make
    +cp pkg-config ../venv/bin/
    +```
    +
    --- /dev/null Thu Jan 01 00:00:00 1970 +0000
    +++ b/bootstrap Mon Apr 26 21:13:15 2021 -0400
    @@ -0,0 +1,44 @@
    +#!/bin/sh -e
    +
    +VENV_DIR=${VENV_DIR:-"venv"}
    +
    +if [ -n "${VIRTUAL_ENV}" ] ; then
    + echo "active virtual environment detected, aborting..." >&2
    + exit 1
    +fi
    +
    +if [ -d "${VENV_DIR}" ] ; then
    + echo "${VENV_DIR} exists, aborting..." >&2
    + exit 1
    +fi
    +
    +# turn on command echoing
    +set -x
    +
    +# create the venv
    +python3 -m venv "${VENV_DIR}"
    +
    +# activate the virtual env
    +. "${VENV_DIR}"/bin/activate
    +
    +# update pip
    +pip install -U pip
    +
    +# install mercurial and meson
    +pip install -U mercurial meson
    +
    +# download ninja and install it to the bin directory in the virtualenv
    +NINJA_VERSION="v1.10.1"
    +curl -L --output - "https://github.com/ninja-build/ninja/releases/download/${NINJA_VERSION}/ninja-mac.zip" | \
    + funzip > "${VENV_DIR}/bin/ninja" && \
    + chmod +x "${VENV_DIR}/bin/ninja"
    +
    +# build a static version of pkg-config
    +PKG_CONFIG_VERSION="0.29.2"
    +curl -L --output - "https://pkgconfig.freedesktop.org/releases/pkg-config-${PKG_CONFIG_VERSION}.tar.gz" | \
    + tar xf - && \
    + cd "pkg-config-${PKG_CONFIG_VERSION}" && \
    + ./configure --with-internal-glib --enable-static && \
    + make -s && \
    + cp pkg-config "../${VENV_DIR}/bin/"
    +
    --- /dev/null Thu Jan 01 00:00:00 1970 +0000
    +++ b/meson.build Mon Apr 26 21:13:15 2021 -0400
    @@ -0,0 +1,4 @@
    +project('pidgin3-deps', meson_version : '>=0.52.0')
    +
    +gtk = subproject('gtk')
    +