Backed out changeset 4309f75eaa90 (bug 1883615) for causing build bustages related to check_symbol_in_libs. CLOSED TREE

This commit is contained in:
Tamas Szentpeteri 2024-04-17 12:57:02 +03:00
parent 9181aa119b
commit a86fd1fb23
15 changed files with 45 additions and 38 deletions

View file

@ -53,20 +53,3 @@ have_res_ninit = try_link(
)
set_define("HAVE_RES_NINIT", have_res_ninit)
# We don't want to link with libdl even if it's present on OS X, since
# it's not used and not part of the default installation.
# We don't want to link against libm or libpthread on Darwin since
# they both are just symlinks to libSystem and explicitly linking
# against libSystem causes issues when debugging (see bug 299601).
with only_when(building_with_gnu_cc & ~target_is_darwin):
check_header("dlfcn.h")
dlopen_libs = check_symbol_in_libs(["dl", None], symbol="dlopen")
dladdr_libs = check_symbol_in_libs(["dl", None], symbol="dladdr")
set_config(
"DL_LIBS", ["-ldl"], when=depends(dlopen_libs)(lambda libs: libs == ("dl",))
)
set_define("HAVE_DLADDR", depends(dladdr_libs)(lambda libs: "1" if libs else "0"))

View file

@ -13,8 +13,6 @@ else:
# TODO: fix NSPR warnings and remove this
AllowCompilerWarnings()
OS_LIBS += CONFIG["DL_LIBS"]
DEFINES["_NSPR_BUILD_"] = True
if CONFIG["OS_ARCH"] == "Linux":
OS_LIBS += CONFIG["REALTIME_LIBS"]

View file

@ -446,6 +446,27 @@ dnl Checks for libraries.
dnl ========================================================
AC_CHECK_LIB(c_r, gethostbyname_r)
dnl We don't want to link with libdl even if it's present on OS X, since
dnl it's not used and not part of the default installation. OS/2 has dlfcn
dnl in libc.
dnl We don't want to link against libm or libpthread on Darwin since
dnl they both are just symlinks to libSystem and explicitly linking
dnl against libSystem causes issues when debugging (see bug 299601).
case $target in
*-darwin*)
;;
*)
AC_SEARCH_LIBS(dlopen, dl,
MOZ_CHECK_HEADER(dlfcn.h,
AC_DEFINE(HAVE_DLOPEN)))
;;
esac
_SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -D_GNU_SOURCE"
AC_CHECK_FUNCS(dladdr)
CFLAGS="$_SAVE_CFLAGS"
if test ! "$GNU_CXX"; then
AC_CHECK_LIB(C, demangle)
fi

View file

@ -8,6 +8,4 @@ SOURCES += [
"mozva.c",
]
OS_LIBS += CONFIG["DL_LIBS"]
Library("mozva")

View file

@ -5513,7 +5513,7 @@ static void replace_malloc_init_funcs(malloc_table_t* table) {
#include "malloc_decls.h"
// ***************************************************************************
#ifdef HAVE_DLFCN_H
#ifdef HAVE_DLOPEN
# include <dlfcn.h>
#endif

View file

@ -82,8 +82,6 @@ DEFINES["IMPL_MFBT"] = True
if CONFIG["MOZ_NEEDS_LIBATOMIC"]:
OS_LIBS += ["atomic"]
OS_LIBS += CONFIG["DL_LIBS"]
DisableStlWrapping()
include("/mozglue/build/replace_malloc.mozbuild")

View file

@ -22,6 +22,4 @@ if CONFIG["MOZ_LINKER"]:
"/mozglue/linker",
]
OS_LIBS += CONFIG["DL_LIBS"]
FINAL_LIBRARY = "mozglue"

View file

@ -33,7 +33,7 @@ using namespace mozilla;
# define _GNU_SOURCE
#endif
#if defined(HAVE_DLFCN_H) || defined(XP_DARWIN)
#if defined(HAVE_DLOPEN) || defined(XP_DARWIN)
# include <dlfcn.h>
#endif

View file

@ -480,6 +480,27 @@ dnl Checks for libraries.
dnl ========================================================
AC_CHECK_LIB(c_r, gethostbyname_r)
dnl We don't want to link with libdl even if it's present on OS X, since
dnl it's not used and not part of the default installation. OS/2 has dlfcn
dnl in libc.
dnl We don't want to link against libm or libpthread on Darwin since
dnl they both are just symlinks to libSystem and explicitly linking
dnl against libSystem causes issues when debugging (see bug 299601).
case $target in
*-darwin*)
;;
*)
AC_SEARCH_LIBS(dlopen, dl,
MOZ_CHECK_HEADER(dlfcn.h,
AC_DEFINE(HAVE_DLOPEN)))
;;
esac
_SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -D_GNU_SOURCE"
AC_CHECK_FUNCS(dladdr)
CFLAGS="$_SAVE_CFLAGS"
if test ! "$GNU_CXX"; then
AC_CHECK_LIB(C, demangle)
fi

View file

@ -6,6 +6,4 @@
DIRS += ["dynamic-library"]
OS_LIBS += CONFIG["DL_LIBS"]
RustLibrary("builtins-static")

View file

@ -19,8 +19,6 @@ else:
"stub.c",
]
OS_LIBS += CONFIG["DL_LIBS"]
if CONFIG["OS_TARGET"] == "Android":
OS_LIBS += ["m"]

View file

@ -18,8 +18,6 @@ USE_LIBS += [
"nspr",
]
OS_LIBS += CONFIG["DL_LIBS"]
EXPORTS.mozilla += [
"Sandbox.h",
"SandboxInfo.h",

View file

@ -27,8 +27,6 @@ SOURCES += [
'sqlite3.c',
]
OS_LIBS += CONFIG["DL_LIBS"]
# -DSQLITE_SECURE_DELETE=1 will cause SQLITE to 0-fill delete data so we
# don't have to vacuum to make sure the data is not visible in the file.
# -DSQLITE_DEFAULT_PAGE_SIZE=32768 and SQLITE_MAX_DEFAULT_PAGE_SIZE=32768

View file

@ -22,7 +22,5 @@ CXXFLAGS += CONFIG["MOZ_PANGO_CFLAGS"]
OS_LIBS += CONFIG["MOZ_X11_LIBS"]
OS_LIBS += CONFIG["MOZ_GTK3_LIBS"]
OS_LIBS += CONFIG["DL_LIBS"]
NO_PGO = True
DisableStlWrapping()

View file

@ -50,7 +50,7 @@
#include <string>
#include <vector>
#ifdef HAVE_DLFCN_H
#ifdef HAVE_DLOPEN
# include <dlfcn.h>
#endif