* configure.ac [MINGW32]: Source nt/mingw-cfg.site.
* make-dist: Don't distribute nt/msysconfig.sh.
* nt/msysconfig.sh: Remove.
* nt/INSTALL: Update for this.
* nt/mingw-cfg.site: Comment.
2013-11-12 Dani Moncayo <dmoncayo@gmail.com>
+ * configure.ac [MINGW32]: Source nt/mingw-cfg.site.
+ * make-dist: Don't distribute nt/msysconfig.sh.
+
* Makefile.in (epaths-force-w32): Simplify w32srcdir computation.
2013-11-08 Paul Eggert <eggert@cs.ucla.edu>
AC_PREREQ(2.65)
AC_INIT(emacs, 24.3.50)
+test "$MSYSTEM" = "MINGW32" && . $srcdir/nt/mingw-cfg.site
+
dnl Set emacs_config_options to the options of 'configure', quoted for the shell,
dnl and then quoted again for a C string. Separate options with spaces.
dnl Add some environment variables, if they were passed via the environment
ln config.nt emacsclient.rc emacs-src.tags ../${tempdir}/nt
ln nmake.defs gmake.defs subdirs.el [a-z]*.bat [a-z]*.[ch] ../${tempdir}/nt
ln Makefile.in gnulib.mk ../${tempdir}/nt
- ln msysconfig.sh mingw-cfg.site epaths.nt INSTALL.OLD ../${tempdir}/nt
+ ln mingw-cfg.site epaths.nt INSTALL.OLD ../${tempdir}/nt
ln ChangeLog INSTALL README README.W32 makefile.w32-in ../${tempdir}/nt)
echo "Making links to \`nt/inc' and its subdirectories"
+2013-11-12 Dani Moncayo <dmoncayo@gmail.com>
+
+ * msysconfig.sh: Remove.
+ * INSTALL: Update for this.
+
2013-11-09 Glenn Morris <rgm@gnu.org>
* mingw-cfg.site: No need for this to be executable.
1. If you want to build Emacs outside of the source tree
(recommended), create the build directory and chdir there.
- 2. Invoke the MSYS-specific configure script:
+ 2. Invoke the configure script:
- If you are building outside the source tree:
- /PATH/TO/EMACS/SOURCE/TREE/nt/msysconfig.sh --prefix=PREFIX ...
+ /PATH/TO/EMACS/SOURCE/TREE/configure --prefix=PREFIX ...
- If you are building in-place, i.e. inside the source tree:
- ./nt/msysconfig.sh --prefix=PREFIX ...
+ ./configure --prefix=PREFIX ...
It is always preferable to use --prefix to configure Emacs for
some specific location of its installed tree; the default
You can pass other options to the configure script. Here's a
typical example (for an in-place debug build):
- CPPFLAGS='-DGLYPH_DEBUG=1' CFLAGS='-O0 -g3' ./nt/msysconfig.sh --prefix=/d/usr/emacs --enable-checking
+ CPPFLAGS='-DGLYPH_DEBUG=1' CFLAGS='-O0 -g3' ./configure --prefix=/d/usr/emacs --enable-checking
3. After the configure script finishes, it should display the
resulting configuration. After that, type
You invoke the configure script like this:
- /PATH/TO/EMACS/SOURCE/TREE/nt/msysconfig.sh --prefix=PREFIX ...
+ /PATH/TO/EMACS/SOURCE/TREE/configure --prefix=PREFIX ...
or, if you are building in-place, i.e. inside the source tree:
- ./nt/msysconfig.sh --prefix=PREFIX ...
+ ./configure --prefix=PREFIX ...
Here PREFIX is the place where you eventually want to install Emacs
once built, e.g. /d/usr. We recommend to always use --prefix when
Windows-style file names was reported to cause subtle and hard to
figure out problems during the build. This applies both to the
command switches, such as --prefix=, and to the absolute file name
- of msysconfig.sh, if you are building outside of the source tree.
+ of 'configure', if you are building outside of the source tree.
You can pass additional options to the configure script, for the
full list type
- ./nt/msysconfig.sh --help
+ ./configure --help
As explained in the help text, you may need to tell the script what
are the optional flags to invoke the compiler. This is needed if
headers in C:\emacs\libs\jpeg-6b-4-lib\include, you will need to say
something like this:
- CPPFLAGS='-I/c/emacs/libs/libpng-1.2.37-lib/include -I/c/emacs/libs/jpeg-6b-4-lib/include' ./nt/msysconfig.sh --prefix=PREFIX
+ CPPFLAGS='-I/c/emacs/libs/libpng-1.2.37-lib/include -I/c/emacs/libs/jpeg-6b-4-lib/include' ./configure --prefix=PREFIX
which is quite a mouth-full, especially if you have more directories
to specify... Perhaps you may wish to revisit your installation
If you have a global site-lisp directory from previous Emacs
installation, and you want Emacs to continue using it, specify it
- via the --enable-locallisppath switch to msysconfig.sh, like this:
+ via the --enable-locallisppath switch to 'configure', like this:
- ./nt/msysconfig.sh --prefix=PREFIX --enable-locallisppath="/d/usr/share/emacs/VERSION/site-lisp:/d/wherever/site-lisp"
+ ./configure --prefix=PREFIX --enable-locallisppath="/d/usr/share/emacs/VERSION/site-lisp:/d/wherever/site-lisp"
Use the normal MSYS /d/foo/bar style to specify directories by their
absolute file names.
A few frequently used options are needed when you want to produce an
unoptimized binary with runtime checks enabled:
- CPPFLAGS='-DGLYPH_DEBUG=1' CFLAGS='-O0 -g3' ./nt/msysconfig.sh --prefix=PREFIX --enable-checking
+ CPPFLAGS='-DGLYPH_DEBUG=1' CFLAGS='-O0 -g3' ./configure --prefix=PREFIX --enable-checking
Once invoked, the configure script will run for some time, and, if
successful, will eventually produce a summary of the configuration
# value of a shell variable ac_cv_header_foo_h. The value should be
# yes if the header is deemed to exist, no otherwise. Or it could be
# something else, if the value computed by 'configure' requires that.
-# In general, since configure instructs GCC to use header files
-# in nt/inc, you should not need to futz with header file tests. But
-# there are exceptions, like with getopt.h below (which is a MinGW
-# system header, but we do not want to use it).
+# In general, since configure (when invoked from an MSYS environment)
+# instructs GCC to use header files in nt/inc, you should not need to
+# futz with header file tests. But there are exceptions, like with
+# getopt.h below (which is a MinGW system header, but we do not want
+# to use it).
#
# For each library function foo you want to supply test results, set
# the value of a shell variable ac_cv_func_foo. Again, the value is
+++ /dev/null
-#! /bin/sh
-### msysconfig.sh - Run the top-level 'configure' script as appropriate
-### for the MinGW/MSYS build of a native MS-Windows port of Emacs.
-
-## Copyright (C) 2013 Free Software Foundation, Inc.
-
-## Author: Eli Zaretskii <eliz@gnu.org>
-
-## This file is part of GNU Emacs.
-
-## GNU Emacs 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 of the License, or
-## (at your option) any later version.
-
-## GNU Emacs 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
-
-### Commentary:
-
-## The Posix 'configure' script needs a few tweaks to produce desired
-## results when running under MSYS with the purpose of configuring
-## Emacs for the MinGW MS-Windows build. Rather than asking users to
-## type these tweaks every time they configure the package, we provide
-## this helper script which takes care of the mundane things.
-
-### Code:
-
-srcdir=`dirname "$0"`
-parent=`dirname "$srcdir"`
-
-## The nt/mingw-cfg.site file provides various autoconf variables that
-## are needed for a successful MinGW build.
-CONFIG_SITE="$srcdir/mingw-cfg.site" $parent/configure "$@"