diff options
author | Karl Berry <karl@freefriends.org> | 2019-01-11 02:12:09 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-01-11 02:12:09 +0000 |
commit | 07d257bc6c9c792bf39ac6685f5d449c0a110224 (patch) | |
tree | feebf9dc0b92731104eee4d5c3600d450b27c050 | |
parent | 058365ca5e7e5743a7272fd6d411c5e754828bcc (diff) |
openbsd + clang + luajit -> -lc++abi -lpthread
git-svn-id: svn://tug.org/texlive/trunk@49669 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Build/source/m4/ChangeLog | 6 | ||||
-rw-r--r-- | Build/source/m4/kpse-luajit-flags.m4 | 52 | ||||
-rwxr-xr-x | Build/source/texk/web2c/configure | 71 |
3 files changed, 126 insertions, 3 deletions
diff --git a/Build/source/m4/ChangeLog b/Build/source/m4/ChangeLog index 7560a2fa65e..7bd4039e99f 100644 --- a/Build/source/m4/ChangeLog +++ b/Build/source/m4/ChangeLog @@ -1,3 +1,9 @@ +2019-01-10 Karl Berry <karl@freefriends.org> + + * kpse-luajit-flags.m4 (KPSE_LUAJIT_FLAGS): check for + -lc++abi -lpthread, needed with clang on openbsd. + Test from Mojca. + 2019-01-08 Karl Berry <karl@tug.org> * kpse-pkgs.m4 (KPSE_LIBS_PKGS): lua52 gone. diff --git a/Build/source/m4/kpse-luajit-flags.m4 b/Build/source/m4/kpse-luajit-flags.m4 index e846c3087f2..bb8cd04e499 100644 --- a/Build/source/m4/kpse-luajit-flags.m4 +++ b/Build/source/m4/kpse-luajit-flags.m4 @@ -1,5 +1,7 @@ +# $Id$ # Public macros for the TeX Live (TL) tree. -# Copyright (C) 2014 Peter Breitenlohner <tex-live@tug.org> +# Copyright 2019 Karl Berry <tex-live@tug.org> +# Copyright 2014 Peter Breitenlohner <tex-live@tug.org> # # This file is free software; the copyright holder # gives unlimited permission to copy and/or distribute it, @@ -10,9 +12,53 @@ # Set the make variables LUAJIT_INCLUDES and LUAJIT_LIBS to the CPPFLAGS and # LIBS required for the `-ltexluajit' library in libs/luajit/ of the TL tree. AC_DEFUN([KPSE_LUAJIT_FLAGS], [dnl +echo 'tldbg:[$0] called.' >&AS_MESSAGE_LOG_FD _KPSE_LIB_FLAGS([luajit], [texluajit], [lt tree], - [-IBLD/libs/luajit/include], [BLD/libs/luajit/libtexluajit.la], [], - [], [${top_builddir}/../../libs/luajit/include/luajit.h])[]dnl + [-IBLD/libs/luajit/include], + [BLD/libs/luajit/libtexluajit.la], + [], + [], + [${top_builddir}/../../libs/luajit/include/luajit.h])[]dnl +# +# checking for openbsd for additional jit libraries needed, which is the +# case for clang; no point in going to the trouble elsewhere since no +# other system needs it. +case $build_os in +openbsd*) +AC_MSG_CHECKING([on openbsd if additional jit libraries are needed]) +AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include "stdint.h" + typedef struct _Unwind_Context _Unwind_Context; + extern uintptr_t _Unwind_GetCFA(_Unwind_Context *);]], + [[_Unwind_Context *ctx; + _Unwind_GetCFA(ctx);]] + )], + [AC_MSG_RESULT([no])], + [ + jitlibs="-lc++abi -lpthread" + save_LIBS=$LIBS + LIBS="$LIBS $jitlibs" + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include "stdint.h" + typedef struct _Unwind_Context _Unwind_Context; + extern uintptr_t _Unwind_GetCFA(_Unwind_Context *);]], + [[_Unwind_Context *ctx; + _Unwind_GetCFA(ctx);]] + )], + [ + AC_MSG_RESULT(["$jitlibs"]) + LUAJIT_LIBS="$LUAJIT_LIBS $jitlibs" + ], + [AC_MSG_FAILURE([luajit could not be linked])] + ) + LIBS=$save_LIBS + ] +) + ;; +esac +echo 'tldbg:[$0] done.' >&AS_MESSAGE_LOG_FD ]) # KPSE_LUAJIT_FLAGS # KPSE_LUAJIT_DEFINES diff --git a/Build/source/texk/web2c/configure b/Build/source/texk/web2c/configure index a8308b3a400..96b210e0cbb 100755 --- a/Build/source/texk/web2c/configure +++ b/Build/source/texk/web2c/configure @@ -25007,6 +25007,7 @@ $(LUA52_DEPEND): ${top_builddir}/../../libs/lua52/include/lua.h ${top_builddir}/../../libs/lua52/include/lua.h: cd ${top_builddir}/../../libs/lua52 && $(MAKE) $(AM_MAKEFLAGS) rebuild' +echo 'tldbg:KPSE_LUAJIT_FLAGS called.' >&5 ##tldbg _KPSE_LIB_FLAGS: Setup luajit (-ltexluajit) flags. echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=luajit, libname=texluajit, options=lt tree, tlincl=-IBLD/libs/luajit/include, tllib=BLD/libs/luajit/libtexluajit.la, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/luajit/include/luajit.h.' >&5 ##tldbg _KPSE_LIB_FLAGS_TL: luajit (texluajit) lt tree. @@ -25018,6 +25019,76 @@ $(LUAJIT_DEPEND): ${top_builddir}/../../libs/luajit/include/luajit.h cd ${top_builddir}/../../libs/luajit && $(MAKE) $(AM_MAKEFLAGS) rebuild ${top_builddir}/../../libs/luajit/include/luajit.h: cd ${top_builddir}/../../libs/luajit && $(MAKE) $(AM_MAKEFLAGS) rebuild' +# +# checking for openbsd for additional jit libraries needed, which is the +# case for clang; no point in going to the trouble elsewhere since no +# other system needs it. +case $build_os in +openbsd*) +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking on openbsd if additional jit libraries are needed" >&5 +$as_echo_n "checking on openbsd if additional jit libraries are needed... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include "stdint.h" + typedef struct _Unwind_Context _Unwind_Context; + extern uintptr_t _Unwind_GetCFA(_Unwind_Context *); +int +main () +{ +_Unwind_Context *ctx; + _Unwind_GetCFA(ctx); + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +else + + jitlibs="-lc++abi -lpthread" + save_LIBS=$LIBS + LIBS="$LIBS $jitlibs" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include "stdint.h" + typedef struct _Unwind_Context _Unwind_Context; + extern uintptr_t _Unwind_GetCFA(_Unwind_Context *); +int +main () +{ +_Unwind_Context *ctx; + _Unwind_GetCFA(ctx); + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: \"$jitlibs\"" >&5 +$as_echo "\"$jitlibs\"" >&6; } + LUAJIT_LIBS="$LUAJIT_LIBS $jitlibs" + +else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "luajit could not be linked +See \`config.log' for more details" "$LINENO" 5; } + +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS=$save_LIBS + + +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + ;; +esac +echo 'tldbg:KPSE_LUAJIT_FLAGS done.' >&5 ##tldbg _KPSE_LIB_FLAGS: Setup libpng (-lpng) flags. echo 'tldbg:_KPSE_LIB_FLAGS called: libdir=libpng, libname=png, options=, tlincl=-IBLD/libs/libpng/include, tllib=BLD/libs/libpng/libpng.a, tlextra=, rebuildsrcdeps=, rebuildblddeps=${top_builddir}/../../libs/libpng/include/png.h.' >&5 |