Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'newlib/libc/sys/linux/dl/dl-support.c')
-rw-r--r--newlib/libc/sys/linux/dl/dl-support.c184
1 files changed, 0 insertions, 184 deletions
diff --git a/newlib/libc/sys/linux/dl/dl-support.c b/newlib/libc/sys/linux/dl/dl-support.c
deleted file mode 100644
index ce5349153..000000000
--- a/newlib/libc/sys/linux/dl/dl-support.c
+++ /dev/null
@@ -1,184 +0,0 @@
-/* Support for dynamic linking code in static libc.
- Copyright (C) 1996, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* This file defines some things that for the dynamic linker are defined in
- rtld.c and dl-sysdep.c in ways appropriate to bootstrap dynamic linking. */
-
-#include <errno.h>
-#include <libintl.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <dirent.h>
-#include <pthread.h>
-#include <ldsodefs.h>
-#include <machine/dl-machine.h>
-#include <dl-librecon.h>
-#include <unsecvars.h>
-#include <machine/hp-timing.h>
-
-char *__progname = "newlib";
-char **_dl_argv = &__progname; /* This is checked for some error messages. */
-
-/* Name of the architecture. */
-const char *_dl_platform;
-size_t _dl_platformlen;
-
-int _dl_debug_mask;
-int _dl_lazy;
-/* XXX I know about at least one case where we depend on the old weak
- behavior (it has to do with librt). Until we get DSO groups implemented
- we have to make this the default. Bummer. --drepper */
-#if 0
-int _dl_dynamic_weak;
-#else
-int _dl_dynamic_weak = 1;
-#endif
-
-/* If nonzero print warnings about problematic situations. */
-int _dl_verbose;
-
-/* Structure to store information about search paths. */
-struct r_search_path *_dl_search_paths;
-
-/* We never do profiling. */
-const char *_dl_profile;
-
-/* Names of shared object for which the RUNPATHs and RPATHs should be
- ignored. */
-const char *_dl_inhibit_rpath;
-
-/* The map for the object we will profile. */
-struct link_map *_dl_profile_map;
-
-/* This is the address of the last stack address ever used. */
-void *__libc_stack_end;
-
-/* Path where the binary is found. */
-const char *_dl_origin_path;
-
-/* Nonzero if runtime lookup should not update the .got/.plt. */
-int _dl_bind_not;
-
-/* Initially empty list of loaded objects. */
-struct link_map *_dl_loaded;
-/* Number of object in the _dl_loaded list. */
-unsigned int _dl_nloaded;
-
-/* Fake scope. In dynamically linked binaries this is the scope of the
- main application but here we don't have something like this. So
- create a fake scope containing nothing. */
-struct r_scope_elem _dl_initial_searchlist;
-/* Variable which can be used in lookup to process the global scope. */
-struct r_scope_elem *_dl_global_scope[2] = { &_dl_initial_searchlist, NULL };
-/* This is a global pointer to this structure which is public. It is
- used by dlopen/dlclose to add and remove objects from what is regarded
- to be the global scope. */
-struct r_scope_elem *_dl_main_searchlist = &_dl_initial_searchlist;
-
-/* Nonzero during startup. */
-int _dl_starting_up = 1;
-
-/* We expect less than a second for relocation. */
-#ifdef HP_SMALL_TIMING_AVAIL
-# undef HP_TIMING_AVAIL
-# define HP_TIMING_AVAIL HP_SMALL_TIMING_AVAIL
-#endif
-
-/* Initial value of the CPU clock. */
-#ifndef HP_TIMING_NONAVAIL
-hp_timing_t _dl_cpuclock_offset;
-#endif
-
-/* During the program run we must not modify the global data of
- loaded shared object simultanously in two threads. Therefore we
- protect `_dl_open' and `_dl_close' in dl-close.c.
-
- This must be a recursive lock since the initializer function of
- the loaded object might as well require a call to this function.
- At this time it is not anymore a problem to modify the tables. */
-__LOCK_INIT_RECURSIVE(, _dl_load_lock)
-
-
-#ifdef HAVE_AUX_VECTOR
-extern int _dl_clktck;
-
-void
-internal_function
-_dl_aux_init (ElfW(auxv_t) *av)
-{
- for (; av->a_type != AT_NULL; ++av)
- switch (av->a_type)
- {
- case AT_PAGESZ:
- _dl_pagesize = av->a_un.a_val;
- break;
- case AT_CLKTCK:
- _dl_clktck = av->a_un.a_val;
- break;
- }
-}
-#endif
-
-void non_dynamic_init (void) __attribute__ ((unused));
-
-void
-non_dynamic_init (void)
-{
- if (HP_TIMING_AVAIL)
- HP_TIMING_NOW (_dl_cpuclock_offset);
-
- if (!_dl_pagesize)
- _dl_pagesize = __getpagesize ();
-
- _dl_verbose = *(getenv ("LD_WARN") ?: "") == '\0' ? 0 : 1;
-
- /* Initialize the data structures for the search paths for shared
- objects. */
- _dl_init_paths (getenv ("LD_LIBRARY_PATH"));
-
- _dl_lazy = *(getenv ("LD_BIND_NOW") ?: "") == '\0';
-
- _dl_bind_not = *(getenv ("LD_BIND_NOT") ?: "") != '\0';
-
- _dl_dynamic_weak = *(getenv ("LD_DYNAMIC_WEAK") ?: "") == '\0';
-
-#ifdef DL_PLATFORM_INIT
- DL_PLATFORM_INIT;
-#endif
-
- /* Now determine the length of the platform string. */
- if (_dl_platform != NULL)
- _dl_platformlen = strlen (_dl_platform);
-}
-text_set_element (__libc_subinit, non_dynamic_init);
-
-const struct r_strlenpair *
-internal_function
-_dl_important_hwcaps (const char *platform, size_t platform_len, size_t *sz,
- size_t *max_capstrlen)
-{
- static struct r_strlenpair result;
- static char buf[1];
-
- result.str = buf; /* Does not really matter. */
- result.len = 0;
-
- *sz = 1;
- return &result;
-}