coreutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2] build: Option for building all tools in a single binary


From: Alex Deymo
Subject: Re: [PATCH v2] build: Option for building all tools in a single binary
Date: Thu, 19 Jun 2014 13:24:21 -0700

Hi,

I think this version addressed all the remaining issues. I fixed the
dependencies on man/local.mk and the env.sh test issue. With the last
changes to avoid duplicated ls.c main the size was reduced to 1097416
bytes on the .text.

Compiling with make CFLAGS="-Os" reduces the size of the .text to 886914.
Compiling with make CFLAGS="-ffunction-sections -Os"
LDFLAGS="-Wl,--gc-sections" does remove a little more of unused
functions, down to 876856 bytes on the .text (10KiB less). If you are
curious, I attached the diff of symbols between the version with and
without the -ffunction-sections.

Tests performed:

# Sanity check that the normal case still works.
./configure --prefix=`pwd`/foo --enable-install-program=arch
make ; rm -rf foo ; make install ; make clean

# Normal workflow of the single-binary works.
./configure --prefix=`pwd`/foo --enable-single-binary
--enable-single-binary-exceptions=ls,cat,sort
--enable-install-program=arch
# Verify none of the src/$prog is build except for ls, cat and sort.
arch is part of the single binary.
make ; rm -rf foo ; make install ; make clean
ls foo/bin # Verify the installed symlinks / binary for ls, cat and sort.
src/coreutils arch ; works

# Parallel make works; verify nothing to be done on second make.
make -j32 ; make ; make clean

# make check is happy. Also check that no src/$prog is build
make check ; make check ; make clean

# make distcheck is happy.
make distcheck ; make clean

Thoughts?

I can haz patch merged? =^.^=

Thanks,
deymo.

Attachment: dead_code.txt
Description: Text document

Attachment: single-binary_v6.patch
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]