You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openwrt/scripts
Jo-Philipp Wich 72d751cba9 build: rework library bundling
Rework the bundle-libraries.sh implementation to use a more robust approach
for executing host binaries through the shipped ELF loader and libraries.

The previous approach relied on symlinks pointing to a wrapper script which
caused various issues, especially with multicall binaries as the original
argv[0] name was not preserved through the ld.so invocation. Another down-
side was the fact that the actual binaries got moved into another directory
which caused executables to fail looking up resources with paths relative
to the executable location.

The new library wrapper implements the following improvements:

 - Instead of symlinks pointing to a common wrapper, each ELF executable
   is now replaced by a unqiue shell script which retains the original
   program name getting called

 - Instead of letting ld.so invoke the ELF executable directly, launch
   the final ELF binary through a helper program which fixes up the argv[0]
   argument for the target program

 - Support sharing a common location for the bundled libraries instead of
   having one copy in each directory containing wrapped binaries

Finally modify the SDK build to wrap the staging_dir and toolchain binaries
which allows to use the SDK on systems with a different glibc version.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
8 years ago
..
config scripts/config: properly handle select on symbols with unmet direct dependencies 8 years ago
flashing scripts: fix wrong usage of '==' operator 10 years ago
arm-magic.sh scripts/arm-magic.sh: make the generated kernels also include $IMG_PREFIX 9 years ago
brcmImage.pl scripts: avoid hard-coded paths in scripts 8 years ago
bundle-libraries.sh build: rework library bundling 8 years ago
checkpatch.pl docs: remove all refrences in Makefiles/scripts 8 years ago
clang-gcc-wrapper build: fix build on Mac OS X 10.9 11 years ago
clean-package.sh build: clean up stale files from a previous build when installing a package build to the staging dir 11 years ago
cleanfile scripts/{cleanfile,cleanpatch}: Add scripts for cleaning up file and patch whitespaces 11 years ago
cleanpatch scripts/{cleanfile,cleanpatch}: Add scripts for cleaning up file and patch whitespaces 11 years ago
combined-ext-image.sh build: use mkhash to replace various quirky md5sum/openssl calls 8 years ago
combined-image.sh build: use mkhash to replace various quirky md5sum/openssl calls 8 years ago
config.guess update config.guess & config.sub 9 years ago
config.rpath add config.rpath and link it in autotools.mk if missing, some packages might need it, especially users of lib-link.m4 or iconv.m4 13 years ago
config.sub update config.guess & config.sub 9 years ago
deptest.sh scripts: avoid hard-coded paths in scripts 8 years ago
diffconfig.sh scripts/diffconfig.sh: fix output if TARGET_PER_DEVICE_ROOTFS is set 8 years ago
dl_cleanup.py dl_cleanup: Fix linux blacklist 9 years ago
download.pl build: use mkhash to replace various quirky md5sum/openssl calls 8 years ago
env env: allow passing a commit message on save 9 years ago
ext-toolchain.sh treewide: replace jow@openwrt.org with jo@mein.io 8 years ago
feeds scripts/feeds: use git rev-parse for getting revision 8 years ago
fixup-makefile.pl build: add FIXUP option for make check 8 years ago
gen-dependencies.sh scripts: avoid outputting empty lines in gen-dependencies.sh 9 years ago
get_source_date_epoch.sh branding: add LEDE branding 8 years ago
getver.sh scripts: getver.sh: append Git short hash to revision 8 years ago
ipkg-build scripts: ipkg-build: do not require git or svn 8 years ago
ipkg-make-index.sh build: use mkhash to replace various quirky md5sum/openssl calls 8 years ago
kconfig.pl treewide: replace nbd@openwrt.org with nbd@nbd.name 8 years ago
make-ipkg-dir.sh branding: add LEDE branding 8 years ago
md5sum improve support for building on mac os x by improving detection of missing components 16 years ago
metadata.pm scripts/package-metadata.pl: fix kmod pakage dependencies within the SDK 8 years ago
mkhash.c build: add a small standalone utility for calculating md5/sha256 hash 8 years ago
mkits.sh scripts: avoid hard-coded paths in scripts 8 years ago
om-fwupgradecfg-gen.sh build: use mkhash to replace various quirky md5sum/openssl calls 8 years ago
openbsd.sh branding: add LEDE branding 8 years ago
package-metadata.pl scripts/package-metadata.pl: honour DEFAULT_VARIANT 8 years ago
pad_image scripts: avoid hard-coded paths in scripts 8 years ago
patch-kernel.sh scripts/patch-kernel.sh: remove -E flag to preserve empty files touched by patches 9 years ago
patch-specs.sh patch-specs.sh: gcc 3.4.6 has an additional "(OpenWrt-2.0)" after the version tag, cope with that 13 years ago
portable_date.sh scripts: fix GNU data invocation 8 years ago
redboot-script.pl scripts: avoid hard-coded paths in scripts 8 years ago
relink-lib.sh base-files: relink uclibc and libgcc libraries to remove leftovers of the statically linked initial libgcc saves a few kb and gets rid of unused not exported functions as well should also improve the reliability of mklibs 13 years ago
remote-gdb scripts: fix remote-gdb with CONFIG_BUILD_SUFFIX 8 years ago
rstrip.sh scripts: extend rstrip.sh to remove bad rpaths 9 years ago
slugimage.pl use #!/usr/bin/env perl instead of #!/usr/bin/perl in openwrt scripts (fixes #2998) 16 years ago
srecimage.pl treewide: replace jow@openwrt.org with jo@mein.io 8 years ago
strip-kmod.sh scripts/strip-kmod.sh: remove a few extra sections to slightly reduce kernel module size 8 years ago
symlink-tree.sh docs: remove all refrences in Makefiles/scripts 8 years ago
sysupgrade-tar.sh build: rename sysupgrade-nand to sysupgrade-tar 8 years ago
target-metadata.pl scripts: case insensitive sort device names 8 years ago
timestamp.pl fix timestamp checks for build system paths which have '.svn' in their directory name 14 years ago
ubinize-image.sh scripts/ubinize-image.sh: add support for adding custom partitions 8 years ago