Commit Graph

37 Commits

Author SHA1 Message Date
plunky f33b316b63 Remove the do-external-lib and do-gnu-lib targets, along with
external/lib/Makefile and crypto/external/lib/Makefile, replacing
them all with SUBDIRs directly from lib/Makefile.

compat/compatsubdirs.mk becomes simpler now, as everything is built
from lib/Makefile, meaning all the libraries will now be built under
compat so update the set lists to account for that.
2010-12-03 21:38:46 +00:00
yamt d76c56428e fall back to malloc+pread when stat+malloc doesn't seem to work.
it allows libelf work on /dev/ksyms.

XXX the name of the flag is a bit confusing and i think it's better to rename
MALLOCED to DATA_MALLOCED or such.  but i don't think it's worth increasing
the diff against the upstream for it.
2010-10-31 05:03:12 +00:00
darran fe6ba50113 DTrace: Get DTrace to build on OS X platforms. 2010-03-02 21:08:36 +00:00
darran 9583b24e87 Get rid of extra include files added while debugging the toolchain build
problem.
2010-02-22 10:59:08 +00:00
darran 97d3245ff3 Get libelf building in the toolchain again. 2010-02-22 10:48:32 +00:00
wiz c37f3f8b3c Mark up NULL. Join two sections describing same error. Remove trailing
whitespace.
2010-01-29 10:49:07 +00:00
darran e8ef955492 Fix a problem with the handling of NOBITS sections (i.e. bss), where the
elf_getdata() function would return an invalid section error if the size
of the section was bigger than the raw size of the elf binary.
This is basically a sync with changeset 10 of the sourceforge repository
for this library (elftoolchain).
2010-01-28 21:38:29 +00:00
joerg abada83399 Do not use .Xo/.Xc to work around ancient roff limits.
Remove .TE without matching .TS.
2009-12-29 18:07:28 +00:00
thorpej 69ceabfc59 Include nbtool_config.h as needed. Should fix missing defn of __unused in
some host tool environments.
2009-12-29 17:32:18 +00:00
thorpej 4d886fcd1a Merge FreeBSD-8-0-RELEASE. All this does is remove the __RCSID() tags
due to the modified prepare-import.sh.
2009-12-29 17:05:58 +00:00
thorpej 8a81f35236 Import libelf from FreeBSD 8.0-RELEASE. The main purpose of this is to
get a new import after prepare-import.sh was changed to not insert NetBSD
__RCSID() macros (which are problematic for host tool builds).
2009-12-29 16:58:08 +00:00
thorpej 7c6f9e4c11 We don't really need __RCSID() tags in these files, so just get rid of them. 2009-12-29 16:56:25 +00:00
thorpej 3f0d4dd15e Note when this appeared in NetBSD. 2009-12-21 18:27:48 +00:00
thorpej aa6d6cf7b8 Add support for building libelf in a host-tool environment.
XXX Makefile.disklabel is really mis-named, but I'm not going to tackle
that problem right now.
2009-12-21 18:21:17 +00:00
thorpej a2307e2ec3 - _libelf_globals::libelf_arch and _libelf_globals::libelf_class are
completely unused.  Remove them.
- _libelf_globals::libelf_byteorder is really all about the byte order of
  the host running libelf, so replace it with a _libelf_host_byteorder()
  internal function that computes the host byte order in a very portable
  way (doesn't rely on BSD-specific header files).
2009-12-20 23:23:46 +00:00
mrg 204f6553a5 PRIVATE_VERSION(arch) isn't ever used, so don't try to setup this member
of _libelf{}.  ELF??_MACHDEP_ID may not be defined if ELFSIZE wasn't
defined before including this file.

this fixes a build error on mips platforms.
2009-12-20 19:38:13 +00:00
thorpej acdbfc25c4 Enable __LIBELF_HAVE_ELF_SYMINFO. 2009-12-20 05:52:15 +00:00
thorpej 4c040305d0 Fix a typo. 2009-12-19 09:01:32 +00:00
thorpej 80a94d172a Add some range checks to quiet warnings. 2009-12-19 09:00:56 +00:00
thorpej 83ba8dcb86 We don't have an Elf_Note typedef, but Elf32_Nhdr and Elf64_Nhdr are
equivalent; use Elf32_Nhdr instead.
2009-12-19 08:47:46 +00:00
thorpej e55f728904 Fix all sorts of problems with lint and compiler warnings. 2009-12-19 08:40:57 +00:00
thorpej 625b09a07e Squash a signed-vs-unsigned char * warning. 2009-12-19 07:59:24 +00:00
thorpej 3d218610e2 Change elf_hash() to take a const void *, rather than a const char *. 2009-12-19 07:58:24 +00:00
thorpej f0689d90c7 Provide definitions of MALIGN() and MALIGN64() for the __lint__ case. 2009-12-19 07:54:32 +00:00
thorpej 900d25b3df ELF_ARCH, ELF_TARG_DATA, and ELF_TARG_CLASS are macros defined in a FreeBSD
header file.  For NetBSD, map to equivalent defines.
2009-12-19 07:52:59 +00:00
thorpej d6ff3f1479 LIBELF_COPY_U32(), LIBELF_COPY_S32(): Make sure that the SRC values are
being compared as the maximum width and appropriate signed-ness.
2009-12-19 07:47:22 +00:00
thorpej 688970149e - _libelf_load_scn(): If shoff is larger than SSIZE_MAX, bail out with
a HEADER error.  Pass lint.
2009-12-19 07:44:27 +00:00
thorpej 20d9f43d9d <machine/elf.h> is a FreeBSD-specific header. 2009-12-19 07:37:34 +00:00
thorpej 66a732a72d <libelf.h> is responsible for including <sys/elf32.h> and <sys/elf64.h> on
FreeBSD; no need to do it here.
2009-12-19 07:33:06 +00:00
thorpej 560b6d58db Don't need to include <osreldate.h> here. 2009-12-19 07:31:44 +00:00
thorpej e6c1c7c74e Centralize dependency on __FreeBSD_version into libelf.h, and generalize
the conditional inclusion of API/ELF features so that it works with NetBSD
as well.
2009-12-19 07:31:04 +00:00
thorpej 3e6f245099 <sys/limits.h> -> <limits.h> 2009-12-19 06:39:29 +00:00
thorpej ca36dbd81a <sys/errno.h> -> <errno.h> 2009-12-19 06:22:25 +00:00
thorpej c80991c598 while (0) -> while (/*CONSTCOND*/0) 2009-12-19 05:55:37 +00:00
thorpej ae2945399a Initial build glue for libelf. Still a work-in-progress. 2009-12-19 05:52:01 +00:00
thorpej 0cf4bb02da Add a script to prepare libelf for import. 2009-12-19 05:45:28 +00:00
thorpej d32c9dd64e Import the libelf from FreeBSD 8.0-RC3. 2009-12-19 05:43:39 +00:00