diff options
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.m4 | 89 |
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 |