summaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
authorAdrian Robert <Adrian.B.Robert@gmail.com>2008-07-15 18:15:18 +0000
committerAdrian Robert <Adrian.B.Robert@gmail.com>2008-07-15 18:15:18 +0000
commitedfda78355c5528eee489fa8a7f9c73bf8e734f2 (patch)
tree78d2414d9791e1efc17ec9b35b438ae35602340a /configure
parent1391cd548782097e34d7856ec4f20ca90bdf2c26 (diff)
downloademacs-edfda78355c5528eee489fa8a7f9c73bf8e734f2.tar.gz
merging Emacs.app (NeXTstep port)
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure309
1 files changed, 271 insertions, 38 deletions
diff --git a/configure b/configure
index b3b36a7593b..4b0b0848cc1 100755
--- a/configure
+++ b/configure
@@ -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
@@ -12316,6 +12515,12 @@ _ACEOF
_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
fi
fi
@@ -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;
}
@@ -23963,6 +24198,7 @@ fi
+
cat >>confdefs.h <<_ACEOF
#define EMACS_CONFIGURATION "${canonical}"
_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