summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernhard Reutner-Fischer2006-04-26 10:10:25 +0000
committerBernhard Reutner-Fischer2006-04-26 10:10:25 +0000
commit06a81d368eea88428fbce186f1e01a16673066b7 (patch)
tree4994d059a1a7f5cce8f152a436418cb1359b2a26
parent5fe8d5b9c5930497ecf47817ec3af66bebec52c0 (diff)
downloadbusybox-06a81d368eea88428fbce186f1e01a16673066b7.zip
busybox-06a81d368eea88428fbce186f1e01a16673066b7.tar.gz
- patch from Denis Vlasenko to make sizes PHONY and to add objsizes which prints
the sizes of the individual object files.
-rw-r--r--Makefile6
-rwxr-xr-xscripts/objsizes8
2 files changed, 14 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index 977df5d..bcf25fe 100644
--- a/Makefile
+++ b/Makefile
@@ -136,6 +136,7 @@ help:
@echo ' randconfig - generate a random configuration'
@echo ' release - create a distribution tarball'
@echo ' sizes - show size of all enabled busybox symbols'
+ @echo ' objsizes - show size of each .o object built'
@echo
@@ -349,9 +350,14 @@ check test: busybox
bindir=$(top_builddir) srcdir=$(top_srcdir)/testsuite \
$(top_srcdir)/testsuite/runtest $(CHECK_VERBOSE)
+.PHONY: sizes
sizes: busybox_unstripped
$(NM) --size-sort $(<)
+.PHONY: objsizes
+objsizes: busybox_unstripped
+ $(SHELL) $(top_srcdir)/scripts/objsizes
+
# Documentation Targets
doc: docs/busybox.pod docs/BusyBox.txt docs/BusyBox.1 docs/BusyBox.html
diff --git a/scripts/objsizes b/scripts/objsizes
new file mode 100755
index 0000000..291285f
--- /dev/null
+++ b/scripts/objsizes
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+printf "%9s %11s %9s %9s %s\n" "text+data" text+rodata rwdata bss filename
+find -name '*.o' | sed 's:^\./::' | xargs size | grep '^ *[0-9]' \
+| while read text data bss dec hex filename; do
+ printf "%9d %11d %9d %9d %s\n" $((text+data)) $text $data $bss "$filename"
+done \
+| sort