| # Makefile for busybox | |
| # | |
| # Copyright (C) 1999-2005 by Erik Andersen <andersen@codepoet.org> | |
| # | |
| # Licensed under GPLv2, see file LICENSE in this source tree. | |
| obj-y := | |
| obj-y += applets.o | |
| hostprogs-y:= | |
| hostprogs-y += usage usage_pod applet_tables | |
| always:= $(hostprogs-y) | |
| # Generated files need additional love | |
| # This trick decreases amount of rebuilds | |
| # if tree is merely renamed/copied | |
| ifeq ($(srctree),$(objtree)) | |
| srctree_slash = | |
| else | |
| srctree_slash = $(srctree)/ | |
| endif | |
| HOSTCFLAGS_usage.o = -I$(srctree_slash)include -Iinclude | |
| HOSTCFLAGS_usage_pod.o = -I$(srctree_slash)include -Iinclude | |
| applets/applets.o: include/usage_compressed.h include/applet_tables.h | |
| applets/applet_tables: .config include/applets.h | |
| applets/usage: .config include/applets.h | |
| applets/usage_pod: .config include/applets.h include/applet_tables.h | |
| quiet_cmd_gen_usage_compressed = GEN include/usage_compressed.h | |
| cmd_gen_usage_compressed = $(srctree_slash)applets/usage_compressed include/usage_compressed.h applets | |
| include/usage_compressed.h: applets/usage $(srctree_slash)applets/usage_compressed | |
| $(call cmd,gen_usage_compressed) | |
| quiet_cmd_gen_applet_tables = GEN include/applet_tables.h include/NUM_APPLETS.h | |
| cmd_gen_applet_tables = applets/applet_tables include/applet_tables.h include/NUM_APPLETS.h | |
| include/NUM_APPLETS.h: applets/applet_tables | |
| $(call cmd,gen_applet_tables) | |
| # In fact, include/applet_tables.h depends only on applets/applet_tables, | |
| # and is generated by it. But specifying only it can run | |
| # applets/applet_tables twice, possibly in parallel. | |
| # We say that it also needs NUM_APPLETS.h | |
| # | |
| # Unfortunately, we need to list the same command, | |
| # and it can be executed twice (sequentially). | |
| # The alternative is to not list any command, | |
| # and then if include/applet_tables.h is deleted, it won't be rebuilt. | |
| # | |
| include/applet_tables.h: include/NUM_APPLETS.h applets/applet_tables | |
| $(call cmd,gen_applet_tables) |