summaryrefslogtreecommitdiff
path: root/Build/source/texk/xdvik/m4/xdvi-linker-multiple-defns.m4
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/xdvik/m4/xdvi-linker-multiple-defns.m4')
-rw-r--r--Build/source/texk/xdvik/m4/xdvi-linker-multiple-defns.m489
1 files changed, 41 insertions, 48 deletions
diff --git a/Build/source/texk/xdvik/m4/xdvi-linker-multiple-defns.m4 b/Build/source/texk/xdvik/m4/xdvi-linker-multiple-defns.m4
index 5c67903a2b9..01f373cdcd6 100644
--- a/Build/source/texk/xdvik/m4/xdvi-linker-multiple-defns.m4
+++ b/Build/source/texk/xdvik/m4/xdvi-linker-multiple-defns.m4
@@ -14,64 +14,57 @@
# and if it doesn't, don't define LD_ALLOWS_MULTIPLE_DEFINITIONS.
AC_DEFUN([XDVI_LINKER_MULTIPLE_DEFNS],
-[AC_CACHE_CHECK([whether linker supports the --allow-multiple-definition flag],
- [xdvi_cv_linker_multiple_defns],
- [xdvi_save_LDFLAGS=$LDFLAGS
- LDFLAGS="-Xlinker --allow-multiple-definition"
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <stdio.h>]],
- [[void foo(void);]])],
- [xdvi_cv_linker_multiple_defns=yes],
- [xdvi_cv_linker_multiple_defns=no])
- LDFLAGS=$xdvi_save_LDFLAGS])
+[AC_CACHE_CHECK(
+ [if linker supports multiple definitions and for required flags],
+ [xdvi_cv_linker_multiple_defns],
+ [xdvi_ld_save_LDFLAGS=$LDFLAGS
+ LDFLAGS="-Xlinker --allow-multiple-definition"
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[#include <stdio.h>]], [[void foo(void);]])],
+ [xdvi_cv_linker_multiple_defns=$LDFLAGS],
+ [xdvi_ld_save_LIBS=$LIBS
+ xdvi_ld_save_CFLAGS=$CFLAGS
+ xdvi_ld_save_CPPFLAGS=$CPPFLAGS
-x_linker_options=""
-AS_CASE([$xdvi_cv_linker_multiple_defns],
- [yes], [x_linker_options="-Xlinker --allow-multiple-definition"],
- ["by default"], [],
- [AC_MSG_CHECKING([whether linker supports multiple definitions])
-
- xdvi_ld_save_LIBS=$LIBS
- xdvi_ld_save_CFLAGS=$CFLAGS
- xdvi_ld_save_CPPFLAGS=$CPPFLAGS
- xdvi_ld_save_LDFLAGS=$LDFLAGS
+ LIBS="$X_PRE_LIBS -lXt -lX11 $X_EXTRA_LIBS $LIBS"
+ CFLAGS="$X_CFLAGS $CFLAGS"
+ CPPFLAGS="$X_CFLAGS $CPPFLAGS"
+ LDFLAGS="$X_LIBS $xdvi_ld_save_LDFLAGS"
- LIBS="$X_PRE_LIBS -lXt -lX11 $X_EXTRA_LIBS $LIBS"
- CFLAGS="$X_CFLAGS $CFLAGS"
- CPPFLAGS="$X_CFLAGS $CPPFLAGS"
- LDFLAGS="$X_LIBS $LDFLAGS"
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <X11/Intrinsic.h>
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <X11/Intrinsic.h>
+ XtIntervalId XtAppAddTimeOut(XtAppContext app,
+ unsigned long interval,
+ XtTimerCallbackProc proc,
+ XtPointer closure)
+ {
+ (void)app; (void)interval; (void)proc; (void)closure;
+ return (XtIntervalId)0;
+ }]],
+ [[XtIntervalId i = 0; XtRemoveTimeOut(i);]])],
+ [xdvi_cv_linker_multiple_defns="none required"],
+ [xdvi_cv_linker_multiple_defns=unsupported])
- XtIntervalId XtAppAddTimeOut(XtAppContext app,
- unsigned long interval,
- XtTimerCallbackProc proc,
- XtPointer closure)
- {
- (void)app; (void)interval; (void)proc; (void)closure;
- return (XtIntervalId)0;
- }
- ]],
- [[XtIntervalId i = 0; XtRemoveTimeOut(i);]])],
- [xdvi_cv_linker_multiple_defns="by default"])
+ LIBS=$xdvi_ld_save_LIBS
+ CFLAGS=$xdvi_ld_save_CFLAGS
+ CPPFLAGS=$xdvi_ld_save_CPPFLAGS])
+ LDFLAGS=$xdvi_ld_save_LDFLAGS])
- LIBS=$xdvi_ld_save_LIBS
- CFLAGS=$xdvi_ld_save_CFLAGS
- CPPFLAGS=$xdvi_ld_save_CPPFLAGS
- LDFLAGS=$xdvi_ld_save_LDFLAGS
-
- AC_MSG_RESULT([$xdvi_cv_linker_multiple_defns])])
-if test "x$xdvi_cv_linker_multiple_defns" != xno; then
- AC_DEFINE([LD_ALLOWS_MULTIPLE_DEFINITIONS], 1,
- [Define if your system allows multiple definitions of functions.])
-else
- AC_MSG_WARN([Linker does not allow multiple definitions.
+x_linker_options=""
+AS_CASE([$xdvi_cv_linker_multiple_defns],
+ ["none required"], [AC_DEFINE([LD_ALLOWS_MULTIPLE_DEFINITIONS], 1,
+ [Define if your system allows multiple definitions of functions.])],
+ [unsupported], [AC_MSG_WARN([Linker does not allow multiple definitions.
*****************************************************************
* Warning: Your linker does not allow multiple definitions. *
* This does not make xdvik unusable, but it will cause problems *
* with event handling: Some widgets, e.g. the print log window, *
* tooltips, statusline messages and hyperlink location markers *
* will not be updated until the mouse is moved. *
- *****************************************************************])
-fi
+ *****************************************************************])],
+ [x_linker_options=$xdvi_cv_linker_multiple_defns
+ AC_DEFINE([LD_ALLOWS_MULTIPLE_DEFINITIONS], 1)])
AC_SUBST([x_linker_options])
]) # XDVI_LINKER_MULTIPLE_DEFNS