1README.gnu-build-system 2======================= 3 4Introduction 5------------ 6 7`fswatch` is built using the GNU Build System (a.k.a. the Autotools) and 8developers willing to modify the configuration files must have the GNU Build 9System installed in order to do so. 10 11For further information about the GNU Build System and its use, please refer to 12its official documentation. 13 14Installing the GNU Build System 15------------------------------- 16 17To install the GNU Build System, the following operations must be performed: 18 19 * Get the GNU Build System components: 20 - [Autoconf] (>= v. 2.69). 21 - [Automake]: (>= v. 1.14.1). 22 - [Libtool]: (>= v. 2.4.2). 23 - [Gettext]: (>= v. 0.19.4). 24 25 * Install the packages in the following order: 26 - Autoconf 27 - Automake 28 - Libtool 29 - Gettext 30 31 * From now on, `<bundle>` will indicate any of the above-mentioned 32 components. 33 34 * Grab the sources: 35 36 $ wget <sources-url> 37 38 * Uncompress the source bundle: 39 40 $ gunzip <bundle>.tar.gz 41 $ tar -xf <bundle>.tar 42 43 * Configure the GNU Build System using the provided `autogen.sh` script: 44 45 $ ./autogen.sh 46 47 Whenever any component of the GNU Build System is updated, the `--force` 48 option should be passed to `autogen.sh`, which in turn forwards it to 49 `autoreconf`, to make sure that automatically generated scripts and macros 50 are updated: 51 52 $ ./autogen.sh --force 53 54 * Configure the package: 55 56 $ ./configure [...] 57 58 * If you want to install the package in the default location 59 (`/usr/local/bin`) you can invoke `./configure` with no option, otherwise 60 provide the desired installation directory using the `--prefix` option: 61 62 $ ./configure --prefix=/destdir 63 64 * Build the package: 65 66 $ make 67 68 * Test the components: 69 70 $ make check 71 72 * Test the installed components: 73 74 $ make check 75 76 * Install the components: 77 78 $ make install 79 80 Depending on the installation directory additional privileges may be 81 required. 82 83 * Add the installation directory to the `PATH`, otherwise builds of the 84 package may fail: 85 86 $ export PATH=/destdir/bin:$PATH 87 88[Autoconf]: https://www.gnu.org/software/autoconf/ 89[Automake]: https://www.gnu.org/software/automake/ 90[Libtool]: https://www.gnu.org/software/libtool/ 91[Gettext]: https://www.gnu.org/software/gettext/ 92----- 93 94Copyright (c) 2014-2017 Enrico M. Crisostomo 95 96This program is free software; you can redistribute it and/or modify it under 97the terms of the GNU General Public License as published by the Free Software 98Foundation; either version 3, or (at your option) any later version. 99 100This program is distributed in the hope that it will be useful, but WITHOUT ANY 101WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A 102PARTICULAR PURPOSE. See the GNU General Public License for more details. 103 104You should have received a copy of the GNU General Public License along with 105this program. If not, see <http://www.gnu.org/licenses/>. 106