make: use STRIP
[yaboot.git] / Makefile
index 2271944d330b9c81e36d420693d494dd3809deb6..4ca7c5668151c593a410e12260214de8de96cc51 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -2,7 +2,7 @@
 
 include Config
 
-VERSION = 1.3.13
+VERSION = 1.3.17
 # Debug mode (spam/verbose)
 DEBUG = 0
 # make install vars
@@ -15,32 +15,33 @@ GETROOT = fakeroot
 # We use fixed addresses to avoid overlap when relocating
 # and other trouble with initrd
 
-# Load the bootstrap at 2Mb
-TEXTADDR       = 0x200000
-# Malloc block at 3Mb -> 4Mb
-MALLOCADDR     = 0x300000
+# Load the bootstrap at 1Mb
+TEXTADDR       = 0x100000
+# Malloc block of 1MB
 MALLOCSIZE     = 0x100000
-# Load kernel at 20Mb and ramdisk just after
-KERNELADDR     = 0x01400000
+# Load kernel and ramdisk at as low as possible
+KERNELADDR     = 0x00000000
 
 # Set this to the prefix of your cross-compiler, if you have one.
 # Else leave it empty.
 #
-CROSS = 
+CROSS =
 
 CC             := $(CROSS)gcc
 LD             := $(CROSS)ld
 AS             := $(CROSS)as
 OBJCOPY                := $(CROSS)objcopy
+STRIP          := $(CROSS)strip
 
 # The flags for the yaboot binary.
 #
-YBCFLAGS = -Os $(CFLAGS) -nostdinc -Wall -isystem `$(CC) -print-file-name=include` -fsigned-char
-YBCFLAGS += -DVERSION=\"${VERSION}\"   #"
+YBCFLAGS = -Os -m32 $(CFLAGS) -nostdinc -Wall -isystem `$(CC) -m32 -print-file-name=include` -fsigned-char
+YBCFLAGS += -DVERSION="\"${VERSION}${VERSIONEXTRA}\""
 YBCFLAGS += -DTEXTADDR=$(TEXTADDR) -DDEBUG=$(DEBUG)
 YBCFLAGS += -DMALLOCADDR=$(MALLOCADDR) -DMALLOCSIZE=$(MALLOCSIZE)
 YBCFLAGS += -DKERNELADDR=$(KERNELADDR)
 YBCFLAGS += -I ./include
+YBCFLAGS += -fno-strict-aliasing
 
 ifeq ($(CONFIG_COLOR_TEXT),y)
 YBCFLAGS += -DCONFIG_COLOR_TEXT
@@ -64,11 +65,11 @@ endif
 
 # Link flags
 #
-LFLAGS = -Ttext $(TEXTADDR) -Bstatic 
+LFLAGS = -Ttext $(TEXTADDR) -Bstatic -melf32ppclinux
 
 # Libraries
 #
-LLIBS = lib/libext2fs.a
+LLIBS = -lext2fs
 
 # For compiling userland utils
 #
@@ -83,7 +84,9 @@ HOSTCFLAGS = -O2 $(CFLAGS) -Wall -I/usr/include
 
 OBJS = second/crt0.o second/yaboot.o second/cache.o second/prom.o second/file.o \
        second/partition.o second/fs.o second/cfg.o second/setjmp.o second/cmdline.o \
-       second/fs_of.o second/fs_ext2.o second/fs_iso.o second/iso_util.o \
+       second/fs_of.o second/fs_ext2.o second/fs_iso.o second/fs_swap.o \
+       second/iso_util.o \
+       lib/nonstd.o \
        lib/nosys.o lib/string.o lib/strtol.o lib/vsprintf.o lib/ctype.o lib/malloc.o lib/strstr.o
 
 ifeq ($(USE_MD5_PASSWORDS),y)
@@ -99,7 +102,7 @@ OBJS += second/fs_reiserfs.o
 endif
 
 # compilation
-lgcc = `$(CC) -print-libgcc-file-name`
+lgcc = `$(CC) -m32 -print-libgcc-file-name`
 
 all: yaboot addnote mkofboot
 
@@ -155,6 +158,7 @@ clean:
        find . -not -path './\{arch\}*' -name ',,*' | xargs rm -rf
        -gunzip man/*.gz
        rm -rf man.deb
+       -rm cscope.*
 
 cleandocs:
        make -C doc clean
@@ -172,10 +176,10 @@ maintclean: clean cleandocs
 release: docs bindist clean
 
 strip: all
-       strip second/yaboot
-       strip --remove-section=.comment second/yaboot
-       strip util/addnote
-       strip --remove-section=.comment --remove-section=.note util/addnote
+       $(STRIP) second/yaboot
+       $(STRIP) --remove-section=.comment second/yaboot
+       $(STRIP) util/addnote
+       $(STRIP) --remove-section=.comment --remove-section=.note util/addnote
 
 install: all strip
        install -d -o root -g root -m 0755 ${ROOT}/etc/
@@ -238,3 +242,8 @@ deinstall:
        @echo "${ROOT}/etc/yaboot.conf has not been removed, you may remove it yourself if you wish."
 
 uninstall: deinstall
+
+.PHONY: cscope
+cscope:
+       (echo \-k; echo \-q; find . -name '*.[chS]' )> cscope.files
+       cscope -b -f cscope.out