README.windows ************** Introduction ============ This file describes the steps required to build fswatch on Windows. fswatch was born as a POSIX application and the Windows monitor has been developed trying to reduce the dependencies on the Windows API at a minimum. To fulfill this goal, a dependency to Cygwin has been introduced. Windows has historically provided multiple versions of the same API for single byte and multibyte character sets. We have decided to only support the multibyte API: the Windows monitor will thus not build on Windows system supporting only the single-byte APIs. In this case, the only available monitor on the Windows OS will be the poll monitor. Cygwin ====== Cygwin is a required dependency and must be installed to provide the toolchain and the libraries required by fswatch. The current Cygwin distribution can be downloaded at: https://cygwin.com Cygwin is a modular environment and the following componentes are required to successfully build fswatch: * GNU GCC C++ compiler. * GNU Autoconf. * GNU Automake. * GNU Autoconf. * GNU libtool. The following are optional: * GNU gettext (optional) Windows SDK =========== The Windows SDK is required to successfully build fswatch since it ships the headers and the libraries required to build Windows applications. Please, consult your Windows documentation to get the latest SDK for your platform. GNU Build System ================ For further instruction on building the GNU Build System from scratch, please check the README.gnu-build-system file. Localization and gettext ======================== fswatch is localizable and locale support requires GNU gettext to be available at build time. Depending on gettext installation path, configure may not be able to find or libintl. In this case, you will need to instruct configure about their location: $ CPPFLAGS="-I/path/to/include" LDFLAGS="-L/path/to/lib" ./configure If configure detects that gettext is available, you will find a message such as: checking whether to use NLS... yes or, which is equivalent, config.h will contain the following definition: #define ENABLE_NLS 1 ----- Copyright (c) 2014-2015 Enrico M. Crisostomo This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see .