aboutsummaryrefslogtreecommitdiff
path: root/lib/libelf/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* Remove residual blank line at start of MakefileWarner Losh2024-07-151-1/+0
| | | | | | | This is a residual of the $FreeBSD$ removal. MFC After: 3 days (though I'll just run the command on the branches) Sponsored by: Netflix
* Remove $FreeBSD$: one-line sh patternWarner Losh2023-08-161-1/+0
| | | | Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
* libelf: Link gelf_getchdr.3 to the buildMark Johnston2021-11-291-0/+2
| | | | | MFC after: 1 week Sponsored by: The FreeBSD Foundation
* libelf: add compression header supportEd Maste2020-10-231-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | GNU and Oracle libelf implementations added support for section compression, intended to reduce the size of DWARF debug info (which might be an order of magnitude larger than the code). There are two compressed ELF section formats: 1. Old GNU - sections are renmaed to start with 'z'. Section contains a magic number, uncompressed size, and compressed data. 2. Oracle and New GNU - compressed sections use the SHF_COMPRESSED flag. The compression header contains the compression type, uncompressed size, and uncompressed alignment. The second style is preferred and this change implements only that one. Submitted by: Tiger Gao <tig@FreeBSDFoundation.org> Reviewed by: markj MFC after: 2 weeks Relnotes: Yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D24566 Notes: svn path=/head/; revision=366977
* pkgbase: Put a lot of binaries and lib in FreeBSD-runtimeEmmanuel Vadot2019-09-051-1/+1
| | | | | | | | | | | | All of them are needed to be able to boot to single user and be able to repair a existing FreeBSD installation so put them directly into FreeBSD-runtime. Reviewed by: bapt, gjb Differential Revision: https://reviews.freebsd.org/D21503 Notes: svn path=/head/; revision=351855
* Allow bootstrapping elftoolchain on MacOS and LinuxAlex Richardson2019-07-011-0/+7
| | | | | | | | | | | This is required in order to build on non-FreeBSD systems without setting all the XAR/XSTRINGS/etc. variables Reviewed By: emaste Differential Revision: https://reviews.freebsd.org/D16771 Notes: svn path=/head/; revision=349577
* Update to ELF Tool Chain r3668Ed Maste2019-01-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Highlights: - Make sure that only TLS sections are sorted into TLS segment. - Fixed multiple errors in "Section to Segment mapping". - Man page updates - ar improvements - elfcopy: avoid filter_reloc uninitialized variable for rela - elfcopy: avoid stripping relocations from static binaries - readelf: avoid printing directory in front of absolute path - readelf: add NT_FREEBSD_FEATURE_CTL FreeBSD note type - test improvements NOTES: Some of these changes originated in FreeBSD and simply reduce diffs between contrib and vendor. ELF Tool Chain ar is not (currently) used in FreeBSD, and there are improvements in both FreeBSD and ELF Tool Chain ar that are not in the other. Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=342918
* Add gelf_mips64el.c to the list of files to include in libelf.John Baldwin2018-09-051-0/+1
| | | | | | | | | | | Missed in r338478. Pointy hat to: jhb Approved by: re (rgrimes) MFC after: 1 month Notes: svn path=/head/; revision=338485
* Use SRCTOP-relative paths to other directories instead of .CURDIR-relative onesEnji Cooper2017-01-201-1/+1
| | | | | | | | | | This simplifies pathing in make/displayed output MFC after: 3 weeks Sponsored by: Dell EMC Isilon Notes: svn path=/head/; revision=312510
* elftoolchain: Use ${SRCTOP} for the top of the FreeBSD treeEd Maste2016-04-211-3/+3
| | | | | | | | | | | It's provided by sys.mk so there's no need to derive it from ${.CURDIR}. Suggested by: ngie Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D5998 Notes: svn path=/head/; revision=298401
* Replace ${CURDIR}/../.. with ${CURDIR:H:H} in elftoolchainEd Maste2016-04-181-1/+1
| | | | | | | | | | This produces a nicer path in debug info and build logs. MFC after: 1 week Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=298204
* First pass through library packaging.Glen Barber2016-02-041-0/+1
| | | | | | | Sponsored by: The FreeBSD Foundation Notes: svn path=/projects/release-pkg/; revision=295278
* Correct r291566 for defining SHLIBDIR.Bryan Drewery2015-12-011-1/+3
| | | | | | | | | | This must happen before including bsd.own.mk which sets the default to /usr/lib. X-MFC-With: r291566 Reported by: Max N. Boyarov Notes: svn path=/head/; revision=291593
* Move libelf.so.2 from /usr/lib to /lib to unbreak libkvm use after r291406Enji Cooper2015-12-011-0/+1
| | | | | | | | | | | | | | Tested with the following commands as root: - yes | make delete-old - service ldconfig restart - netstat -nr X-MFC with: r291406 Reviewed by: jhb, kib Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=291566
* META MODE: Fix 'make bootstrap-tools'.Bryan Drewery2015-11-251-1/+1
| | | | | | | | | | | | | | | | | | The main problem was bitrot after elftoolchain being swapped in for the GNU toolchain. This also reworks how the list of 'host allowed' libraries is determined to only allow INTERNALLIBs, which is needed for libelftc to come in. For usr.bin/readelf use the same hack, as libelf and libdward, to bring in the needed sys/ headers for host builds. This has not yet been a problem due to readelf not being built as a host tool in buildworld. This is possible in the meta build though when building the toolchain. Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=291321
* META MODE: Don't create .meta files when symlinking sources into the obj ↵Bryan Drewery2015-11-251-2/+2
| | | | | | | | | | | | | | directory. Tracking these leads to situations where meta mode will consider the file to be out of date if /bin/sh or /bin/ln are newer than the source file. There's no reason for meta mode to do this as make is already handling the rebuild dependency fine. Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=291320
* Bump SHLIB_MAJOR for libelf.Kai Wang2014-01-211-1/+1
| | | | Notes: svn path=/projects/elftoolchain/; revision=260994
* Reapply revisions r237528, r237531 and r238741 which make libelfKai Wang2014-01-211-0/+13
| | | | | | | | | | | properly include sys/ headers from the source tree instead of the host. These patches are also applied to libdwarf since libdwarf requires the same sys/ headers as libelf. Notes: svn path=/projects/elftoolchain/; revision=260991
* Remove INCSDIR variable which is only used in elftoolchain's own buildKai Wang2014-01-211-1/+0
| | | | | | | framework. Notes: svn path=/projects/elftoolchain/; revision=260990
* Set CFLAGS in just one line.Kai Wang2014-01-151-4/+1
| | | | Notes: svn path=/projects/elftoolchain/; revision=260699
* Removed source code for the old libelf and build the new libelf fromKai Wang2014-01-151-23/+23
| | | | | | | contrib/ instead. Notes: svn path=/projects/elftoolchain/; revision=260698
* Don't ever build files depending on the directory where they are placed in.Andrey A. Chernov2012-07-241-4/+2
| | | | | | | | | | It is obvious that its modification time will change with each such file builded. This bug cause whole libelf to rebuild itself each second make run (and relink that files on each first make run) in the loop. Notes: svn path=/head/; revision=238741
* Add the sys directory we create to the list of items to clean.Andrew Turner2012-06-241-0/+1
| | | | Notes: svn path=/head/; revision=237531
* Create a symlink to sys/elf32.h, sys/elf64.h, and sys/elf_common.h.Andrew Turner2012-06-241-1/+15
| | | | | | | | | | | | | | | | | | | When building libelf in the bootstrap stage this would include the tree versions of, for example, sys/_types.h. This would work as long as the tree's version of this file was close enough to the system's version of the file. If, however, there was a change in the tree such that the location of a typedef was moved this would cause problems. In this case the version of sys/_types.h in the tree no longer defines __wchar_t and expects it to to be defined in machine/_types.h, however we pick up machine/_types.h from the system and find it is not defined there. The solution is to restrict the parts of sys er include from the tree to those that are needed. This fixes the recent Tinderbox failure. Pointy Hat to: andrew Notes: svn path=/head/; revision=237528
* Add the ability to search for all the inlined instances of a given function.David E. O'Brien2011-05-071-1/+1
| | | | | | | | Reviewed by: jb Obtained from: Juniper Networks Notes: svn path=/head/; revision=221569
* Don't link drti.o with libelf_pic.a. This means that all software withRui Paulo2010-08-211-1/+0
| | | | | | | | | | userland SDT probes must be linked with libelf explicitly. Requested by: kib Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=211577
* Install a PIC libelf. This will be needed by the DTrace runtimeRui Paulo2010-08-211-0/+1
| | | | | | | | | instrumentation object (dtri.o). Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=211540
* Move helper functions `_libelf_ar_get_{name,number,string}()` andKai Wang2010-07-211-0/+1
| | | | | | | | | | | | `_libelf_ar_open()` to a new compilation unit "libelf_ar_util.c" to break the circular dependency between "elf_memory.o" and "libelf_ar.o". Obtained from: elftoolchain MFC after: 1 month Notes: svn path=/head/; revision=210348
* * Deprecate `elf_getshnum()`, `elf_getphnum()` and `elf_getshstrndx()` inKai Wang2010-07-211-1/+5
| | | | | | | | | | | | | | | favour of `elf_getshdrnum()`, `elf_getphdrnum()` and `elf_getshdrstrndx()` respectively. * Add new manual pages for `elf_getshdrstrndx()`, `elf_getphdrnum()` and `elf_getshdrnum()`. * Add a deprecation warning for `elf_getshstrndx()`, `elf_getphnum()` and `elf_getshnum()`. Obtained from: elftoolchain MFC after: 1 month Notes: svn path=/head/; revision=210345
* Build lib/ with WARNS=6 by default.Ed Schouten2010-01-021-2/+0
| | | | | | | | | | | | Similar to libexec/, do the same with lib/. Make WARNS=6 the norm and lower it when needed. I'm setting WARNS?=0 for secure/. It seems secure/ includes the Makefile.inc provided by lib/. I'm not going to touch that directory. Most of the code there is contributed anyway. Notes: svn path=/head/; revision=201381
* Don't need to set symbol, default value is OK.David E. O'Brien2009-03-121-1/+1
| | | | Notes: svn path=/head/; revision=189721
* Keep shadow copies of the `e_shnum', `e_phnum' and `e_shstrndx'Joseph Koshy2006-12-251-0/+3
| | | | | | | | | | | | | | | | | | members of the ELF Executable Header inside the library-private `struct _Elf' descriptor and only update the underlying Elf{32,64}_Ehdr structure on an elf_update(3) call. These fields of the Ehdr structure are technically `out of bounds' for an application program per the ELF(3) API, but we've seen applications that initialize a new Ehdr structure using memcpy(), messing up the library's invariants. [1] Implement elf_getphnum() and handle ELF objects with more than 64K program header table entries. Reported by: jb [1] Notes: svn path=/head/; revision=165535
* Use <osreldate.h> rather than the OS version reported by the kernelJoseph Koshy2006-12-181-11/+6
| | | | | | | | | | | | | | | to determine which Elf Types are to be handled. Change the M4 templates to wrap an `#if __FreeBSD_version >= NNN'/`#endif' pair around the generated code for each ELF data type, where `NNN' is the OS version where the ELF type was added to the source tree. This change allows cross-builds of old sources on newer FreeBSD systems to work correctly. Problem reported by: ru Notes: svn path=/head/; revision=165317
* - style: use `=' instead of `+=' for initial assignments.Ruslan Ermilov2006-11-241-4/+2
| | | | | | | | - don't add generated sources' objects to OBJS explicitly; GENSRCS is part of SRCS so they were already in OBJS. Notes: svn path=/head/; revision=164577
* - Replace the use of DPSRCS with something more appropriate. DPSRCSJoseph Koshy2006-11-121-5/+6
| | | | | | | | | | | is for when you need something in ".depend", but not compiled in. - Style fixes: Spell ${.OBJDIR} as ".". - Neaten a comment. Submitted by: ru Notes: svn path=/head/; revision=164225
* MFP4: Add an implementation of the ELF(3) and GELF(3) API set.Joseph Koshy2006-11-111-0/+166
Bump __FreeBSD_version. Reviewed by: jb Notes: svn path=/head/; revision=164190