1
0
mirror of https://github.com/Kitware/CMake.git synced 2025-05-08 22:37:04 +08:00

cmelf: Add script to import the FreeBSD ELF headers

These headers will be used to provide the ELF parsing code on all host
operating systems (including those that don't have an ELF header, e.g.
macOS).  This will also allow removing various OS-dependent #ifdefs from
the cmELF code.  Add a script that was used to automate this import.

Co-authored-by: Alex Richardson <Alexander.Richardson@cl.cam.ac.uk>
This commit is contained in:
Brad King 2021-06-23 13:33:05 -04:00
parent 6c5f21d10e
commit 18038042ed

View File

@ -0,0 +1,28 @@
#!/usr/bin/env bash
set -e
set -x
shopt -s dotglob
readonly name="elf"
readonly ownership="FreeBSD Upstream <kwrobot@kitware.com>"
readonly subtree="Utilities/cmelf"
readonly repo="https://github.com/freebsd/freebsd-src.git"
readonly tag="main"
readonly shortlog=false
readonly paths="
sys/sys/elf32.h
sys/sys/elf64.h
sys/sys/elf_common.h
"
extract_source () {
git_archive
pushd "${extractdir}/${name}-reduced"
echo "* -whitespace" > .gitattributes
mv sys/sys/* .
sed -i -e 's/<sys\/elf_common.h>/"elf_common.h"/g' -e 's/u_int32_t/uint32_t/g' *.h
popd
}
. "${BASH_SOURCE%/*}/update-third-party.bash"