diff options
author | Erik Andersen <andersen@codepoet.org> | 2000-02-07 05:29:42 +0000 |
---|---|---|
committer | Erik Andersen <andersen@codepoet.org> | 2000-02-07 05:29:42 +0000 |
commit | fac10d7c59f7db0facd5fb94de273310b9ec86e6 (patch) | |
tree | dccf8f905fc5807239883da9fca6597037d487fc /Makefile | |
parent | 50bc101b7d6e847a9a0621ca3eb28c7117d095e5 (diff) |
A few minor updates. ;-)
Seriously though, read the Changelog for busybox 0.42,
which this is about to become...
-Erik
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 109 |
1 files changed, 62 insertions, 47 deletions
@@ -15,71 +15,74 @@ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # +PROG := busybox +VERSION := 0.42 +BUILDTIME := $(shell TZ=GMT date "+%Y%m%d-%H%M") -PROG=busybox -VERSION=0.42 -BUILDTIME=$(shell date "+%Y%m%d-%H%M") +# Set the following to `true' to make a debuggable build. +# Leave this set to `false' for production use. +# eg: `make DODEBUG=true' +DODEBUG = false -# Comment out the following to make a debuggable build -# Leave this off for production use. -DODEBUG=false # If you want a static binary, turn this on. I can't think # of many situations where anybody would ever want it static, # but... -DOSTATIC=false - -#This will choke on a non-debian system -ARCH=`uname -m | sed -e 's/i.86/i386/' | sed -e 's/sparc.*/sparc/'` - -GCCMAJVERSION=$(shell $(CC) --version | sed -n "s/^\([^\.]*\).*/\1/p" ) -GCCMINVERSION=$(shell $(CC) --version | sed -n "s/^[^\.]*\.\([^\.]*\)[\.].*/\1/p" ) - -GCCSUPPORTSOPTSIZE=$(shell \ -if ( test $(GCCMAJVERSION) -eq 2 ) ; then \ - if ( test $(GCCMINVERSION) -ge 66 ) ; then \ - echo "true"; \ - else \ - echo "false"; \ - fi; \ -else \ - if ( test $(GCCMAJVERSION) -gt 2 ) ; then \ - echo "true"; \ - else \ - echo "false"; \ - fi; \ +DOSTATIC = false + +# This will choke on a non-debian system +ARCH =`uname -m | sed -e 's/i.86/i386/' | sed -e 's/sparc.*/sparc/'` + +CC = gcc + +GCCMAJVERSION = $(shell $(CC) --version | sed -n "s/^[^0-9]*\([0-9]\)\.\([0-9].*\)[\.].*/\1/p") +GCCMINVERSION = $(shell $(CC) --version | sed -n "s/^[^0-9]*\([0-9]\)\.\([0-9].*\)[\.].*/\2/p") + + +GCCSUPPORTSOPTSIZE = $(shell \ +if ( test $(GCCMAJVERSION) -eq 2 ) ; then \ + if ( test $(GCCMINVERSION) -ge 66 ) ; then \ + echo "true"; \ + else \ + echo "false"; \ + fi; \ +else \ + if ( test $(GCCMAJVERSION) -gt 2 ) ; then \ + echo "true"; \ + else \ + echo "false"; \ + fi; \ fi; ) ifeq ($(GCCSUPPORTSOPTSIZE), true) - OPTIMIZATION=-Os + OPTIMIZATION = -Os else - OPTIMIZATION=-O2 + OPTIMIZATION = -O2 endif # -D_GNU_SOURCE is needed because environ is used in init.c ifeq ($(DODEBUG),true) - CFLAGS+=-Wall -g -D_GNU_SOURCE -DDEBUG_INIT - STRIP= - LDFLAGS= + CFLAGS += -Wall -g -D_GNU_SOURCE -DDEBUG_INIT + STRIP = + LDFLAGS = else - CFLAGS+=-Wall $(OPTIMIZATION) -fomit-frame-pointer -fno-builtin -D_GNU_SOURCE - LDFLAGS= -s - STRIP= strip --remove-section=.note --remove-section=.comment $(PROG) + CFLAGS += -Wall $(OPTIMIZATION) -fomit-frame-pointer -fno-builtin -D_GNU_SOURCE + LDFLAGS = -s + STRIP = strip --remove-section=.note --remove-section=.comment $(PROG) #Only staticly link when _not_ debugging ifeq ($(DOSTATIC),true) - LDFLAGS+= --static + LDFLAGS += --static endif - endif ifndef $(PREFIX) - PREFIX=`pwd`/_install + PREFIX = `pwd`/_install endif -LIBRARIES= -OBJECTS=$(shell ./busybox.sh) -CFLAGS+= -DBB_VER='"$(VERSION)"' -CFLAGS+= -DBB_BT='"$(BUILDTIME)"' +LIBRARIES = +OBJECTS = $(shell ./busybox.sh) messages.o utility.o +CFLAGS += -DBB_VER='"$(VERSION)"' +CFLAGS += -DBB_BT='"$(BUILDTIME)"' ifdef BB_INIT_SCRIPT CFLAGS += -DINIT_SCRIPT=${BB_INIT_SCRIPT} endif @@ -90,7 +93,7 @@ busybox: $(OBJECTS) $(CC) $(LDFLAGS) -o $(PROG) $(OBJECTS) $(LIBRARIES) $(STRIP) -busybox.links: +busybox.links: busybox.def.h - ./busybox.mkll | sort >$@ clean: @@ -100,7 +103,7 @@ clean: distclean: clean - rm -f $(PROG) -$(OBJECTS): busybox.def.h internal.h Makefile +$(OBJECTS): %.o: %.c busybox.def.h internal.h Makefile messages.c install: busybox busybox.links ./install.sh $(PREFIX) @@ -108,6 +111,18 @@ install: busybox busybox.links dist: release release: distclean - (cd .. ; rm -rf busybox-$(VERSION) ; cp -a busybox busybox-$(VERSION); rm -rf busybox-$(VERSION)/CVS busybox-$(VERSION)/scripts/CVS busybox-$(VERSION)/docs/CVS busybox-$(VERSION)/.cvsignore ; tar -cvzf busybox-$(VERSION).tar.gz busybox-$(VERSION)) - - + cd ..; \ + rm -rf busybox-$(VERSION); \ + cp -a busybox busybox-$(VERSION); \ + \ + find busybox-$(VERSION)/ -type d \ + -name CVS \ + -print \ + | xargs rm -rf; \ + \ + find busybox-$(VERSION)/ -type f \ + -name .cvsignore \ + -print \ + | xargs rm -f; \ + \ + tar -cvzf busybox-$(VERSION).tar.gz busybox-$(VERSION)/; |