#!/bin/sh -e

# Doesn't seem to like odd cflags. Oh well.
export CFLAGS="-w -pipe -O2 -march=native"
export CXXFLAGS="$CFLAGS"

build_freetype() (
    cd freetype

    CFLAGS="$CFLAGS -DDEFAULT_TT_INTERPRETER_VERSION=TT_INTERPRETER_VERSION_40" \
    ./configure \
        --prefix=/usr \
        --enable-freetype-config \
        --with-harfbuzz="$2"

    make
    make DESTDIR="$1" install
)

build_harfbuzz() (
    # Point Harfbuzz to the Freetype files.
    export CFLAGS="$CFLAGS -I$1/usr/include/freetype2"
    export CXXFLAGS="$CXXFLAGS -I$1/usr/include/freetype2"
    export LDFLAGS="$LDFLAGS -L$1/usr/lib"

    cd harfbuzz

    export DESTDIR="$1"
    meson \
        --prefix=/usr \
        -Dpkg_config_path="$1/usr/lib/pkgconfig" \
        -Ddefault_library=both \
        -Dglib=enabled \
        -Dfreetype=enabled \
        -Dcairo=disabled \
        -Dicu=disabled \
        -Dbenchmark=disabled \
        -Dtests=disabled \
        . output

    ninja -C output
    ninja -C output install
)

build_freetype "$1" no
build_harfbuzz "$1"

# Point Freetype to the Harfbuzz files.
export HARFBUZZ_CFLAGS="-I$PWD/harfbuzz/src"
export HARFBUZZ_LIBS="-L$PWD/harfbuzz/output/src -lharfbuzz"

build_freetype "$1" yes
