Commit edfda783 authored by Adrian Robert's avatar Adrian Robert

merging Emacs.app (NeXTstep port)

parent 1391cd54
2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
Changes and additions for NeXTstep windowing system (Cocoa and
GNUstep) support.
* configure.in: Add support for NS window system: --with-ns (default
off), --enable-ns-app, --enable-cocoa-experimental-ctrl-g; improve add
sparc detection for FreeBSD variants, checks for Cocoa and GNUstep,
disable font backend if window system is "none", not if !HAVE_X11.
* Makefile.in: Add ns-emacs to INFO_FILES, add ns_appdir variable.
(install-arch-dep): Add commands to assemble NS .app package.
2008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
* configure.in: Use macppc for Darwin. Remove references to
......
......@@ -137,7 +137,7 @@ man1dir=$(mandir)/man1
infodir=@infodir@
INFO_FILES=ada-mode autotype calc ccmode cl dbus dired-x ebrowse ediff \
efaq eintr elisp emacs emacs-mime epa erc eshell eudc \
flymake forms gnus idlwave info message mh-e newsticker \
flymake forms gnus idlwave info message mh-e newsticker ns-emacs \
nxml-mode org pcl-cvs pgg rcirc reftex remember sasl sc ses \
sieve speedbar tramp vip viper widget woman smtpmail url
......@@ -167,6 +167,9 @@ x_default_search_path=@x_default_search_path@
# Location to install Emacs.app on Mac OS X
carbon_appdir=@carbon_appdir@
# Location to install Emacs.app under NeXT/Open/GNUstep / Cocoa
ns_appdir=@ns_appdir@
# Where the etc/emacs.desktop file is to be installed.
desktopdir=$(datarootdir)/applications
......@@ -411,6 +414,14 @@ install-arch-dep: mkdir
(cd $(DESTDIR)${carbon_appdir}/Emacs.app; umask 022; tar -xvf - \
&& cat > /dev/null))) || exit 1; \
fi
if test "${ns_appdir}" != ""; then \
umask 022; mkdir -p ${ns_appdir}/Emacs.app; \
(cd nextstep/build/Emacs.app; (tar -chf - . | \
(cd ${ns_appdir}/Emacs.app; umask 022; tar -xvf - \
&& cat > /dev/null))) || exit 1; \
( cd site-lisp ; tar chf - . ) | \
( cd ${datadir}/$(EMACSFULL)/site-lisp ; tar xf - ) \
fi
## http://lists.gnu.org/archive/html/emacs-devel/2007-10/msg01672.html
## Needs to be the user running install, so configure can't set it.
......
......@@ -3,7 +3,6 @@ of their use. Feel free to add more macros and more categories.
** Distinguishing OSes **
MAC_OS Compiling for the `mac' window-system.
MAC_OS8 Compiling for Mac OS Classic (v8 or v9). No longer supported, all code using it can be removed.
MAC_OSX Compiling for Mac OS X. Not bare Darwin.
CYGWIN Compiling the Cygwin port.
......@@ -23,7 +22,11 @@ USE_LISP_UNION_TYPE Define it in lisp.h to make Lisp_Object be a union type inst
** Distinguishing GUIs **
HAVE_NTGUI Use the native W32 GUI for windows, frames, menus&scrollbars.
MAC_OS Compiling for the `mac' window-system.
HAVE_CARBON Compile support for the Carbon GUI. Requires MAC_OS?
HAVE_NS Use the NeXT/OpenStep/Cocoa UI under Mac OS X or GNUstep.
NS_IMPL_GNUSTEP Compile support for GNUSTEP implementation of NS GUI API.
NS_IMPL_COCOA Compile support for Cocoa (Apple) implementation of NS GUI API.
HAVE_X11 Compile support for the X11 GUI.
HAVE_X_WINDOWS Compile support for X Window system
X11 ?? Makefile.in suggests it's equivalent to HAVE_X11
......
2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
* CPP_DEFINES: Add NS port related defines.
2008-06-16 Glenn Morris <rgm@gnu.org>
* admin.el (set-version): Add doc/lispref/vol1.texi,vol2.texi,
......
......@@ -734,6 +734,7 @@ X_TOOLKIT_TYPE
machfile
opsysfile
carbon_appdir
ns_appdir
LTLIBOBJS'
ac_subst_files=''
ac_precious_vars='build_alias
......@@ -1332,6 +1333,9 @@ Optional Features:
--enable-carbon-app[=DIR]
specify install directory for Emacs.app on Mac OS X
[DIR=/Application]
--enable-ns-app[=DIR] [DIR=/Applications]
specify install directory for Emacs.app under NS
--enable-cocoa-experimental-ctrl-g enable experimental improved ctrl-g recognition
--enable-asserts compile code with asserts enabled
--enable-maintainer-mode
enable make rules and dependencies not useful (and
......@@ -1367,6 +1371,7 @@ Optional Packages:
--without-xaw3d don't use Xaw3d
--without-xim don't use X11 XIM
--with-carbon use Carbon GUI on Mac OS X. This is unsupported!
--with-ns use nextstep (Cocoa or GNUstep) windowing system
--without-gpm don't use -lgpm for mouse support on a GNU/Linux
console
--without-dbus don't compile with D-Bus support
......@@ -2087,6 +2092,14 @@ else
fi
# Check whether --with-ns was given.
if test "${with_ns+set}" = set; then
withval=$with_ns;
else
with_ns=no
fi
# Check whether --with-gpm was given.
if test "${with_gpm+set}" = set; then
......@@ -2155,6 +2168,20 @@ if test "${enable_carbon_app+set}" = set; then
fi
# Check whether --enable-ns-app was given.
if test "${enable_ns_app+set}" = set; then
enableval=$enable_ns_app; ns_appdir_x=${enableval}
fi
# Check whether --enable-cocoa-experimental-ctrl-g was given.
if test "${enable_cocoa_experimental_ctrl_g+set}" = set; then
enableval=$enable_cocoa_experimental_ctrl_g; EN_COCOA_EXPERIMENTAL_CTRL_G=yes
else
EN_COCOA_EXPERIMENTAL_CTRL_G=no
fi
# Check whether --enable-asserts was given.
if test "${enable_asserts+set}" = set; then
enableval=$enable_asserts; USE_XASSERTS=$enableval
......@@ -2378,16 +2405,17 @@ machine='' opsys='' unported=no
case "${canonical}" in
## FreeBSD ports
*-*-freebsd* )
*-*-*freebsd* )
opsys=freebsd
case "${canonical}" in
alpha*-*-freebsd*) machine=alpha ;;
arm*-*-freebsd*) machine=arm ;;
ia64-*-freebsd*) machine=ia64 ;;
sparc-*-freebsd*) machine=sparc ;;
sparc64-*-freebsd*) machine=sparc ;;
powerpc-*-freebsd*) machine=macppc ;;
i[3456]86-*-freebsd*) machine=intel386 ;;
amd64-*-freebsd*|x86_64-*-freebsd*) machine=amdx86-64 ;;
amd64-*-freebsd*|x86_64-*-*freebsd*) machine=amdx86-64 ;;
esac
;;
......@@ -2397,6 +2425,7 @@ case "${canonical}" in
case "${canonical}" in
alpha*-*-kfreebsd*) machine=alpha ;;
ia64-*-kfreebsd*) machine=ia64 ;;
sparc-*-kfreebsd*) machine=sparc ;;
sparc64-*-kfreebsd*) machine=sparc ;;
powerpc-*-kfreebsd*) machine=macppc ;;
i[3456]86-*-kfreebsd*) machine=intel386 ;;
......@@ -9308,6 +9337,179 @@ if test "${HAVE_CARBON}" = yes; then
window_system=mac
fi
HAVE_NS=no
COCOA=no
GNUSTEP=no
tmp_CPPFLAGS="$CPPFLAGS"
tmp_CFLAGS="$CFLAGS"
CPPFLAGS="$CPPFLAGS -x objective-c"
CFLAGS="$CFLAGS -x objective-c"
if test "${with_ns}" != no; then
if test "${opsys}" = darwin; then
COCOA=yes
elif test -f /etc/GNUstep/GNUstep.conf; then
GNUSTEP=yes
GNUSTEP_SYSTEM_HEADERS="$(source /etc/GNUstep/GNUstep.conf; echo $GNUSTEP_SYSTEM_HEADERS)"
GNUSTEP_SYSTEM_LIBRARIES="$(source /etc/GNUstep/GNUstep.conf; echo $GNUSTEP_SYSTEM_LIBRARIES)"
CPPFLAGS="$CPPFLAGS -I${GNUSTEP_SYSTEM_HEADERS}"
CFLAGS="$CFLAGS -I${GNUSTEP_SYSTEM_HEADERS}"
REAL_CFLAGS="$REAL_CFLAGS -I${GNUSTEP_SYSTEM_HEADERS}"
LDFLAGS="$LDFLAGS -L${GNUSTEP_SYSTEM_LIBRARIES}"
fi
if test "${ac_cv_header_AppKit_AppKit_h+set}" = set; then
{ echo "$as_me:$LINENO: checking for AppKit/AppKit.h" >&5
echo $ECHO_N "checking for AppKit/AppKit.h... $ECHO_C" >&6; }
if test "${ac_cv_header_AppKit_AppKit_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
fi
{ echo "$as_me:$LINENO: result: $ac_cv_header_AppKit_AppKit_h" >&5
echo "${ECHO_T}$ac_cv_header_AppKit_AppKit_h" >&6; }
else
# Is the header compilable?
{ echo "$as_me:$LINENO: checking AppKit/AppKit.h usability" >&5
echo $ECHO_N "checking AppKit/AppKit.h usability... $ECHO_C" >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
#include <AppKit/AppKit.h>
_ACEOF
rm -f conftest.$ac_objext
if { (ac_try="$ac_compile"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_header_compiler=yes
else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_compiler=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
echo "${ECHO_T}$ac_header_compiler" >&6; }
# Is the header present?
{ echo "$as_me:$LINENO: checking AppKit/AppKit.h presence" >&5
echo $ECHO_N "checking AppKit/AppKit.h presence... $ECHO_C" >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
#include <AppKit/AppKit.h>
_ACEOF
if { (ac_try="$ac_cpp conftest.$ac_ext"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } >/dev/null && {
test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
test ! -s conftest.err
}; then
ac_header_preproc=yes
else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_preproc=no
fi
rm -f conftest.err conftest.$ac_ext
{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
echo "${ECHO_T}$ac_header_preproc" >&6; }
# So? What about this header?
case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
yes:no: )
{ echo "$as_me:$LINENO: WARNING: AppKit/AppKit.h: accepted by the compiler, rejected by the preprocessor!" >&5
echo "$as_me: WARNING: AppKit/AppKit.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
{ echo "$as_me:$LINENO: WARNING: AppKit/AppKit.h: proceeding with the compiler's result" >&5
echo "$as_me: WARNING: AppKit/AppKit.h: proceeding with the compiler's result" >&2;}
ac_header_preproc=yes
;;
no:yes:* )
{ echo "$as_me:$LINENO: WARNING: AppKit/AppKit.h: present but cannot be compiled" >&5
echo "$as_me: WARNING: AppKit/AppKit.h: present but cannot be compiled" >&2;}
{ echo "$as_me:$LINENO: WARNING: AppKit/AppKit.h: check for missing prerequisite headers?" >&5
echo "$as_me: WARNING: AppKit/AppKit.h: check for missing prerequisite headers?" >&2;}
{ echo "$as_me:$LINENO: WARNING: AppKit/AppKit.h: see the Autoconf documentation" >&5
echo "$as_me: WARNING: AppKit/AppKit.h: see the Autoconf documentation" >&2;}
{ echo "$as_me:$LINENO: WARNING: AppKit/AppKit.h: section \"Present But Cannot Be Compiled\"" >&5
echo "$as_me: WARNING: AppKit/AppKit.h: section \"Present But Cannot Be Compiled\"" >&2;}
{ echo "$as_me:$LINENO: WARNING: AppKit/AppKit.h: proceeding with the preprocessor's result" >&5
echo "$as_me: WARNING: AppKit/AppKit.h: proceeding with the preprocessor's result" >&2;}
{ echo "$as_me:$LINENO: WARNING: AppKit/AppKit.h: in the future, the compiler will take precedence" >&5
echo "$as_me: WARNING: AppKit/AppKit.h: in the future, the compiler will take precedence" >&2;}
;;
esac
{ echo "$as_me:$LINENO: checking for AppKit/AppKit.h" >&5
echo $ECHO_N "checking for AppKit/AppKit.h... $ECHO_C" >&6; }
if test "${ac_cv_header_AppKit_AppKit_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_cv_header_AppKit_AppKit_h=$ac_header_preproc
fi
{ echo "$as_me:$LINENO: result: $ac_cv_header_AppKit_AppKit_h" >&5
echo "${ECHO_T}$ac_cv_header_AppKit_AppKit_h" >&6; }
fi
if test $ac_cv_header_AppKit_AppKit_h = yes; then
HAVE_NS=yes
fi
fi
if test "${window_system}" = x11 && test "${HAVE_NS}" = yes; then
if test "${with_ns+set}" != set \
&& test "${ns_appdir_x+set}" != set; then
HAVE_NS=no
fi
fi
if test "${window_system}" = mac && test "${HAVE_NS}" = yes; then
if test "${with_ns+set}" != set \
&& test "${ns_appdir_x+set}" != set; then
HAVE_NS=no
else
HAVE_CARBON=no
fi
fi
if test "${HAVE_NS}" = yes; then
window_system=nextstep
with_xft=no
with_freetype=no
fi
CFLAGS="$tmp_CFLAGS"
CPPFLAGS="$tmp_CPPFLAGS"
case "${window_system}" in
x11 )
HAVE_X_WINDOWS=yes
......@@ -9321,7 +9523,7 @@ case "${window_system}" in
* ) USE_X_TOOLKIT=maybe ;;
esac
;;
mac | none )
nextstep | mac | none )
HAVE_X_WINDOWS=no
HAVE_X11=no
USE_X_TOOLKIT=none
......@@ -9396,9 +9598,6 @@ case ${HAVE_X11} in
yes ) HAVE_MENUS=yes ;;
esac
### Compute the unexec source name from the object name.
UNEXEC_SRC="`echo ${unexec} | sed 's/\.o/.c/'`"
# Do the opsystem or machine files prohibit the use of the GNU malloc?
# Assume not, until told otherwise.
GNU_MALLOC=yes
......@@ -12313,6 +12512,12 @@ _ACEOF
elif test "${HAVE_CARBON}" = "yes"; then
cat >>confdefs.h <<\_ACEOF
#define USE_TOOLKIT_SCROLL_BARS 1
_ACEOF
USE_TOOLKIT_SCROLL_BARS=yes
elif test "${HAVE_NS}" = "yes"; then
cat >>confdefs.h <<\_ACEOF
#define USE_TOOLKIT_SCROLL_BARS 1
_ACEOF
USE_TOOLKIT_SCROLL_BARS=yes
......@@ -14943,6 +15148,46 @@ done
# We also have mouse menus.
HAVE_MENUS=yes
fi
### Use NeXTstep API to implement GUI.
if test "${HAVE_NS}" = "yes"; then
cat >>confdefs.h <<\_ACEOF
#define HAVE_NS 1
_ACEOF
## Specify the install directory
ns_appdir=
if test "${ns_appdir_x}" != ""; then
case ${ns_appdir_x} in
y | ye | yes) ns_appdir=/Applications ;;
* ) ns_appdir=${ns_appdir_x} ;;
esac
fi
if test "${COCOA}" = "yes"; then
cat >>confdefs.h <<\_ACEOF
#define NS_IMPL_COCOA 1
_ACEOF
fi
if test "${EN_COCOA_EXPERIMENTAL_CTRL_G}" = "yes"; then
cat >>confdefs.h <<\_ACEOF
#define COCOA_EXPERIMENTAL_CTRL_G 1
_ACEOF
fi
if test "${GNUSTEP}" = "yes"; then
cat >>confdefs.h <<\_ACEOF
#define NS_IMPL_GNUSTEP 1
_ACEOF
fi
# We also have mouse menus.
HAVE_MENUS=yes
fi
### Use session management (-lSM -lICE) if available
HAVE_X_SM=no
......@@ -16688,7 +16933,6 @@ cat >>conftest.$ac_ext <<_ACEOF
# endif
#endif
#include <limits.h>
#include <stdlib.h>
#ifdef HAVE_UNISTD_H
......@@ -16837,15 +17081,12 @@ main ()
isn't worth using anyway. */
alarm (60);
for (;;)
{
t = (time_t_max << 1) + 1;
if (t <= time_t_max)
break;
time_t_max = t;
}
time_t_min = - ((time_t) ~ (time_t) 0 == (time_t) -1) - time_t_max;
for (time_t_max = 1; 0 < time_t_max; time_t_max *= 2)
continue;
time_t_max--;
if ((time_t) -1 < 0)
for (time_t_min = -1; (time_t) (time_t_min * 2) < 0; time_t_min *= 2)
continue;
delta = time_t_max / 997; /* a suitable prime number */
for (i = 0; i < N_STRINGS; i++)
{
......@@ -16860,12 +17101,10 @@ main ()
&& mktime_test ((time_t) (60 * 60 * 24))))
return 1;
for (j = 1; ; j <<= 1)
for (j = 1; 0 < j; j *= 2)
if (! bigtime_test (j))
return 1;
else if (INT_MAX / 2 < j)
break;
if (! bigtime_test (INT_MAX))
if (! bigtime_test (j - 1))
return 1;
}
return ! (irix_6_4_bug () && spring_forward_gap () && year_2050_test ());
......@@ -18774,13 +19013,11 @@ _ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
#include <sys/types.h> /* for off_t */
#include <stdio.h>
#include <stdio.h>
int
main ()
{
int (*fp) (FILE *, off_t, int) = fseeko;
return fseeko (stdin, 0, 0) && fp (stdin, 0, 0);
return fseeko (stdin, 0, 0) && (fseeko) (stdin, 0, 0);
;
return 0;
}
......@@ -18820,13 +19057,11 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
#define _LARGEFILE_SOURCE 1
#include <sys/types.h> /* for off_t */
#include <stdio.h>
#include <stdio.h>
int
main ()
{
int (*fp) (FILE *, off_t, int) = fseeko;
return fseeko (stdin, 0, 0) && fp (stdin, 0, 0);
return fseeko (stdin, 0, 0) && (fseeko) (stdin, 0, 0);
;
return 0;
}
......@@ -23961,6 +24196,7 @@ fi
cat >>confdefs.h <<_ACEOF
......@@ -24106,12 +24342,11 @@ echo " Does Emacs use -lrsvg-2? ${HAVE_RSVG}"
echo " Does Emacs use -lgpm? ${HAVE_GPM}"
echo " Does Emacs use -ldbus? ${HAVE_DBUS}"
if test "${USE_FONT_BACKEND}" = "yes"; then
echo " Does Emacs use -lfreetype? ${HAVE_FREETYPE}"
echo " Does Emacs use -lm17n-flt? ${HAVE_M17N_FLT}"
echo " Does Emacs use -lotf? ${HAVE_LIBOTF}"
echo " Does Emacs use -lxft? ${HAVE_XFT}"
fi
echo " Does Emacs use -lfreetype? ${HAVE_FREETYPE}"
echo " Does Emacs use -lm17n-flt? ${HAVE_M17N_FLT}"
echo " Does Emacs use -lotf? ${HAVE_LIBOTF}"
echo " Does Emacs use -lxft? ${HAVE_XFT}"
echo " Does Emacs use X toolkit scroll bars? ${USE_TOOLKIT_SCROLL_BARS}"
echo
......@@ -24985,10 +25220,11 @@ X_TOOLKIT_TYPE!$X_TOOLKIT_TYPE$ac_delim
machfile!$machfile$ac_delim
opsysfile!$opsysfile$ac_delim
carbon_appdir!$carbon_appdir$ac_delim
ns_appdir!$ns_appdir$ac_delim
LTLIBOBJS!$LTLIBOBJS$ac_delim
_ACEOF
if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 22; then
if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 23; then
break
elif $ac_last_try; then
{ { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
......@@ -25449,9 +25685,6 @@ if test ! -f src/.gdbinit && test -f $srcdir/src/.gdbinit; then
echo source $srcdir/src/.gdbinit > src/.gdbinit
fi
# This is how we know whether to re-run configure in certain cases.
touch src/config.stamp
;;
esac
......
......@@ -21,7 +21,7 @@ dnl
dnl You should have received a copy of the GNU General Public License
dnl along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
AC_PREREQ(2.61)dnl
AC_PREREQ(2.61)
AC_INIT(emacs, 23.0.60)
AC_CONFIG_HEADER(src/config.h:src/config.in)
AC_CONFIG_SRCDIR(src/lisp.h)
......@@ -142,6 +142,7 @@ OPTION_DEFAULT_ON([toolkit-scroll-bars],[don't use Motif or Xaw3d scroll bars])
OPTION_DEFAULT_ON([xaw3d],[don't use Xaw3d])
OPTION_DEFAULT_ON([xim],[don't use X11 XIM])
OPTION_DEFAULT_OFF([carbon],[use Carbon GUI on Mac OS X. This is unsupported!])
OPTION_DEFAULT_OFF([ns],[use nextstep (Cocoa or GNUstep) windowing system])
OPTION_DEFAULT_ON([gpm],[don't use -lgpm for mouse support on a GNU/Linux console])
OPTION_DEFAULT_ON([dbus],[don't compile with D-Bus support])
......@@ -175,6 +176,16 @@ AC_ARG_ENABLE(carbon-app,
[DIR=/Application]])],
[ carbon_appdir_x=${enableval}])
AC_ARG_ENABLE(ns-app,
[[ --enable-ns-app[=DIR] [DIR=/Applications]
specify install directory for Emacs.app under NS]],
[ ns_appdir_x=${enableval}])
AC_ARG_ENABLE(cocoa-experimental-ctrl-g,
[ --enable-cocoa-experimental-ctrl-g enable experimental improved ctrl-g recognition],
EN_COCOA_EXPERIMENTAL_CTRL_G=yes,
EN_COCOA_EXPERIMENTAL_CTRL_G=no)
AC_ARG_ENABLE(asserts,
[AS_HELP_STRING([--enable-asserts], [compile code with asserts enabled])],
USE_XASSERTS=$enableval,
......@@ -283,16 +294,17 @@ machine='' opsys='' unported=no
case "${canonical}" in
## FreeBSD ports
*-*-freebsd* )
*-*-*freebsd* )
opsys=freebsd
case "${canonical}" in
alpha*-*-freebsd*) machine=alpha ;;
arm*-*-freebsd*) machine=arm ;;
ia64-*-freebsd*) machine=ia64 ;;
sparc-*-freebsd*) machine=sparc ;;
sparc64-*-freebsd*) machine=sparc ;;
powerpc-*-freebsd*) machine=macppc ;;
i[3456]86-*-freebsd*) machine=intel386 ;;
amd64-*-freebsd*|x86_64-*-freebsd*) machine=amdx86-64 ;;
amd64-*-freebsd*|x86_64-*-*freebsd*) machine=amdx86-64 ;;
esac
;;
......@@ -302,6 +314,7 @@ case "${canonical}" in
case "${canonical}" in
alpha*-*-kfreebsd*) machine=alpha ;;
ia64-*-kfreebsd*) machine=ia64 ;;
sparc-*-kfreebsd*) machine=sparc ;;
sparc64-*-kfreebsd*) machine=sparc ;;
powerpc-*-kfreebsd*) machine=macppc ;;
i[3456]86-*-kfreebsd*) machine=intel386 ;;
......@@ -1221,6 +1234,50 @@ if test "${HAVE_CARBON}" = yes; then
window_system=mac
fi
HAVE_NS=no
COCOA=no
GNUSTEP=no
tmp_CPPFLAGS="$CPPFLAGS"
tmp_CFLAGS="$CFLAGS"
CPPFLAGS="$CPPFLAGS -x objective-c"
CFLAGS="$CFLAGS -x objective-c"
if test "${with_ns}" != no; then
if test "${opsys}" = darwin; then
COCOA=yes
elif test -f /etc/GNUstep/GNUstep.conf; then
GNUSTEP=yes
GNUSTEP_SYSTEM_HEADERS="$(source /etc/GNUstep/GNUstep.conf; echo $GNUSTEP_SYSTEM_HEADERS)"
GNUSTEP_SYSTEM_LIBRARIES="$(source /etc/GNUstep/GNUstep.conf; echo $GNUSTEP_SYSTEM_LIBRARIES)"
CPPFLAGS="$CPPFLAGS -I${GNUSTEP_SYSTEM_HEADERS}"
CFLAGS="$CFLAGS -I${GNUSTEP_SYSTEM_HEADERS}"
REAL_CFLAGS="$REAL_CFLAGS -I${GNUSTEP_SYSTEM_HEADERS}"
LDFLAGS="$LDFLAGS -L${GNUSTEP_SYSTEM_LIBRARIES}"
fi
AC_CHECK_HEADER(AppKit/AppKit.h, HAVE_NS=yes)
fi
if test "${window_system}" = x11 && test "${HAVE_NS}" = yes; then
if test "${with_ns+set}" != set \
&& test "${ns_appdir_x+set}" != set; then
HAVE_NS=no