Mercurial > hg > toybox
annotate Makefile @ 1037:af1780148f7c draft
Implement ls --color=auto, suggested by Rich Felker.
author | Rob Landley <rob@landley.net> |
---|---|
date | Sun, 01 Sep 2013 08:00:41 -0500 |
parents | 40d0c96a8e89 |
children | 1c15ba60aa64 |
rev | line source |
---|---|
14
f8e628f61f16
Make the config generate gen_config.h with CFG_ and USE() macros.
Rob Landley <rob@landley.net>
parents:
7
diff
changeset
|
1 # Makefile for toybox. |
f8e628f61f16
Make the config generate gen_config.h with CFG_ and USE() macros.
Rob Landley <rob@landley.net>
parents:
7
diff
changeset
|
2 # Copyright 2006 Rob Landley <rob@landley.net> |
f8e628f61f16
Make the config generate gen_config.h with CFG_ and USE() macros.
Rob Landley <rob@landley.net>
parents:
7
diff
changeset
|
3 |
f8e628f61f16
Make the config generate gen_config.h with CFG_ and USE() macros.
Rob Landley <rob@landley.net>
parents:
7
diff
changeset
|
4 all: toybox |
f8e628f61f16
Make the config generate gen_config.h with CFG_ and USE() macros.
Rob Landley <rob@landley.net>
parents:
7
diff
changeset
|
5 |
1032
40d0c96a8e89
Add scripts/single.sh to build individual non-multiplexed standalone commands.
Rob Landley <rob@landley.net>
parents:
999
diff
changeset
|
6 KCONFIG_CONFIG ?= .config |
40d0c96a8e89
Add scripts/single.sh to build individual non-multiplexed standalone commands.
Rob Landley <rob@landley.net>
parents:
999
diff
changeset
|
7 toybox toybox_unstripped: $(KCONFIG_CONFIG) *.[ch] lib/*.[ch] toys/*.h toys/*/*.c scripts/*.sh |
233
d4176f3f3835
Zap toys/Config.in and instead create generated/Config.in from contents of
Rob Landley <rob@landley.net>
parents:
232
diff
changeset
|
8 scripts/make.sh |
d4176f3f3835
Zap toys/Config.in and instead create generated/Config.in from contents of
Rob Landley <rob@landley.net>
parents:
232
diff
changeset
|
9 |
274
5b948171e495
Add uninstall and uninstall_flat.
Rob Landley <rob@landley.net>
parents:
273
diff
changeset
|
10 .PHONY: clean distclean baseline bloatcheck install install_flat \ |
276
e711e375e9c6
Wow is make stupid. (Ahem, full of "magic, implicit rules". Which are stupid.)
Rob Landley <rob@landley.net>
parents:
275
diff
changeset
|
11 uinstall uninstall_flat test tests help scripts/test |
14
f8e628f61f16
Make the config generate gen_config.h with CFG_ and USE() macros.
Rob Landley <rob@landley.net>
parents:
7
diff
changeset
|
12 |
f8e628f61f16
Make the config generate gen_config.h with CFG_ and USE() macros.
Rob Landley <rob@landley.net>
parents:
7
diff
changeset
|
13 include kconfig/Makefile |
1
59d58fab67c6
Next snapshot. Tries to grab something out of lib in order to build, I have
landley@driftwood
parents:
diff
changeset
|
14 |
233
d4176f3f3835
Zap toys/Config.in and instead create generated/Config.in from contents of
Rob Landley <rob@landley.net>
parents:
232
diff
changeset
|
15 $(KCONFIG_TOP): generated/Config.in |
653
2986aa63a021
Move commands into "posix", "lsb", and "other" menus/directories.
Rob Landley <rob@landley.net>
parents:
603
diff
changeset
|
16 generated/Config.in: toys/*/*.c scripts/genconfig.sh |
233
d4176f3f3835
Zap toys/Config.in and instead create generated/Config.in from contents of
Rob Landley <rob@landley.net>
parents:
232
diff
changeset
|
17 scripts/genconfig.sh |
19
414625f97667
Better dependencies, and feed the linker --gc-sections. (Which is not an
Rob Landley <rob@landley.net>
parents:
14
diff
changeset
|
18 |
484
4099d3026e56
Set HOSTCC only if it isn't already set as an environment variable.
Rob Landley <rob@landley.net>
parents:
429
diff
changeset
|
19 HOSTCC?=cc |
14
f8e628f61f16
Make the config generate gen_config.h with CFG_ and USE() macros.
Rob Landley <rob@landley.net>
parents:
7
diff
changeset
|
20 |
41
a43bdc6f53af
Add bloat-o-meter, make bloatcheck, and scripts/showasm.
Rob Landley <rob@landley.net>
parents:
38
diff
changeset
|
21 # Development targets |
a43bdc6f53af
Add bloat-o-meter, make bloatcheck, and scripts/showasm.
Rob Landley <rob@landley.net>
parents:
38
diff
changeset
|
22 baseline: toybox_unstripped |
a43bdc6f53af
Add bloat-o-meter, make bloatcheck, and scripts/showasm.
Rob Landley <rob@landley.net>
parents:
38
diff
changeset
|
23 @cp toybox_unstripped toybox_old |
a43bdc6f53af
Add bloat-o-meter, make bloatcheck, and scripts/showasm.
Rob Landley <rob@landley.net>
parents:
38
diff
changeset
|
24 |
a43bdc6f53af
Add bloat-o-meter, make bloatcheck, and scripts/showasm.
Rob Landley <rob@landley.net>
parents:
38
diff
changeset
|
25 bloatcheck: toybox_old toybox_unstripped |
492
f3169b2492f1
Replace GPL python debug script with BSD shell script.
Rob Landley <rob@landley.net>
parents:
484
diff
changeset
|
26 @scripts/bloatcheck toybox_old toybox_unstripped |
41
a43bdc6f53af
Add bloat-o-meter, make bloatcheck, and scripts/showasm.
Rob Landley <rob@landley.net>
parents:
38
diff
changeset
|
27 |
89 | 28 instlist: toybox |
603
150a6d81bd02
Replace CCFLAGS with description of how to add flags to HOSTCC.
Rob Landley <rob@landley.net>
parents:
506
diff
changeset
|
29 $(HOSTCC) -I . scripts/install.c -o instlist |
89 | 30 |
31 install_flat: instlist | |
273
e589555d6416
Add install target, and make install_flat use scripts/install.sh
Rob Landley <rob@landley.net>
parents:
265
diff
changeset
|
32 scripts/install.sh --symlink --force |
e589555d6416
Add install target, and make install_flat use scripts/install.sh
Rob Landley <rob@landley.net>
parents:
265
diff
changeset
|
33 |
e589555d6416
Add install target, and make install_flat use scripts/install.sh
Rob Landley <rob@landley.net>
parents:
265
diff
changeset
|
34 install: |
e589555d6416
Add install target, and make install_flat use scripts/install.sh
Rob Landley <rob@landley.net>
parents:
265
diff
changeset
|
35 scripts/install.sh --long --symlink --force |
89 | 36 |
274
5b948171e495
Add uninstall and uninstall_flat.
Rob Landley <rob@landley.net>
parents:
273
diff
changeset
|
37 uninstall_flat: instlist |
5b948171e495
Add uninstall and uninstall_flat.
Rob Landley <rob@landley.net>
parents:
273
diff
changeset
|
38 scripts/install.sh --uninstall |
5b948171e495
Add uninstall and uninstall_flat.
Rob Landley <rob@landley.net>
parents:
273
diff
changeset
|
39 |
5b948171e495
Add uninstall and uninstall_flat.
Rob Landley <rob@landley.net>
parents:
273
diff
changeset
|
40 uninstall: |
5b948171e495
Add uninstall and uninstall_flat.
Rob Landley <rob@landley.net>
parents:
273
diff
changeset
|
41 scripts/install.sh --long --uninstall |
5b948171e495
Add uninstall and uninstall_flat.
Rob Landley <rob@landley.net>
parents:
273
diff
changeset
|
42 |
14
f8e628f61f16
Make the config generate gen_config.h with CFG_ and USE() macros.
Rob Landley <rob@landley.net>
parents:
7
diff
changeset
|
43 clean:: |
265
c7645fab8d73
Don't delete testdir after running test.sh. Add it to make clean instead.
Rob Landley <rob@landley.net>
parents:
260
diff
changeset
|
44 rm -rf toybox toybox_unstripped generated/config.h generated/Config.in \ |
506
12c21dc8ad04
Now that generated/Config.probed is its own file, add it to build dependencies.
Rob Landley <rob@landley.net>
parents:
492
diff
changeset
|
45 generated/newtoys.h generated/globals.h instlist testdir \ |
999
0af2375a8ef8
More grep cleanup, and make OPTSTR_command macros for use with OLDTOY()
Rob Landley <rob@landley.net>
parents:
653
diff
changeset
|
46 generated/Config.probed generated/oldtoys.h \ |
1032
40d0c96a8e89
Add scripts/single.sh to build individual non-multiplexed standalone commands.
Rob Landley <rob@landley.net>
parents:
999
diff
changeset
|
47 generated/portability.h .singleconfig |
14
f8e628f61f16
Make the config generate gen_config.h with CFG_ and USE() macros.
Rob Landley <rob@landley.net>
parents:
7
diff
changeset
|
48 |
f8e628f61f16
Make the config generate gen_config.h with CFG_ and USE() macros.
Rob Landley <rob@landley.net>
parents:
7
diff
changeset
|
49 distclean: clean |
232
cd4d5630c978
Move some generated files into the "generated" subdirectory.
Rob Landley <rob@landley.net>
parents:
196
diff
changeset
|
50 rm -f toybox_old .config* generated/help.h |
41
a43bdc6f53af
Add bloat-o-meter, make bloatcheck, and scripts/showasm.
Rob Landley <rob@landley.net>
parents:
38
diff
changeset
|
51 |
133
a459c6b39645
Fix makefile to defconfig properly, and leak in a bit of the new test
Rob Landley <rob@landley.net>
parents:
123
diff
changeset
|
52 test: tests |
a459c6b39645
Fix makefile to defconfig properly, and leak in a bit of the new test
Rob Landley <rob@landley.net>
parents:
123
diff
changeset
|
53 |
a459c6b39645
Fix makefile to defconfig properly, and leak in a bit of the new test
Rob Landley <rob@landley.net>
parents:
123
diff
changeset
|
54 tests: |
275
005af6006ce3
Update help, move test.sh to scripts, and fix "make test" to call right script.
Rob Landley <rob@landley.net>
parents:
274
diff
changeset
|
55 scripts/test.sh |
133
a459c6b39645
Fix makefile to defconfig properly, and leak in a bit of the new test
Rob Landley <rob@landley.net>
parents:
123
diff
changeset
|
56 |
41
a43bdc6f53af
Add bloat-o-meter, make bloatcheck, and scripts/showasm.
Rob Landley <rob@landley.net>
parents:
38
diff
changeset
|
57 help:: |
233
d4176f3f3835
Zap toys/Config.in and instead create generated/Config.in from contents of
Rob Landley <rob@landley.net>
parents:
232
diff
changeset
|
58 @echo ' toybox - Build toybox.' |
41
a43bdc6f53af
Add bloat-o-meter, make bloatcheck, and scripts/showasm.
Rob Landley <rob@landley.net>
parents:
38
diff
changeset
|
59 @echo ' baseline - Create busybox_old for use by bloatcheck.' |
a43bdc6f53af
Add bloat-o-meter, make bloatcheck, and scripts/showasm.
Rob Landley <rob@landley.net>
parents:
38
diff
changeset
|
60 @echo ' bloatcheck - Report size differences between old and current versions' |
233
d4176f3f3835
Zap toys/Config.in and instead create generated/Config.in from contents of
Rob Landley <rob@landley.net>
parents:
232
diff
changeset
|
61 @echo ' test - Run test suite against compiled commands.' |
d4176f3f3835
Zap toys/Config.in and instead create generated/Config.in from contents of
Rob Landley <rob@landley.net>
parents:
232
diff
changeset
|
62 @echo ' clean - Delete temporary files.' |
400 | 63 @echo " distclean - Delete everything that isn't shipped." |
64 @echo ' install_flat - Install toybox into $$PREFIX directory.' | |
65 @echo ' install - Install toybox into subdirectories of $$PREFIX.' | |
66 @echo ' uninstall_flat - Remove toybox from $$PREFIX directory.' | |
67 @echo ' uninstall - Remove toybox from subdirectories of $$PREFIX.' | |
429
27104029d771
Add a basic README and an example to "make help".
Rob Landley <rob@landley.net>
parents:
426
diff
changeset
|
68 @echo '' |
27104029d771
Add a basic README and an example to "make help".
Rob Landley <rob@landley.net>
parents:
426
diff
changeset
|
69 @echo 'example: CFLAGS="--static" CROSS_COMPILE=armv5l- make defconfig toybox install' |
27104029d771
Add a basic README and an example to "make help".
Rob Landley <rob@landley.net>
parents:
426
diff
changeset
|
70 @echo '' |