Changeset 2725 in MondoRescue for branches/2.2.9/mindi-busybox/Makefile.flags
- Timestamp:
- Feb 25, 2011, 9:26:54 PM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2.2.9/mindi-busybox/Makefile.flags
r1765 r2725 4 4 5 5 BB_VER = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) 6 SKIP_STRIP = n 6 export BB_VER 7 SKIP_STRIP ?= n 7 8 8 9 # -std=gnu99 needed for [U]LLONG_MAX on some systems … … 11 12 CPPFLAGS += \ 12 13 -Iinclude -Ilibbb \ 13 $(if $(KBUILD_SRC),-Iinclude2 -I$(srctree)/include ) -I$(srctree)/libbb\14 $(if $(KBUILD_SRC),-Iinclude2 -I$(srctree)/include -I$(srctree)/libbb) \ 14 15 -include include/autoconf.h \ 15 16 -D_GNU_SOURCE -DNDEBUG \ … … 17 18 -D"BB_VER=KBUILD_STR($(BB_VER))" -DBB_BT=AUTOCONF_TIMESTAMP 18 19 19 # flag checks are grouped together to speed the checks up a bit.. 20 CFLAGS += $(call cc-option,-Wall -Wshadow -Wwrite-strings,) 21 CFLAGS += $(call cc-option,-Wundef -Wstrict-prototypes,) 22 # If you want to add "-Wmissing-prototypes -Wmissing-declarations" above 23 # (or anything else for that matter) make sure that it is still possible 24 # to build bbox without warnings. Current offender: find.c:alloc_action(). 25 # Looks more like gcc bug: gcc will warn on it with or without prototype. 26 # But still, warning-free compile is a must, or else we will drown 27 # in warnings pretty soon. 20 CFLAGS += $(call cc-option,-Wall,) 21 CFLAGS += $(call cc-option,-Wshadow,) 22 CFLAGS += $(call cc-option,-Wwrite-strings,) 23 CFLAGS += $(call cc-option,-Wundef,) 24 CFLAGS += $(call cc-option,-Wstrict-prototypes,) 25 CFLAGS += $(call cc-option,-Wunused -Wunused-parameter,) 26 CFLAGS += $(call cc-option,-Wunused-function -Wunused-value,) 27 CFLAGS += $(call cc-option,-Wmissing-prototypes -Wmissing-declarations,) 28 # warn about C99 declaration after statement 29 CFLAGS += $(call cc-option,-Wdeclaration-after-statement,) 30 # If you want to add more -Wsomething above, make sure that it is 31 # still possible to build bbox without warnings. 28 32 29 33 ifeq ($(CONFIG_WERROR),y) 30 34 CFLAGS += $(call cc-option,-Werror,) 31 else 32 # for development, warn a little bit about unused results.. 33 CPPFLAGS += -D_FORTIFY_SOURCE=2 35 ## TODO: 36 ## gcc version 4.4.0 20090506 (Red Hat 4.4.0-4) (GCC) is a PITA: 37 ## const char *ptr; ... off_t v = *(off_t*)ptr; -> BOOM 38 ## and no easy way to convince it to shut the hell up. 39 ## We have a lot of such things all over the place. 40 ## Classic *(off_t*)(void*)ptr does not work, 41 ## and I am unwilling to do crazy gcc specific ({ void *ppp = ...; }) 42 ## stuff in macros. This would obfuscate the code too much. 43 ## Maybe try __attribute__((__may_alias__))? 44 #CFLAGS += $(call cc-ifversion, -eq, 0404, -fno-strict-aliasing) 34 45 endif 35 46 # gcc 3.x emits bogus "old style proto" warning on find.c:alloc_action() 36 47 CFLAGS += $(call cc-ifversion, -ge, 0400, -Wold-style-definition) 37 48 38 # gcc emits bogus "no prev proto" warning on find.c:alloc_action() 39 ifneq ($(CONFIG_WERROR),y) 40 CFLAGS += $(call cc-option,-Wmissing-prototypes -Wmissing-declarations,) 41 endif 42 43 CFLAGS += $(call cc-option,-Os -fno-builtin-strlen -finline-limit=0 -fomit-frame-pointer -ffunction-sections -fdata-sections,) 49 CFLAGS += $(call cc-option,-fno-builtin-strlen -finline-limit=0 -fomit-frame-pointer -ffunction-sections -fdata-sections,) 44 50 # -fno-guess-branch-probability: prohibit pseudo-random guessing 45 51 # of branch probabilities (hopefully makes bloatcheck more stable): … … 50 56 # FIXME: These warnings are at least partially to be concerned about and should 51 57 # be fixed.. 52 #CFLAGS +=$(call cc-option,-Wconversion,)58 #CFLAGS += $(call cc-option,-Wconversion,) 53 59 54 ifeq ($(CONFIG_DEBUG),y) 55 CFLAGS += $(call cc-option,-g) 60 ifneq ($(CONFIG_DEBUG),y) 61 CFLAGS += $(call cc-option,-Os,) 62 else 63 CFLAGS += $(call cc-option,-g,) 64 #CFLAGS += "-D_FORTIFY_SOURCE=2" 65 ifeq ($(CONFIG_DEBUG_PESSIMIZE),y) 66 CFLAGS += $(call cc-option,-O0,) 67 else 68 CFLAGS += $(call cc-option,-Os,) 69 endif 70 endif 71 72 # If arch/$(ARCH)/Makefile did not override it (with, say, -fPIC)... 73 ARCH_FPIC ?= -fpic 74 ARCH_FPIE ?= -fpie 75 ARCH_PIE ?= -pie 76 77 ifeq ($(CONFIG_BUILD_LIBBUSYBOX),y) 78 # on i386: 14% smaller libbusybox.so 79 # (code itself is 9% bigger, we save on relocs/PLT/GOT) 80 CFLAGS += $(ARCH_FPIC) 81 # and another 4% reduction of libbusybox.so: 82 # (external entry points must be marked EXTERNALLY_VISIBLE) 83 CFLAGS += $(call cc-option,-fvisibility=hidden) 56 84 endif 57 85 58 86 ifeq ($(CONFIG_STATIC),y) 59 LDFLAGS+= -static87 CFLAGS_busybox += -static 60 88 endif 61 89 62 BBOX_LIB_LIST = m crypt 90 ifeq ($(CONFIG_PIE),y) 91 CFLAGS_busybox += $(ARCH_PIE) 92 CFLAGS += $(ARCH_FPIE) 93 endif 94 95 ifneq ($(CONFIG_EXTRA_CFLAGS),) 96 CFLAGS += $(strip $(subst ",,$(CONFIG_EXTRA_CFLAGS))) 97 #")) 98 endif 99 100 LDLIBS += m crypt 63 101 64 102 ifeq ($(CONFIG_PAM),y) 65 BBOX_LIB_LIST+= pam pam_misc103 LDLIBS += pam pam_misc 66 104 endif 67 105 68 106 ifeq ($(CONFIG_SELINUX),y) 69 BBOX_LIB_LIST+= selinux sepol107 LDLIBS += selinux sepol 70 108 endif 71 109 72 110 ifeq ($(CONFIG_EFENCE),y) 73 BBOX_LIB_LIST+= efence111 LDLIBS += efence 74 112 endif 75 113 76 114 ifeq ($(CONFIG_DMALLOC),y) 77 BBOX_LIB_LIST+= dmalloc115 LDLIBS += dmalloc 78 116 endif 79 117 80 # For scripts/trylink81 export BBOX_LIB_LIST 82 83 # LDFLAGS += -nostdlib84 85 LDFLAGS_ELF2FLT = -Wl,-elf2flt86 ifneq (,$(findstring $( LDFLAGS_ELF2FLT),$(LDFLAGS)))118 # If a flat binary should be built, CFLAGS_busybox="-elf2flt" 119 # env var should be set for make invocation. 120 # Here we check whether CFLAGS_busybox indeed contains that flag. 121 # (For historical reasons, we also check LDFLAGS, which doesn't 122 # seem to be entirely correct variable to put "-elf2flt" into). 123 W_ELF2FLT = -elf2flt 124 ifneq (,$(findstring $(W_ELF2FLT),$(LDFLAGS) $(CFLAGS_busybox))) 87 125 SKIP_STRIP = y 88 126 endif … … 91 129 # TODO: use "make stksizes" to find & fix big stack users 92 130 # (we stole scripts/checkstack.pl from the kernel... thanks guys!) 93 FLTFLAGS += -s 20000 131 # Reduced from 20k to 16k in 1.9.0. 132 FLTFLAGS += -s 16000
Note:
See TracChangeset
for help on using the changeset viewer.