pidgin/pidgin

Fix Windows builds and tests

2020-12-22, Elliott Sales de Andrade
48dfed6f4f1f
Fix Windows builds and tests

* Make math library optional.
As the comment says, it should be optional on Windows and Haiku, but the check defaults to required.
* Don't make `unistd.h` required.
* Disable transparency plugin build as it's very busted.
* Add missing headers to fix compile on Windows.
* Use a fixed pref key for test plugin loading instead of `TEST_DATA_DIR`.
The latter is an absolute path, and thus unsuitable as a preference key, since it will not start with `/` on Windows.
* Add a missing pref initialization on Windows.

Testing Done:
Compiled and run tests on Windows.

Reviewed at https://reviews.imfreedom.org/r/308/
environment:
- PACKAGECLOUD_REPO=experimental
- ARCH=amd64
- BUILD_NUMBER
- REGISTRY_HOST=docker.io
- REPOSITORY=pidgin/builders
tasks:
import:
type: docker/import
files: .:.
build:
type: docker/run
image: ${REGISTRY_HOST}/${REPOSITORY}:${DISTRO}-${VERSION}-${ARCH}
clean:
type: convey/clean
files:
- appimage-x86_64
- pvs-studio
- scanbuild
export:
type: docker/export
files: ${DISTRO}-${VERSION}-${ARCH}
build-target:
type: docker/run
image: ${REGISTRY_HOST}/${REPOSITORY}:${TARGET}
export-target:
type: docker/export
files: ${TARGET}
plans:
pidgin3-appimage-x86_64:
environment:
- TARGET=appimage-x86_64
- BUILD_NUMBER=0
- COMMIT_SHORT=${HG_COMMIT_SHORT}
- VERSION=${BUILD_NUMBER}~${COMMIT_SHORT}
- RECIPE=Pidgin3
- CONFIGURE_ARGS=-Dconsoleui=False
stages:
- tasks: [import, build-target, export-target]
clean:
stages:
- tasks: [clean]
mingw-w64-x86_64:
environment: [DISTRO=mingw, VERSION=w64, ARCH=x86_64]
stages:
- tasks: [import, build]
pvs-studio:
environment:
- TARGET=pvs-studio
- PVS_STUDIO_USERNAME
- PVS_STUDIO_KEY
stages:
- tasks: [import, build-target]
- tasks: [export-target]
run: always
scanbuild:
environment: [TARGET=scanbuild]
stages:
- tasks: [import, build-target]
- tasks: [export-target]
run: always
subproject-build:
environment: [TARGET=subproject-build]
stages:
- tasks: [import, build-target]