@echo ' uninstall'
@echo
@echo 'Development:'
+ @echo ' bloatcheck - show size difference between old and new versions'
@echo ' check - run the test suite for all applets'
+ @echo ' checkhelp - check for missing help-entries in Config.in'
@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
$(Q)cp busybox_unstripped busybox
$(do_strip)
+%.bflt: %_unstripped
+ $(do_elf2flt)
+
busybox.links: $(top_srcdir)/applets/busybox.mkll include/bb_config.h $(top_srcdir)/include/applets.h
$(Q)-$(SHELL) $^ >$@
bindir=$(top_builddir) srcdir=$(top_srcdir)/testsuite \
$(top_srcdir)/testsuite/runtest $(CHECK_VERBOSE)
+.PHONY: checkhelp
+checkhelp:
+ $(Q)$(top_srcdir)/scripts/checkhelp.awk \
+ $(wildcard $(patsubst %,%/Config.in,$(SRC_DIRS) ./))
+.PHONY: sizes
sizes: busybox_unstripped
$(NM) --size-sort $(<)
+.PHONY: bloatcheck
+bloatcheck: busybox_old busybox_unstripped
+ @$(top_srcdir)/scripts/bloat-o-meter busybox_old busybox_unstripped
+
+.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
# The nifty new dependency stuff
scripts/bb_mkdep: $(top_srcdir)/scripts/bb_mkdep.c
- $(Q)$(HOSTCC) $(HOSTCFLAGS) -o $@ $<
+ $(do_link.h)
DEP_INCLUDES := include/bb_config.h
$(Q)$(top_srcdir)/scripts/config/mkconfigs > $@
endif
+scripts/usage: $(top_srcdir)/scripts/usage.c .config
+ $(do_link.h) -I$(top_srcdir)/include
+
+DEP_INCLUDES += include/usage_compressed.h
+include/usage_compressed.h: .config scripts/usage
+ $(Q)sh $(top_srcdir)/scripts/usage_compressed "$(top_srcdir)/scripts" > $@
+
depend dep: .depend
.depend: scripts/bb_mkdep $(DEP_INCLUDES)
$(disp_gen)
-o -name \*.os -o -name \*.osm -o -name \*.a | xargs rm -f
distclean: clean
- - rm -f scripts/bb_mkdep
- - rm -r -f include/config $(DEP_INCLUDES)
- - find . -name .depend'*' | xargs rm -f
+ rm -f scripts/bb_mkdep scripts/usage
+ rm -r -f include/config include/_usage.h include/config.h $(DEP_INCLUDES)
+ find . -name .depend'*' -print0 | xargs -0 rm -f
+ rm -f .hdepend
rm -f .config .config.old .config.cmd
release: distclean #doc