diff --git a/README.md b/README.md index a43f1bfb..71fcee60 100644 --- a/README.md +++ b/README.md @@ -16,9 +16,8 @@ You need Meson and Ninja (as well as Rust and Cargo) to build Fractal. ### GNU/Linux ``` -./configure --prefix=/usr/local -make -sudo make install +meson . _build --prefix=/usr/local +ninja -C _build ``` ### macOS @@ -27,7 +26,7 @@ sudo make install brew install gtk3+ dbus bash # empirically needs 3.22.19 or later of gtk3+ # ...and run configure as: -/usr/local/bin/bash -c ./configure --prefix=/usr/local +/usr/local/bin/bash -c meson . _build --prefix=/usr/local ``` You may also need to comment out the `notification.show` block in diff --git a/configure b/configure deleted file mode 100755 index 6754d907..00000000 --- a/configure +++ /dev/null @@ -1,182 +0,0 @@ -#!/bin/bash -# configure script adapter for Meson -# Based on build-api: https://github.com/cgwalters/build-api -# Copyright 2010, 2011, 2013 Colin Walters -# Copyright 2016, 2017 Emmanuele Bassi -# Copyright 2017 Iñigo Martínez -# Licensed under the new-BSD license (http://www.opensource.org/licenses/bsd-license.php) - -# Build API variables: - -# Little helper function for reading args from the commandline. -# it automatically handles -a b and -a=b variants, and returns 1 if -# we need to shift $3. -read_arg() { - # $1 = arg name - # $2 = arg value - # $3 = arg parameter - local rematch='^[^=]*=(.*)$' - if [[ $2 =~ $rematch ]]; then - read "$1" <<< "${BASH_REMATCH[1]}" - else - read "$1" <<< "$3" - # There is no way to shift our callers args, so - # return 1 to indicate they should do it instead. - return 1 - fi -} - -sanitycheck() { - # $1 = arg name - # $1 = arg command - # $2 = arg alternates - local cmd=$( which $2 2>/dev/null ) - - if [ -x "$cmd" ]; then - read "$1" <<< "$cmd" - return 0 - fi - - test -z $3 || { - for alt in $3; do - cmd=$( which $alt 2>/dev/null ) - - if [ -x "$cmd" ]; then - read "$1" <<< "$cmd" - return 0 - fi - done - } - - echo -e "\e[1;31mERROR\e[0m: Command '$2' not found" - exit 1 -} - -checkoption() { - # $1 = arg - option="${1#*--}" - action="${option%%-*}" - name="${option#*-}" - if [ ${default_options[$name]+_} ]; then - case "$action" in - enable) meson_options[$name]=true;; - disable) meson_options[$name]=false;; - *) echo -e "\e[1;33mINFO\e[0m: Ignoring unknown action '$action'";; - esac - else - echo -e "\e[1;33mINFO\e[0m: Ignoring unknown option '$option'" - fi -} - -echooption() { - # $1 = option - if [ ${meson_options[$1]+_} ]; then - echo ${meson_options[$1]} - elif [ ${default_options[$1]+_} ]; then - echo ${default_options[$1]} - fi -} - -sanitycheck MESON 'meson' -sanitycheck MESONTEST 'mesontest' -sanitycheck NINJA 'ninja' 'ninja-build' - -declare -A meson_options - -while (($# > 0)); do - case "${1%%=*}" in - --prefix) read_arg prefix "$@" || shift;; - --bindir) read_arg bindir "$@" || shift;; - --sbindir) read_arg sbindir "$@" || shift;; - --libexecdir) read_arg libexecdir "$@" || shift;; - --datarootdir) read_arg datarootdir "$@" || shift;; - --datadir) read_arg datadir "$@" || shift;; - --sysconfdir) read_arg sysconfdir "$@" || shift;; - --libdir) read_arg libdir "$@" || shift;; - --mandir) read_arg mandir "$@" || shift;; - --includedir) read_arg includedir "$@" || shift;; - *) checkoption $1;; - esac - shift -done - -# Defaults -test -z ${prefix} && prefix="/usr/local" -test -z ${bindir} && bindir=${prefix}/bin -test -z ${sbindir} && sbindir=${prefix}/sbin -test -z ${libexecdir} && libexecdir=${prefix}/bin -test -z ${datarootdir} && datarootdir=${prefix}/share -test -z ${datadir} && datadir=${datarootdir} -test -z ${sysconfdir} && sysconfdir=${prefix}/etc -test -z ${libdir} && libdir=${prefix}/lib -test -z ${mandir} && mandir=${prefix}/share/man -test -z ${includedir} && includedir=${prefix}/include - -# The source directory is the location of this file -srcdir=$(dirname $0) - -# The build directory is the current location -builddir=`pwd` - -# If we're calling this file from the source directory then -# we automatically create a build directory and ensure that -# both Meson and Ninja invocations are relative to that -# location -if [[ -f "${builddir}/meson.build" ]]; then - mkdir -p _build - builddir="${builddir}/_build" - NINJA_OPT="-C ${builddir}" -fi - -# Wrapper Makefile for Ninja -cat > Makefile <